penguin/SesameSDK_Android_with_DemoApp

Mirror of https://github.com/CANDY-HOUSE/SesameSDK_Android_with_DemoApp

commit d12f23c25bffd5adf6361abd0db82bb144441875

author斟酌 鵬兄 <tgckpg@gmail.com>
date2026-10-07T10:45:32Z
subjectGrafted from 022289e5b1d082bd3f5ff685c2cf197444847a56
commit d12f23c25bffd5adf6361abd0db82bb144441875
Author: 斟酌 鵬兄 <tgckpg@gmail.com>
Date:   2026-10-07T10:45:32Z

    Grafted from 022289e5b1d082bd3f5ff685c2cf197444847a56
---
 .gitignore                                         |  20 +
 LICENSE                                            |  21 +
 README.md                                          | 199 +++++
 README_en.md                                       | 199 +++++
 README_zh-CN.md                                    | 199 +++++
 app.properties                                     |  11 +
 build.gradle                                       |  23 +
 gradle.properties                                  |  45 +
 gradle/gradle-daemon-jvm.properties                |   8 +
 gradle/libs.versions.toml                          |  47 +
 gradle/wrapper/gradle-wrapper.jar                  | Bin 0 -> 47505 bytes
 gradle/wrapper/gradle-wrapper.properties           |   5 +
 gradlew                                            | 248 ++++++
 gradlew.bat                                        |  82 ++
 jitpack.yml                                        |   2 +
 sesameApp/.gitignore                               |   1 +
 sesameApp/build.gradle                             | 131 +++
 sesameApp/google-services.json                     |  35 +
 sesameApp/proguard-rules.pro                       |  12 +
 sesameApp/src/debug/AndroidManifest.xml            |   5 +
 .../src/debug/res/xml/network_security_config.xml  |   7 +
 sesameApp/src/main/AndroidManifest.xml             |  83 ++
 sesameApp/src/main/assets/biz/asset-manifest.json  |  35 +
 sesameApp/src/main/assets/biz/favicon.ico          | Bin 0 -> 15406 bytes
 sesameApp/src/main/assets/biz/index.html           |   1 +
 .../main/assets/biz/static/css/main.7211a735.css   |   1 +
 .../src/main/assets/biz/static/js/main.5b3a6865.js | 133 +++
 .../biz/static/js/main.5b3a6865.js.LICENSE.txt     | 260 ++++++
 .../arrow.0b1bb0506b894eb647e0179d5b72f6ff.svg     |   3 +
 .../media/face_tips.93d19c32a9027deb0dd9.png       | Bin 0 -> 31354 bytes
 .../media/facepro_tips.951dd4937368ae060f0e.png    | Bin 0 -> 31975 bytes
 .../media/gif_finger.f47cf6fa5db051dc7697.gif      | Bin 0 -> 1127789 bytes
 .../biz/static/media/knob.9376c5afa509d20cdf6d.png | Bin 0 -> 40430 bytes
 .../locked.5129de54382b91719c523d6eb7dd5f49.svg    |   1 +
 .../media/palm_tips.ae60fa490afedfbd05d2.png       | Bin 0 -> 28178 bytes
 .../media/palmpro_tips.40280d3200c2aca566ec.png    | Bin 0 -> 28787 bytes
 .../png_air_model_auto_01.d518eec82edeb8e6af5f.png | Bin 0 -> 14806 bytes
 .../png_air_model_cold_02.27b4f3e1758dd0b27af8.png | Bin 0 -> 18563 bytes
 .../png_air_model_dry_03.52d983b129236da82d77.png  | Bin 0 -> 14835 bytes
 .../png_air_model_hot_05.3073c23fda71454fc14c.png  | Bin 0 -> 14469 bytes
 .../png_air_model_wind_04.abd4dc20ea8f21374d54.png | Bin 0 -> 14489 bytes
 ...ng_air_wind_speed_auto.b3db6a283d7fa76a791d.png | Bin 0 -> 10100 bytes
 .../png_air_wind_speed_v1.79fdd6fd4367a1c45f50.png | Bin 0 -> 10322 bytes
 .../png_air_wind_speed_v2.73b6524d9fc6fc736505.png | Bin 0 -> 10359 bytes
 .../png_air_wind_speed_v3.36aa6dfd51b9e42791fa.png | Bin 0 -> 10360 bytes
 ...g_air_wind_vertical_v2.369996ae7d246d539407.png | Bin 0 -> 10746 bytes
 ...g_air_wind_vertical_v3.fadae6c24cb3dc1a4e30.png | Bin 0 -> 10434 bytes
 .../static/media/png_fan.c435dd5165febb6fbd71.png  | Bin 0 -> 10079 bytes
 .../media/png_ir_match.1dc7e8f70f4c8cd8fd2f.png    | Bin 0 -> 39282 bytes
 .../media/site-icon.66c4e4529967fda91a5b.png       | Bin 0 -> 64182 bytes
 .../unlocked.46651d2494fea7d9b8eb6d203c496a69.svg  |   1 +
 .../vision.2e0ec6406814048f361af3f16b60f0e4.svg    |  23 +
 sesameApp/src/main/assets/biz/version.json         |   5 +
 .../main/java/co/candyhouse/app/SesameActivity.kt  | 596 +++++++++++++
 .../src/main/java/co/candyhouse/app/SesameApp.kt   |  51 ++
 .../java/co/candyhouse/app/ble/BleController.kt    | 592 +++++++++++++
 .../co/candyhouse/app/ble/BleFirmwareUpdate.kt     | 167 ++++
 .../app/ble/BleRegistrationController.kt           | 141 +++
 .../main/java/co/candyhouse/app/ble/BotSettings.kt |  57 ++
 .../java/co/candyhouse/app/ble/DeviceLocation.kt   |  41 +
 .../java/co/candyhouse/app/ble/LockSettings.kt     | 161 ++++
 .../co/candyhouse/app/ble/PeripheralSettings.kt    | 547 ++++++++++++
 .../candyhouse/app/bridge/NativeRequestHandler.kt  | 188 ++++
 .../java/co/candyhouse/app/bridge/WebViewBridge.kt | 112 +++
 .../connecteddevice/AutoUnlockGeofenceManager.kt   |  92 ++
 .../app/connecteddevice/AutoUnlockMap.kt           | 193 +++++
 .../app/connecteddevice/BackgroundWebRuntime.kt    |  68 ++
 .../app/connecteddevice/DevicePreferences.kt       |  60 ++
 .../SesameConnectedDeviceService.kt                | 272 ++++++
 .../main/java/co/candyhouse/app/data/BleBackend.kt |  79 ++
 .../main/java/co/candyhouse/app/data/KeyHandoff.kt |  40 +
 .../co/candyhouse/app/data/auth/LegacySession.kt   |  97 +++
 .../candyhouse/app/data/local/DeviceKeyDatabase.kt |  71 ++
 .../candyhouse/app/data/local/DeviceKeyEntity.kt   |  24 +
 .../app/internal/InternalTestBottomSheet.kt        | 240 +++++
 .../co/candyhouse/app/push/PushNotification.kt     | 100 +++
 .../app/push/SesameFirebaseMessagingService.kt     |  25 +
 .../app/push/TopicSubscriptionManager.kt           |  44 +
 .../src/main/java/co/candyhouse/app/ui/AppMenu.kt  |  64 ++
 .../main/java/co/candyhouse/app/ui/AppToolbar.kt   |  44 +
 .../java/co/candyhouse/app/util/AppEnvironment.kt  | 149 ++++
 .../java/co/candyhouse/app/util/AppIdentity.kt     |  23 +
 .../co/candyhouse/app/util/BundledWebResources.kt  |  51 ++
 .../co/candyhouse/app/util/ContextExtensions.kt    |  12 +
 .../co/candyhouse/app/util/DeviceKeyExtensions.kt  |   8 +
 .../co/candyhouse/app/util/WebResourceSettings.kt  |  12 +
 .../app/util/qrcode/core/BGQRCodeUtil.java         | 206 +++++
 .../app/util/qrcode/core/BGScanResult.java         |  17 +
 .../app/util/qrcode/core/BarcodeType.java          |  36 +
 .../qrcode/core/CameraConfigurationManager.java    | 209 +++++
 .../app/util/qrcode/core/CameraPreview.java        | 315 +++++++
 .../app/util/qrcode/core/ProcessDataTask.java      | 148 ++++
 .../app/util/qrcode/core/QRCodeView.java           | 565 ++++++++++++
 .../app/util/qrcode/core/ScanBoxView.java          | 963 +++++++++++++++++++++
 .../app/util/qrcode/zxing/QRCodeDecoder.java       | 173 ++++
 .../app/util/qrcode/zxing/ZXingView.java           | 136 +++
 sesameApp/src/main/res/drawable/app_icon.png       | Bin 0 -> 29760 bytes
 sesameApp/src/main/res/drawable/arrow.xml          |  17 +
 .../main/res/drawable/bg_bottom_sheet_rounded.xml  |   7 +
 sesameApp/src/main/res/drawable/ic_add_contact.xml |  10 +
 sesameApp/src/main/res/drawable/ic_arrow.xml       |  11 +
 sesameApp/src/main/res/drawable/ic_autounlock.xml  |  18 +
 .../src/main/res/drawable/ic_autounlock_active.xml |  18 +
 sesameApp/src/main/res/drawable/ic_bluetooth.xml   |   9 +
 .../src/main/res/drawable/ic_bluetooth_grey.xml    |   9 +
 sesameApp/src/main/res/drawable/ic_cube.xml        |  31 +
 .../main/res/drawable/ic_icons_filled_album.xml    |  11 +
 .../main/res/drawable/ic_icons_filled_close.xml    |  12 +
 .../res/drawable/ic_icons_filled_close_white.xml   |  12 +
 .../src/main/res/drawable/ic_notification.png      | Bin 0 -> 62411 bytes
 .../src/main/res/drawable/ic_qr_code_scan.xml      |  51 ++
 sesameApp/src/main/res/drawable/ic_wifi_blue.xml   |  26 +
 sesameApp/src/main/res/drawable/ic_wifi_grey.xml   |  26 +
 sesameApp/src/main/res/drawable/icon_lock.png      | Bin 0 -> 6019 bytes
 sesameApp/src/main/res/drawable/icon_logining.png  | Bin 0 -> 6274 bytes
 sesameApp/src/main/res/drawable/icon_nosetting.png | Bin 0 -> 6267 bytes
 sesameApp/src/main/res/drawable/icon_nosignal.png  | Bin 0 -> 5772 bytes
 .../src/main/res/drawable/icon_receiveblee.png     | Bin 0 -> 6101 bytes
 sesameApp/src/main/res/drawable/icon_unlock.png    | Bin 0 -> 6041 bytes
 sesameApp/src/main/res/drawable/icon_waitgatt.png  | Bin 0 -> 6570 bytes
 .../main/res/drawable/round_blue_unlock_all.xml    |  17 +
 .../src/main/res/drawable/round_red_lock_all.xml   |  16 +
 .../src/main/res/drawable/swtich_logining.png      | Bin 0 -> 7564 bytes
 sesameApp/src/main/res/drawable/swtich_no_ble.png  | Bin 0 -> 6987 bytes
 .../src/main/res/drawable/swtich_receive_ble.png   | Bin 0 -> 7281 bytes
 .../src/main/res/drawable/swtich_unlocked.png      | Bin 0 -> 7310 bytes
 .../src/main/res/drawable/swtich_waitgatt.png      | Bin 0 -> 7750 bytes
 sesameApp/src/main/res/layout/cell_weget.xml       |  32 +
 .../src/main/res/layout/cell_weget_unlock.xml      |  53 ++
 .../main/res/layout/item_lock_single_select.xml    |  46 +
 .../src/main/res/layout/view_internal_test.xml     | 237 +++++
 sesameApp/src/main/res/layout/view_qr_scanner.xml  |  36 +
 .../src/main/res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 4329 bytes
 .../src/main/res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 2325 bytes
 .../main/res/mipmap-xhdpi/ic_launcher_round.png    | Bin 0 -> 5568 bytes
 .../main/res/mipmap-xxhdpi/ic_launcher_round.png   | Bin 0 -> 10704 bytes
 .../qrcode_default_grid_scan_line.png              | Bin 0 -> 6033 bytes
 .../res/mipmap-xxhdpi/qrcode_default_scan_line.png | Bin 0 -> 1981 bytes
 .../main/res/mipmap-xxxhdpi/ic_launcher_round.png  | Bin 0 -> 14430 bytes
 sesameApp/src/main/res/values-ja/strings.xml       |  19 +
 sesameApp/src/main/res/values-zh-rCN/strings.xml   |  19 +
 sesameApp/src/main/res/values-zh-rTW/strings.xml   |  19 +
 sesameApp/src/main/res/values/arrays.xml           |  42 +
 sesameApp/src/main/res/values/ids.xml              |   4 +
 sesameApp/src/main/res/values/strings.xml          |  19 +
 sesameApp/src/main/res/values/styles.xml           |  11 +
 sesameSdk/.gitignore                               |   1 +
 sesameSdk/build.gradle                             |  24 +
 sesameSdk/consumer-rules.pro                       |  27 +
 sesameSdk/src/main/AndroidManifest.xml             |  22 +
 .../java/co/candyhouse/sesame/ble/CHBaseDevice.kt  | 312 +++++++
 .../java/co/candyhouse/sesame/ble/CHBleManager.kt  | 265 ++++++
 .../java/co/candyhouse/sesame/ble/CHBleSupport.kt  |  41 +
 .../co/candyhouse/sesame/ble/CHDeivceProtocols.kt  | 402 +++++++++
 .../main/java/co/candyhouse/sesame/ble/CHDevice.kt |  33 +
 .../sesame/ble/Sesame2BleAdvertisement.kt          |  94 ++
 .../co/candyhouse/sesame/ble/SesameBleReceiver.kt  |  54 ++
 .../co/candyhouse/sesame/ble/SesameProtocols.kt    | 112 +++
 .../candyhouse/sesame/ble/os2/base/CHSesameOS2.kt  |  33 +
 .../sesame/ble/os2/base/SesameOS2BleCipher.kt      |  60 ++
 .../candyhouse/sesame/ble/os2/bike/CHSesameBike.kt |   9 +
 .../sesame/ble/os2/bike/CHSesameBikeDevice.kt      | 424 +++++++++
 .../candyhouse/sesame/ble/os2/bot/CHSesameBot.kt   |  37 +
 .../sesame/ble/os2/bot/CHSesameBotDevice.kt        | 490 +++++++++++
 .../candyhouse/sesame/ble/os2/sesame2/CHSesame2.kt |  49 ++
 .../sesame/ble/os2/sesame2/CHSesame2Device.kt      | 544 ++++++++++++
 .../candyhouse/sesame/ble/os3/base/CHSesameOS3.kt  | 477 ++++++++++
 .../sesame/ble/os3/base/CHSesameOS3LockBase.kt     | 231 +++++
 .../sesame/ble/os3/base/SesameOS3BleCipher.kt      |  33 +
 .../sesame/ble/os3/bike2/CHSesameBike2.kt          |  19 +
 .../sesame/ble/os3/bike2/CHSesameBike2Device.kt    | 106 +++
 .../sesame/ble/os3/bike2/CHSesameBike3Device.kt    |  58 ++
 .../ble/os3/biometric/CHSesameBiometricDevice.kt   |  97 +++
 .../os3/biometric/CHSesameBiometricDeviceImpl.kt   | 384 ++++++++
 .../baseCapbale/CHAutoInitCapabilityImpl.kt        |  52 ++
 .../capability/baseCapbale/CHCapabilityHost.kt     |   8 +
 .../capability/baseCapbale/CHCapabilitySupport.kt  |  10 +
 .../capability/baseCapbale/CHEventHandler.kt       |   8 +
 .../capability/baseCapbale/CHEventHandlerHost.kt   |  12 +
 .../os3/biometric/capability/card/CHCardCapable.kt |  20 +
 .../biometric/capability/card/CHCardCapableImpl.kt | 201 +++++
 .../biometric/capability/card/CHCardDelegate.kt    |  12 +
 .../capability/card/CHCardEventHandlers.kt         |  65 ++
 .../capability/connect/CHDeviceConnectCapable.kt   |  11 +
 .../connect/CHDeviceConnectCapableImpl.kt          |  96 ++
 .../capability/connect/CHDeviceConnectDelegate.kt  |   7 +
 .../os3/biometric/capability/face/CHFaceCapable.kt |  16 +
 .../biometric/capability/face/CHFaceCapableImpl.kt |  75 ++
 .../biometric/capability/face/CHFaceDelegate.kt    |  13 +
 .../capability/face/CHFaceEventHandlers.kt         |  58 ++
 .../capability/fingerPrint/CHFingerPrintCapable.kt |  16 +
 .../fingerPrint/CHFingerPrintCapableImpl.kt        |  88 ++
 .../fingerPrint/CHFingerPrintDelegate.kt           |  12 +
 .../fingerPrint/CHFingerPrintEventHandlers.kt      |  53 ++
 .../os3/biometric/capability/palm/CHPalmCapable.kt |  15 +
 .../biometric/capability/palm/CHPalmCapableImpl.kt |  61 ++
 .../biometric/capability/palm/CHPalmDelegate.kt    |  13 +
 .../capability/palm/CHPalmEventHandlers.kt         |  52 ++
 .../capability/passcode/CHPassCodeCapable.kt       |  19 +
 .../capability/passcode/CHPassCodeCapableImpl.kt   | 169 ++++
 .../capability/passcode/CHPassCodeDelegate.kt      |  12 +
 .../capability/passcode/CHPassCodeEventHandlers.kt |  64 ++
 .../capability/remoteNano/CHRemoteNanoCapable.kt   |  12 +
 .../remoteNano/CHRemoteNanoCapableImpl.kt          |  49 ++
 .../capability/remoteNano/CHRemoteNanoDelegate.kt  |  11 +
 .../remoteNano/CHRemoteNanoEventHandler.kt         |  26 +
 .../parseData/CHSesameBiometricParseData.kt        | 105 +++
 .../candyhouse/sesame/ble/os3/bot2/CHSesameBot2.kt | 127 +++
 .../sesame/ble/os3/bot2/CHSesameBot2Device.kt      | 216 +++++
 .../co/candyhouse/sesame/ble/os3/hub3/CHHub3.kt    |  16 +
 .../candyhouse/sesame/ble/os3/hub3/CHHub3Device.kt | 248 ++++++
 .../candyhouse/sesame/ble/os3/sesame5/CHSesame5.kt |  42 +
 .../sesame/ble/os3/sesame5/CHSesame5Device.kt      | 169 ++++
 .../candyhouse/sesame/ble/os3/wm2/CHWifiModule2.kt |  39 +
 .../sesame/ble/os3/wm2/CHWifiModule2Device.kt      | 488 +++++++++++
 .../java/co/candyhouse/sesame/utils/BleBaseType.kt |  81 ++
 .../java/co/candyhouse/sesame/utils/CommonUtils.kt |  20 +
 .../co/candyhouse/sesame/utils/DataExtention.kt    | 169 ++++
 .../main/java/co/candyhouse/sesame/utils/EccKey.kt |  43 +
 .../co/candyhouse/sesame/utils/EventExtensions.kt  |  35 +
 .../src/main/java/co/candyhouse/sesame/utils/L.kt  |  86 ++
 .../co/candyhouse/sesame/utils/aescmac/AESCMAC.kt  |  94 ++
 .../co/candyhouse/sesame/utils/aescmac/AesUtil.kt  |  51 ++
 .../co/candyhouse/sesame/utils/aescmac/Bytes.kt    | 149 ++++
 .../sesame/utils/aescmac/EngineFactory.kt          | 143 +++
 .../sesame/utils/aescmac/EngineWrapper.kt          | 101 +++
 .../java/co/candyhouse/sesame/utils/aescmac/MAC.kt |  21 +
 .../candyhouse/sesame/utils/aescmac/SubtleUtil.kt  | 144 +++
 .../candyhouse/sesame/utils/aescmac/Validators.kt  | 186 ++++
 settings.gradle                                    |  32 +
 230 files changed, 18452 insertions(+)

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..3874af2
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,20 @@
+# Android Studio / Gradle
+.idea/
+*.iml
+.gradle/
+.kotlin/
+.externalNativeBuild/
+.cxx/
+build/
+captures/
+
+# Local configuration and signing material
+local.properties
+
+# Exported builds and logs
+/seameApp/debug/
+/seameApp/release/
+*.apk
+*.aab
+*.log
+.DS_Store
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..30915f8
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2014-2026 CANDY HOUSE
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..8da3454
--- /dev/null
+++ b/README.md
@@ -0,0 +1,199 @@
+![Sesame SDK](https://raw.githubusercontent.com/CANDY-HOUSE/.github/refs/heads/main/profile/images/SesameSDK.png)
+
+# SesameOS3 Android
+
+日本語 | [简体中文](README_zh-CN.md) | [English](README_en.md)
+
+CANDY HOUSE の Android アプリと Sesame SDK を収録したオープンソースプロジェクトです。現在は `co.candyhouse.sesame.ble.os3` を中心に、Sesame OS3 デバイスの BLE 接続、登録、操作、状態同期、ファームウェア更新を提供しています。
+
+- [CANDY HOUSE 公式サイト](https://jp.candyhouse.co/)
+- [Google Play](https://play.google.com/store/apps/details?id=co.candyhouse.sesame2)
+- [GitHub Releases](https://github.com/CANDY-HOUSE/SesameSDK_Android_with_DemoApp/releases)
+
+## SDK の導入
+
+### 動作環境
+
+- Android Studio
+- JDK 17
+- Android SDK 36
+- minSdk 24
+
+### 1. 依存関係を追加する
+
+同じプロジェクト内のソースコードを使用する場合:
+
+```groovy
+dependencies {
+    implementation project(':sesameSdk')
+}
+```
+
+JitPack を使用する場合、`settings.gradle` にリポジトリを追加します。
+
+```groovy
+dependencyResolutionManagement {
+    repositories {
+        google()
+        mavenCentral()
+        maven { url 'https://jitpack.io' }
+    }
+}
+```
+
+アプリの `build.gradle` に SDK を追加します。`<version>` は [Releases](https://github.com/CANDY-HOUSE/SesameSDK_Android_with_DemoApp/releases) にある利用したいタグへ置き換えてください。
+
+```groovy
+dependencies {
+    implementation 'com.github.CANDY-HOUSE.SesameSDK_Android_with_DemoApp:sesame-sdk:<version>'
+}
+```
+
+### 2. 権限を設定する
+
+アプリの `AndroidManifest.xml` に必要な権限を追加し、BLE スキャン前に位置情報および Bluetooth の実行時権限を取得してください。
+
+```xml
+<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
+<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
+<uses-permission android:name="android.permission.INTERNET" />
+
+<uses-feature
+    android:name="android.hardware.bluetooth_le"
+    android:required="false" />
+```
+
+### 3. CANDY HOUSE サービスを初期化する
+
+Sesame OS3 の登録やクラウド機能を利用するには、アプリ起動時に以下を初期化します。
+
+1. Amplify に `AWSCognitoAuthPlugin` と `AWSApiPlugin` を登録し、Cognito / API の設定で `Amplify.configure(...)` を実行する。
+2. `DeviceData.initialize(applicationContext)` を実行する。
+3. `CHBleManager(applicationContext)` を実行する。
+
+実装例は Demo App の [`AWSStatus.kt`](app/src/main/java/co/candyhouse/app/data/auth/AWSStatus.kt) と [`BaseApp.kt`](app/src/main/java/co/candyhouse/app/base/BaseApp.kt) を参照してください。
+
+```kotlin
+override fun onCreate() {
+    super.onCreate()
+
+    // Amplify の Auth / API 設定後に初期化する
+    DeviceData.initialize(applicationContext)
+    CHBleManager(applicationContext)
+}
+```
+
+公開 Demo 用の CANDY HOUSE サービス設定は評価用途であり、リクエスト数などに制限がある場合があります。本番環境では、自分の Firebase / AWS / Google Maps 設定を使用し、認証情報をリポジトリへコミットしないでください。
+
+Demo App を実行する場合は、次のローカル設定も必要です。
+
+- `app.properties`:CANDY HOUSE API、AWS Cognito / IoT、Google Maps の設定
+- `app/google-services.json`:Firebase の設定
+
+### 4. デバイスを検出して登録する
+
+権限取得後にスキャンを開始し、未登録デバイスを受け取ります。接続後、状態が `ReadyToRegister` になった時点で `register` を実行してください。
+
+```kotlin
+CHBleManager.delegate = object : CHBleManagerDelegate {
+    override fun didDiscoverUnRegisteredCHDevices(devices: List<CHDevices>) {
+        val device = devices.firstOrNull() ?: return
+
+        device.delegate = object : CHDeviceStatusDelegate {
+            override fun onBleDeviceStatusChanged(
+                device: CHDevices,
+                status: CHDeviceStatus,
+                shadowStatus: CHDeviceStatus?
+            ) {
+                if (status == CHDeviceStatus.ReadyToRegister) {
+                    device.register { result ->
+                        result.onSuccess { /* 登録成功 */ }
+                        result.onFailure { /* 登録失敗 */ }
+                    }
+                }
+            }
+        }
+
+        device.connect { }
+    }
+}
+
+CHBleManager.enableScan { result ->
+    result.onFailure { /* 権限または Bluetooth の状態を確認 */ }
+}
+```
+
+## プロジェクト構成
+
+| モジュール | 内容 |
+| --- | --- |
+| `app` | デバイス、アカウント、フレンドなどを含む Android Demo App |
+| `sesameSdk` | BLE、OS3 デバイス実装、ホストサービスのインターフェース(DB と AWS は app/data) |
+| `sesameSdk/.../ble` | 公開デバイス API、製品モデル、デバイス管理 |
+| `sesameSdk/.../ble/os3` | 現在メンテナンスしている OS3 プロトコルとデバイス実装 |
+
+## OS3 デバイス構成
+
+```mermaid
+flowchart TB
+    Devices[CHDevices]
+
+    Devices --> Lock[CHSesameLock]
+    Lock --> LockBase[CHSesameOS3LockBase]
+    LockBase --> S5[CHSesame5Device]
+    LockBase --> Bike2[CHSesameBike2Device]
+    Bike2 --> Bike3[CHSesameBike3Device<br/>+ Fingerprint capability]
+    LockBase --> Bot2[CHSesameBot2Device]
+
+    Devices --> Connector[CHSesameConnector]
+    Connector --> Bio[CHSesameBiometricDevice]
+    Bio --> BioImpl[CHSesameBiometricDeviceImpl<br/>Capabilities by product profile]
+
+    Devices --> Gateway[CHWifiModule2]
+    Gateway --> Hub[CHHub3 / CHHub3Device]
+```
+
+### 対応製品
+
+対応範囲は `CHProductModel` を基準とし、実際の Device 実装ごとに分類しています。
+
+| Device 実装 | 製品 |
+| --- | --- |
+| `CHSesame5Device` | Sesame 5、Sesame 5 Pro、Sesame 5 US、Sesame 6、Sesame 6 Pro、Sesame 6 Pro SlidingDoor、Sesame miwa、BLE Connector 1 |
+| `CHSesameBike2Device` | Sesame Bike 2 |
+| `CHSesameBike3Device` | Sesame Bike 3(指紋機能を組み合わせ) |
+| `CHSesameBot2Device` | Sesame Bot 2、Sesame Bot 3 |
+| `CHSesameBiometricDeviceImpl` | Open Sensor 1/2、Remote、Remote Nano、Sesame Touch 1/1 Pro/2/2 Pro、Sesame Face 1/1 Pro/1 AI/1 Pro AI/2/2 Pro/2 AI/2 Pro AI |
+| `CHHub3Device` | Hub 3、Hub 3 Pro |
+
+> メンテナンス終了:Sesame 3(`SS2`)、WiFi Module 2(`WM2`)、Sesame Bot 1、Sesame Bike 1、Sesame 4(`SS4`)。
+
+### 生体認証機能
+
+`CHSesameBiometricDeviceImpl` は製品 Profile に応じて機能を組み合わせます。
+
+| 製品シリーズ | 機能 |
+| --- | --- |
+| Touch | カード、指紋 |
+| Touch Pro | カード、指紋、暗証番号 |
+| Face | カード、指紋、手のひら、顔認証 |
+| Face Pro | カード、指紋、暗証番号、手のひら、顔認証 |
+| Face AI | 手のひら、顔認証 |
+| Face Pro AI | 暗証番号、手のひら、顔認証 |
+
+関連 API:`CHCardCapable`、`CHPassCodeCapable`、`CHFingerPrintCapable`、`CHPalmCapable`、`CHFaceCapable`、`CHRemoteNanoCapable`。
+
+## ビルド
+
+```bash
+./gradlew :app:assembleDebug
+```
+
+## メンテナンス方針
+
+- 新製品は `CHProductModel` に追加し、対応する OS3 Device 実装へマッピングします。
+- 共通処理は基底クラスへ集約し、製品差分は個別実装または Capability の組み合わせで対応します。
+- `co.candyhouse.sesame.ble.os2` は互換性維持のための旧コードであり、現在のメンテナンス対象外です。
+
+H5 ブランチの構成は [Android アーキテクチャ](docs/androidH5Architecture.md) を参照してください。SDK 単独利用時は BLE 起動前に `CHBleSupport` へ `CHBleHost`、`CHKeyPersistence`、ゲートウェイのテナント識別子を設定します。上記 JitPack 座標は既存リリース用で、このブランチは未公開です。
diff --git a/README_en.md b/README_en.md
new file mode 100644
index 0000000..e616a17
--- /dev/null
+++ b/README_en.md
@@ -0,0 +1,199 @@
+![Sesame SDK](https://raw.githubusercontent.com/CANDY-HOUSE/.github/refs/heads/main/profile/images/SesameSDK.png)
+
+# SesameOS3 Android
+
+[日本語](README.md) | [简体中文](README_zh-CN.md) | English
+
+An open-source project containing the CANDY HOUSE Android app and Sesame SDK. The project currently focuses on `co.candyhouse.sesame.ble.os3` and provides BLE connectivity, registration, control, state synchronization, and firmware updates for Sesame OS3 devices.
+
+- [CANDY HOUSE official website](https://jp.candyhouse.co/)
+- [Google Play](https://play.google.com/store/apps/details?id=co.candyhouse.sesame2)
+- [GitHub Releases](https://github.com/CANDY-HOUSE/SesameSDK_Android_with_DemoApp/releases)
+
+## Integrating the SDK
+
+### Requirements
+
+- Android Studio
+- JDK 17
+- Android SDK 36
+- minSdk 24
+
+### 1. Add the dependency
+
+To use the source module in the same project:
+
+```groovy
+dependencies {
+    implementation project(':sesameSdk')
+}
+```
+
+To use JitPack, add the repository to `settings.gradle`:
+
+```groovy
+dependencyResolutionManagement {
+    repositories {
+        google()
+        mavenCentral()
+        maven { url 'https://jitpack.io' }
+    }
+}
+```
+
+Then add the SDK to your app's `build.gradle`. Replace `<version>` with the desired tag from [Releases](https://github.com/CANDY-HOUSE/SesameSDK_Android_with_DemoApp/releases).
+
+```groovy
+dependencies {
+    implementation 'com.github.CANDY-HOUSE.SesameSDK_Android_with_DemoApp:sesame-sdk:<version>'
+}
+```
+
+### 2. Configure permissions
+
+Add the required permissions to your app's `AndroidManifest.xml`. Request location and Bluetooth runtime permissions before starting a BLE scan.
+
+```xml
+<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
+<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
+<uses-permission android:name="android.permission.INTERNET" />
+
+<uses-feature
+    android:name="android.hardware.bluetooth_le"
+    android:required="false" />
+```
+
+### 3. Initialize CANDY HOUSE services
+
+To use Sesame OS3 registration and cloud features, complete the following initialization when your application starts:
+
+1. Add `AWSCognitoAuthPlugin` and `AWSApiPlugin` to Amplify, then call `Amplify.configure(...)` with your Cognito and API configuration.
+2. Call `DeviceData.initialize(applicationContext)`.
+3. Call `CHBleManager(applicationContext)`.
+
+See [`AWSStatus.kt`](app/src/main/java/co/candyhouse/app/data/auth/AWSStatus.kt) and [`BaseApp.kt`](app/src/main/java/co/candyhouse/app/base/BaseApp.kt) in the Demo App for complete examples.
+
+```kotlin
+override fun onCreate() {
+    super.onCreate()
+
+    // Initialize after configuring Amplify Auth and API
+    DeviceData.initialize(applicationContext)
+    CHBleManager(applicationContext)
+}
+```
+
+The public Demo configuration for CANDY HOUSE services is intended for evaluation and may be subject to request or usage limits. For production, use your own Firebase, AWS, and Google Maps configuration, and never commit credentials to the repository.
+
+The Demo App also requires the following local configuration files:
+
+- `app.properties`: CANDY HOUSE API, AWS Cognito/IoT, and Google Maps configuration
+- `app/google-services.json`: Firebase configuration
+
+### 4. Discover and register a device
+
+After permissions are granted, start scanning and listen for unregistered devices. Connect to a device and call `register` when its state becomes `ReadyToRegister`.
+
+```kotlin
+CHBleManager.delegate = object : CHBleManagerDelegate {
+    override fun didDiscoverUnRegisteredCHDevices(devices: List<CHDevices>) {
+        val device = devices.firstOrNull() ?: return
+
+        device.delegate = object : CHDeviceStatusDelegate {
+            override fun onBleDeviceStatusChanged(
+                device: CHDevices,
+                status: CHDeviceStatus,
+                shadowStatus: CHDeviceStatus?
+            ) {
+                if (status == CHDeviceStatus.ReadyToRegister) {
+                    device.register { result ->
+                        result.onSuccess { /* Registration succeeded */ }
+                        result.onFailure { /* Registration failed */ }
+                    }
+                }
+            }
+        }
+
+        device.connect { }
+    }
+}
+
+CHBleManager.enableScan { result ->
+    result.onFailure { /* Check permissions or Bluetooth state */ }
+}
+```
+
+## Project structure
+
+| Module | Description |
+| --- | --- |
+| `app` | Android Demo App with device, account, and friend-related screens and flows |
+| `sesameSdk` | BLE, OS3 device implementations, and host service contracts |
+| `sesameSdk/.../ble` | Public device APIs, product models, and device management |
+| `sesameSdk/.../ble/os3` | Currently maintained OS3 protocol and device implementations |
+
+## OS3 device architecture
+
+```mermaid
+flowchart TB
+    Devices[CHDevices]
+
+    Devices --> Lock[CHSesameLock]
+    Lock --> LockBase[CHSesameOS3LockBase]
+    LockBase --> S5[CHSesame5Device]
+    LockBase --> Bike2[CHSesameBike2Device]
+    Bike2 --> Bike3[CHSesameBike3Device<br/>+ Fingerprint capability]
+    LockBase --> Bot2[CHSesameBot2Device]
+
+    Devices --> Connector[CHSesameConnector]
+    Connector --> Bio[CHSesameBiometricDevice]
+    Bio --> BioImpl[CHSesameBiometricDeviceImpl<br/>Capabilities by product profile]
+
+    Devices --> Gateway[CHWifiModule2]
+    Gateway --> Hub[CHHub3 / CHHub3Device]
+```
+
+### Supported products
+
+The supported product range is defined by `CHProductModel` and grouped below by the actual Device implementation.
+
+| Device implementation | Products |
+| --- | --- |
+| `CHSesame5Device` | Sesame 5, Sesame 5 Pro, Sesame 5 US, Sesame 6, Sesame 6 Pro, Sesame 6 Pro SlidingDoor, Sesame miwa, BLE Connector 1 |
+| `CHSesameBike2Device` | Sesame Bike 2 |
+| `CHSesameBike3Device` | Sesame Bike 3 (with fingerprint capability) |
+| `CHSesameBot2Device` | Sesame Bot 2, Sesame Bot 3 |
+| `CHSesameBiometricDeviceImpl` | Open Sensor 1/2, Remote, Remote Nano, Sesame Touch 1/1 Pro/2/2 Pro, Sesame Face 1/1 Pro/1 AI/1 Pro AI/2/2 Pro/2 AI/2 Pro AI |
+| `CHHub3Device` | Hub 3, Hub 3 Pro |
+
+> No longer maintained: Sesame 3 (`SS2`), WiFi Module 2 (`WM2`), Sesame Bot 1, Sesame Bike 1, and Sesame 4 (`SS4`).
+
+### Biometric capabilities
+
+`CHSesameBiometricDeviceImpl` assembles capabilities based on each product profile.
+
+| Product family | Capabilities |
+| --- | --- |
+| Touch | Card, fingerprint |
+| Touch Pro | Card, fingerprint, passcode |
+| Face | Card, fingerprint, palm, face |
+| Face Pro | Card, fingerprint, passcode, palm, face |
+| Face AI | Palm, face |
+| Face Pro AI | Passcode, palm, face |
+
+Related APIs: `CHCardCapable`, `CHPassCodeCapable`, `CHFingerPrintCapable`, `CHPalmCapable`, `CHFaceCapable`, and `CHRemoteNanoCapable`.
+
+## Build
+
+```bash
+./gradlew :app:assembleDebug
+```
+
+## Maintenance policy
+
+- Add new products to `CHProductModel` and map them to the corresponding OS3 Device implementation.
+- Keep shared behavior in base classes; implement product differences through dedicated implementations or Capability composition.
+- `co.candyhouse.sesame.ble.os2` contains legacy compatibility code and is outside the current maintenance scope.
+
+For this H5 branch, see [Android architecture](docs/androidH5Architecture.md). Standalone SDK hosts must initialize `CHBleSupport` with `CHBleHost`, `CHKeyPersistence`, and the gateway tenant ID before starting BLE. The JitPack coordinates above refer to existing releases; this branch is not published.
diff --git a/README_zh-CN.md b/README_zh-CN.md
new file mode 100644
index 0000000..015bda3
--- /dev/null
+++ b/README_zh-CN.md
@@ -0,0 +1,199 @@
+![Sesame SDK](https://raw.githubusercontent.com/CANDY-HOUSE/.github/refs/heads/main/profile/images/SesameSDK.png)
+
+# SesameOS3 Android
+
+[日本語](README.md) | 简体中文 | [English](README_en.md)
+
+CANDY HOUSE Android 应用与 Sesame SDK 开源项目。当前项目聚焦于 `co.candyhouse.sesame.ble.os3`,提供 Sesame OS3 设备的 BLE 连接、注册、控制、状态同步与固件升级能力。
+
+- [CANDY HOUSE 官网](https://jp.candyhouse.co/)
+- [Google Play](https://play.google.com/store/apps/details?id=co.candyhouse.sesame2)
+- [GitHub Releases](https://github.com/CANDY-HOUSE/SesameSDK_Android_with_DemoApp/releases)
+
+## 接入 SDK
+
+### 开发环境
+
+- Android Studio
+- JDK 17
+- Android SDK 36
+- minSdk 24
+
+### 1. 添加依赖
+
+在同一项目内直接使用源码:
+
+```groovy
+dependencies {
+    implementation project(':sesameSdk')
+}
+```
+
+通过 JitPack 接入时,先在 `settings.gradle` 中添加仓库:
+
+```groovy
+dependencyResolutionManagement {
+    repositories {
+        google()
+        mavenCentral()
+        maven { url 'https://jitpack.io' }
+    }
+}
+```
+
+然后在应用的 `build.gradle` 中添加 SDK。请将 `<version>` 替换为 [Releases](https://github.com/CANDY-HOUSE/SesameSDK_Android_with_DemoApp/releases) 中需要使用的版本标签。
+
+```groovy
+dependencies {
+    implementation 'com.github.CANDY-HOUSE.SesameSDK_Android_with_DemoApp:sesame-sdk:<version>'
+}
+```
+
+### 2. 配置权限
+
+在应用的 `AndroidManifest.xml` 中添加必要权限,并在开始 BLE 扫描前申请定位及蓝牙运行时权限。
+
+```xml
+<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
+<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
+<uses-permission android:name="android.permission.INTERNET" />
+
+<uses-feature
+    android:name="android.hardware.bluetooth_le"
+    android:required="false" />
+```
+
+### 3. 初始化 CANDY HOUSE 服务
+
+使用 Sesame OS3 注册和云端功能时,需要在应用启动阶段完成以下初始化:
+
+1. 向 Amplify 注册 `AWSCognitoAuthPlugin` 和 `AWSApiPlugin`,通过 Cognito/API 配置执行 `Amplify.configure(...)`。
+2. 调用 `DeviceData.initialize(applicationContext)`。
+3. 调用 `CHBleManager(applicationContext)`。
+
+具体实现可参考 Demo App 中的 [`AWSStatus.kt`](app/src/main/java/co/candyhouse/app/data/auth/AWSStatus.kt) 和 [`BaseApp.kt`](app/src/main/java/co/candyhouse/app/base/BaseApp.kt)。
+
+```kotlin
+override fun onCreate() {
+    super.onCreate()
+
+    // 完成 Amplify Auth/API 配置后再初始化
+    DeviceData.initialize(applicationContext)
+    CHBleManager(applicationContext)
+}
+```
+
+公共 Demo 使用的 CANDY HOUSE 服务配置仅供评估,可能存在请求次数等限制。生产环境请使用自己的 Firebase、AWS 与 Google Maps 配置,并且不要把任何凭证提交到代码仓库。
+
+运行 Demo App 还需要准备以下本地配置:
+
+- `app.properties`:CANDY HOUSE API、AWS Cognito/IoT、Google Maps 配置
+- `app/google-services.json`:Firebase 配置
+
+### 4. 发现并注册设备
+
+获得权限后启动扫描,通过回调接收未注册设备。设备连接成功并进入 `ReadyToRegister` 状态后调用 `register`。
+
+```kotlin
+CHBleManager.delegate = object : CHBleManagerDelegate {
+    override fun didDiscoverUnRegisteredCHDevices(devices: List<CHDevices>) {
+        val device = devices.firstOrNull() ?: return
+
+        device.delegate = object : CHDeviceStatusDelegate {
+            override fun onBleDeviceStatusChanged(
+                device: CHDevices,
+                status: CHDeviceStatus,
+                shadowStatus: CHDeviceStatus?
+            ) {
+                if (status == CHDeviceStatus.ReadyToRegister) {
+                    device.register { result ->
+                        result.onSuccess { /* 注册成功 */ }
+                        result.onFailure { /* 注册失败 */ }
+                    }
+                }
+            }
+        }
+
+        device.connect { }
+    }
+}
+
+CHBleManager.enableScan { result ->
+    result.onFailure { /* 检查权限或蓝牙状态 */ }
+}
+```
+
+## 项目结构
+
+| 模块 | 说明 |
+| --- | --- |
+| `app` | Android Demo App,包含设备、账户、好友等界面与业务流程 |
+| `sesameSdk` | BLE、OS3 设备实现与宿主服务接口;本地数据与 AWS 实现在 app/data |
+| `sesameSdk/.../ble` | 对外设备接口、产品型号与设备管理入口 |
+| `sesameSdk/.../ble/os3` | 当前维护的 Sesame OS3 协议与设备实现 |
+
+## OS3 设备架构
+
+```mermaid
+flowchart TB
+    Devices[CHDevices]
+
+    Devices --> Lock[CHSesameLock]
+    Lock --> LockBase[CHSesameOS3LockBase]
+    LockBase --> S5[CHSesame5Device]
+    LockBase --> Bike2[CHSesameBike2Device]
+    Bike2 --> Bike3[CHSesameBike3Device<br/>+ Fingerprint capability]
+    LockBase --> Bot2[CHSesameBot2Device]
+
+    Devices --> Connector[CHSesameConnector]
+    Connector --> Bio[CHSesameBiometricDevice]
+    Bio --> BioImpl[CHSesameBiometricDeviceImpl<br/>Capabilities by product profile]
+
+    Devices --> Gateway[CHWifiModule2]
+    Gateway --> Hub[CHHub3 / CHHub3Device]
+```
+
+### 当前维护产品
+
+产品范围以 `CHProductModel` 为准,按实际 Device 实现分组:
+
+| Device 实现 | 产品 |
+| --- | --- |
+| `CHSesame5Device` | Sesame 5、Sesame 5 Pro、Sesame 5 US、Sesame 6、Sesame 6 Pro、Sesame 6 Pro SlidingDoor、Sesame miwa、BLE Connector 1 |
+| `CHSesameBike2Device` | Sesame Bike 2 |
+| `CHSesameBike3Device` | Sesame Bike 3(组合指纹能力) |
+| `CHSesameBot2Device` | Sesame Bot 2、Sesame Bot 3 |
+| `CHSesameBiometricDeviceImpl` | Open Sensor 1/2、Remote、Remote Nano、Sesame Touch 1/1 Pro/2/2 Pro、Sesame Face 1/1 Pro/1 AI/1 Pro AI/2/2 Pro/2 AI/2 Pro AI |
+| `CHHub3Device` | Hub 3、Hub 3 Pro |
+
+> 不再维护:Sesame 3(`SS2`)、WiFi Module 2(`WM2`)、Sesame Bot 1、Sesame Bike 1、Sesame 4(`SS4`)。
+
+### 生物识别能力
+
+`CHSesameBiometricDeviceImpl` 通过产品 Profile 组合能力:
+
+| 产品系列 | 能力 |
+| --- | --- |
+| Touch | 卡片、指纹 |
+| Touch Pro | 卡片、指纹、密码 |
+| Face | 卡片、指纹、掌纹、人脸 |
+| Face Pro | 卡片、指纹、密码、掌纹、人脸 |
+| Face AI | 掌纹、人脸 |
+| Face Pro AI | 密码、掌纹、人脸 |
+
+相关接口包括 `CHCardCapable`、`CHPassCodeCapable`、`CHFingerPrintCapable`、`CHPalmCapable`、`CHFaceCapable` 与 `CHRemoteNanoCapable`。
+
+## 构建
+
+```bash
+./gradlew :app:assembleDebug
+```
+
+## 维护约定
+
+- 新产品需先在 `CHProductModel` 中登记,并映射到对应的 OS3 Device 实现。
+- 共性行为优先收敛到基础类;产品差异通过独立实现或 Capability 组合完成。
+- `co.candyhouse.sesame.ble.os2` 仅为历史兼容代码,不属于当前维护范围。
+
+当前 H5 分支的模块边界、初始化和验证范围见 [Android H5 架构](docs/androidH5Architecture.md)。独立接入源码 SDK 时,须先为 `CHBleSupport` 注入 `CHBleHost`、`CHKeyPersistence` 与网关租户标识,再启动 BLE。JitPack 示例坐标对应已有发布版本,本分支尚未发布。
diff --git a/app.properties b/app.properties
new file mode 100644
index 0000000..587147d
--- /dev/null
+++ b/app.properties
@@ -0,0 +1,11 @@
+# Resource mode is saved by the internal test switch (default: offline).
+candyhouse.sesame.web.dev=http://localhost:3000
+candyhouse.sesame.web.prod=https://pre-app-h5.d36dwtby1bef9y.amplifyapp.com
+
+# AWS Cognito Configuration
+aws.cognito.identityPoolId=ap-northeast-1:0a1820f1-dbb3-4bca-9227-2a92f6abf0ae
+aws.cognito.userPoolId=ap-northeast-1_bY2byhlCa
+aws.cognito.appClientId=6ialca0p8u0lsgvbmvsljfm305
+
+# Google Maps Android API
+google.maps.apiKey=YOUR_GOOGLE_MAP_KEY
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
new file mode 100755
index 0000000..d14664c
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,23 @@
+plugins {
+    alias(libs.plugins.android.application) apply false
+    alias(libs.plugins.android.library) apply false
+    alias(libs.plugins.ksp) apply false
+}
+
+ext {
+    // Build Version
+    compileSdkVersion = 36
+    minSdkVersion = 24
+    targetSdkVersion = 36
+
+    // Load Config
+    def configFile = file('app.properties')
+    if (configFile.exists()) {
+        def props = new Properties()
+        props.load(new FileInputStream(configFile))
+
+        props.each { key, value ->
+            ext[key] = value
+        }
+    }
+}
diff --git a/gradle.properties b/gradle.properties
new file mode 100755
index 0000000..edfc1be
--- /dev/null
+++ b/gradle.properties
@@ -0,0 +1,45 @@
+#
+# Copyright 2019, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# Project-wide Gradle settings.
+# IDE (e.g. Android Studio) users:
+# Gradle settings configured through the IDE *will override*
+# any settings specified in this file.
+# For more details on how to configure your build environment visit
+# http://www.gradle.org/docs/current/userguide/build_environment.html
+# When configured, Gradle will run in incubating parallel mode.
+# This option should only be used with decoupled projects. More details, visit
+# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
+
+# Gradle Performance Optimization
+org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:+UseParallelGC -Dkotlin.daemon.jvm.options="-Xmx2048M"
+org.gradle.daemon=true
+org.gradle.caching=true
+org.gradle.parallel=true
+org.gradle.configureondemand=true
+
+# Enabled parallel sync for Gradle 9.4+
+org.gradle.tooling.parallel=true
+
+# Kotlin Optimization
+kotlin.incremental=true
+kotlin.caching.enabled=true
+
+# KSP Optimization
+ksp.incremental=true
+
+# Android Configuration
+android.useAndroidX=true
+android.uniquePackageNames=true
\ No newline at end of file
diff --git a/gradle/gradle-daemon-jvm.properties b/gradle/gradle-daemon-jvm.properties
new file mode 100644
index 0000000..ae701de
--- /dev/null
+++ b/gradle/gradle-daemon-jvm.properties
@@ -0,0 +1,8 @@
+# This file is generated by updateDaemonJvm. DO NOT EDIT MANUALLY.
+toolchainUrl.LINUX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/402983f310a88ac68b3e883c7c91c760/redirect
+toolchainUrl.LINUX.X86_64=https\://api.foojay.io/disco/v3.0/ids/e50b80b5a11d194a898bc3e6211b7c4b/redirect
+toolchainUrl.MAC_OS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/f257be9f04bfdf169051808541767806/redirect
+toolchainUrl.MAC_OS.X86_64=https\://api.foojay.io/disco/v3.0/ids/1dcbacacca32618bd21ec5465779ade1/redirect
+toolchainUrl.WINDOWS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/476d3c08f4989328dee56d22e202d98d/redirect
+toolchainUrl.WINDOWS.X86_64=https\://api.foojay.io/disco/v3.0/ids/5a88b04b5e582b332d2e6bc12b45f1b9/redirect
+toolchainVersion=21
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
new file mode 100644
index 0000000..4645083
--- /dev/null
+++ b/gradle/libs.versions.toml
@@ -0,0 +1,47 @@
+[versions]
+agp = "9.4.1"
+ksp = "2.3.7"
+androidxActivity = "1.9.0"
+amplifyAndroid = "2.38.1"
+core = "3.3.3"
+desugarJdkLibs = "2.1.5"
+kotlinxCoroutinesAndroid = "1.7.3"
+lifecycleRuntimeKtx = "2.8.6"
+roomRuntime = "2.7.1"
+firebaseBom = "33.4.0"
+androidxAnnotation = "1.8.1"
+gson = "2.10.1"
+googleServices = "4.4.2"
+firebaseCrashlytics = "3.0.3"
+dfu = "2.5.0"
+playServicesLocation = "21.3.0"
+playServicesMaps = "19.0.0"
+
+[libraries]
+androidx-activity = { module = "androidx.activity:activity", version.ref = "androidxActivity" }
+firebase-bom = { module = "com.google.firebase:firebase-bom", version.ref = "firebaseBom" }
+firebase-messaging = { module = "com.google.firebase:firebase-messaging" }
+firebase-analytics = { module = "com.google.firebase:firebase-analytics" }
+firebase-crashlytics = { module = "com.google.firebase:firebase-crashlytics" }
+androidx-annotation = { module = "androidx.annotation:annotation", version.ref = "androidxAnnotation" }
+kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinxCoroutinesAndroid" }
+androidx-lifecycle-livedata-core = { module = "androidx.lifecycle:lifecycle-livedata-core", version.ref = "lifecycleRuntimeKtx" }
+gson = { module = "com.google.code.gson:gson", version.ref = "gson" }
+androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref = "roomRuntime" }
+androidx-room-ktx = { module = "androidx.room:room-ktx", version.ref = "roomRuntime" }
+androidx-room-runtime = { module = "androidx.room:room-runtime", version.ref = "roomRuntime" }
+amplify-aws-auth-cognito = { module = "com.amplifyframework:aws-auth-cognito", version.ref = "amplifyAndroid" }
+amplify-core-kotlin = { module = "com.amplifyframework:core-kotlin", version.ref = "amplifyAndroid" }
+core = { module = "com.google.zxing:core", version.ref = "core" }
+desugar-jdk-libs = { module = "com.android.tools:desugar_jdk_libs", version.ref = "desugarJdkLibs" }
+kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlinxCoroutinesAndroid" }
+dfu = { module = "no.nordicsemi.android:dfu", version.ref = "dfu" }
+play-services-location = { module = "com.google.android.gms:play-services-location", version.ref = "playServicesLocation" }
+play-services-maps = { module = "com.google.android.gms:play-services-maps", version.ref = "playServicesMaps" }
+
+[plugins]
+google-services = { id = "com.google.gms.google-services", version.ref = "googleServices" }
+firebase-crashlytics = { id = "com.google.firebase.crashlytics", version.ref = "firebaseCrashlytics" }
+android-application = { id = "com.android.application", version.ref = "agp" }
+android-library = { id = "com.android.library", version.ref = "agp" }
+ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
new file mode 100755
index 0000000..eddabd2
Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
new file mode 100755
index 0000000..64a5b37
--- /dev/null
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,5 @@
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.1-bin.zip
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
\ No newline at end of file
diff --git a/gradlew b/gradlew
new file mode 100755
index 0000000..249efbb
--- /dev/null
+++ b/gradlew
@@ -0,0 +1,248 @@
+#!/bin/sh
+
+#
+# Copyright © 2015 the original authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+#
+
+##############################################################################
+#
+#   gradlew start up script for POSIX generated by Gradle.
+#
+#   Important for running:
+#
+#   (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
+#       noncompliant, but you have some other compliant shell such as ksh or
+#       bash, then to run this script, type that shell name before the whole
+#       command line, like:
+#
+#           ksh gradlew
+#
+#       Busybox and similar reduced shells will NOT work, because this script
+#       requires all of these POSIX shell features:
+#         * functions;
+#         * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
+#           «${var#prefix}», «${var%suffix}», and «$( cmd )»;
+#         * compound commands having a testable exit status, especially «case»;
+#         * various built-in commands including «command», «set», and «ulimit».
+#
+#   Important for patching:
+#
+#   (2) This script targets any POSIX shell, so it avoids extensions provided
+#       by Bash, Ksh, etc; in particular arrays are avoided.
+#
+#       The "traditional" practice of packing multiple parameters into a
+#       space-separated string is a well documented source of bugs and security
+#       problems, so this is (mostly) avoided, by progressively accumulating
+#       options in "$@", and eventually passing that to Java.
+#
+#       Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
+#       and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
+#       see the in-line comments for details.
+#
+#       There are tweaks for specific operating systems such as AIX, CygWin,
+#       Darwin, MinGW, and NonStop.
+#
+#   (3) This script is generated from the Groovy template
+#       https://github.com/gradle/gradle/blob/3d91ce3b8caaf77ad09f381f43615b715b53f72c/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+#       within the Gradle project.
+#
+#       You can find Gradle at https://github.com/gradle/gradle/.
+#
+##############################################################################
+
+# Attempt to set APP_HOME
+
+# Resolve links: $0 may be a link
+app_path=$0
+
+# Need this for daisy-chained symlinks.
+while
+    APP_HOME=${app_path%"${app_path##*/}"}  # leaves a trailing /; empty if no leading path
+    [ -h "$app_path" ]
+do
+    ls=$( ls -ld "$app_path" )
+    link=${ls#*' -> '}
+    case $link in             #(
+      /*)   app_path=$link ;; #(
+      *)    app_path=$APP_HOME$link ;;
+    esac
+done
+
+# This is normally unused
+# shellcheck disable=SC2034
+APP_BASE_NAME=${0##*/}
+# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD=maximum
+
+warn () {
+    echo "$*"
+} >&2
+
+die () {
+    echo
+    echo "$*"
+    echo
+    exit 1
+} >&2
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+nonstop=false
+case "$( uname )" in                #(
+  CYGWIN* )         cygwin=true  ;; #(
+  Darwin* )         darwin=true  ;; #(
+  MSYS* | MINGW* )  msys=true    ;; #(
+  NONSTOP* )        nonstop=true ;;
+esac
+
+
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+        # IBM's JDK on AIX uses strange locations for the executables
+        JAVACMD=$JAVA_HOME/jre/sh/java
+    else
+        JAVACMD=$JAVA_HOME/bin/java
+    fi
+    if [ ! -x "$JAVACMD" ] ; then
+        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+    fi
+else
+    JAVACMD=java
+    if ! command -v java >/dev/null 2>&1
+    then
+        die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+    fi
+fi
+
+# Increase the maximum file descriptors if we can.
+if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
+    case $MAX_FD in #(
+      max*)
+        # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
+        # shellcheck disable=SC2039,SC3045
+        MAX_FD=$( ulimit -H -n ) ||
+            warn "Could not query maximum file descriptor limit"
+    esac
+    case $MAX_FD in  #(
+      '' | soft) :;; #(
+      *)
+        # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
+        # shellcheck disable=SC2039,SC3045
+        ulimit -n "$MAX_FD" ||
+            warn "Could not set maximum file descriptor limit to $MAX_FD"
+    esac
+fi
+
+# Collect all arguments for the java command, stacking in reverse order:
+#   * args from the command line
+#   * the main class name
+#   * -classpath
+#   * -D...appname settings
+#   * --module-path (only if needed)
+#   * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
+
+# For Cygwin or MSYS, switch paths to Windows format before running java
+if "$cygwin" || "$msys" ; then
+    APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
+
+    JAVACMD=$( cygpath --unix "$JAVACMD" )
+
+    # Now convert the arguments - kludge to limit ourselves to /bin/sh
+    for arg do
+        if
+            case $arg in                                #(
+              -*)   false ;;                            # don't mess with options #(
+              /?*)  t=${arg#/} t=/${t%%/*}              # looks like a POSIX filepath
+                    [ -e "$t" ] ;;                      #(
+              *)    false ;;
+            esac
+        then
+            arg=$( cygpath --path --ignore --mixed "$arg" )
+        fi
+        # Roll the args list around exactly as many times as the number of
+        # args, so each arg winds up back in the position where it started, but
+        # possibly modified.
+        #
+        # NB: a `for` loop captures its iteration list before it begins, so
+        # changing the positional parameters here affects neither the number of
+        # iterations, nor the values presented in `arg`.
+        shift                   # remove old arg
+        set -- "$@" "$arg"      # push replacement arg
+    done
+fi
+
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
+
+# Collect all arguments for the java command:
+#   * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+#     and any embedded shellness will be escaped.
+#   * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
+#     treated as '${Hostname}' itself on the command line.
+
+set -- \
+        "-Dorg.gradle.appname=$APP_BASE_NAME" \
+        -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
+        "$@"
+
+# Stop when "xargs" is not available.
+if ! command -v xargs >/dev/null 2>&1
+then
+    die "xargs is not available"
+fi
+
+# Use "xargs" to parse quoted args.
+#
+# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
+#
+# In Bash we could simply go:
+#
+#   readarray ARGS < <( xargs -n1 <<<"$var" ) &&
+#   set -- "${ARGS[@]}" "$@"
+#
+# but POSIX shell has neither arrays nor command substitution, so instead we
+# post-process each arg (as a line of input to sed) to backslash-escape any
+# character that might be a shell metacharacter, then use eval to reverse
+# that process (while maintaining the separation between arguments), and wrap
+# the whole thing up as a single "set" statement.
+#
+# This will of course break if any of these variables contains a newline or
+# an unmatched quote.
+#
+
+eval "set -- $(
+        printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
+        xargs -n1 |
+        sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
+        tr '\n' ' '
+    )" '"$@"'
+
+exec "$JAVACMD" "$@"
diff --git a/gradlew.bat b/gradlew.bat
new file mode 100755
index 0000000..8508ef6
--- /dev/null
+++ b/gradlew.bat
@@ -0,0 +1,82 @@
+@rem
+@rem Copyright 2015 the original author or authors.
+@rem
+@rem Licensed under the Apache License, Version 2.0 (the "License");
+@rem you may not use this file except in compliance with the License.
+@rem You may obtain a copy of the License at
+@rem
+@rem      https://www.apache.org/licenses/LICENSE-2.0
+@rem
+@rem Unless required by applicable law or agreed to in writing, software
+@rem distributed under the License is distributed on an "AS IS" BASIS,
+@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@rem See the License for the specific language governing permissions and
+@rem limitations under the License.
+@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
+
+@if "%DEBUG%"=="" @echo off
+@rem ##########################################################################
+@rem
+@rem  gradlew startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables, and ensure extensions are enabled
+setlocal EnableExtensions
+
+set DIRNAME=%~dp0
+if "%DIRNAME%"=="" set DIRNAME=.
+@rem This is normally unused
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if %ERRORLEVEL% equ 0 goto execute
+
+echo. 1>&2
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
+
+"%COMSPEC%" /c exit 1
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto execute
+
+echo. 1>&2
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
+
+"%COMSPEC%" /c exit 1
+
+:execute
+@rem Setup the command line
+
+
+
+@rem Execute gradlew
+@rem endlocal doesn't take effect until after the line is parsed and variables are expanded
+@rem which allows us to clear the local environment before executing the java command
+endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel
+
+:exitWithErrorLevel
+@rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts
+"%COMSPEC%" /c exit %ERRORLEVEL%
diff --git a/jitpack.yml b/jitpack.yml
new file mode 100644
index 0000000..727c9ab
--- /dev/null
+++ b/jitpack.yml
@@ -0,0 +1,2 @@
+jdk:
+  - openjdk21
diff --git a/sesameApp/.gitignore b/sesameApp/.gitignore
new file mode 100755
index 0000000..796b96d
--- /dev/null
+++ b/sesameApp/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/sesameApp/build.gradle b/sesameApp/build.gradle
new file mode 100755
index 0000000..6d8aac2
--- /dev/null
+++ b/sesameApp/build.gradle
@@ -0,0 +1,131 @@
+plugins {
+    alias(libs.plugins.android.application)
+    alias(libs.plugins.ksp)
+    alias(libs.plugins.google.services)
+    alias(libs.plugins.firebase.crashlytics)
+}
+
+android {
+    namespace 'co.candyhouse.app'
+    compileSdk = rootProject.ext.compileSdkVersion
+
+    signingConfigs {
+        release {
+            def passStore = System.getenv("storePassword")
+            def passKey = System.getenv("keyPassword")
+            def ssmKeyAlias = System.getenv("keyAlias")
+            storeFile file('keystore/Sesame.jks')
+            storePassword "$passStore"
+            keyPassword "$passKey"
+            keyAlias "$ssmKeyAlias"
+
+            // 处理 CI 环境中的签名文件
+            if (System.getenv("CI") == "true") {
+                println("CI signing...")
+                // CI 环境中跳过签名配置检查,因为签名将由 GitHub Actions 处理
+                storeFile = null
+                storePassword = null
+                keyPassword = null
+                keyAlias = null
+            }
+        }
+    }
+
+    defaultConfig {
+        manifestPlaceholders.googleMapsApiKey = rootProject.ext['google.maps.apiKey']
+        def getGitHash = providers.exec {
+            commandLine 'git', 'rev-parse', '--short=9', 'HEAD'
+        }.standardOutput.asText.get().trim()
+        applicationId 'co.candyhouse.sesame2'
+        minSdk rootProject.ext.minSdkVersion
+        targetSdk rootProject.ext.targetSdkVersion
+        versionCode 901
+        versionName '3.0.266'
+        buildConfigField("String", "GIT_HASH", "\"${getGitHash}\"")
+        // AWS Cognito 配置
+        buildConfigField("String", "AWS_IDENTITY_POOL_ID", "\"${rootProject.ext['aws.cognito.identityPoolId']}\"")
+        buildConfigField("String", "AWS_USER_POOL_ID", "\"${rootProject.ext['aws.cognito.userPoolId']}\"")
+        buildConfigField("String", "AWS_APP_CLIENT_ID", "\"${rootProject.ext['aws.cognito.appClientId']}\"")
+    }
+
+    buildTypes {
+        debug {
+            buildConfigField("String", "WEB_ORIGIN", "\"${rootProject.ext['candyhouse.sesame.web.dev']}\"")
+            manifestPlaceholders.crashlyticsCollectionEnabled = "false"
+            firebaseCrashlytics { mappingFileUploadEnabled false }
+            minifyEnabled false
+        }
+
+        release {
+            buildConfigField("String", "WEB_ORIGIN", "\"${rootProject.ext['candyhouse.sesame.web.prod']}\"")
+            manifestPlaceholders.crashlyticsCollectionEnabled = "true"
+            minifyEnabled true
+            shrinkResources true
+            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
+            if (signingConfigs.release.storeFile != null) {
+                println("Local signing...")
+                signingConfig signingConfigs.release
+            }
+            ndk {
+                debugSymbolLevel 'FULL'
+            }
+        }
+
+        ci {
+            initWith release
+            matchingFallbacks = ['release']
+        }
+
+    }
+
+    compileOptions {
+        coreLibraryDesugaringEnabled true
+        sourceCompatibility JavaVersion.VERSION_17
+        targetCompatibility JavaVersion.VERSION_17
+    }
+
+    packaging {
+        resources {
+            excludes += '/META-INF/DEPENDENCIES'
+        }
+    }
+
+    buildFeatures {
+        buildConfig true
+    }
+}
+
+androidComponents {
+    onVariants(selector().withBuildType("ci")) { variant ->
+        if (System.getenv("CI") == "true") {
+            def versionCode = System.getenv("VERSION_CODE")
+            if (versionCode != null) {
+                variant.outputs.forEach { output ->
+                    output.versionCode.set(Integer.parseInt(versionCode))
+                    println "Set CI version: ${versionCode}"
+                }
+            }
+        }
+    }
+}
+
+dependencies {
+    implementation project(':sesameSdk')
+
+    coreLibraryDesugaring libs.desugar.jdk.libs
+    implementation libs.amplify.aws.auth.cognito
+    implementation libs.amplify.core.kotlin
+    implementation libs.androidx.activity
+    implementation libs.androidx.room.runtime
+    implementation libs.androidx.room.ktx
+    ksp libs.androidx.room.compiler
+    implementation libs.kotlinx.coroutines.android
+    implementation libs.core
+    implementation platform(libs.firebase.bom)
+    implementation libs.firebase.messaging
+    implementation libs.firebase.analytics
+    implementation libs.firebase.crashlytics
+    implementation libs.dfu
+    implementation libs.play.services.location
+    implementation libs.play.services.maps
+}
diff --git a/sesameApp/google-services.json b/sesameApp/google-services.json
new file mode 100644
index 0000000..ac41321
--- /dev/null
+++ b/sesameApp/google-services.json
@@ -0,0 +1,35 @@
+{
+  "project_info": {
+    "project_number": "123456789000",
+    "firebase_url": "https://your-project-id.firebaseio.com",
+    "project_id": "your-project-id",
+    "storage_bucket": "your-project-id.appspot.com"
+  },
+  "client": [
+    {
+      "client_info": {
+        "mobilesdk_app_id": "1:123456789000:android:0000000000000000000000",
+        "android_client_info": {
+          "package_name": "co.candyhouse.sesame2"
+        }
+      },
+      "oauth_client": [
+        {
+          "client_id": "123456789000-00000000000000000000000000000000.apps.googleusercontent.com",
+          "client_type": 3
+        }
+      ],
+      "api_key": [
+        {
+          "current_key": "AIza0000000000000000000000000000000000000"
+        }
+      ],
+      "services": {
+        "appinvite_service": {
+          "other_platform_oauth_client": []
+        }
+      }
+    }
+  ],
+  "configuration_version": "1"
+}
\ No newline at end of file
diff --git a/sesameApp/proguard-rules.pro b/sesameApp/proguard-rules.pro
new file mode 100755
index 0000000..75d787e
--- /dev/null
+++ b/sesameApp/proguard-rules.pro
@@ -0,0 +1,12 @@
+-keepattributes SourceFile,LineNumberTable,Signature,*Annotation*,InnerClasses,EnclosingMethod
+
+# Firebase discovers registrars from manifest metadata and invokes their no-arg constructors.
+-keep class * implements com.google.firebase.components.ComponentRegistrar {
+    public <init>();
+}
+
+-assumenosideeffects class android.util.Log {
+    public static *** v(...);
+    public static *** d(...);
+    public static *** i(...);
+}
diff --git a/sesameApp/src/debug/AndroidManifest.xml b/sesameApp/src/debug/AndroidManifest.xml
new file mode 100644
index 0000000..0a1c86d
--- /dev/null
+++ b/sesameApp/src/debug/AndroidManifest.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <application android:networkSecurityConfig="@xml/network_security_config" />
+</manifest>
diff --git a/sesameApp/src/debug/res/xml/network_security_config.xml b/sesameApp/src/debug/res/xml/network_security_config.xml
new file mode 100644
index 0000000..2232fe5
--- /dev/null
+++ b/sesameApp/src/debug/res/xml/network_security_config.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+    <base-config cleartextTrafficPermitted="false" />
+    <domain-config cleartextTrafficPermitted="true">
+        <domain>localhost</domain>
+    </domain-config>
+</network-security-config>
diff --git a/sesameApp/src/main/AndroidManifest.xml b/sesameApp/src/main/AndroidManifest.xml
new file mode 100755
index 0000000..a54f105
--- /dev/null
+++ b/sesameApp/src/main/AndroidManifest.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+    <uses-permission android:name="android.permission.CAMERA" />
+    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
+    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+    <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
+    <uses-permission android:name="android.permission.NFC" />
+    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
+    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE" />
+    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+
+    <uses-feature
+        android:name="android.hardware.nfc"
+        android:required="false" />
+
+    <uses-feature
+        android:name="android.hardware.camera"
+        android:required="false" />
+
+    <application
+        android:name=".SesameApp"
+        android:allowBackup="false"
+        android:hardwareAccelerated="true"
+        android:icon="@drawable/app_icon"
+        android:roundIcon="@mipmap/ic_launcher_round"
+        android:label="@string/Sesame"
+        android:supportsRtl="true"
+        android:theme="@style/AppTheme">
+        <activity
+            android:name=".SesameActivity"
+            android:exported="true"
+            android:launchMode="singleTop"
+            android:windowSoftInputMode="adjustResize">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+                <category android:name="android.intent.category.LAUNCHER" />
+            </intent-filter>
+            <intent-filter>
+                <action android:name="android.nfc.action.NDEF_DISCOVERED" />
+                <category android:name="android.intent.category.DEFAULT" />
+                <data android:mimeType="text/plain" />
+            </intent-filter>
+        </activity>
+
+        <service
+            android:name=".ble.FirmwareDfuService"
+            android:exported="false" />
+        <service
+            android:name=".connecteddevice.SesameConnectedDeviceService"
+            android:exported="false"
+            android:foregroundServiceType="connectedDevice" />
+        <service
+            android:name=".push.SesameFirebaseMessagingService"
+            android:exported="false">
+            <intent-filter>
+                <action android:name="com.google.firebase.MESSAGING_EVENT" />
+            </intent-filter>
+        </service>
+
+        <receiver
+            android:name=".connecteddevice.AutoUnlockGeofenceReceiver"
+            android:exported="false" />
+        <receiver
+            android:name=".connecteddevice.AutoUnlockBootReceiver"
+            android:exported="false">
+            <intent-filter>
+                <action android:name="android.intent.action.BOOT_COMPLETED" />
+                <action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
+            </intent-filter>
+        </receiver>
+
+        <meta-data
+            android:name="firebase_crashlytics_collection_enabled"
+            android:value="${crashlyticsCollectionEnabled}" />
+        <meta-data
+            android:name="com.google.android.geo.API_KEY"
+            android:value="${googleMapsApiKey}" />
+    </application>
+</manifest>
diff --git a/sesameApp/src/main/assets/biz/asset-manifest.json b/sesameApp/src/main/assets/biz/asset-manifest.json
new file mode 100644
index 0000000..e534857
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/asset-manifest.json
@@ -0,0 +1,35 @@
+{
+  "files": {
+    "main.css": "/static/css/main.7211a735.css",
+    "main.js": "/static/js/main.5b3a6865.js",
+    "static/media/gif_finger.gif": "/static/media/gif_finger.f47cf6fa5db051dc7697.gif",
+    "static/media/site-icon.png": "/static/media/site-icon.66c4e4529967fda91a5b.png",
+    "static/media/knob.png": "/static/media/knob.9376c5afa509d20cdf6d.png",
+    "static/media/png_ir_match.png": "/static/media/png_ir_match.1dc7e8f70f4c8cd8fd2f.png",
+    "static/media/facepro_tips.png": "/static/media/facepro_tips.951dd4937368ae060f0e.png",
+    "static/media/face_tips.png": "/static/media/face_tips.93d19c32a9027deb0dd9.png",
+    "static/media/palmpro_tips.png": "/static/media/palmpro_tips.40280d3200c2aca566ec.png",
+    "static/media/palm_tips.png": "/static/media/palm_tips.ae60fa490afedfbd05d2.png",
+    "static/media/png_air_model_cold_02.png": "/static/media/png_air_model_cold_02.27b4f3e1758dd0b27af8.png",
+    "static/media/png_air_model_dry_03.png": "/static/media/png_air_model_dry_03.52d983b129236da82d77.png",
+    "static/media/png_air_model_auto_01.png": "/static/media/png_air_model_auto_01.d518eec82edeb8e6af5f.png",
+    "static/media/png_air_model_wind_04.png": "/static/media/png_air_model_wind_04.abd4dc20ea8f21374d54.png",
+    "static/media/png_air_model_hot_05.png": "/static/media/png_air_model_hot_05.3073c23fda71454fc14c.png",
+    "static/media/png_air_wind_vertical_v2.png": "/static/media/png_air_wind_vertical_v2.369996ae7d246d539407.png",
+    "static/media/png_air_wind_vertical_v3.png": "/static/media/png_air_wind_vertical_v3.fadae6c24cb3dc1a4e30.png",
+    "static/media/png_air_wind_speed_v3.png": "/static/media/png_air_wind_speed_v3.36aa6dfd51b9e42791fa.png",
+    "static/media/png_air_wind_speed_v2.png": "/static/media/png_air_wind_speed_v2.73b6524d9fc6fc736505.png",
+    "static/media/png_air_wind_speed_v1.png": "/static/media/png_air_wind_speed_v1.79fdd6fd4367a1c45f50.png",
+    "static/media/png_air_wind_speed_auto.png": "/static/media/png_air_wind_speed_auto.b3db6a283d7fa76a791d.png",
+    "static/media/png_fan.png": "/static/media/png_fan.c435dd5165febb6fbd71.png",
+    "static/media/vision.svg": "/static/media/vision.2e0ec6406814048f361af3f16b60f0e4.svg",
+    "index.html": "/index.html",
+    "static/media/locked.svg": "/static/media/locked.5129de54382b91719c523d6eb7dd5f49.svg",
+    "static/media/unlocked.svg": "/static/media/unlocked.46651d2494fea7d9b8eb6d203c496a69.svg",
+    "static/media/arrow.svg": "/static/media/arrow.0b1bb0506b894eb647e0179d5b72f6ff.svg"
+  },
+  "entrypoints": [
+    "static/css/main.7211a735.css",
+    "static/js/main.5b3a6865.js"
+  ]
+}
\ No newline at end of file
diff --git a/sesameApp/src/main/assets/biz/favicon.ico b/sesameApp/src/main/assets/biz/favicon.ico
new file mode 100644
index 0000000..0e17a30
Binary files /dev/null and b/sesameApp/src/main/assets/biz/favicon.ico differ
diff --git a/sesameApp/src/main/assets/biz/index.html b/sesameApp/src/main/assets/biz/index.html
new file mode 100644
index 0000000..c0645a2
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/index.html
@@ -0,0 +1 @@
+<!doctype html><html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width,initial-scale=1"/><title>Biz</title><link rel="icon" href="./favicon.ico"/><base href="/"/><script defer="defer" src="/static/js/main.5b3a6865.js"></script><link href="/static/css/main.7211a735.css" rel="stylesheet"></head><script async src="https://www.googletagmanager.com/gtag/js?id=G-TBR6WVCZZW"></script><script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-TBR6WVCZZW")</script><body><div id="root"></div></body></html>
\ No newline at end of file
diff --git a/sesameApp/src/main/assets/biz/static/css/main.7211a735.css b/sesameApp/src/main/assets/biz/static/css/main.7211a735.css
new file mode 100644
index 0000000..3a4dfb4
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/static/css/main.7211a735.css
@@ -0,0 +1 @@
+@charset "UTF-8";@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap);.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-wrapper{border:0;display:inline-block;padding:0}.react-datepicker{background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;color:#000;display:inline-block;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:normal;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{line-height:0;z-index:1}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative;text-align:center}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__year-dropdown-container--select{display:inline-block;margin:0 15px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#000;font-size:.944rem;font-weight:700;margin-top:0}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-datepicker__navigation{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;padding:0;position:absolute;text-align:center;text-indent:-999em;top:2px;width:32px;z-index:1}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{display:block;margin-left:auto;margin-right:auto;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{font-size:20px;position:relative;top:-1px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__input-time-container{clear:both;float:left;margin:5px 0 10px 15px;text-align:left;width:100%}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{display:inline-block;margin-left:5px}.react-datepicker__time-container{border-left:1px solid #aeaeae;float:right;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{border-bottom-right-radius:.3rem;margin:0 auto;overflow-x:hidden;text-align:center;width:85px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:initial;height:calc(195px + .85rem);list-style:none;margin:0;overflow-y:scroll;padding-left:0;padding-right:0;width:100%}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{background-color:#f0f0f0;cursor:pointer}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{background-color:initial;cursor:default}.react-datepicker__week-number{color:#ccc;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected,.react-datepicker__week-number--keyboard-selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__week-number--keyboard-selected{background-color:#2a87d0;border-radius:.3rem;color:#fff}.react-datepicker__week-number--keyboard-selected:hover{background-color:#1d5d90}.react-datepicker__day-names{margin-bottom:-8px;white-space:nowrap}.react-datepicker__week{white-space:nowrap}.react-datepicker__day,.react-datepicker__day-name,.react-datepicker__time-name{color:#000;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{background-color:#3dcc4a;border-radius:.3rem;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{background-color:#ff6803;border-radius:.3rem;color:#fff;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{background-color:#333;border-radius:4px;bottom:100%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{opacity:1;visibility:visible}.react-datepicker__day--in-range,.react-datepicker__day--in-selecting-range,.react-datepicker__day--selected,.react-datepicker__month-text--in-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--in-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--in-range,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{background-color:#bad9f1;border-radius:.3rem;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{color:#ccc;cursor:default}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{background-color:#333;border-radius:4px;bottom:70%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__input-container{display:inline-block;position:relative;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:initial;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__month-read-view,.react-datepicker__month-year-read-view,.react-datepicker__year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover,.react-datepicker__year-read-view:hover{cursor:pointer}.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__year-read-view--down-arrow{right:-16px;top:0;transform:rotate(135deg)}.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown{background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;left:25%;position:absolute;text-align:center;top:30px;width:50%;z-index:1}.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover,.react-datepicker__year-dropdown:hover{cursor:pointer}.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable,.react-datepicker__year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__month-option,.react-datepicker__month-year-option,.react-datepicker__year-option{display:block;line-height:20px;margin-left:auto;margin-right:auto;width:100%}.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type,.react-datepicker__year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type,.react-datepicker__year-option:last-of-type{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;-webkit-user-select:none;user-select:none}.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover,.react-datepicker__year-option:hover{background-color:#ccc}.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected,.react-datepicker__year-option--selected{left:15px;position:absolute}.react-datepicker__close-icon{background-color:initial;border:0;cursor:pointer;display:table-cell;height:100%;outline:0;padding:0 6px 0 0;position:absolute;right:0;top:0;vertical-align:middle}.react-datepicker__close-icon:after{background-color:#216ba5;border-radius:50%;color:#fff;content:"×";cursor:pointer;display:table-cell;font-size:12px;height:16px;line-height:1;padding:2px;text-align:center;vertical-align:middle;width:16px}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{background-color:#ccc;cursor:default}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;clear:left;cursor:pointer;font-weight:700;padding:5px 0;text-align:center}.react-datepicker__portal{align-items:center;background-color:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2147483647}.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:3rem;width:3rem}@media (max-height:550px),(max-width:400px){.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:2rem;width:2rem}}.react-datepicker__portal .react-datepicker-time__header,.react-datepicker__portal .react-datepicker__current-month{font-size:1.44rem}.react-datepicker__children-container{height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem;width:13.8rem}.react-datepicker__aria-live{border:0;clip-path:circle(0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker__calendar-icon{height:1em;vertical-align:-.125em;width:1em}#___gatsby,#gatsby-focus-wrapper,body,html{height:100%;letter-spacing:.02rem!important}a{display:block;text-decoration:none}.react-datepicker__day--weekend{background:#fdea8e}.react-datepicker-popper{z-index:2000!important}.react-datepicker__input-container{width:250px!important}.react-datepicker__input-container>.MuiTextField-root{width:100%!important}.react-datepicker-wrapper{width:auto!important}
\ No newline at end of file
diff --git a/sesameApp/src/main/assets/biz/static/js/main.5b3a6865.js b/sesameApp/src/main/assets/biz/static/js/main.5b3a6865.js
new file mode 100644
index 0000000..3151c8c
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/static/js/main.5b3a6865.js
@@ -0,0 +1,133 @@
+/*! For license information please see main.5b3a6865.js.LICENSE.txt */
+(()=>{var e={5412:(e,t,r)=>{"use strict";var n=r(46676),o=r(66897),a=r(52576);function i(){return l.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(i()<t)throw new RangeError("Invalid typed array length");return l.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=l.prototype:(null===e&&(e=new l(t)),e.length=t),e}function l(e,t,r){if(!l.TYPED_ARRAY_SUPPORT&&!(this instanceof l))return new l(e,t,r);if("number"===typeof e){if("string"===typeof t)throw new Error("If encoding is specified then the first argument must be a string");return d(this,e)}return c(this,e,t,r)}function c(e,t,r,n){if("number"===typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!==typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,r,n){if(t.byteLength,r<0||t.byteLength<r)throw new RangeError("'offset' is out of bounds");if(t.byteLength<r+(n||0))throw new RangeError("'length' is out of bounds");t=void 0===r&&void 0===n?new Uint8Array(t):void 0===n?new Uint8Array(t,r):new Uint8Array(t,r,n);l.TYPED_ARRAY_SUPPORT?(e=t).__proto__=l.prototype:e=f(e,t);return e}(e,t,r,n):"string"===typeof t?function(e,t,r){"string"===typeof r&&""!==r||(r="utf8");if(!l.isEncoding(r))throw new TypeError('"encoding" must be a valid string encoding');var n=0|h(t,r);e=s(e,n);var o=e.write(t,r);o!==n&&(e=e.slice(0,o));return e}(e,t,r):function(e,t){if(l.isBuffer(t)){var r=0|p(t.length);return 0===(e=s(e,r)).length||t.copy(e,0,0,r),e}if(t){if("undefined"!==typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!==typeof t.length||function(e){return e!==e}(t.length)?s(e,0):f(e,t);if("Buffer"===t.type&&a(t.data))return f(e,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function u(e){if("number"!==typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function d(e,t){if(u(t),e=s(e,t<0?0:0|p(t)),!l.TYPED_ARRAY_SUPPORT)for(var r=0;r<t;++r)e[r]=0;return e}function f(e,t){var r=t.length<0?0:0|p(t.length);e=s(e,r);for(var n=0;n<r;n+=1)e[n]=255&t[n];return e}function p(e){if(e>=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|e}function h(e,t){if(l.isBuffer(e))return e.length;if("undefined"!==typeof ArrayBuffer&&"function"===typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!==typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return z(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return W(e).length;default:if(n)return z(e).length;t=(""+t).toLowerCase(),n=!0}}function m(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,r);case"utf8":case"utf-8":return I(this,t,r);case"ascii":return D(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return C(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function g(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function v(e,t,r,n,o){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=o?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(o)return-1;r=e.length-1}else if(r<0){if(!o)return-1;r=0}if("string"===typeof t&&(t=l.from(t,n)),l.isBuffer(t))return 0===t.length?-1:y(e,t,r,n,o);if("number"===typeof t)return t&=255,l.TYPED_ARRAY_SUPPORT&&"function"===typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):y(e,[t],r,n,o);throw new TypeError("val must be string, number or Buffer")}function y(e,t,r,n,o){var a,i=1,s=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;i=2,s/=2,l/=2,r/=2}function c(e,t){return 1===i?e[t]:e.readUInt16BE(t*i)}if(o){var u=-1;for(a=r;a<s;a++)if(c(e,a)===c(t,-1===u?0:a-u)){if(-1===u&&(u=a),a-u+1===l)return u*i}else-1!==u&&(a-=a-u),u=-1}else for(r+l>s&&(r=s-l),a=r;a>=0;a--){for(var d=!0,f=0;f<l;f++)if(c(e,a+f)!==c(t,f)){d=!1;break}if(d)return a}return-1}function b(e,t,r,n){r=Number(r)||0;var o=e.length-r;n?(n=Number(n))>o&&(n=o):n=o;var a=t.length;if(a%2!==0)throw new TypeError("Invalid hex string");n>a/2&&(n=a/2);for(var i=0;i<n;++i){var s=parseInt(t.substr(2*i,2),16);if(isNaN(s))return i;e[r+i]=s}return i}function w(e,t,r,n){return H(z(t,e.length-r),e,r,n)}function x(e,t,r,n){return H(function(e){for(var t=[],r=0;r<e.length;++r)t.push(255&e.charCodeAt(r));return t}(t),e,r,n)}function S(e,t,r,n){return x(e,t,r,n)}function A(e,t,r,n){return H(W(t),e,r,n)}function k(e,t,r,n){return H(function(e,t){for(var r,n,o,a=[],i=0;i<e.length&&!((t-=2)<0);++i)n=(r=e.charCodeAt(i))>>8,o=r%256,a.push(o),a.push(n);return a}(t,e.length-r),e,r,n)}function C(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function I(e,t,r){r=Math.min(e.length,r);for(var n=[],o=t;o<r;){var a,i,s,l,c=e[o],u=null,d=c>239?4:c>223?3:c>191?2:1;if(o+d<=r)switch(d){case 1:c<128&&(u=c);break;case 2:128===(192&(a=e[o+1]))&&(l=(31&c)<<6|63&a)>127&&(u=l);break;case 3:a=e[o+1],i=e[o+2],128===(192&a)&&128===(192&i)&&(l=(15&c)<<12|(63&a)<<6|63&i)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:a=e[o+1],i=e[o+2],s=e[o+3],128===(192&a)&&128===(192&i)&&128===(192&s)&&(l=(15&c)<<18|(63&a)<<12|(63&i)<<6|63&s)>65535&&l<1114112&&(u=l)}null===u?(u=65533,d=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),o+=d}return function(e){var t=e.length;if(t<=E)return String.fromCharCode.apply(String,e);var r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=E));return r}(n)}t.hp=l,t.IS=50,l.TYPED_ARRAY_SUPPORT=void 0!==r.g.TYPED_ARRAY_SUPPORT?r.g.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"===typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(t){return!1}}(),i(),l.poolSize=8192,l._augment=function(e){return e.__proto__=l.prototype,e},l.from=function(e,t,r){return c(null,e,t,r)},l.TYPED_ARRAY_SUPPORT&&(l.prototype.__proto__=Uint8Array.prototype,l.__proto__=Uint8Array,"undefined"!==typeof Symbol&&Symbol.species&&l[Symbol.species]===l&&Object.defineProperty(l,Symbol.species,{value:null,configurable:!0})),l.alloc=function(e,t,r){return function(e,t,r,n){return u(t),t<=0?s(e,t):void 0!==r?"string"===typeof n?s(e,t).fill(r,n):s(e,t).fill(r):s(e,t)}(null,e,t,r)},l.allocUnsafe=function(e){return d(null,e)},l.allocUnsafeSlow=function(e){return d(null,e)},l.isBuffer=function(e){return!(null==e||!e._isBuffer)},l.compare=function(e,t){if(!l.isBuffer(e)||!l.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var r=e.length,n=t.length,o=0,a=Math.min(r,n);o<a;++o)if(e[o]!==t[o]){r=e[o],n=t[o];break}return r<n?-1:n<r?1:0},l.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},l.concat=function(e,t){if(!a(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return l.alloc(0);var r;if(void 0===t)for(t=0,r=0;r<e.length;++r)t+=e[r].length;var n=l.allocUnsafe(t),o=0;for(r=0;r<e.length;++r){var i=e[r];if(!l.isBuffer(i))throw new TypeError('"list" argument must be an Array of Buffers');i.copy(n,o),o+=i.length}return n},l.byteLength=h,l.prototype._isBuffer=!0,l.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)g(this,t,t+1);return this},l.prototype.swap32=function(){var e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)g(this,t,t+3),g(this,t+1,t+2);return this},l.prototype.swap64=function(){var e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)g(this,t,t+7),g(this,t+1,t+6),g(this,t+2,t+5),g(this,t+3,t+4);return this},l.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?I(this,0,e):m.apply(this,arguments)},l.prototype.equals=function(e){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===l.compare(this,e)},l.prototype.inspect=function(){var e="",r=t.IS;return this.length>0&&(e=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(e+=" ... ")),"<Buffer "+e+">"},l.prototype.compare=function(e,t,r,n,o){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),t<0||r>e.length||n<0||o>this.length)throw new RangeError("out of range index");if(n>=o&&t>=r)return 0;if(n>=o)return-1;if(t>=r)return 1;if(this===e)return 0;for(var a=(o>>>=0)-(n>>>=0),i=(r>>>=0)-(t>>>=0),s=Math.min(a,i),c=this.slice(n,o),u=e.slice(t,r),d=0;d<s;++d)if(c[d]!==u[d]){a=c[d],i=u[d];break}return a<i?-1:i<a?1:0},l.prototype.includes=function(e,t,r){return-1!==this.indexOf(e,t,r)},l.prototype.indexOf=function(e,t,r){return v(this,e,t,r,!0)},l.prototype.lastIndexOf=function(e,t,r){return v(this,e,t,r,!1)},l.prototype.write=function(e,t,r,n){if(void 0===t)n="utf8",r=this.length,t=0;else if(void 0===r&&"string"===typeof t)n=t,r=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(r)?(r|=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var o=this.length-t;if((void 0===r||r>o)&&(r=o),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return b(this,e,t,r);case"utf8":case"utf-8":return w(this,e,t,r);case"ascii":return x(this,e,t,r);case"latin1":case"binary":return S(this,e,t,r);case"base64":return A(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var E=4096;function D(e,t,r){var n="";r=Math.min(e.length,r);for(var o=t;o<r;++o)n+=String.fromCharCode(127&e[o]);return n}function T(e,t,r){var n="";r=Math.min(e.length,r);for(var o=t;o<r;++o)n+=String.fromCharCode(e[o]);return n}function O(e,t,r){var n=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>n)&&(r=n);for(var o="",a=t;a<r;++a)o+=F(e[a]);return o}function M(e,t,r){for(var n=e.slice(t,r),o="",a=0;a<n.length;a+=2)o+=String.fromCharCode(n[a]+256*n[a+1]);return o}function P(e,t,r){if(e%1!==0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}function j(e,t,r,n,o,a){if(!l.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||t<a)throw new RangeError('"value" argument is out of bounds');if(r+n>e.length)throw new RangeError("Index out of range")}function R(e,t,r,n){t<0&&(t=65535+t+1);for(var o=0,a=Math.min(e.length-r,2);o<a;++o)e[r+o]=(t&255<<8*(n?o:1-o))>>>8*(n?o:1-o)}function _(e,t,r,n){t<0&&(t=4294967295+t+1);for(var o=0,a=Math.min(e.length-r,4);o<a;++o)e[r+o]=t>>>8*(n?o:3-o)&255}function N(e,t,r,n,o,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function L(e,t,r,n,a){return a||N(e,0,r,4),o.write(e,t,r,n,23,4),r+4}function U(e,t,r,n,a){return a||N(e,0,r,8),o.write(e,t,r,n,52,8),r+8}l.prototype.slice=function(e,t){var r,n=this.length;if((e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t<e&&(t=e),l.TYPED_ARRAY_SUPPORT)(r=this.subarray(e,t)).__proto__=l.prototype;else{var o=t-e;r=new l(o,void 0);for(var a=0;a<o;++a)r[a]=this[a+e]}return r},l.prototype.readUIntLE=function(e,t,r){e|=0,t|=0,r||P(e,t,this.length);for(var n=this[e],o=1,a=0;++a<t&&(o*=256);)n+=this[e+a]*o;return n},l.prototype.readUIntBE=function(e,t,r){e|=0,t|=0,r||P(e,t,this.length);for(var n=this[e+--t],o=1;t>0&&(o*=256);)n+=this[e+--t]*o;return n},l.prototype.readUInt8=function(e,t){return t||P(e,1,this.length),this[e]},l.prototype.readUInt16LE=function(e,t){return t||P(e,2,this.length),this[e]|this[e+1]<<8},l.prototype.readUInt16BE=function(e,t){return t||P(e,2,this.length),this[e]<<8|this[e+1]},l.prototype.readUInt32LE=function(e,t){return t||P(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},l.prototype.readUInt32BE=function(e,t){return t||P(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},l.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||P(e,t,this.length);for(var n=this[e],o=1,a=0;++a<t&&(o*=256);)n+=this[e+a]*o;return n>=(o*=128)&&(n-=Math.pow(2,8*t)),n},l.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||P(e,t,this.length);for(var n=t,o=1,a=this[e+--n];n>0&&(o*=256);)a+=this[e+--n]*o;return a>=(o*=128)&&(a-=Math.pow(2,8*t)),a},l.prototype.readInt8=function(e,t){return t||P(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},l.prototype.readInt16LE=function(e,t){t||P(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},l.prototype.readInt16BE=function(e,t){t||P(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},l.prototype.readInt32LE=function(e,t){return t||P(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},l.prototype.readInt32BE=function(e,t){return t||P(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},l.prototype.readFloatLE=function(e,t){return t||P(e,4,this.length),o.read(this,e,!0,23,4)},l.prototype.readFloatBE=function(e,t){return t||P(e,4,this.length),o.read(this,e,!1,23,4)},l.prototype.readDoubleLE=function(e,t){return t||P(e,8,this.length),o.read(this,e,!0,52,8)},l.prototype.readDoubleBE=function(e,t){return t||P(e,8,this.length),o.read(this,e,!1,52,8)},l.prototype.writeUIntLE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||j(this,e,t,r,Math.pow(2,8*r)-1,0);var o=1,a=0;for(this[t]=255&e;++a<r&&(o*=256);)this[t+a]=e/o&255;return t+r},l.prototype.writeUIntBE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||j(this,e,t,r,Math.pow(2,8*r)-1,0);var o=r-1,a=1;for(this[t+o]=255&e;--o>=0&&(a*=256);)this[t+o]=e/a&255;return t+r},l.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,1,255,0),l.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},l.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):R(this,e,t,!0),t+2},l.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):R(this,e,t,!1),t+2},l.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):_(this,e,t,!0),t+4},l.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):_(this,e,t,!1),t+4},l.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t|=0,!n){var o=Math.pow(2,8*r-1);j(this,e,t,r,o-1,-o)}var a=0,i=1,s=0;for(this[t]=255&e;++a<r&&(i*=256);)e<0&&0===s&&0!==this[t+a-1]&&(s=1),this[t+a]=(e/i|0)-s&255;return t+r},l.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t|=0,!n){var o=Math.pow(2,8*r-1);j(this,e,t,r,o-1,-o)}var a=r-1,i=1,s=0;for(this[t+a]=255&e;--a>=0&&(i*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/i|0)-s&255;return t+r},l.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,1,127,-128),l.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},l.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):R(this,e,t,!0),t+2},l.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):R(this,e,t,!1),t+2},l.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,4,2147483647,-2147483648),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):_(this,e,t,!0),t+4},l.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):_(this,e,t,!1),t+4},l.prototype.writeFloatLE=function(e,t,r){return L(this,e,t,!0,r)},l.prototype.writeFloatBE=function(e,t,r){return L(this,e,t,!1,r)},l.prototype.writeDoubleLE=function(e,t,r){return U(this,e,t,!0,r)},l.prototype.writeDoubleBE=function(e,t,r){return U(this,e,t,!1,r)},l.prototype.copy=function(e,t,r,n){if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t<n-r&&(n=e.length-t+r);var o,a=n-r;if(this===e&&r<t&&t<n)for(o=a-1;o>=0;--o)e[o+t]=this[o+r];else if(a<1e3||!l.TYPED_ARRAY_SUPPORT)for(o=0;o<a;++o)e[o+t]=this[o+r];else Uint8Array.prototype.set.call(e,this.subarray(r,r+a),t);return a},l.prototype.fill=function(e,t,r,n){if("string"===typeof e){if("string"===typeof t?(n=t,t=0,r=this.length):"string"===typeof r&&(n=r,r=this.length),1===e.length){var o=e.charCodeAt(0);o<256&&(e=o)}if(void 0!==n&&"string"!==typeof n)throw new TypeError("encoding must be a string");if("string"===typeof n&&!l.isEncoding(n))throw new TypeError("Unknown encoding: "+n)}else"number"===typeof e&&(e&=255);if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;var a;if(t>>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(a=t;a<r;++a)this[a]=e;else{var i=l.isBuffer(e)?e:z(new l(e,n).toString()),s=i.length;for(a=0;a<r-t;++a)this[a+t]=i[a%s]}return this};var B=/[^+\/0-9A-Za-z-_]/g;function F(e){return e<16?"0"+e.toString(16):e.toString(16)}function z(e,t){var r;t=t||1/0;for(var n=e.length,o=null,a=[],i=0;i<n;++i){if((r=e.charCodeAt(i))>55295&&r<57344){if(!o){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(i+1===n){(t-=3)>-1&&a.push(239,191,189);continue}o=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(t-=3)>-1&&a.push(239,191,189);if(o=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function W(e){return n.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(B,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function H(e,t,r,n){for(var o=0;o<n&&!(o+r>=t.length||o>=e.length);++o)t[o+r]=e[o];return o}},13680:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RawSha256=void 0;var n=r(1280),o=function(){function e(){this.state=Int32Array.from(n.INIT),this.temp=new Int32Array(64),this.buffer=new Uint8Array(64),this.bufferLength=0,this.bytesHashed=0,this.finished=!1}return e.prototype.update=function(e){if(this.finished)throw new Error("Attempted to update an already finished hash.");var t=0,r=e.byteLength;if(this.bytesHashed+=r,8*this.bytesHashed>n.MAX_HASHABLE_LENGTH)throw new Error("Cannot hash more than 2^53 - 1 bits");for(;r>0;)this.buffer[this.bufferLength++]=e[t++],r--,this.bufferLength===n.BLOCK_SIZE&&(this.hashBuffer(),this.bufferLength=0)},e.prototype.digest=function(){if(!this.finished){var e=8*this.bytesHashed,t=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength),r=this.bufferLength;if(t.setUint8(this.bufferLength++,128),r%n.BLOCK_SIZE>=n.BLOCK_SIZE-8){for(var o=this.bufferLength;o<n.BLOCK_SIZE;o++)t.setUint8(o,0);this.hashBuffer(),this.bufferLength=0}for(o=this.bufferLength;o<n.BLOCK_SIZE-8;o++)t.setUint8(o,0);t.setUint32(n.BLOCK_SIZE-8,Math.floor(e/4294967296),!0),t.setUint32(n.BLOCK_SIZE-4,e),this.hashBuffer(),this.finished=!0}var a=new Uint8Array(n.DIGEST_LENGTH);for(o=0;o<8;o++)a[4*o]=this.state[o]>>>24&255,a[4*o+1]=this.state[o]>>>16&255,a[4*o+2]=this.state[o]>>>8&255,a[4*o+3]=this.state[o]>>>0&255;return a},e.prototype.hashBuffer=function(){for(var e=this.buffer,t=this.state,r=t[0],o=t[1],a=t[2],i=t[3],s=t[4],l=t[5],c=t[6],u=t[7],d=0;d<n.BLOCK_SIZE;d++){if(d<16)this.temp[d]=(255&e[4*d])<<24|(255&e[4*d+1])<<16|(255&e[4*d+2])<<8|255&e[4*d+3];else{var f=this.temp[d-2],p=(f>>>17|f<<15)^(f>>>19|f<<13)^f>>>10,h=((f=this.temp[d-15])>>>7|f<<25)^(f>>>18|f<<14)^f>>>3;this.temp[d]=(p+this.temp[d-7]|0)+(h+this.temp[d-16]|0)}var m=(((s>>>6|s<<26)^(s>>>11|s<<21)^(s>>>25|s<<7))+(s&l^~s&c)|0)+(u+(n.KEY[d]+this.temp[d]|0)|0)|0,g=((r>>>2|r<<30)^(r>>>13|r<<19)^(r>>>22|r<<10))+(r&o^r&a^o&a)|0;u=c,c=l,l=s,s=i+m|0,i=a,a=o,o=r,r=m+g|0}t[0]+=r,t[1]+=o,t[2]+=a,t[3]+=i,t[4]+=s,t[5]+=l,t[6]+=c,t[7]+=u},e}();t.RawSha256=o},1280:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MAX_HASHABLE_LENGTH=t.INIT=t.KEY=t.DIGEST_LENGTH=t.BLOCK_SIZE=void 0,t.BLOCK_SIZE=64,t.DIGEST_LENGTH=32,t.KEY=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),t.INIT=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],t.MAX_HASHABLE_LENGTH=Math.pow(2,53)-1},55001:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),(0,r(61873).__exportStar)(r(71097),t)},71097:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Sha256=void 0;var n=r(61873),o=r(1280),a=r(13680),i=r(45754),s=function(){function e(e){if(this.hash=new a.RawSha256,e){this.outer=new a.RawSha256;var t=function(e){var t=(0,i.convertToBuffer)(e);if(t.byteLength>o.BLOCK_SIZE){var r=new a.RawSha256;r.update(t),t=r.digest()}var n=new Uint8Array(o.BLOCK_SIZE);return n.set(t),n}(e),r=new Uint8Array(o.BLOCK_SIZE);r.set(t);for(var n=0;n<o.BLOCK_SIZE;n++)t[n]^=54,r[n]^=92;this.hash.update(t),this.outer.update(r);for(n=0;n<t.byteLength;n++)t[n]=0}}return e.prototype.update=function(e){if(!(0,i.isEmptyData)(e)&&!this.error)try{this.hash.update((0,i.convertToBuffer)(e))}catch(t){this.error=t}},e.prototype.digestSync=function(){if(this.error)throw this.error;return this.outer?(this.outer.finished||this.outer.update(this.hash.digest()),this.outer.digest()):this.hash.digest()},e.prototype.digest=function(){return(0,n.__awaiter)(this,void 0,void 0,(function(){return(0,n.__generator)(this,(function(e){return[2,this.digestSync()]}))}))},e}();t.Sha256=s},74698:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.convertToBuffer=void 0;var n=r(19202),o="undefined"!==typeof Buffer&&Buffer.from?function(e){return Buffer.from(e,"utf8")}:n.fromUtf8;t.convertToBuffer=function(e){return e instanceof Uint8Array?e:"string"===typeof e?o(e):ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(e)}},45754:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.uint32ArrayFrom=t.numToUint8=t.isEmptyData=t.convertToBuffer=void 0;var n=r(74698);Object.defineProperty(t,"convertToBuffer",{enumerable:!0,get:function(){return n.convertToBuffer}});var o=r(49659);Object.defineProperty(t,"isEmptyData",{enumerable:!0,get:function(){return o.isEmptyData}});var a=r(80479);Object.defineProperty(t,"numToUint8",{enumerable:!0,get:function(){return a.numToUint8}});var i=r(3360);Object.defineProperty(t,"uint32ArrayFrom",{enumerable:!0,get:function(){return i.uint32ArrayFrom}})},49659:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isEmptyData=void 0,t.isEmptyData=function(e){return"string"===typeof e?0===e.length:0===e.byteLength}},80479:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.numToUint8=void 0,t.numToUint8=function(e){return new Uint8Array([(4278190080&e)>>24,(16711680&e)>>16,(65280&e)>>8,255&e])}},3360:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.uint32ArrayFrom=void 0,t.uint32ArrayFrom=function(e){if(!Array.from){for(var t=new Uint32Array(e.length);0<e.length;)t[0]=e[0];return t}return Uint32Array.from(e)}},19202:(e,t,r)=>{"use strict";r.r(t),r.d(t,{fromUtf8:()=>n,toUtf8:()=>o});const n=e=>"function"===typeof TextEncoder?function(e){return(new TextEncoder).encode(e)}(e):(e=>{const t=[];for(let r=0,n=e.length;r<n;r++){const n=e.charCodeAt(r);if(n<128)t.push(n);else if(n<2048)t.push(n>>6|192,63&n|128);else if(r+1<e.length&&55296===(64512&n)&&56320===(64512&e.charCodeAt(r+1))){const o=65536+((1023&n)<<10)+(1023&e.charCodeAt(++r));t.push(o>>18|240,o>>12&63|128,o>>6&63|128,63&o|128)}else t.push(n>>12|224,n>>6&63|128,63&n|128)}return Uint8Array.from(t)})(e),o=e=>"function"===typeof TextDecoder?function(e){return new TextDecoder("utf-8").decode(e)}(e):(e=>{let t="";for(let r=0,n=e.length;r<n;r++){const n=e[r];if(n<128)t+=String.fromCharCode(n);else if(192<=n&&n<224){const o=e[++r];t+=String.fromCharCode((31&n)<<6|63&o)}else if(240<=n&&n<365){const o="%"+[n,e[++r],e[++r],e[++r]].map((e=>e.toString(16))).join("%");t+=decodeURIComponent(o)}else t+=String.fromCharCode((15&n)<<12|(63&e[++r])<<6|63&e[++r])}return t})(e)},63387:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>oe});var n=r(59721),o=Math.abs,a=String.fromCharCode,i=Object.assign;function s(e){return e.trim()}function l(e,t,r){return e.replace(t,r)}function c(e,t){return e.indexOf(t)}function u(e,t){return 0|e.charCodeAt(t)}function d(e,t,r){return e.slice(t,r)}function f(e){return e.length}function p(e){return e.length}function h(e,t){return t.push(e),e}var m=1,g=1,v=0,y=0,b=0,w="";function x(e,t,r,n,o,a,i){return{value:e,root:t,parent:r,type:n,props:o,children:a,line:m,column:g,length:i,return:""}}function S(e,t){return i(x("",null,null,"",null,null,0),e,{length:-e.length},t)}function A(){return b=y>0?u(w,--y):0,g--,10===b&&(g=1,m--),b}function k(){return b=y<v?u(w,y++):0,g++,10===b&&(g=1,m++),b}function C(){return u(w,y)}function I(){return y}function E(e,t){return d(w,e,t)}function D(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function T(e){return m=g=1,v=f(w=e),y=0,[]}function O(e){return w="",e}function M(e){return s(E(y-1,R(91===e?e+2:40===e?e+1:e)))}function P(e){for(;(b=C())&&b<33;)k();return D(e)>2||D(b)>3?"":" "}function j(e,t){for(;--t&&k()&&!(b<48||b>102||b>57&&b<65||b>70&&b<97););return E(e,I()+(t<6&&32==C()&&32==k()))}function R(e){for(;k();)switch(b){case e:return y;case 34:case 39:34!==e&&39!==e&&R(b);break;case 40:41===e&&R(e);break;case 92:k()}return y}function _(e,t){for(;k()&&e+b!==57&&(e+b!==84||47!==C()););return"/*"+E(t,y-1)+"*"+a(47===e?e:k())}function N(e){for(;!D(C());)k();return E(e,y)}var L="-ms-",U="-moz-",B="-webkit-",F="comm",z="rule",W="decl",H="@keyframes";function Y(e,t){for(var r="",n=p(e),o=0;o<n;o++)r+=t(e[o],o,e,t)||"";return r}function V(e,t,r,n){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case W:return e.return=e.return||e.value;case F:return"";case H:return e.return=e.value+"{"+Y(e.children,n)+"}";case z:e.value=e.props.join(",")}return f(r=Y(e.children,n))?e.return=e.value+"{"+r+"}":""}function G(e){return O(Z("",null,null,null,[""],e=T(e),0,[0],e))}function Z(e,t,r,n,o,i,s,d,p){for(var m=0,g=0,v=s,y=0,b=0,w=0,x=1,S=1,E=1,D=0,T="",O=o,R=i,L=n,U=T;S;)switch(w=D,D=k()){case 40:if(108!=w&&58==u(U,v-1)){-1!=c(U+=l(M(D),"&","&\f"),"&\f")&&(E=-1);break}case 34:case 39:case 91:U+=M(D);break;case 9:case 10:case 13:case 32:U+=P(w);break;case 92:U+=j(I()-1,7);continue;case 47:switch(C()){case 42:case 47:h(K(_(k(),I()),t,r),p);break;default:U+="/"}break;case 123*x:d[m++]=f(U)*E;case 125*x:case 59:case 0:switch(D){case 0:case 125:S=0;case 59+g:-1==E&&(U=l(U,/\f/g,"")),b>0&&f(U)-v&&h(b>32?X(U+";",n,r,v-1):X(l(U," ","")+";",n,r,v-2),p);break;case 59:U+=";";default:if(h(L=Q(U,t,r,m,g,o,d,T,O=[],R=[],v),i),123===D)if(0===g)Z(U,t,L,L,O,i,v,d,R);else switch(99===y&&110===u(U,3)?100:y){case 100:case 108:case 109:case 115:Z(e,L,L,n&&h(Q(e,L,L,0,0,o,d,T,o,O=[],v),R),o,R,v,d,n?O:R);break;default:Z(U,L,L,L,[""],R,0,d,R)}}m=g=b=0,x=E=1,T=U="",v=s;break;case 58:v=1+f(U),b=w;default:if(x<1)if(123==D)--x;else if(125==D&&0==x++&&125==A())continue;switch(U+=a(D),D*x){case 38:E=g>0?1:(U+="\f",-1);break;case 44:d[m++]=(f(U)-1)*E,E=1;break;case 64:45===C()&&(U+=M(k())),y=C(),g=v=f(T=U+=N(I())),D++;break;case 45:45===w&&2==f(U)&&(x=0)}}return i}function Q(e,t,r,n,a,i,c,u,f,h,m){for(var g=a-1,v=0===a?i:[""],y=p(v),b=0,w=0,S=0;b<n;++b)for(var A=0,k=d(e,g+1,g=o(w=c[b])),C=e;A<y;++A)(C=s(w>0?v[A]+" "+k:l(k,/&\f/g,v[A])))&&(f[S++]=C);return x(e,t,r,0===a?z:u,f,h,m)}function K(e,t,r){return x(e,t,r,F,a(b),d(e,2,-2),0)}function X(e,t,r,n){return x(e,t,r,W,d(e,0,n),d(e,n+1,-1),n)}var J=function(e,t,r){for(var n=0,o=0;n=o,o=C(),38===n&&12===o&&(t[r]=1),!D(o);)k();return E(e,y)},$=function(e,t){return O(function(e,t){var r=-1,n=44;do{switch(D(n)){case 0:38===n&&12===C()&&(t[r]=1),e[r]+=J(y-1,t,r);break;case 2:e[r]+=M(n);break;case 4:if(44===n){e[++r]=58===C()?"&\f":"",t[r]=e[r].length;break}default:e[r]+=a(n)}}while(n=k());return e}(T(e),t))},q=new WeakMap,ee=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,r=e.parent,n=e.column===r.column&&e.line===r.line;"rule"!==r.type;)if(!(r=r.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||q.get(r))&&!n){q.set(e,!0);for(var o=[],a=$(t,o),i=r.props,s=0,l=0;s<a.length;s++)for(var c=0;c<i.length;c++,l++)e.props[l]=o[s]?a[s].replace(/&\f/g,i[c]):i[c]+" "+a[s]}}},te=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function re(e,t){switch(function(e,t){return 45^u(e,0)?(((t<<2^u(e,0))<<2^u(e,1))<<2^u(e,2))<<2^u(e,3):0}(e,t)){case 5103:return B+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return B+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return B+e+U+e+L+e+e;case 6828:case 4268:return B+e+L+e+e;case 6165:return B+e+L+"flex-"+e+e;case 5187:return B+e+l(e,/(\w+).+(:[^]+)/,B+"box-$1$2"+L+"flex-$1$2")+e;case 5443:return B+e+L+"flex-item-"+l(e,/flex-|-self/,"")+e;case 4675:return B+e+L+"flex-line-pack"+l(e,/align-content|flex-|-self/,"")+e;case 5548:return B+e+L+l(e,"shrink","negative")+e;case 5292:return B+e+L+l(e,"basis","preferred-size")+e;case 6060:return B+"box-"+l(e,"-grow","")+B+e+L+l(e,"grow","positive")+e;case 4554:return B+l(e,/([^-])(transform)/g,"$1"+B+"$2")+e;case 6187:return l(l(l(e,/(zoom-|grab)/,B+"$1"),/(image-set)/,B+"$1"),e,"")+e;case 5495:case 3959:return l(e,/(image-set\([^]*)/,B+"$1$`$1");case 4968:return l(l(e,/(.+:)(flex-)?(.*)/,B+"box-pack:$3"+L+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+B+e+e;case 4095:case 3583:case 4068:case 2532:return l(e,/(.+)-inline(.+)/,B+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(f(e)-1-t>6)switch(u(e,t+1)){case 109:if(45!==u(e,t+4))break;case 102:return l(e,/(.+:)(.+)-([^]+)/,"$1"+B+"$2-$3$1"+U+(108==u(e,t+3)?"$3":"$2-$3"))+e;case 115:return~c(e,"stretch")?re(l(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==u(e,t+1))break;case 6444:switch(u(e,f(e)-3-(~c(e,"!important")&&10))){case 107:return l(e,":",":"+B)+e;case 101:return l(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+B+(45===u(e,14)?"inline-":"")+"box$3$1"+B+"$2$3$1"+L+"$2box$3")+e}break;case 5936:switch(u(e,t+11)){case 114:return B+e+L+l(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return B+e+L+l(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return B+e+L+l(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return B+e+L+e+e}return e}var ne=[function(e,t,r,n){if(e.length>-1&&!e.return)switch(e.type){case W:e.return=re(e.value,e.length);break;case H:return Y([S(e,{value:l(e.value,"@","@"+B)})],n);case z:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e,t){return(e=t.exec(e))?e[0]:e}(t,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return Y([S(e,{props:[l(t,/:(read-\w+)/,":-moz-$1")]})],n);case"::placeholder":return Y([S(e,{props:[l(t,/:(plac\w+)/,":"+B+"input-$1")]}),S(e,{props:[l(t,/:(plac\w+)/,":-moz-$1")]}),S(e,{props:[l(t,/:(plac\w+)/,L+"input-$1")]})],n)}return""}))}}],oe=function(e){var t=e.key;if("css"===t){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var o,a,i=e.stylisPlugins||ne,s={},l=[];o=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),r=1;r<t.length;r++)s[t[r]]=!0;l.push(e)}));var c,u,d=[V,(u=function(e){c.insert(e)},function(e){e.root||(e=e.return)&&u(e)})],f=function(e){var t=p(e);return function(r,n,o,a){for(var i="",s=0;s<t;s++)i+=e[s](r,n,o,a)||"";return i}}([ee,te].concat(i,d));a=function(e,t,r,n){c=r,Y(G(e?e+"{"+t.styles+"}":t.styles),f),n&&(h.inserted[t.name]=!0)};var h={key:t,sheet:new n.v({key:t,container:o,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:a};return h.sheet.hydrate(l),h}},57923:(e,t,r)=>{"use strict";function n(e){var t=Object.create(null);return function(r){return void 0===t[r]&&(t[r]=e(r)),t[r]}}r.d(t,{A:()=>n})},55245:(e,t,r)=>{"use strict";r.d(t,{C:()=>m,E:()=>E,T:()=>y,_:()=>g,a:()=>x,b:()=>S,c:()=>C,h:()=>A,i:()=>p,u:()=>b,w:()=>v});var n=r(9950),o=r(63387),a=r(58168),i=function(e){var t=new WeakMap;return function(r){if(t.has(r))return t.get(r);var n=e(r);return t.set(r,n),n}},s=r(23876),l=r.n(s),c=function(e,t){return l()(e,t)},u=r(71783),d=r(89015),f=r(96477),p=!1,h=n.createContext("undefined"!==typeof HTMLElement?(0,o.default)({key:"css"}):null),m=h.Provider,g=function(){return(0,n.useContext)(h)},v=function(e){return(0,n.forwardRef)((function(t,r){var o=(0,n.useContext)(h);return e(t,o,r)}))},y=n.createContext({}),b=function(){return n.useContext(y)},w=i((function(e){return i((function(t){return function(e,t){return"function"===typeof t?t(e):(0,a.A)({},e,t)}(e,t)}))})),x=function(e){var t=n.useContext(y);return e.theme!==t&&(t=w(t)(e.theme)),n.createElement(y.Provider,{value:t},e.children)};function S(e){var t=e.displayName||e.name||"Component",r=function(t,r){var o=n.useContext(y);return n.createElement(e,(0,a.A)({theme:o,ref:r},t))},o=n.forwardRef(r);return o.displayName="WithTheme("+t+")",c(o,e)}var A={}.hasOwnProperty,k="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",C=function(e,t){var r={};for(var n in t)A.call(t,n)&&(r[n]=t[n]);return r[k]=e,r},I=function(e){var t=e.cache,r=e.serialized,n=e.isStringTag;return(0,u.registerStyles)(t,r,n),(0,f.s)((function(){return(0,u.insertStyles)(t,r,n)})),null},E=v((function(e,t,r){var o=e.css;"string"===typeof o&&void 0!==t.registered[o]&&(o=t.registered[o]);var a=e[k],i=[o],s="";"string"===typeof e.className?s=(0,u.getRegisteredStyles)(t.registered,i,e.className):null!=e.className&&(s=e.className+" ");var l=(0,d.serializeStyles)(i,void 0,n.useContext(y));s+=t.key+"-"+l.name;var c={};for(var f in e)A.call(e,f)&&"css"!==f&&f!==k&&!p&&(c[f]=e[f]);return c.className=s,r&&(c.ref=r),n.createElement(n.Fragment,null,n.createElement(I,{cache:t,serialized:l,isStringTag:"string"===typeof a}),n.createElement(a,c))}))},88283:(e,t,r)=>{"use strict";r.r(t),r.d(t,{CacheProvider:()=>n.C,ClassNames:()=>h,Global:()=>c,ThemeContext:()=>n.T,ThemeProvider:()=>n.a,__unsafe_useEmotionCache:()=>n._,createElement:()=>l,css:()=>u,jsx:()=>l,keyframes:()=>d,useTheme:()=>n.u,withEmotionCache:()=>n.w,withTheme:()=>n.b});var n=r(55245),o=r(9950),a=r(71783),i=r(96477),s=r(89015),l=(r(63387),r(23876),function(e,t){var r=arguments;if(null==t||!n.h.call(t,"css"))return o.createElement.apply(void 0,r);var a=r.length,i=new Array(a);i[0]=n.E,i[1]=(0,n.c)(e,t);for(var s=2;s<a;s++)i[s]=r[s];return o.createElement.apply(null,i)}),c=(0,n.w)((function(e,t){var r=e.styles,l=(0,s.serializeStyles)([r],void 0,o.useContext(n.T)),c=o.useRef();return(0,i.i)((function(){var e=t.key+"-global",r=new t.sheet.constructor({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy}),n=!1,o=document.querySelector('style[data-emotion="'+e+" "+l.name+'"]');return t.sheet.tags.length&&(r.before=t.sheet.tags[0]),null!==o&&(n=!0,o.setAttribute("data-emotion",e),r.hydrate([o])),c.current=[r,n],function(){r.flush()}}),[t]),(0,i.i)((function(){var e=c.current,r=e[0];if(e[1])e[1]=!1;else{if(void 0!==l.next&&(0,a.insertStyles)(t,l.next,!0),r.tags.length){var n=r.tags[r.tags.length-1].nextElementSibling;r.before=n,r.flush()}t.insert("",l,r,!1)}}),[t,l.name]),null}));function u(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,s.serializeStyles)(t)}var d=function(){var e=u.apply(void 0,arguments),t="animation-"+e.name;return{name:t,styles:"@keyframes "+t+"{"+e.styles+"}",anim:1,toString:function(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}},f=function e(t){for(var r=t.length,n=0,o="";n<r;n++){var a=t[n];if(null!=a){var i=void 0;switch(typeof a){case"boolean":break;case"object":if(Array.isArray(a))i=e(a);else for(var s in i="",a)a[s]&&s&&(i&&(i+=" "),i+=s);break;default:i=a}i&&(o&&(o+=" "),o+=i)}}return o};var p=function(e){var t=e.cache,r=e.serializedArr;return(0,i.s)((function(){for(var e=0;e<r.length;e++)(0,a.insertStyles)(t,r[e],!1)})),null},h=(0,n.w)((function(e,t){var r=!1,i=[],l=function(){if(r&&n.i)throw new Error("css can only be used during render");for(var e=arguments.length,o=new Array(e),l=0;l<e;l++)o[l]=arguments[l];var c=(0,s.serializeStyles)(o,t.registered);return i.push(c),(0,a.registerStyles)(t,c,!1),t.key+"-"+c.name},c={css:l,cx:function(){if(r&&n.i)throw new Error("cx can only be used during render");for(var e=arguments.length,o=new Array(e),i=0;i<e;i++)o[i]=arguments[i];return function(e,t,r){var n=[],o=(0,a.getRegisteredStyles)(e,n,r);return n.length<2?r:o+t(n)}(t.registered,l,f(o))},theme:o.useContext(n.T)},u=e.children(c);return r=!0,o.createElement(o.Fragment,null,o.createElement(p,{cache:t,serializedArr:i}),u)}))},89015:(e,t,r)=>{"use strict";r.r(t),r.d(t,{serializeStyles:()=>g});var n={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},o=r(57923),a=!1,i=/[A-Z]|^ms/g,s=/_EMO_([^_]+?)_([^]*?)_EMO_/g,l=function(e){return 45===e.charCodeAt(1)},c=function(e){return null!=e&&"boolean"!==typeof e},u=(0,o.A)((function(e){return l(e)?e:e.replace(i,"-$&").toLowerCase()})),d=function(e,t){switch(e){case"animation":case"animationName":if("string"===typeof t)return t.replace(s,(function(e,t,r){return h={name:t,styles:r,next:h},t}))}return 1===n[e]||l(e)||"number"!==typeof t||0===t?t:t+"px"},f="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";function p(e,t,r){if(null==r)return"";var n=r;if(void 0!==n.__emotion_styles)return n;switch(typeof r){case"boolean":return"";case"object":var o=r;if(1===o.anim)return h={name:o.name,styles:o.styles,next:h},o.name;var i=r;if(void 0!==i.styles){var s=i.next;if(void 0!==s)for(;void 0!==s;)h={name:s.name,styles:s.styles,next:h},s=s.next;return i.styles+";"}return function(e,t,r){var n="";if(Array.isArray(r))for(var o=0;o<r.length;o++)n+=p(e,t,r[o])+";";else for(var i in r){var s=r[i];if("object"!==typeof s){var l=s;null!=t&&void 0!==t[l]?n+=i+"{"+t[l]+"}":c(l)&&(n+=u(i)+":"+d(i,l)+";")}else{if("NO_COMPONENT_SELECTOR"===i&&a)throw new Error(f);if(!Array.isArray(s)||"string"!==typeof s[0]||null!=t&&void 0!==t[s[0]]){var h=p(e,t,s);switch(i){case"animation":case"animationName":n+=u(i)+":"+h+";";break;default:n+=i+"{"+h+"}"}}else for(var m=0;m<s.length;m++)c(s[m])&&(n+=u(i)+":"+d(i,s[m])+";")}}return n}(e,t,r);case"function":if(void 0!==e){var l=h,m=r(e);return h=l,p(e,t,m)}}var g=r;if(null==t)return g;var v=t[g];return void 0!==v?v:g}var h,m=/label:\s*([^\s;{]+)\s*(;|$)/g;function g(e,t,r){if(1===e.length&&"object"===typeof e[0]&&null!==e[0]&&void 0!==e[0].styles)return e[0];var n=!0,o="";h=void 0;var a=e[0];null==a||void 0===a.raw?(n=!1,o+=p(r,t,a)):o+=a[0];for(var i=1;i<e.length;i++){if(o+=p(r,t,e[i]),n)o+=a[i]}m.lastIndex=0;for(var s,l="";null!==(s=m.exec(o));)l+="-"+s[1];var c=function(e){for(var t,r=0,n=0,o=e.length;o>=4;++n,o-=4)t=1540483477*(65535&(t=255&e.charCodeAt(n)|(255&e.charCodeAt(++n))<<8|(255&e.charCodeAt(++n))<<16|(255&e.charCodeAt(++n))<<24))+(59797*(t>>>16)<<16),r=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&r)+(59797*(r>>>16)<<16);switch(o){case 3:r^=(255&e.charCodeAt(n+2))<<16;case 2:r^=(255&e.charCodeAt(n+1))<<8;case 1:r=1540483477*(65535&(r^=255&e.charCodeAt(n)))+(59797*(r>>>16)<<16)}return(((r=1540483477*(65535&(r^=r>>>13))+(59797*(r>>>16)<<16))^r>>>15)>>>0).toString(36)}(o)+l;return{name:c,styles:o,next:h}}},59721:(e,t,r)=>{"use strict";r.d(t,{v:()=>n});var n=function(){function e(e){var t=this;this._insertTag=function(e){var r;r=0===t.tags.length?t.insertionPoint?t.insertionPoint.nextSibling:t.prepend?t.container.firstChild:t.before:t.tags[t.tags.length-1].nextSibling,t.container.insertBefore(e,r),t.tags.push(e)},this.isSpeedy=void 0===e.speedy||e.speedy,this.tags=[],this.ctr=0,this.nonce=e.nonce,this.key=e.key,this.container=e.container,this.prepend=e.prepend,this.insertionPoint=e.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(e){e.forEach(this._insertTag)},t.insert=function(e){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(function(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),void 0!==e.nonce&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}(this));var t=this.tags[this.tags.length-1];if(this.isSpeedy){var r=function(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]}(t);try{r.insertRule(e,r.cssRules.length)}catch(n){}}else t.appendChild(document.createTextNode(e));this.ctr++},t.flush=function(){this.tags.forEach((function(e){var t;return null==(t=e.parentNode)?void 0:t.removeChild(e)})),this.tags=[],this.ctr=0},e}()},96477:(e,t,r)=>{"use strict";var n;r.d(t,{i:()=>s,s:()=>i});var o=r(9950),a=!!(n||(n=r.t(o,2))).useInsertionEffect&&(n||(n=r.t(o,2))).useInsertionEffect,i=a||function(e){return e()},s=a||o.useLayoutEffect},71783:(e,t,r)=>{"use strict";r.r(t),r.d(t,{getRegisteredStyles:()=>n,insertStyles:()=>a,registerStyles:()=>o});function n(e,t,r){var n="";return r.split(" ").forEach((function(r){void 0!==e[r]?t.push(e[r]+";"):r&&(n+=r+" ")})),n}var o=function(e,t,r){var n=e.key+"-"+t.name;!1===r&&void 0===e.registered[n]&&(e.registered[n]=t.styles)},a=function(e,t,r){o(e,t,r);var n=e.key+"-"+t.name;if(void 0===e.inserted[t.name]){var a=t;do{e.insert(t===a?"."+n:"",a,e.sheet,!0),a=a.next}while(void 0!==a)}}},28707:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Composite:()=>er,CompositeItem:()=>tr,FloatingArrow:()=>sr,FloatingDelayGroup:()=>kr,FloatingFocusManager:()=>an,FloatingList:()=>Zt,FloatingNode:()=>hr,FloatingOverlay:()=>cn,FloatingPortal:()=>Xr,FloatingTree:()=>mr,arrow:()=>Ct,autoPlacement:()=>St,autoUpdate:()=>qe,computePosition:()=>ut,detectOverflow:()=>et,flip:()=>wt,getOverflowAncestors:()=>A,hide:()=>At,inline:()=>kt,inner:()=>Fn,limitShift:()=>bt,offset:()=>vt,platform:()=>$e,safePolygon:()=>Hn,shift:()=>yt,size:()=>xt,useClick:()=>fn,useClientPoint:()=>hn,useDelayGroup:()=>Cr,useDelayGroupContext:()=>Ar,useDismiss:()=>yn,useFloating:()=>wn,useFloatingNodeId:()=>pr,useFloatingParentNodeId:()=>dr,useFloatingPortalNode:()=>Kr,useFloatingRootContext:()=>bn,useFloatingTree:()=>fr,useFocus:()=>xn,useHover:()=>wr,useId:()=>ir,useInnerOffset:()=>zn,useInteractions:()=>Cn,useListItem:()=>Qt,useListNavigation:()=>Mn,useMergeRefs:()=>It,useRole:()=>jn,useTransitionStatus:()=>Nn,useTransitionStyles:()=>Ln,useTypeahead:()=>Un});var n=r(9950),o=r.t(n,2);function a(){return"undefined"!==typeof window}function i(e){return c(e)?(e.nodeName||"").toLowerCase():"#document"}function s(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function l(e){var t;return null==(t=(c(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function c(e){return!!a()&&(e instanceof Node||e instanceof s(e).Node)}function u(e){return!!a()&&(e instanceof Element||e instanceof s(e).Element)}function d(e){return!!a()&&(e instanceof HTMLElement||e instanceof s(e).HTMLElement)}function f(e){return!(!a()||"undefined"===typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof s(e).ShadowRoot)}function p(e){const{overflow:t,overflowX:r,overflowY:n,display:o}=b(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+r)&&!["inline","contents"].includes(o)}function h(e){return["table","td","th"].includes(i(e))}function m(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(r){return!1}}))}function g(e){const t=v(),r=u(e)?b(e):e;return"none"!==r.transform||"none"!==r.perspective||!!r.containerType&&"normal"!==r.containerType||!t&&!!r.backdropFilter&&"none"!==r.backdropFilter||!t&&!!r.filter&&"none"!==r.filter||["transform","perspective","filter"].some((e=>(r.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(r.contain||"").includes(e)))}function v(){return!("undefined"===typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function y(e){return["html","body","#document"].includes(i(e))}function b(e){return s(e).getComputedStyle(e)}function w(e){return u(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function x(e){if("html"===i(e))return e;const t=e.assignedSlot||e.parentNode||f(e)&&e.host||l(e);return f(t)?t.host:t}function S(e){const t=x(e);return y(t)?e.ownerDocument?e.ownerDocument.body:e.body:d(t)&&p(t)?t:S(t)}function A(e,t,r){var n;void 0===t&&(t=[]),void 0===r&&(r=!0);const o=S(e),a=o===(null==(n=e.ownerDocument)?void 0:n.body),i=s(o);if(a){const e=k(i);return t.concat(i,i.visualViewport||[],p(o)?o:[],e&&r?A(e):[])}return t.concat(o,A(o,[],r))}function k(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function C(e){let t=e.activeElement;for(;null!=(null==(r=t)||null==(r=r.shadowRoot)?void 0:r.activeElement);){var r;t=t.shadowRoot.activeElement}return t}function I(e,t){if(!e||!t)return!1;const r=null==t.getRootNode?void 0:t.getRootNode();if(e.contains(t))return!0;if(r&&f(r)){let r=t;for(;r;){if(e===r)return!0;r=r.parentNode||r.host}}return!1}function E(){const e=navigator.userAgentData;return null!=e&&e.platform?e.platform:navigator.platform}function D(){const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?e.brands.map((e=>{let{brand:t,version:r}=e;return t+"/"+r})).join(" "):navigator.userAgent}function T(e){return!(0!==e.mozInputSource||!e.isTrusted)||(P()&&e.pointerType?"click"===e.type&&1===e.buttons:0===e.detail&&!e.pointerType)}function O(e){return!D().includes("jsdom/")&&(!P()&&0===e.width&&0===e.height||P()&&1===e.width&&1===e.height&&0===e.pressure&&0===e.detail&&"mouse"===e.pointerType||e.width<1&&e.height<1&&0===e.pressure&&0===e.detail&&"touch"===e.pointerType)}function M(){return/apple/i.test(navigator.vendor)}function P(){const e=/android/i;return e.test(E())||e.test(D())}function j(){return E().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function R(e,t){const r=["mouse","pen"];return t||r.push("",void 0),r.includes(e)}function _(e){return(null==e?void 0:e.ownerDocument)||document}function N(e,t){if(null==t)return!1;if("composedPath"in e)return e.composedPath().includes(t);const r=e;return null!=r.target&&t.contains(r.target)}function L(e){return"composedPath"in e?e.composedPath()[0]:e.target}const U="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function B(e){return d(e)&&e.matches(U)}function F(e){e.preventDefault(),e.stopPropagation()}function z(e){return!!e&&("combobox"===e.getAttribute("role")&&B(e))}const W=["top","right","bottom","left"],H=["start","end"],Y=W.reduce(((e,t)=>e.concat(t,t+"-"+H[0],t+"-"+H[1])),[]),V=Math.min,G=Math.max,Z=Math.round,Q=Math.floor,K=e=>({x:e,y:e}),X={left:"right",right:"left",bottom:"top",top:"bottom"},J={start:"end",end:"start"};function $(e,t,r){return G(e,V(t,r))}function q(e,t){return"function"===typeof e?e(t):e}function ee(e){return e.split("-")[0]}function te(e){return e.split("-")[1]}function re(e){return"x"===e?"y":"x"}function ne(e){return"y"===e?"height":"width"}function oe(e){return["top","bottom"].includes(ee(e))?"y":"x"}function ae(e){return re(oe(e))}function ie(e,t,r){void 0===r&&(r=!1);const n=te(e),o=ae(e),a=ne(o);let i="x"===o?n===(r?"end":"start")?"right":"left":"start"===n?"bottom":"top";return t.reference[a]>t.floating[a]&&(i=le(i)),[i,le(i)]}function se(e){return e.replace(/start|end/g,(e=>J[e]))}function le(e){return e.replace(/left|right|bottom|top/g,(e=>X[e]))}function ce(e){return"number"!==typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function ue(e){const{x:t,y:r,width:n,height:o}=e;return{width:n,height:o,top:r,left:t,right:t+n,bottom:r+o,x:t,y:r}}var de=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],fe=de.join(","),pe="undefined"===typeof Element,he=pe?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,me=!pe&&Element.prototype.getRootNode?function(e){var t;return null===e||void 0===e||null===(t=e.getRootNode)||void 0===t?void 0:t.call(e)}:function(e){return null===e||void 0===e?void 0:e.ownerDocument},ge=function e(t,r){var n;void 0===r&&(r=!0);var o=null===t||void 0===t||null===(n=t.getAttribute)||void 0===n?void 0:n.call(t,"inert");return""===o||"true"===o||r&&t&&e(t.parentNode)},ve=function(e,t,r){if(ge(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(fe));return t&&he.call(e,fe)&&n.unshift(e),n=n.filter(r)},ye=function e(t,r,n){for(var o=[],a=Array.from(t);a.length;){var i=a.shift();if(!ge(i,!1))if("SLOT"===i.tagName){var s=i.assignedElements(),l=e(s.length?s:i.children,!0,n);n.flatten?o.push.apply(o,l):o.push({scopeParent:i,candidates:l})}else{he.call(i,fe)&&n.filter(i)&&(r||!t.includes(i))&&o.push(i);var c=i.shadowRoot||"function"===typeof n.getShadowRoot&&n.getShadowRoot(i),u=!ge(c,!1)&&(!n.shadowRootFilter||n.shadowRootFilter(i));if(c&&u){var d=e(!0===c?i.children:c.children,!0,n);n.flatten?o.push.apply(o,d):o.push({scopeParent:i,candidates:d})}else a.unshift.apply(a,i.children)}}return o},be=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},we=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||function(e){var t,r=null===e||void 0===e||null===(t=e.getAttribute)||void 0===t?void 0:t.call(e,"contenteditable");return""===r||"true"===r}(e))&&!be(e)?0:e.tabIndex},xe=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},Se=function(e){return"INPUT"===e.tagName},Ae=function(e){return function(e){return Se(e)&&"radio"===e.type}(e)&&!function(e){if(!e.name)return!0;var t,r=e.form||me(e),n=function(e){return r.querySelectorAll('input[type="radio"][name="'+e+'"]')};if("undefined"!==typeof window&&"undefined"!==typeof window.CSS&&"function"===typeof window.CSS.escape)t=n(window.CSS.escape(e.name));else try{t=n(e.name)}catch(a){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",a.message),!1}var o=function(e,t){for(var r=0;r<e.length;r++)if(e[r].checked&&e[r].form===t)return e[r]}(t,e.form);return!o||o===e}(e)},ke=function(e){var t=e.getBoundingClientRect(),r=t.width,n=t.height;return 0===r&&0===n},Ce=function(e,t){var r=t.displayCheck,n=t.getShadowRoot;if("hidden"===getComputedStyle(e).visibility)return!0;var o=he.call(e,"details>summary:first-of-type")?e.parentElement:e;if(he.call(o,"details:not([open]) *"))return!0;if(r&&"full"!==r&&"legacy-full"!==r){if("non-zero-area"===r)return ke(e)}else{if("function"===typeof n){for(var a=e;e;){var i=e.parentElement,s=me(e);if(i&&!i.shadowRoot&&!0===n(i))return ke(e);e=e.assignedSlot?e.assignedSlot:i||s===e.ownerDocument?i:s.host}e=a}if(function(e){var t,r,n,o,a=e&&me(e),i=null===(t=a)||void 0===t?void 0:t.host,s=!1;if(a&&a!==e)for(s=!!(null!==(r=i)&&void 0!==r&&null!==(n=r.ownerDocument)&&void 0!==n&&n.contains(i)||null!==e&&void 0!==e&&null!==(o=e.ownerDocument)&&void 0!==o&&o.contains(e));!s&&i;){var l,c,u;s=!(null===(c=i=null===(l=a=me(i))||void 0===l?void 0:l.host)||void 0===c||null===(u=c.ownerDocument)||void 0===u||!u.contains(i))}return s}(e))return!e.getClientRects().length;if("legacy-full"!==r)return!0}return!1},Ie=function(e,t){return!(t.disabled||ge(t)||function(e){return Se(e)&&"hidden"===e.type}(t)||Ce(t,e)||function(e){return"DETAILS"===e.tagName&&Array.prototype.slice.apply(e.children).some((function(e){return"SUMMARY"===e.tagName}))}(t)||function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if("FIELDSET"===t.tagName&&t.disabled){for(var r=0;r<t.children.length;r++){var n=t.children.item(r);if("LEGEND"===n.tagName)return!!he.call(t,"fieldset[disabled] *")||!n.contains(e)}return!0}t=t.parentElement}return!1}(t))},Ee=function(e,t){return!(Ae(t)||we(t)<0||!Ie(e,t))},De=function(e){var t=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(t)||t>=0)},Te=function e(t){var r=[],n=[];return t.forEach((function(t,o){var a=!!t.scopeParent,i=a?t.scopeParent:t,s=function(e,t){var r=we(e);return r<0&&t&&!be(e)?0:r}(i,a),l=a?e(t.candidates):i;0===s?a?r.push.apply(r,l):r.push(i):n.push({documentOrder:o,tabIndex:s,item:t,isScope:a,content:l})})),n.sort(xe).reduce((function(e,t){return t.isScope?e.push.apply(e,t.content):e.push(t.content),e}),[]).concat(r)},Oe=function(e,t){var r;return r=(t=t||{}).getShadowRoot?ye([e],t.includeContainer,{filter:Ee.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:De}):ve(e,t.includeContainer,Ee.bind(null,t)),Te(r)},Me=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==he.call(e,fe)&&Ee(t,e)},Pe=r(17119);function je(e,t,r){let{reference:n,floating:o}=e;const a=oe(t),i=ae(t),s=ne(i),l=ee(t),c="y"===a,u=n.x+n.width/2-o.width/2,d=n.y+n.height/2-o.height/2,f=n[s]/2-o[s]/2;let p;switch(l){case"top":p={x:u,y:n.y-o.height};break;case"bottom":p={x:u,y:n.y+n.height};break;case"right":p={x:n.x+n.width,y:d};break;case"left":p={x:n.x-o.width,y:d};break;default:p={x:n.x,y:n.y}}switch(te(t)){case"start":p[i]-=f*(r&&c?-1:1);break;case"end":p[i]+=f*(r&&c?-1:1)}return p}async function Re(e,t){var r;void 0===t&&(t={});const{x:n,y:o,platform:a,rects:i,elements:s,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:f=!1,padding:p=0}=q(t,e),h=ce(p),m=s[f?"floating"===d?"reference":"floating":d],g=ue(await a.getClippingRect({element:null==(r=await(null==a.isElement?void 0:a.isElement(m)))||r?m:m.contextElement||await(null==a.getDocumentElement?void 0:a.getDocumentElement(s.floating)),boundary:c,rootBoundary:u,strategy:l})),v="floating"===d?{x:n,y:o,width:i.floating.width,height:i.floating.height}:i.reference,y=await(null==a.getOffsetParent?void 0:a.getOffsetParent(s.floating)),b=await(null==a.isElement?void 0:a.isElement(y))&&await(null==a.getScale?void 0:a.getScale(y))||{x:1,y:1},w=ue(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:v,offsetParent:y,strategy:l}):v);return{top:(g.top-w.top+h.top)/b.y,bottom:(w.bottom-g.bottom+h.bottom)/b.y,left:(g.left-w.left+h.left)/b.x,right:(w.right-g.right+h.right)/b.x}}function _e(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Ne(e){return W.some((t=>e[t]>=0))}function Le(e){const t=V(...e.map((e=>e.left))),r=V(...e.map((e=>e.top)));return{x:t,y:r,width:G(...e.map((e=>e.right)))-t,height:G(...e.map((e=>e.bottom)))-r}}function Ue(e){const t=b(e);let r=parseFloat(t.width)||0,n=parseFloat(t.height)||0;const o=d(e),a=o?e.offsetWidth:r,i=o?e.offsetHeight:n,s=Z(r)!==a||Z(n)!==i;return s&&(r=a,n=i),{width:r,height:n,$:s}}function Be(e){return u(e)?e:e.contextElement}function Fe(e){const t=Be(e);if(!d(t))return K(1);const r=t.getBoundingClientRect(),{width:n,height:o,$:a}=Ue(t);let i=(a?Z(r.width):r.width)/n,s=(a?Z(r.height):r.height)/o;return i&&Number.isFinite(i)||(i=1),s&&Number.isFinite(s)||(s=1),{x:i,y:s}}const ze=K(0);function We(e){const t=s(e);return v()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:ze}function He(e,t,r,n){void 0===t&&(t=!1),void 0===r&&(r=!1);const o=e.getBoundingClientRect(),a=Be(e);let i=K(1);t&&(n?u(n)&&(i=Fe(n)):i=Fe(e));const l=function(e,t,r){return void 0===t&&(t=!1),!(!r||t&&r!==s(e))&&t}(a,r,n)?We(a):K(0);let c=(o.left+l.x)/i.x,d=(o.top+l.y)/i.y,f=o.width/i.x,p=o.height/i.y;if(a){const e=s(a),t=n&&u(n)?s(n):n;let r=e,o=k(r);for(;o&&n&&t!==r;){const e=Fe(o),t=o.getBoundingClientRect(),n=b(o),a=t.left+(o.clientLeft+parseFloat(n.paddingLeft))*e.x,i=t.top+(o.clientTop+parseFloat(n.paddingTop))*e.y;c*=e.x,d*=e.y,f*=e.x,p*=e.y,c+=a,d+=i,r=s(o),o=k(r)}}return ue({width:f,height:p,x:c,y:d})}function Ye(e,t){const r=w(e).scrollLeft;return t?t.left+r:He(l(e)).left+r}function Ve(e,t,r){void 0===r&&(r=!1);const n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-(r?0:Ye(e,n)),y:n.top+t.scrollTop}}function Ge(e,t,r){let n;if("viewport"===t)n=function(e,t){const r=s(e),n=l(e),o=r.visualViewport;let a=n.clientWidth,i=n.clientHeight,c=0,u=0;if(o){a=o.width,i=o.height;const e=v();(!e||e&&"fixed"===t)&&(c=o.offsetLeft,u=o.offsetTop)}return{width:a,height:i,x:c,y:u}}(e,r);else if("document"===t)n=function(e){const t=l(e),r=w(e),n=e.ownerDocument.body,o=G(t.scrollWidth,t.clientWidth,n.scrollWidth,n.clientWidth),a=G(t.scrollHeight,t.clientHeight,n.scrollHeight,n.clientHeight);let i=-r.scrollLeft+Ye(e);const s=-r.scrollTop;return"rtl"===b(n).direction&&(i+=G(t.clientWidth,n.clientWidth)-o),{width:o,height:a,x:i,y:s}}(l(e));else if(u(t))n=function(e,t){const r=He(e,!0,"fixed"===t),n=r.top+e.clientTop,o=r.left+e.clientLeft,a=d(e)?Fe(e):K(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:o*a.x,y:n*a.y}}(t,r);else{const r=We(e);n={x:t.x-r.x,y:t.y-r.y,width:t.width,height:t.height}}return ue(n)}function Ze(e,t){const r=x(e);return!(r===t||!u(r)||y(r))&&("fixed"===b(r).position||Ze(r,t))}function Qe(e,t,r){const n=d(t),o=l(t),a="fixed"===r,s=He(e,!0,a,t);let c={scrollLeft:0,scrollTop:0};const u=K(0);if(n||!n&&!a)if(("body"!==i(t)||p(o))&&(c=w(t)),n){const e=He(t,!0,a,t);u.x=e.x+t.clientLeft,u.y=e.y+t.clientTop}else o&&(u.x=Ye(o));const f=!o||n||a?K(0):Ve(o,c);return{x:s.left+c.scrollLeft-u.x-f.x,y:s.top+c.scrollTop-u.y-f.y,width:s.width,height:s.height}}function Ke(e){return"static"===b(e).position}function Xe(e,t){if(!d(e)||"fixed"===b(e).position)return null;if(t)return t(e);let r=e.offsetParent;return l(e)===r&&(r=r.ownerDocument.body),r}function Je(e,t){const r=s(e);if(m(e))return r;if(!d(e)){let t=x(e);for(;t&&!y(t);){if(u(t)&&!Ke(t))return t;t=x(t)}return r}let n=Xe(e,t);for(;n&&h(n)&&Ke(n);)n=Xe(n,t);return n&&y(n)&&Ke(n)&&!g(n)?r:n||function(e){let t=x(e);for(;d(t)&&!y(t);){if(g(t))return t;if(m(t))return null;t=x(t)}return null}(e)||r}const $e={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:r,offsetParent:n,strategy:o}=e;const a="fixed"===o,s=l(n),c=!!t&&m(t.floating);if(n===s||c&&a)return r;let u={scrollLeft:0,scrollTop:0},f=K(1);const h=K(0),g=d(n);if((g||!g&&!a)&&(("body"!==i(n)||p(s))&&(u=w(n)),d(n))){const e=He(n);f=Fe(n),h.x=e.x+n.clientLeft,h.y=e.y+n.clientTop}const v=!s||g||a?K(0):Ve(s,u,!0);return{width:r.width*f.x,height:r.height*f.y,x:r.x*f.x-u.scrollLeft*f.x+h.x+v.x,y:r.y*f.y-u.scrollTop*f.y+h.y+v.y}},getDocumentElement:l,getClippingRect:function(e){let{element:t,boundary:r,rootBoundary:n,strategy:o}=e;const a=[..."clippingAncestors"===r?m(t)?[]:function(e,t){const r=t.get(e);if(r)return r;let n=A(e,[],!1).filter((e=>u(e)&&"body"!==i(e))),o=null;const a="fixed"===b(e).position;let s=a?x(e):e;for(;u(s)&&!y(s);){const t=b(s),r=g(s);r||"fixed"!==t.position||(o=null),(a?!r&&!o:!r&&"static"===t.position&&o&&["absolute","fixed"].includes(o.position)||p(s)&&!r&&Ze(e,s))?n=n.filter((e=>e!==s)):o=t,s=x(s)}return t.set(e,n),n}(t,this._c):[].concat(r),n],s=a[0],l=a.reduce(((e,r)=>{const n=Ge(t,r,o);return e.top=G(n.top,e.top),e.right=V(n.right,e.right),e.bottom=V(n.bottom,e.bottom),e.left=G(n.left,e.left),e}),Ge(t,s,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}},getOffsetParent:Je,getElementRects:async function(e){const t=this.getOffsetParent||Je,r=this.getDimensions,n=await r(e.floating);return{reference:Qe(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:r}=Ue(e);return{width:t,height:r}},getScale:Fe,isElement:u,isRTL:function(e){return"rtl"===b(e).direction}};function qe(e,t,r,n){void 0===n&&(n={});const{ancestorScroll:o=!0,ancestorResize:a=!0,elementResize:i="function"===typeof ResizeObserver,layoutShift:s="function"===typeof IntersectionObserver,animationFrame:c=!1}=n,u=Be(e),d=o||a?[...u?A(u):[],...A(t)]:[];d.forEach((e=>{o&&e.addEventListener("scroll",r,{passive:!0}),a&&e.addEventListener("resize",r)}));const f=u&&s?function(e,t){let r,n=null;const o=l(e);function a(){var e;clearTimeout(r),null==(e=n)||e.disconnect(),n=null}return function i(s,l){void 0===s&&(s=!1),void 0===l&&(l=1),a();const{left:c,top:u,width:d,height:f}=e.getBoundingClientRect();if(s||t(),!d||!f)return;const p={rootMargin:-Q(u)+"px "+-Q(o.clientWidth-(c+d))+"px "+-Q(o.clientHeight-(u+f))+"px "+-Q(c)+"px",threshold:G(0,V(1,l))||1};let h=!0;function m(e){const t=e[0].intersectionRatio;if(t!==l){if(!h)return i();t?i(!1,t):r=setTimeout((()=>{i(!1,1e-7)}),1e3)}h=!1}try{n=new IntersectionObserver(m,{...p,root:o.ownerDocument})}catch(g){n=new IntersectionObserver(m,p)}n.observe(e)}(!0),a}(u,r):null;let p,h=-1,m=null;i&&(m=new ResizeObserver((e=>{let[n]=e;n&&n.target===u&&m&&(m.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame((()=>{var e;null==(e=m)||e.observe(t)}))),r()})),u&&!c&&m.observe(u),m.observe(t));let g=c?He(e):null;return c&&function t(){const n=He(e);!g||n.x===g.x&&n.y===g.y&&n.width===g.width&&n.height===g.height||r();g=n,p=requestAnimationFrame(t)}(),r(),()=>{var e;d.forEach((e=>{o&&e.removeEventListener("scroll",r),a&&e.removeEventListener("resize",r)})),null==f||f(),null==(e=m)||e.disconnect(),m=null,c&&cancelAnimationFrame(p)}}const et=Re,tt=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var r,n;const{x:o,y:a,placement:i,middlewareData:s}=t,l=await async function(e,t){const{placement:r,platform:n,elements:o}=e,a=await(null==n.isRTL?void 0:n.isRTL(o.floating)),i=ee(r),s=te(r),l="y"===oe(r),c=["left","top"].includes(i)?-1:1,u=a&&l?-1:1,d=q(t,e);let{mainAxis:f,crossAxis:p,alignmentAxis:h}="number"===typeof d?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&"number"===typeof h&&(p="end"===s?-1*h:h),l?{x:p*u,y:f*c}:{x:f*c,y:p*u}}(t,e);return i===(null==(r=s.offset)?void 0:r.placement)&&null!=(n=s.arrow)&&n.alignmentOffset?{}:{x:o+l.x,y:a+l.y,data:{...l,placement:i}}}}},rt=function(e){return void 0===e&&(e={}),{name:"autoPlacement",options:e,async fn(t){var r,n,o;const{rects:a,middlewareData:i,placement:s,platform:l,elements:c}=t,{crossAxis:u=!1,alignment:d,allowedPlacements:f=Y,autoAlignment:p=!0,...h}=q(e,t),m=void 0!==d||f===Y?function(e,t,r){return(e?[...r.filter((t=>te(t)===e)),...r.filter((t=>te(t)!==e))]:r.filter((e=>ee(e)===e))).filter((r=>!e||te(r)===e||!!t&&se(r)!==r))}(d||null,p,f):f,g=await Re(t,h),v=(null==(r=i.autoPlacement)?void 0:r.index)||0,y=m[v];if(null==y)return{};const b=ie(y,a,await(null==l.isRTL?void 0:l.isRTL(c.floating)));if(s!==y)return{reset:{placement:m[0]}};const w=[g[ee(y)],g[b[0]],g[b[1]]],x=[...(null==(n=i.autoPlacement)?void 0:n.overflows)||[],{placement:y,overflows:w}],S=m[v+1];if(S)return{data:{index:v+1,overflows:x},reset:{placement:S}};const A=x.map((e=>{const t=te(e.placement);return[e.placement,t&&u?e.overflows.slice(0,2).reduce(((e,t)=>e+t),0):e.overflows[0],e.overflows]})).sort(((e,t)=>e[1]-t[1])),k=(null==(o=A.filter((e=>e[2].slice(0,te(e[0])?2:3).every((e=>e<=0))))[0])?void 0:o[0])||A[0][0];return k!==s?{data:{index:v+1,overflows:x},reset:{placement:k}}:{}}}},nt=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:r,y:n,placement:o}=t,{mainAxis:a=!0,crossAxis:i=!1,limiter:s={fn:e=>{let{x:t,y:r}=e;return{x:t,y:r}}},...l}=q(e,t),c={x:r,y:n},u=await Re(t,l),d=oe(ee(o)),f=re(d);let p=c[f],h=c[d];if(a){const e="y"===f?"bottom":"right";p=$(p+u["y"===f?"top":"left"],p,p-u[e])}if(i){const e="y"===d?"bottom":"right";h=$(h+u["y"===d?"top":"left"],h,h-u[e])}const m=s.fn({...t,[f]:p,[d]:h});return{...m,data:{x:m.x-r,y:m.y-n,enabled:{[f]:a,[d]:i}}}}}},ot=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var r,n;const{placement:o,middlewareData:a,rects:i,initialPlacement:s,platform:l,elements:c}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:f,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:m=!0,...g}=q(e,t);if(null!=(r=a.arrow)&&r.alignmentOffset)return{};const v=ee(o),y=oe(s),b=ee(s)===s,w=await(null==l.isRTL?void 0:l.isRTL(c.floating)),x=f||(b||!m?[le(s)]:function(e){const t=le(e);return[se(e),t,se(t)]}(s)),S="none"!==h;!f&&S&&x.push(...function(e,t,r,n){const o=te(e);let a=function(e,t,r){const n=["left","right"],o=["right","left"],a=["top","bottom"],i=["bottom","top"];switch(e){case"top":case"bottom":return r?t?o:n:t?n:o;case"left":case"right":return t?a:i;default:return[]}}(ee(e),"start"===r,n);return o&&(a=a.map((e=>e+"-"+o)),t&&(a=a.concat(a.map(se)))),a}(s,m,h,w));const A=[s,...x],k=await Re(t,g),C=[];let I=(null==(n=a.flip)?void 0:n.overflows)||[];if(u&&C.push(k[v]),d){const e=ie(o,i,w);C.push(k[e[0]],k[e[1]])}if(I=[...I,{placement:o,overflows:C}],!C.every((e=>e<=0))){var E,D;const e=((null==(E=a.flip)?void 0:E.index)||0)+1,t=A[e];if(t)return{data:{index:e,overflows:I},reset:{placement:t}};let r=null==(D=I.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:D.placement;if(!r)switch(p){case"bestFit":{var T;const e=null==(T=I.filter((e=>{if(S){const t=oe(e.placement);return t===y||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:T[0];e&&(r=e);break}case"initialPlacement":r=s}if(o!==r)return{reset:{placement:r}}}return{}}}},at=function(e){return void 0===e&&(e={}),{name:"size",options:e,async fn(t){var r,n;const{placement:o,rects:a,platform:i,elements:s}=t,{apply:l=()=>{},...c}=q(e,t),u=await Re(t,c),d=ee(o),f=te(o),p="y"===oe(o),{width:h,height:m}=a.floating;let g,v;"top"===d||"bottom"===d?(g=d,v=f===(await(null==i.isRTL?void 0:i.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,g="end"===f?"top":"bottom");const y=m-u.top-u.bottom,b=h-u.left-u.right,w=V(m-u[g],y),x=V(h-u[v],b),S=!t.middlewareData.shift;let A=w,k=x;if(null!=(r=t.middlewareData.shift)&&r.enabled.x&&(k=b),null!=(n=t.middlewareData.shift)&&n.enabled.y&&(A=y),S&&!f){const e=G(u.left,0),t=G(u.right,0),r=G(u.top,0),n=G(u.bottom,0);p?k=h-2*(0!==e||0!==t?e+t:G(u.left,u.right)):A=m-2*(0!==r||0!==n?r+n:G(u.top,u.bottom))}await l({...t,availableWidth:k,availableHeight:A});const C=await i.getDimensions(s.floating);return h!==C.width||m!==C.height?{reset:{rects:!0}}:{}}}},it=function(e){return void 0===e&&(e={}),{name:"hide",options:e,async fn(t){const{rects:r}=t,{strategy:n="referenceHidden",...o}=q(e,t);switch(n){case"referenceHidden":{const e=_e(await Re(t,{...o,elementContext:"reference"}),r.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:Ne(e)}}}case"escaped":{const e=_e(await Re(t,{...o,altBoundary:!0}),r.floating);return{data:{escapedOffsets:e,escaped:Ne(e)}}}default:return{}}}}},st=e=>({name:"arrow",options:e,async fn(t){const{x:r,y:n,placement:o,rects:a,platform:i,elements:s,middlewareData:l}=t,{element:c,padding:u=0}=q(e,t)||{};if(null==c)return{};const d=ce(u),f={x:r,y:n},p=ae(o),h=ne(p),m=await i.getDimensions(c),g="y"===p,v=g?"top":"left",y=g?"bottom":"right",b=g?"clientHeight":"clientWidth",w=a.reference[h]+a.reference[p]-f[p]-a.floating[h],x=f[p]-a.reference[p],S=await(null==i.getOffsetParent?void 0:i.getOffsetParent(c));let A=S?S[b]:0;A&&await(null==i.isElement?void 0:i.isElement(S))||(A=s.floating[b]||a.floating[h]);const k=w/2-x/2,C=A/2-m[h]/2-1,I=V(d[v],C),E=V(d[y],C),D=I,T=A-m[h]-E,O=A/2-m[h]/2+k,M=$(D,O,T),P=!l.arrow&&null!=te(o)&&O!==M&&a.reference[h]/2-(O<D?I:E)-m[h]/2<0,j=P?O<D?O-D:O-T:0;return{[p]:f[p]+j,data:{[p]:M,centerOffset:O-M-j,...P&&{alignmentOffset:j}},reset:P}}}),lt=function(e){return void 0===e&&(e={}),{name:"inline",options:e,async fn(t){const{placement:r,elements:n,rects:o,platform:a,strategy:i}=t,{padding:s=2,x:l,y:c}=q(e,t),u=Array.from(await(null==a.getClientRects?void 0:a.getClientRects(n.reference))||[]),d=function(e){const t=e.slice().sort(((e,t)=>e.y-t.y)),r=[];let n=null;for(let o=0;o<t.length;o++){const e=t[o];!n||e.y-n.y>n.height/2?r.push([e]):r[r.length-1].push(e),n=e}return r.map((e=>ue(Le(e))))}(u),f=ue(Le(u)),p=ce(s);const h=await a.getElementRects({reference:{getBoundingClientRect:function(){if(2===d.length&&d[0].left>d[1].right&&null!=l&&null!=c)return d.find((e=>l>e.left-p.left&&l<e.right+p.right&&c>e.top-p.top&&c<e.bottom+p.bottom))||f;if(d.length>=2){if("y"===oe(r)){const e=d[0],t=d[d.length-1],n="top"===ee(r),o=e.top,a=t.bottom,i=n?e.left:t.left,s=n?e.right:t.right;return{top:o,bottom:a,left:i,right:s,width:s-i,height:a-o,x:i,y:o}}const e="left"===ee(r),t=G(...d.map((e=>e.right))),n=V(...d.map((e=>e.left))),o=d.filter((r=>e?r.left===n:r.right===t)),a=o[0].top,i=o[o.length-1].bottom;return{top:a,bottom:i,left:n,right:t,width:t-n,height:i-a,x:n,y:a}}return f}},floating:n.floating,strategy:i});return o.reference.x!==h.reference.x||o.reference.y!==h.reference.y||o.reference.width!==h.reference.width||o.reference.height!==h.reference.height?{reset:{rects:h}}:{}}}},ct=function(e){return void 0===e&&(e={}),{options:e,fn(t){const{x:r,y:n,placement:o,rects:a,middlewareData:i}=t,{offset:s=0,mainAxis:l=!0,crossAxis:c=!0}=q(e,t),u={x:r,y:n},d=oe(o),f=re(d);let p=u[f],h=u[d];const m=q(s,t),g="number"===typeof m?{mainAxis:m,crossAxis:0}:{mainAxis:0,crossAxis:0,...m};if(l){const e="y"===f?"height":"width",t=a.reference[f]-a.floating[e]+g.mainAxis,r=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>r&&(p=r)}if(c){var v,y;const e="y"===f?"width":"height",t=["top","left"].includes(ee(o)),r=a.reference[d]-a.floating[e]+(t&&(null==(v=i.offset)?void 0:v[d])||0)+(t?0:g.crossAxis),n=a.reference[d]+a.reference[e]+(t?0:(null==(y=i.offset)?void 0:y[d])||0)-(t?g.crossAxis:0);h<r?h=r:h>n&&(h=n)}return{[f]:p,[d]:h}}}},ut=(e,t,r)=>{const n=new Map,o={platform:$e,...r},a={...o.platform,_c:n};return(async(e,t,r)=>{const{placement:n="bottom",strategy:o="absolute",middleware:a=[],platform:i}=r,s=a.filter(Boolean),l=await(null==i.isRTL?void 0:i.isRTL(t));let c=await i.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:d}=je(c,n,l),f=n,p={},h=0;for(let m=0;m<s.length;m++){const{name:r,fn:a}=s[m],{x:g,y:v,data:y,reset:b}=await a({x:u,y:d,initialPlacement:n,placement:f,strategy:o,middlewareData:p,rects:c,platform:i,elements:{reference:e,floating:t}});u=null!=g?g:u,d=null!=v?v:d,p={...p,[r]:{...p[r],...y}},b&&h<=50&&(h++,"object"===typeof b&&(b.placement&&(f=b.placement),b.rects&&(c=!0===b.rects?await i.getElementRects({reference:e,floating:t,strategy:o}):b.rects),({x:u,y:d}=je(c,f,l))),m=-1)}return{x:u,y:d,placement:f,strategy:o,middlewareData:p}})(e,t,{...o,platform:a})};var dt="undefined"!==typeof document?n.useLayoutEffect:n.useEffect;function ft(e,t){if(e===t)return!0;if(typeof e!==typeof t)return!1;if("function"===typeof e&&e.toString()===t.toString())return!0;let r,n,o;if(e&&t&&"object"===typeof e){if(Array.isArray(e)){if(r=e.length,r!==t.length)return!1;for(n=r;0!==n--;)if(!ft(e[n],t[n]))return!1;return!0}if(o=Object.keys(e),r=o.length,r!==Object.keys(t).length)return!1;for(n=r;0!==n--;)if(!{}.hasOwnProperty.call(t,o[n]))return!1;for(n=r;0!==n--;){const r=o[n];if(("_owner"!==r||!e.$$typeof)&&!ft(e[r],t[r]))return!1}return!0}return e!==e&&t!==t}function pt(e){if("undefined"===typeof window)return 1;return(e.ownerDocument.defaultView||window).devicePixelRatio||1}function ht(e,t){const r=pt(e);return Math.round(t*r)/r}function mt(e){const t=n.useRef(e);return dt((()=>{t.current=e})),t}const gt=e=>({name:"arrow",options:e,fn(t){const{element:r,padding:n}="function"===typeof e?e(t):e;return r&&(o=r,{}.hasOwnProperty.call(o,"current"))?null!=r.current?st({element:r.current,padding:n}).fn(t):{}:r?st({element:r,padding:n}).fn(t):{};var o}}),vt=(e,t)=>({...tt(e),options:[e,t]}),yt=(e,t)=>({...nt(e),options:[e,t]}),bt=(e,t)=>({...ct(e),options:[e,t]}),wt=(e,t)=>({...ot(e),options:[e,t]}),xt=(e,t)=>({...at(e),options:[e,t]}),St=(e,t)=>({...rt(e),options:[e,t]}),At=(e,t)=>({...it(e),options:[e,t]}),kt=(e,t)=>({...lt(e),options:[e,t]}),Ct=(e,t)=>({...gt(e),options:[e,t]});function It(e){return n.useMemo((()=>e.every((e=>null==e))?null:t=>{e.forEach((e=>{"function"===typeof e?e(t):null!=e&&(e.current=t)}))}),e)}const Et={...o},Dt=Et.useInsertionEffect||(e=>e());function Tt(e){const t=n.useRef((()=>{0}));return Dt((()=>{t.current=e})),n.useCallback((function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return null==t.current?void 0:t.current(...r)}),[])}const Ot="ArrowUp",Mt="ArrowDown",Pt="ArrowLeft",jt="ArrowRight";function Rt(e,t,r){return Math.floor(e/t)!==r}function _t(e,t){return t<0||t>=e.current.length}function Nt(e,t){return Ut(e,{disabledIndices:t})}function Lt(e,t){return Ut(e,{decrement:!0,startingIndex:e.current.length,disabledIndices:t})}function Ut(e,t){let{startingIndex:r=-1,decrement:n=!1,disabledIndices:o,amount:a=1}=void 0===t?{}:t;const i=e.current;let s=r;do{s+=n?-a:a}while(s>=0&&s<=i.length-1&&Ht(i,s,o));return s}function Bt(e,t){let{event:r,orientation:n,loop:o,rtl:a,cols:i,disabledIndices:s,minIndex:l,maxIndex:c,prevIndex:u,stopEvent:d=!1}=t,f=u;if(r.key===Ot){if(d&&F(r),-1===u)f=c;else if(f=Ut(e,{startingIndex:f,amount:i,decrement:!0,disabledIndices:s}),o&&(u-i<l||f<0)){const e=u%i,t=c%i,r=c-(t-e);f=t===e?c:t>e?r:r-i}_t(e,f)&&(f=u)}if(r.key===Mt&&(d&&F(r),-1===u?f=l:(f=Ut(e,{startingIndex:u,amount:i,disabledIndices:s}),o&&u+i>c&&(f=Ut(e,{startingIndex:u%i-i,amount:i,disabledIndices:s}))),_t(e,f)&&(f=u)),"both"===n){const t=Q(u/i);r.key===(a?Pt:jt)&&(d&&F(r),u%i!==i-1?(f=Ut(e,{startingIndex:u,disabledIndices:s}),o&&Rt(f,i,t)&&(f=Ut(e,{startingIndex:u-u%i-1,disabledIndices:s}))):o&&(f=Ut(e,{startingIndex:u-u%i-1,disabledIndices:s})),Rt(f,i,t)&&(f=u)),r.key===(a?jt:Pt)&&(d&&F(r),u%i!==0?(f=Ut(e,{startingIndex:u,decrement:!0,disabledIndices:s}),o&&Rt(f,i,t)&&(f=Ut(e,{startingIndex:u+(i-u%i),decrement:!0,disabledIndices:s}))):o&&(f=Ut(e,{startingIndex:u+(i-u%i),decrement:!0,disabledIndices:s})),Rt(f,i,t)&&(f=u));const n=Q(c/i)===t;_t(e,f)&&(f=o&&n?r.key===(a?jt:Pt)?c:Ut(e,{startingIndex:u-u%i-1,disabledIndices:s}):u)}return f}function Ft(e,t,r){const n=[];let o=0;return e.forEach(((e,a)=>{let{width:i,height:s}=e,l=!1;for(r&&(o=0);!l;){const e=[];for(let r=0;r<i;r++)for(let n=0;n<s;n++)e.push(o+r+n*t);o%t+i<=t&&e.every((e=>null==n[e]))?(e.forEach((e=>{n[e]=a})),l=!0):o++}})),[...n]}function zt(e,t,r,n,o){if(-1===e)return-1;const a=r.indexOf(e),i=t[e];switch(o){case"tl":return a;case"tr":return i?a+i.width-1:a;case"bl":return i?a+(i.height-1)*n:a;case"br":return r.lastIndexOf(e)}}function Wt(e,t){return t.flatMap(((t,r)=>e.includes(t)?[r]:[]))}function Ht(e,t,r){if(r)return r.includes(t);const n=e[t];return null==n||n.hasAttribute("disabled")||"true"===n.getAttribute("aria-disabled")}var Yt="undefined"!==typeof document?n.useLayoutEffect:n.useEffect;function Vt(e,t){const r=e.compareDocumentPosition(t);return r&Node.DOCUMENT_POSITION_FOLLOWING||r&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:r&Node.DOCUMENT_POSITION_PRECEDING||r&Node.DOCUMENT_POSITION_CONTAINS?1:0}const Gt=n.createContext({register:()=>{},unregister:()=>{},map:new Map,elementsRef:{current:[]}});function Zt(e){const{children:t,elementsRef:r,labelsRef:o}=e,[a,i]=n.useState((()=>new Map)),s=n.useCallback((e=>{i((t=>new Map(t).set(e,null)))}),[]),l=n.useCallback((e=>{i((t=>{const r=new Map(t);return r.delete(e),r}))}),[]);return Yt((()=>{const e=new Map(a);Array.from(e.keys()).sort(Vt).forEach(((t,r)=>{e.set(t,r)})),function(e,t){if(e.size!==t.size)return!1;for(const[r,n]of e.entries())if(n!==t.get(r))return!1;return!0}(a,e)||i(e)}),[a]),n.createElement(Gt.Provider,{value:n.useMemo((()=>({register:s,unregister:l,map:a,elementsRef:r,labelsRef:o})),[s,l,a,r,o])},t)}function Qt(e){void 0===e&&(e={});const{label:t}=e,{register:r,unregister:o,map:a,elementsRef:i,labelsRef:s}=n.useContext(Gt),[l,c]=n.useState(null),u=n.useRef(null),d=n.useCallback((e=>{if(u.current=e,null!==l&&(i.current[l]=e,s)){var r;const n=void 0!==t;s.current[l]=n?t:null!=(r=null==e?void 0:e.textContent)?r:null}}),[l,i,s,t]);return Yt((()=>{const e=u.current;if(e)return r(e),()=>{o(e)}}),[r,o]),Yt((()=>{const e=u.current?a.get(u.current):null;null!=e&&c(e)}),[a]),n.useMemo((()=>({ref:d,index:null==l?-1:l})),[l,d])}function Kt(e,t){return"function"===typeof e?e(t):e?n.cloneElement(e,t):n.createElement("div",t)}const Xt=n.createContext({activeIndex:0,onNavigate:()=>{}}),Jt=[Pt,jt],$t=[Ot,Mt],qt=[...Jt,...$t],er=n.forwardRef((function(e,t){const{render:r,orientation:o="both",loop:a=!0,rtl:i=!1,cols:s=1,disabledIndices:l,activeIndex:c,onNavigate:u,itemSizes:d,dense:f=!1,...p}=e,[h,m]=n.useState(0),g=null!=c?c:h,v=Tt(null!=u?u:m),y=n.useRef([]),b=r&&"function"!==typeof r?r.props:{},w=n.useMemo((()=>({activeIndex:g,onNavigate:v})),[g,v]),x=s>1;const S={...p,...b,ref:t,"aria-orientation":"both"===o?void 0:o,onKeyDown(e){null==p.onKeyDown||p.onKeyDown(e),null==b.onKeyDown||b.onKeyDown(e),function(e){if(!qt.includes(e.key))return;let t=g;const r=Nt(y,l),n=Lt(y,l),c=i?Pt:jt,u=i?jt:Pt;if(x){const u=d||Array.from({length:y.current.length},(()=>({width:1,height:1}))),p=Ft(u,s,f),h=p.findIndex((e=>null!=e&&!Ht(y.current,e,l))),m=p.reduce(((e,t,r)=>null==t||Ht(y.current,t,l)?e:r),-1),v=p[Bt({current:p.map((e=>e?y.current[e]:null))},{event:e,orientation:o,loop:a,rtl:i,cols:s,disabledIndices:Wt([...l||y.current.map(((e,t)=>Ht(y.current,t)?t:void 0)),void 0],p),minIndex:h,maxIndex:m,prevIndex:zt(g>n?r:g,u,p,s,e.key===Mt?"bl":e.key===c?"tr":"tl")})];null!=v&&(t=v)}const p={horizontal:[c],vertical:[Mt],both:[c,Mt]}[o],h={horizontal:[u],vertical:[Ot],both:[u,Ot]}[o],m=x?qt:{horizontal:Jt,vertical:$t,both:qt}[o];var b;t===g&&[...p,...h].includes(e.key)&&(t=a&&t===n&&p.includes(e.key)?r:a&&t===r&&h.includes(e.key)?n:Ut(y,{startingIndex:t,decrement:h.includes(e.key),disabledIndices:l})),t===g||_t(y,t)||(e.stopPropagation(),m.includes(e.key)&&e.preventDefault(),v(t),null==(b=y.current[t])||b.focus())}(e)}};return n.createElement(Xt.Provider,{value:w},n.createElement(Zt,{elementsRef:y},Kt(r,S)))})),tr=n.forwardRef((function(e,t){const{render:r,...o}=e,a=r&&"function"!==typeof r?r.props:{},{activeIndex:i,onNavigate:s}=n.useContext(Xt),{ref:l,index:c}=Qt(),u=It([l,t,a.ref]),d=i===c;return Kt(r,{...o,...a,ref:u,tabIndex:d?0:-1,"data-active":d?"":void 0,onFocus(e){null==o.onFocus||o.onFocus(e),null==a.onFocus||a.onFocus(e),s(c)}})}));function rr(){return rr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},rr.apply(this,arguments)}let nr=!1,or=0;const ar=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+or++;const ir=Et.useId||function(){const[e,t]=n.useState((()=>nr?ar():void 0));return Yt((()=>{null==e&&t(ar())}),[]),n.useEffect((()=>{nr=!0}),[]),e};const sr=n.forwardRef((function(e,t){const{context:{placement:r,elements:{floating:o},middlewareData:{arrow:a,shift:i}},width:s=14,height:l=7,tipRadius:c=0,strokeWidth:u=0,staticOffset:d,stroke:f,d:p,style:{transform:h,...m}={},...g}=e;const v=ir(),[y,w]=n.useState(!1);if(Yt((()=>{if(!o)return;"rtl"===b(o).direction&&w(!0)}),[o]),!o)return null;const[x,S]=r.split("-"),A="top"===x||"bottom"===x;let k=d;(A&&null!=i&&i.x||!A&&null!=i&&i.y)&&(k=null);const C=2*u,I=C/2,E=s/2*(c/-8+1),D=l/2*c/4,T=!!p,O=k&&"end"===S?"bottom":"top";let M=k&&"end"===S?"right":"left";k&&y&&(M="end"===S?"left":"right");const P=null!=(null==a?void 0:a.x)?k||a.x:"",j=null!=(null==a?void 0:a.y)?k||a.y:"",R=p||"M0,0 H"+s+" L"+(s-E)+","+(l-D)+" Q"+s/2+","+l+" "+E+","+(l-D)+" Z",_={top:T?"rotate(180deg)":"",left:T?"rotate(90deg)":"rotate(-90deg)",bottom:T?"":"rotate(180deg)",right:T?"rotate(-90deg)":"rotate(90deg)"}[x];return n.createElement("svg",rr({},g,{"aria-hidden":!0,ref:t,width:T?s:s+C,height:s,viewBox:"0 0 "+s+" "+(l>s?l:s),style:{position:"absolute",pointerEvents:"none",[M]:P,[O]:j,[x]:A||T?"100%":"calc(100% - "+C/2+"px)",transform:[_,h].filter((e=>!!e)).join(" "),...m}}),C>0&&n.createElement("path",{clipPath:"url(#"+v+")",fill:"none",stroke:f,strokeWidth:C+(p?0:1),d:R}),n.createElement("path",{stroke:C&&!p?g.fill:"none",d:R}),n.createElement("clipPath",{id:v},n.createElement("rect",{x:-I,y:I*(T?-1:1),width:s+C,height:s})))}));function lr(){const e=new Map;return{emit(t,r){var n;null==(n=e.get(t))||n.forEach((e=>e(r)))},on(t,r){e.set(t,[...e.get(t)||[],r])},off(t,r){var n;e.set(t,(null==(n=e.get(t))?void 0:n.filter((e=>e!==r)))||[])}}}const cr=n.createContext(null),ur=n.createContext(null),dr=()=>{var e;return(null==(e=n.useContext(cr))?void 0:e.id)||null},fr=()=>n.useContext(ur);function pr(e){const t=ir(),r=fr(),n=dr(),o=e||n;return Yt((()=>{const e={id:t,parentId:o};return null==r||r.addNode(e),()=>{null==r||r.removeNode(e)}}),[r,t,o]),t}function hr(e){const{children:t,id:r}=e,o=dr();return n.createElement(cr.Provider,{value:n.useMemo((()=>({id:r,parentId:o})),[r,o])},t)}function mr(e){const{children:t}=e,r=n.useRef([]),o=n.useCallback((e=>{r.current=[...r.current,e]}),[]),a=n.useCallback((e=>{r.current=r.current.filter((t=>t!==e))}),[]),i=n.useState((()=>lr()))[0];return n.createElement(ur.Provider,{value:n.useMemo((()=>({nodesRef:r,addNode:o,removeNode:a,events:i})),[o,a,i])},t)}function gr(e){return"data-floating-ui-"+e}function vr(e){const t=(0,n.useRef)(e);return Yt((()=>{t.current=e})),t}const yr=gr("safe-polygon");function br(e,t,r){return r&&!R(r)?0:"number"===typeof e?e:null==e?void 0:e[t]}function wr(e,t){void 0===t&&(t={});const{open:r,onOpenChange:o,dataRef:a,events:i,elements:s}=e,{enabled:l=!0,delay:c=0,handleClose:d=null,mouseOnly:f=!1,restMs:p=0,move:h=!0}=t,m=fr(),g=dr(),v=vr(d),y=vr(c),b=vr(r),w=n.useRef(),x=n.useRef(-1),S=n.useRef(),A=n.useRef(-1),k=n.useRef(!0),C=n.useRef(!1),E=n.useRef((()=>{})),D=n.useRef(!1),T=n.useCallback((()=>{var e;const t=null==(e=a.current.openEvent)?void 0:e.type;return(null==t?void 0:t.includes("mouse"))&&"mousedown"!==t}),[a]);n.useEffect((()=>{if(l)return i.on("openchange",e),()=>{i.off("openchange",e)};function e(e){let{open:t}=e;t||(clearTimeout(x.current),clearTimeout(A.current),k.current=!0,D.current=!1)}}),[l,i]),n.useEffect((()=>{if(!l)return;if(!v.current)return;if(!r)return;function e(e){T()&&o(!1,e,"hover")}const t=_(s.floating).documentElement;return t.addEventListener("mouseleave",e),()=>{t.removeEventListener("mouseleave",e)}}),[s.floating,r,o,l,v,T]);const O=n.useCallback((function(e,t,r){void 0===t&&(t=!0),void 0===r&&(r="hover");const n=br(y.current,"close",w.current);n&&!S.current?(clearTimeout(x.current),x.current=window.setTimeout((()=>o(!1,e,r)),n)):t&&(clearTimeout(x.current),o(!1,e,r))}),[y,o]),M=Tt((()=>{E.current(),S.current=void 0})),P=Tt((()=>{if(C.current){const e=_(s.floating).body;e.style.pointerEvents="",e.removeAttribute(yr),C.current=!1}})),j=Tt((()=>!!a.current.openEvent&&["click","mousedown"].includes(a.current.openEvent.type)));n.useEffect((()=>{if(l&&u(s.domReference)){var e;const o=s.domReference;return r&&o.addEventListener("mouseleave",i),null==(e=s.floating)||e.addEventListener("mouseleave",i),h&&o.addEventListener("mousemove",t,{once:!0}),o.addEventListener("mouseenter",t),o.addEventListener("mouseleave",n),()=>{var e;r&&o.removeEventListener("mouseleave",i),null==(e=s.floating)||e.removeEventListener("mouseleave",i),h&&o.removeEventListener("mousemove",t),o.removeEventListener("mouseenter",t),o.removeEventListener("mouseleave",n)}}function t(e){if(clearTimeout(x.current),k.current=!1,f&&!R(w.current)||p>0&&!br(y.current,"open"))return;const t=br(y.current,"open",w.current);t?x.current=window.setTimeout((()=>{b.current||o(!0,e,"hover")}),t):r||o(!0,e,"hover")}function n(e){if(j())return;E.current();const t=_(s.floating);if(clearTimeout(A.current),D.current=!1,v.current&&a.current.floatingContext){r||clearTimeout(x.current),S.current=v.current({...a.current.floatingContext,tree:m,x:e.clientX,y:e.clientY,onClose(){P(),M(),j()||O(e,!0,"safe-polygon")}});const n=S.current;return t.addEventListener("mousemove",n),void(E.current=()=>{t.removeEventListener("mousemove",n)})}("touch"!==w.current||!I(s.floating,e.relatedTarget))&&O(e)}function i(e){j()||a.current.floatingContext&&(null==v.current||v.current({...a.current.floatingContext,tree:m,x:e.clientX,y:e.clientY,onClose(){P(),M(),j()||O(e)}})(e))}}),[s,l,e,f,p,h,O,M,P,o,r,b,m,y,v,a,j]),Yt((()=>{var e;if(l&&r&&null!=(e=v.current)&&e.__options.blockPointerEvents&&T()){C.current=!0;const e=s.floating;if(u(s.domReference)&&e){var t;const r=_(s.floating).body;r.setAttribute(yr,"");const n=s.domReference,o=null==m||null==(t=m.nodesRef.current.find((e=>e.id===g)))||null==(t=t.context)?void 0:t.elements.floating;return o&&(o.style.pointerEvents=""),r.style.pointerEvents="none",n.style.pointerEvents="auto",e.style.pointerEvents="auto",()=>{r.style.pointerEvents="",n.style.pointerEvents="",e.style.pointerEvents=""}}}}),[l,r,g,s,m,v,T]),Yt((()=>{r||(w.current=void 0,D.current=!1,M(),P())}),[r,M,P]),n.useEffect((()=>()=>{M(),clearTimeout(x.current),clearTimeout(A.current),P()}),[l,s.domReference,M,P]);const N=n.useMemo((()=>{function e(e){w.current=e.pointerType}return{onPointerDown:e,onPointerEnter:e,onMouseMove(e){const{nativeEvent:t}=e;function n(){k.current||b.current||o(!0,t,"hover")}f&&!R(w.current)||r||0===p||D.current&&e.movementX**2+e.movementY**2<2||(clearTimeout(A.current),"touch"===w.current?n():(D.current=!0,A.current=window.setTimeout(n,p)))}}}),[f,o,r,b,p]),L=n.useMemo((()=>({onMouseEnter(){clearTimeout(x.current)},onMouseLeave(e){j()||O(e.nativeEvent,!1)}})),[O,j]);return n.useMemo((()=>l?{reference:N,floating:L}:{}),[l,N,L])}const xr=()=>{},Sr=n.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:xr,setState:xr,isInstantPhase:!1}),Ar=()=>n.useContext(Sr);function kr(e){const{children:t,delay:r,timeoutMs:o=0}=e,[a,i]=n.useReducer(((e,t)=>({...e,...t})),{delay:r,timeoutMs:o,initialDelay:r,currentId:null,isInstantPhase:!1}),s=n.useRef(null),l=n.useCallback((e=>{i({currentId:e})}),[]);return Yt((()=>{a.currentId?null===s.current?s.current=a.currentId:a.isInstantPhase||i({isInstantPhase:!0}):(a.isInstantPhase&&i({isInstantPhase:!1}),s.current=null)}),[a.currentId,a.isInstantPhase]),n.createElement(Sr.Provider,{value:n.useMemo((()=>({...a,setState:i,setCurrentId:l})),[a,l])},t)}function Cr(e,t){void 0===t&&(t={});const{open:r,onOpenChange:n,floatingId:o}=e,{id:a,enabled:i=!0}=t,s=null!=a?a:o,l=Ar(),{currentId:c,setCurrentId:u,initialDelay:d,setState:f,timeoutMs:p}=l;return Yt((()=>{i&&c&&(f({delay:{open:1,close:br(d,"close")}}),c!==s&&n(!1))}),[i,s,n,f,c,d]),Yt((()=>{function e(){n(!1),f({delay:d,currentId:null})}if(i&&c&&!r&&c===s){if(p){const t=window.setTimeout(e,p);return()=>{clearTimeout(t)}}e()}}),[i,r,f,c,s,n,d,p]),Yt((()=>{i&&u!==xr&&r&&u(s)}),[i,r,u,s]),l}let Ir=0;function Er(e,t){void 0===t&&(t={});const{preventScroll:r=!1,cancelPrevious:n=!0,sync:o=!1}=t;n&&cancelAnimationFrame(Ir);const a=()=>null==e?void 0:e.focus({preventScroll:r});o?a():Ir=requestAnimationFrame(a)}function Dr(e,t){let r=e.filter((e=>{var r;return e.parentId===t&&(null==(r=e.context)?void 0:r.open)})),n=r;for(;n.length;)n=e.filter((e=>{var t;return null==(t=n)?void 0:t.some((t=>{var r;return e.parentId===t.id&&(null==(r=e.context)?void 0:r.open)}))})),r=r.concat(n);return r}let Tr=new WeakMap,Or=new WeakSet,Mr={},Pr=0;const jr=()=>"undefined"!==typeof HTMLElement&&"inert"in HTMLElement.prototype,Rr=e=>e&&(e.host||Rr(e.parentNode)),_r=(e,t)=>t.map((t=>{if(e.contains(t))return t;const r=Rr(t);return e.contains(r)?r:null})).filter((e=>null!=e));function Nr(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!1);const n=_(e[0]).body;return function(e,t,r,n){const o="data-floating-ui-inert",a=n?"inert":r?"aria-hidden":null,s=_r(t,e),l=new Set,c=new Set(s),u=[];Mr[o]||(Mr[o]=new WeakMap);const d=Mr[o];return s.forEach((function e(t){t&&!l.has(t)&&(l.add(t),t.parentNode&&e(t.parentNode))})),function e(t){t&&!c.has(t)&&[].forEach.call(t.children,(t=>{if("script"!==i(t))if(l.has(t))e(t);else{const e=a?t.getAttribute(a):null,r=null!==e&&"false"!==e,n=(Tr.get(t)||0)+1,i=(d.get(t)||0)+1;Tr.set(t,n),d.set(t,i),u.push(t),1===n&&r&&Or.add(t),1===i&&t.setAttribute(o,""),!r&&a&&t.setAttribute(a,"true")}}))}(t),l.clear(),Pr++,()=>{u.forEach((e=>{const t=(Tr.get(e)||0)-1,r=(d.get(e)||0)-1;Tr.set(e,t),d.set(e,r),t||(!Or.has(e)&&a&&e.removeAttribute(a),Or.delete(e)),r||e.removeAttribute(o)})),Pr--,Pr||(Tr=new WeakMap,Tr=new WeakMap,Or=new WeakSet,Mr={})}}(e.concat(Array.from(n.querySelectorAll("[aria-live]"))),n,t,r)}const Lr=()=>({getShadowRoot:!0,displayCheck:"function"===typeof ResizeObserver&&ResizeObserver.toString().includes("[native code]")?"full":"none"});function Ur(e,t){const r=Oe(e,Lr());"prev"===t&&r.reverse();const n=r.indexOf(C(_(e)));return r.slice(n+1)[0]}function Br(){return Ur(document.body,"next")}function Fr(){return Ur(document.body,"prev")}function zr(e,t){const r=t||e.currentTarget,n=e.relatedTarget;return!n||!I(r,n)}function Wr(e){Oe(e,Lr()).forEach((e=>{e.dataset.tabindex=e.getAttribute("tabindex")||"",e.setAttribute("tabindex","-1")}))}function Hr(e){e.querySelectorAll("[data-tabindex]").forEach((e=>{const t=e.dataset.tabindex;delete e.dataset.tabindex,t?e.setAttribute("tabindex",t):e.removeAttribute("tabindex")}))}const Yr={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"fixed",whiteSpace:"nowrap",width:"1px",top:0,left:0};function Vr(e){"Tab"===e.key&&(e.target,clearTimeout(undefined))}const Gr=n.forwardRef((function(e,t){const[r,o]=n.useState();Yt((()=>(M()&&o("button"),document.addEventListener("keydown",Vr),()=>{document.removeEventListener("keydown",Vr)})),[]);const a={ref:t,tabIndex:0,role:r,"aria-hidden":!r||void 0,[gr("focus-guard")]:"",style:Yr};return n.createElement("span",rr({},e,a))})),Zr=n.createContext(null),Qr=gr("portal");function Kr(e){void 0===e&&(e={});const{id:t,root:r}=e,o=ir(),a=Jr(),[i,s]=n.useState(null),l=n.useRef(null);return Yt((()=>()=>{null==i||i.remove(),queueMicrotask((()=>{l.current=null}))}),[i]),Yt((()=>{if(!o)return;if(l.current)return;const e=t?document.getElementById(t):null;if(!e)return;const r=document.createElement("div");r.id=o,r.setAttribute(Qr,""),e.appendChild(r),l.current=r,s(r)}),[t,o]),Yt((()=>{if(null===r)return;if(!o)return;if(l.current)return;let e=r||(null==a?void 0:a.portalNode);e&&!u(e)&&(e=e.current),e=e||document.body;let n=null;t&&(n=document.createElement("div"),n.id=t,e.appendChild(n));const i=document.createElement("div");i.id=o,i.setAttribute(Qr,""),e=n||e,e.appendChild(i),l.current=i,s(i)}),[t,r,o,a]),i}function Xr(e){const{children:t,id:r,root:o,preserveTabOrder:a=!0}=e,i=Kr({id:r,root:o}),[s,l]=n.useState(null),c=n.useRef(null),u=n.useRef(null),d=n.useRef(null),f=n.useRef(null),p=null==s?void 0:s.modal,h=null==s?void 0:s.open,m=!!s&&!s.modal&&s.open&&a&&!(!o&&!i);return n.useEffect((()=>{if(i&&a&&!p)return i.addEventListener("focusin",e,!0),i.addEventListener("focusout",e,!0),()=>{i.removeEventListener("focusin",e,!0),i.removeEventListener("focusout",e,!0)};function e(e){if(i&&zr(e)){("focusin"===e.type?Hr:Wr)(i)}}}),[i,a,p]),n.useEffect((()=>{i&&(h||Hr(i))}),[h,i]),n.createElement(Zr.Provider,{value:n.useMemo((()=>({preserveTabOrder:a,beforeOutsideRef:c,afterOutsideRef:u,beforeInsideRef:d,afterInsideRef:f,portalNode:i,setFocusManagerState:l})),[a,i])},m&&i&&n.createElement(Gr,{"data-type":"outside",ref:c,onFocus:e=>{if(zr(e,i)){var t;null==(t=d.current)||t.focus()}else{const e=Fr()||(null==s?void 0:s.refs.domReference.current);null==e||e.focus()}}}),m&&i&&n.createElement("span",{"aria-owns":i.id,style:Yr}),i&&Pe.createPortal(t,i),m&&i&&n.createElement(Gr,{"data-type":"outside",ref:u,onFocus:e=>{if(zr(e,i)){var t;null==(t=f.current)||t.focus()}else{const t=Br()||(null==s?void 0:s.refs.domReference.current);null==t||t.focus(),(null==s?void 0:s.closeOnFocusOut)&&(null==s||s.onOpenChange(!1,e.nativeEvent,"focus-out"))}}}))}const Jr=()=>n.useContext(Zr),$r="data-floating-ui-focusable";function qr(e){return e?e.hasAttribute($r)?e:e.querySelector("["+$r+"]")||e:null}const en=20;let tn=[];function rn(e){tn=tn.filter((e=>e.isConnected));let t=e;if(t&&"body"!==i(t)){if(!Me(t,Lr())){const e=Oe(t,Lr())[0];e&&(t=e)}tn.push(t),tn.length>en&&(tn=tn.slice(-en))}}function nn(){return tn.slice().reverse().find((e=>e.isConnected))}const on=n.forwardRef((function(e,t){return n.createElement("button",rr({},e,{type:"button",ref:t,tabIndex:-1,style:Yr}))}));function an(e){const{context:t,children:r,disabled:o=!1,order:a=["content"],guards:i=!0,initialFocus:s=0,returnFocus:l=!0,restoreFocus:c=!1,modal:u=!0,visuallyHiddenDismiss:f=!1,closeOnFocusOut:p=!0}=e,{open:h,refs:m,nodeId:g,onOpenChange:v,events:y,dataRef:b,floatingId:w,elements:{domReference:x,floating:S}}=t,A="number"===typeof s&&s<0,k=z(x)&&A,E=!jr()||i,D=vr(a),M=vr(s),P=vr(l),j=fr(),R=Jr(),N=n.useRef(null),U=n.useRef(null),B=n.useRef(!1),W=n.useRef(!1),H=n.useRef(-1),Y=null!=R,V=qr(S),G=Tt((function(e){return void 0===e&&(e=V),e?Oe(e,Lr()):[]})),Z=Tt((e=>{const t=G(e);return D.current.map((e=>x&&"reference"===e?x:V&&"floating"===e?V:t)).filter(Boolean).flat()}));function Q(e){return!o&&f&&u?n.createElement(on,{ref:"start"===e?N:U,onClick:e=>v(!1,e.nativeEvent)},"string"===typeof f?f:"Dismiss"):null}n.useEffect((()=>{if(o)return;if(!u)return;function e(e){if("Tab"===e.key){I(V,C(_(V)))&&0===G().length&&!k&&F(e);const t=Z(),r=L(e);"reference"===D.current[0]&&r===x&&(F(e),e.shiftKey?Er(t[t.length-1]):Er(t[1])),"floating"===D.current[1]&&r===V&&e.shiftKey&&(F(e),Er(t[0]))}}const t=_(V);return t.addEventListener("keydown",e),()=>{t.removeEventListener("keydown",e)}}),[o,x,V,u,D,k,G,Z]),n.useEffect((()=>{if(!o&&S)return S.addEventListener("focusin",e),()=>{S.removeEventListener("focusin",e)};function e(e){const t=L(e),r=G().indexOf(t);-1!==r&&(H.current=r)}}),[o,S,G]),n.useEffect((()=>{if(!o&&p)return S&&d(x)?(x.addEventListener("focusout",t),x.addEventListener("pointerdown",e),S.addEventListener("focusout",t),()=>{x.removeEventListener("focusout",t),x.removeEventListener("pointerdown",e),S.removeEventListener("focusout",t)}):void 0;function e(){W.current=!0,setTimeout((()=>{W.current=!1}))}function t(e){const t=e.relatedTarget;queueMicrotask((()=>{const r=!(I(x,t)||I(S,t)||I(t,S)||I(null==R?void 0:R.portalNode,t)||null!=t&&t.hasAttribute(gr("focus-guard"))||j&&(Dr(j.nodesRef.current,g).find((e=>{var r,n;return I(null==(r=e.context)?void 0:r.elements.floating,t)||I(null==(n=e.context)?void 0:n.elements.domReference,t)}))||function(e,t){var r;let n=[],o=null==(r=e.find((e=>e.id===t)))?void 0:r.parentId;for(;o;){const t=e.find((e=>e.id===o));o=null==t?void 0:t.parentId,t&&(n=n.concat(t))}return n}(j.nodesRef.current,g).find((e=>{var r,n;return(null==(r=e.context)?void 0:r.elements.floating)===t||(null==(n=e.context)?void 0:n.elements.domReference)===t}))));if(c&&r&&C(_(V))===_(V).body){d(V)&&V.focus();const e=H.current,t=G(),r=t[e]||t[t.length-1]||V;d(r)&&r.focus()}!k&&u||!t||!r||W.current||t===nn()||(B.current=!0,v(!1,e,"focus-out"))}))}}),[o,x,S,V,u,g,j,R,v,p,c,G,k]),n.useEffect((()=>{var e;if(o)return;const t=Array.from((null==R||null==(e=R.portalNode)?void 0:e.querySelectorAll("["+gr("portal")+"]"))||[]);if(S){const e=[S,...t,N.current,U.current,D.current.includes("reference")||k?x:null].filter((e=>null!=e)),r=u||k?Nr(e,E,!E):Nr(e);return()=>{r()}}}),[o,x,S,u,D,R,k,E]),Yt((()=>{if(o||!d(V))return;const e=C(_(V));queueMicrotask((()=>{const t=Z(V),r=M.current,n=("number"===typeof r?t[r]:r.current)||V,o=I(V,e);A||o||!h||Er(n,{preventScroll:n===V})}))}),[o,h,V,A,Z,M]),Yt((()=>{if(o||!V)return;let e=!1;const t=_(V),r=C(t);let n=b.current.openEvent;function a(t){let{open:r,reason:o,event:a,nested:i}=t;r&&(n=a),"escape-key"===o&&m.domReference.current&&rn(m.domReference.current),"hover"===o&&"mouseleave"===a.type&&(B.current=!0),"outside-press"===o&&(i?(B.current=!1,e=!0):B.current=!(T(a)||O(a)))}rn(r),y.on("openchange",a);const i=t.createElement("span");return i.setAttribute("tabindex","-1"),i.setAttribute("aria-hidden","true"),Object.assign(i.style,Yr),Y&&x&&x.insertAdjacentElement("afterend",i),()=>{y.off("openchange",a);const r=C(t),o=I(S,r)||j&&Dr(j.nodesRef.current,g).some((e=>{var t;return I(null==(t=e.context)?void 0:t.elements.floating,r)}));(o||n&&["click","mousedown"].includes(n.type))&&m.domReference.current&&rn(m.domReference.current);const s="boolean"===typeof P.current?nn()||i:P.current.current||i;queueMicrotask((()=>{P.current&&!B.current&&d(s)&&(s===r||r===t.body||o)&&s.focus({preventScroll:e}),i.remove()}))}}),[o,S,V,P,b,m,y,j,g,Y,x]),n.useEffect((()=>{queueMicrotask((()=>{B.current=!1}))}),[o]),Yt((()=>{if(!o&&R)return R.setFocusManagerState({modal:u,closeOnFocusOut:p,open:h,onOpenChange:v,refs:m}),()=>{R.setFocusManagerState(null)}}),[o,R,u,h,v,m,p]),Yt((()=>{if(o)return;if(!V)return;if("function"!==typeof MutationObserver)return;if(A)return;const e=()=>{const e=V.getAttribute("tabindex"),t=G(),r=C(_(S)),n=t.indexOf(r);-1!==n&&(H.current=n),D.current.includes("floating")||r!==m.domReference.current&&0===t.length?"0"!==e&&V.setAttribute("tabindex","0"):"-1"!==e&&V.setAttribute("tabindex","-1")};e();const t=new MutationObserver(e);return t.observe(V,{childList:!0,subtree:!0,attributes:!0}),()=>{t.disconnect()}}),[o,S,V,m,D,G,A]);const K=!o&&E&&(!u||!k)&&(Y||u);return n.createElement(n.Fragment,null,K&&n.createElement(Gr,{"data-type":"inside",ref:null==R?void 0:R.beforeInsideRef,onFocus:e=>{if(u){const e=Z();Er("reference"===a[0]?e[0]:e[e.length-1])}else if(null!=R&&R.preserveTabOrder&&R.portalNode)if(B.current=!1,zr(e,R.portalNode)){const e=Br()||x;null==e||e.focus()}else{var t;null==(t=R.beforeOutsideRef.current)||t.focus()}}}),!k&&Q("start"),r,Q("end"),K&&n.createElement(Gr,{"data-type":"inside",ref:null==R?void 0:R.afterInsideRef,onFocus:e=>{if(u)Er(Z()[0]);else if(null!=R&&R.preserveTabOrder&&R.portalNode)if(p&&(B.current=!0),zr(e,R.portalNode)){const e=Fr()||x;null==e||e.focus()}else{var t;null==(t=R.afterOutsideRef.current)||t.focus()}}}))}let sn=0;let ln=()=>{};const cn=n.forwardRef((function(e,t){const{lockScroll:r=!1,...o}=e;return Yt((()=>{if(r)return sn++,1===sn&&(ln=function(){const e=/iP(hone|ad|od)|iOS/.test(E()),t=document.body.style,r=Math.round(document.documentElement.getBoundingClientRect().left)+document.documentElement.scrollLeft?"paddingLeft":"paddingRight",n=window.innerWidth-document.documentElement.clientWidth,o=t.left?parseFloat(t.left):window.scrollX,a=t.top?parseFloat(t.top):window.scrollY;if(t.overflow="hidden",n&&(t[r]=n+"px"),e){var i,s;const e=(null==(i=window.visualViewport)?void 0:i.offsetLeft)||0,r=(null==(s=window.visualViewport)?void 0:s.offsetTop)||0;Object.assign(t,{position:"fixed",top:-(a-Math.floor(r))+"px",left:-(o-Math.floor(e))+"px",right:"0"})}return()=>{Object.assign(t,{overflow:"",[r]:""}),e&&(Object.assign(t,{position:"",top:"",left:"",right:""}),window.scrollTo(o,a))}}()),()=>{sn--,0===sn&&ln()}}),[r]),n.createElement("div",rr({ref:t},o,{style:{position:"fixed",overflow:"auto",top:0,right:0,bottom:0,left:0,...o.style}}))}));function un(e){return d(e.target)&&"BUTTON"===e.target.tagName}function dn(e){return B(e)}function fn(e,t){void 0===t&&(t={});const{open:r,onOpenChange:o,dataRef:a,elements:{domReference:i}}=e,{enabled:s=!0,event:l="click",toggle:c=!0,ignoreMouse:u=!1,keyboardHandlers:d=!0,stickIfOpen:f=!0}=t,p=n.useRef(),h=n.useRef(!1),m=n.useMemo((()=>({onPointerDown(e){p.current=e.pointerType},onMouseDown(e){const t=p.current;0===e.button&&"click"!==l&&(R(t,!0)&&u||(!r||!c||a.current.openEvent&&f&&"mousedown"!==a.current.openEvent.type?(e.preventDefault(),o(!0,e.nativeEvent,"click")):o(!1,e.nativeEvent,"click")))},onClick(e){const t=p.current;"mousedown"===l&&p.current?p.current=void 0:R(t,!0)&&u||(!r||!c||a.current.openEvent&&f&&"click"!==a.current.openEvent.type?o(!0,e.nativeEvent,"click"):o(!1,e.nativeEvent,"click"))},onKeyDown(e){p.current=void 0,e.defaultPrevented||!d||un(e)||(" "!==e.key||dn(i)||(e.preventDefault(),h.current=!0),"Enter"===e.key&&o(!r||!c,e.nativeEvent,"click"))},onKeyUp(e){e.defaultPrevented||!d||un(e)||dn(i)||" "===e.key&&h.current&&(h.current=!1,o(!r||!c,e.nativeEvent,"click"))}})),[a,i,l,u,d,o,r,f,c]);return n.useMemo((()=>s?{reference:m}:{}),[s,m])}function pn(e){return null!=e&&null!=e.clientX}function hn(e,t){void 0===t&&(t={});const{open:r,dataRef:o,elements:{floating:a,domReference:i},refs:l}=e,{enabled:c=!0,axis:u="both",x:d=null,y:f=null}=t,p=n.useRef(!1),h=n.useRef(null),[m,g]=n.useState(),[v,y]=n.useState([]),b=Tt(((e,t)=>{p.current||o.current.openEvent&&!pn(o.current.openEvent)||l.setPositionReference(function(e,t){let r=null,n=null,o=!1;return{contextElement:e||void 0,getBoundingClientRect(){var a;const i=(null==e?void 0:e.getBoundingClientRect())||{width:0,height:0,x:0,y:0},s="x"===t.axis||"both"===t.axis,l="y"===t.axis||"both"===t.axis,c=["mouseenter","mousemove"].includes((null==(a=t.dataRef.current.openEvent)?void 0:a.type)||"")&&"touch"!==t.pointerType;let u=i.width,d=i.height,f=i.x,p=i.y;return null==r&&t.x&&s&&(r=i.x-t.x),null==n&&t.y&&l&&(n=i.y-t.y),f-=r||0,p-=n||0,u=0,d=0,!o||c?(u="y"===t.axis?i.width:0,d="x"===t.axis?i.height:0,f=s&&null!=t.x?t.x:f,p=l&&null!=t.y?t.y:p):o&&!c&&(d="x"===t.axis?i.height:d,u="y"===t.axis?i.width:u),o=!0,{width:u,height:d,x:f,y:p,top:p,right:f+u,bottom:p+d,left:f}}}}(i,{x:e,y:t,axis:u,dataRef:o,pointerType:m}))})),w=Tt((e=>{null==d&&null==f&&(r?h.current||y([]):b(e.clientX,e.clientY))})),x=R(m)?a:r,S=n.useCallback((()=>{if(!x||!c||null!=d||null!=f)return;const e=s(a);function t(r){const n=L(r);I(a,n)?(e.removeEventListener("mousemove",t),h.current=null):b(r.clientX,r.clientY)}if(!o.current.openEvent||pn(o.current.openEvent)){e.addEventListener("mousemove",t);const r=()=>{e.removeEventListener("mousemove",t),h.current=null};return h.current=r,r}l.setPositionReference(i)}),[x,c,d,f,a,o,l,i,b]);n.useEffect((()=>S()),[S,v]),n.useEffect((()=>{c&&!a&&(p.current=!1)}),[c,a]),n.useEffect((()=>{!c&&r&&(p.current=!0)}),[c,r]),Yt((()=>{!c||null==d&&null==f||(p.current=!1,b(d,f))}),[c,d,f,b]);const A=n.useMemo((()=>{function e(e){let{pointerType:t}=e;g(t)}return{onPointerDown:e,onPointerEnter:e,onMouseMove:w,onMouseEnter:w}}),[w]);return n.useMemo((()=>c?{reference:A}:{}),[c,A])}const mn={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},gn={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},vn=e=>{var t,r;return{escapeKey:"boolean"===typeof e?e:null!=(t=null==e?void 0:e.escapeKey)&&t,outsidePress:"boolean"===typeof e?e:null==(r=null==e?void 0:e.outsidePress)||r}};function yn(e,t){void 0===t&&(t={});const{open:r,onOpenChange:o,elements:a,dataRef:i}=e,{enabled:s=!0,escapeKey:l=!0,outsidePress:c=!0,outsidePressEvent:f="pointerdown",referencePress:p=!1,referencePressEvent:h="pointerdown",ancestorScroll:m=!1,bubbles:g,capture:w}=t,S=fr(),k=Tt("function"===typeof c?c:()=>!1),C="function"===typeof c?k:c,E=n.useRef(!1),D=n.useRef(!1),{escapeKey:T,outsidePress:O}=vn(g),{escapeKey:M,outsidePress:P}=vn(w),j=n.useRef(!1),R=Tt((e=>{var t;if(!r||!s||!l||"Escape"!==e.key)return;if(j.current)return;const n=null==(t=i.current.floatingContext)?void 0:t.nodeId,a=S?Dr(S.nodesRef.current,n):[];if(!T&&(e.stopPropagation(),a.length>0)){let e=!0;if(a.forEach((t=>{var r;null==(r=t.context)||!r.open||t.context.dataRef.current.__escapeKeyBubbles||(e=!1)})),!e)return}o(!1,function(e){return"nativeEvent"in e}(e)?e.nativeEvent:e,"escape-key")})),U=Tt((e=>{var t;const r=()=>{var t;R(e),null==(t=L(e))||t.removeEventListener("keydown",r)};null==(t=L(e))||t.addEventListener("keydown",r)})),B=Tt((e=>{var t;const r=E.current;E.current=!1;const n=D.current;if(D.current=!1,"click"===f&&n)return;if(r)return;if("function"===typeof C&&!C(e))return;const s=L(e),l="["+gr("inert")+"]",c=_(a.floating).querySelectorAll(l);let p=u(s)?s:null;for(;p&&!y(p);){const e=x(p);if(y(e)||!u(e))break;p=e}if(c.length&&u(s)&&!s.matches("html,body")&&!I(s,a.floating)&&Array.from(c).every((e=>!I(p,e))))return;if(d(s)&&W){const t=s.clientWidth>0&&s.scrollWidth>s.clientWidth,r=s.clientHeight>0&&s.scrollHeight>s.clientHeight;let n=r&&e.offsetX>s.clientWidth;if(r){"rtl"===b(s).direction&&(n=e.offsetX<=s.offsetWidth-s.clientWidth)}if(n||t&&e.offsetY>s.clientHeight)return}const h=null==(t=i.current.floatingContext)?void 0:t.nodeId,m=S&&Dr(S.nodesRef.current,h).some((t=>{var r;return N(e,null==(r=t.context)?void 0:r.elements.floating)}));if(N(e,a.floating)||N(e,a.domReference)||m)return;const g=S?Dr(S.nodesRef.current,h):[];if(g.length>0){let e=!0;if(g.forEach((t=>{var r;null==(r=t.context)||!r.open||t.context.dataRef.current.__outsidePressBubbles||(e=!1)})),!e)return}o(!1,e,"outside-press")})),F=Tt((e=>{var t;const r=()=>{var t;B(e),null==(t=L(e))||t.removeEventListener(f,r)};null==(t=L(e))||t.addEventListener(f,r)}));n.useEffect((()=>{if(!r||!s)return;i.current.__escapeKeyBubbles=T,i.current.__outsidePressBubbles=O;let e=-1;function t(e){o(!1,e,"ancestor-scroll")}function n(){window.clearTimeout(e),j.current=!0}function c(){e=window.setTimeout((()=>{j.current=!1}),v()?5:0)}const d=_(a.floating);l&&(d.addEventListener("keydown",M?U:R,M),d.addEventListener("compositionstart",n),d.addEventListener("compositionend",c)),C&&d.addEventListener(f,P?F:B,P);let p=[];return m&&(u(a.domReference)&&(p=A(a.domReference)),u(a.floating)&&(p=p.concat(A(a.floating))),!u(a.reference)&&a.reference&&a.reference.contextElement&&(p=p.concat(A(a.reference.contextElement)))),p=p.filter((e=>{var t;return e!==(null==(t=d.defaultView)?void 0:t.visualViewport)})),p.forEach((e=>{e.addEventListener("scroll",t,{passive:!0})})),()=>{l&&(d.removeEventListener("keydown",M?U:R,M),d.removeEventListener("compositionstart",n),d.removeEventListener("compositionend",c)),C&&d.removeEventListener(f,P?F:B,P),p.forEach((e=>{e.removeEventListener("scroll",t)})),window.clearTimeout(e)}}),[i,a,l,C,f,r,o,m,s,T,O,R,M,U,B,P,F]),n.useEffect((()=>{E.current=!1}),[C,f]);const z=n.useMemo((()=>({onKeyDown:R,[mn[h]]:e=>{p&&o(!1,e.nativeEvent,"reference-press")}})),[R,o,p,h]),W=n.useMemo((()=>({onKeyDown:R,onMouseDown(){D.current=!0},onMouseUp(){D.current=!0},[gn[f]]:()=>{E.current=!0}})),[R,f]);return n.useMemo((()=>s?{reference:z,floating:W}:{}),[s,z,W])}function bn(e){const{open:t=!1,onOpenChange:r,elements:o}=e,a=ir(),i=n.useRef({}),[s]=n.useState((()=>lr())),l=null!=dr();const[c,u]=n.useState(o.reference),d=Tt(((e,t,n)=>{i.current.openEvent=e?t:void 0,s.emit("openchange",{open:e,event:t,reason:n,nested:l}),null==r||r(e,t,n)})),f=n.useMemo((()=>({setPositionReference:u})),[]),p=n.useMemo((()=>({reference:c||o.reference||null,floating:o.floating||null,domReference:o.reference})),[c,o.reference,o.floating]);return n.useMemo((()=>({dataRef:i,open:t,onOpenChange:d,elements:p,events:s,floatingId:a,refs:f})),[t,d,p,s,a,f])}function wn(e){void 0===e&&(e={});const{nodeId:t}=e,r=bn({...e,elements:{reference:null,floating:null,...e.elements}}),o=e.rootContext||r,a=o.elements,[i,s]=n.useState(null),[l,c]=n.useState(null),d=(null==a?void 0:a.domReference)||i,f=n.useRef(null),p=fr();Yt((()=>{d&&(f.current=d)}),[d]);const h=function(e){void 0===e&&(e={});const{placement:t="bottom",strategy:r="absolute",middleware:o=[],platform:a,elements:{reference:i,floating:s}={},transform:l=!0,whileElementsMounted:c,open:u}=e,[d,f]=n.useState({x:0,y:0,strategy:r,placement:t,middlewareData:{},isPositioned:!1}),[p,h]=n.useState(o);ft(p,o)||h(o);const[m,g]=n.useState(null),[v,y]=n.useState(null),b=n.useCallback((e=>{e!==A.current&&(A.current=e,g(e))}),[]),w=n.useCallback((e=>{e!==k.current&&(k.current=e,y(e))}),[]),x=i||m,S=s||v,A=n.useRef(null),k=n.useRef(null),C=n.useRef(d),I=null!=c,E=mt(c),D=mt(a),T=mt(u),O=n.useCallback((()=>{if(!A.current||!k.current)return;const e={placement:t,strategy:r,middleware:p};D.current&&(e.platform=D.current),ut(A.current,k.current,e).then((e=>{const t={...e,isPositioned:!1!==T.current};M.current&&!ft(C.current,t)&&(C.current=t,Pe.flushSync((()=>{f(t)})))}))}),[p,t,r,D,T]);dt((()=>{!1===u&&C.current.isPositioned&&(C.current.isPositioned=!1,f((e=>({...e,isPositioned:!1}))))}),[u]);const M=n.useRef(!1);dt((()=>(M.current=!0,()=>{M.current=!1})),[]),dt((()=>{if(x&&(A.current=x),S&&(k.current=S),x&&S){if(E.current)return E.current(x,S,O);O()}}),[x,S,O,E,I]);const P=n.useMemo((()=>({reference:A,floating:k,setReference:b,setFloating:w})),[b,w]),j=n.useMemo((()=>({reference:x,floating:S})),[x,S]),R=n.useMemo((()=>{const e={position:r,left:0,top:0};if(!j.floating)return e;const t=ht(j.floating,d.x),n=ht(j.floating,d.y);return l?{...e,transform:"translate("+t+"px, "+n+"px)",...pt(j.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:t,top:n}}),[r,l,j.floating,d.x,d.y]);return n.useMemo((()=>({...d,update:O,refs:P,elements:j,floatingStyles:R})),[d,O,P,j,R])}({...e,elements:{...a,...l&&{reference:l}}}),m=n.useCallback((e=>{const t=u(e)?{getBoundingClientRect:()=>e.getBoundingClientRect(),contextElement:e}:e;c(t),h.refs.setReference(t)}),[h.refs]),g=n.useCallback((e=>{(u(e)||null===e)&&(f.current=e,s(e)),(u(h.refs.reference.current)||null===h.refs.reference.current||null!==e&&!u(e))&&h.refs.setReference(e)}),[h.refs]),v=n.useMemo((()=>({...h.refs,setReference:g,setPositionReference:m,domReference:f})),[h.refs,g,m]),y=n.useMemo((()=>({...h.elements,domReference:d})),[h.elements,d]),b=n.useMemo((()=>({...h,...o,refs:v,elements:y,nodeId:t})),[h,v,y,t,o]);return Yt((()=>{o.dataRef.current.floatingContext=b;const e=null==p?void 0:p.nodesRef.current.find((e=>e.id===t));e&&(e.context=b)})),n.useMemo((()=>({...h,context:b,refs:v,elements:y})),[h,v,y,b])}function xn(e,t){void 0===t&&(t={});const{open:r,onOpenChange:o,events:a,dataRef:i,elements:l}=e,{enabled:c=!0,visibleOnly:f=!0}=t,p=n.useRef(!1),h=n.useRef(),m=n.useRef(!0);n.useEffect((()=>{if(!c)return;const e=s(l.domReference);function t(){!r&&d(l.domReference)&&l.domReference===C(_(l.domReference))&&(p.current=!0)}function n(){m.current=!0}return e.addEventListener("blur",t),e.addEventListener("keydown",n,!0),()=>{e.removeEventListener("blur",t),e.removeEventListener("keydown",n,!0)}}),[l.domReference,r,c]),n.useEffect((()=>{if(c)return a.on("openchange",e),()=>{a.off("openchange",e)};function e(e){let{reason:t}=e;"reference-press"!==t&&"escape-key"!==t||(p.current=!0)}}),[a,c]),n.useEffect((()=>()=>{clearTimeout(h.current)}),[]);const g=n.useMemo((()=>({onPointerDown(e){O(e.nativeEvent)||(m.current=!1)},onMouseLeave(){p.current=!1},onFocus(e){if(p.current)return;const t=L(e.nativeEvent);if(f&&u(t))try{if(M()&&j())throw Error();if(!t.matches(":focus-visible"))return}catch(r){if(!m.current&&!B(t))return}o(!0,e.nativeEvent,"focus")},onBlur(e){p.current=!1;const t=e.relatedTarget,r=e.nativeEvent,n=u(t)&&t.hasAttribute(gr("focus-guard"))&&"outside"===t.getAttribute("data-type");h.current=window.setTimeout((()=>{var e;const a=C(l.domReference?l.domReference.ownerDocument:document);(t||a!==l.domReference)&&(I(null==(e=i.current.floatingContext)?void 0:e.refs.floating.current,a)||I(l.domReference,a)||n||o(!1,r,"focus"))}))}})),[i,l.domReference,o,f]);return n.useMemo((()=>c?{reference:g}:{}),[c,g])}const Sn="active",An="selected";function kn(e,t,r){const n=new Map,o="item"===r;let a=e;if(o&&e){const{[Sn]:t,[An]:r,...n}=e;a=n}return{..."floating"===r&&{tabIndex:-1,[$r]:""},...a,...t.map((t=>{const n=t?t[r]:null;return"function"===typeof n?e?n(e):null:n})).concat(e).reduce(((e,t)=>t?(Object.entries(t).forEach((t=>{let[r,a]=t;var i;o&&[Sn,An].includes(r)||(0===r.indexOf("on")?(n.has(r)||n.set(r,[]),"function"===typeof a&&(null==(i=n.get(r))||i.push(a),e[r]=function(){for(var e,t=arguments.length,o=new Array(t),a=0;a<t;a++)o[a]=arguments[a];return null==(e=n.get(r))?void 0:e.map((e=>e(...o))).find((e=>void 0!==e))})):e[r]=a)})),e):e),{})}}function Cn(e){void 0===e&&(e=[]);const t=e.map((e=>null==e?void 0:e.reference)),r=e.map((e=>null==e?void 0:e.floating)),o=e.map((e=>null==e?void 0:e.item)),a=n.useCallback((t=>kn(t,e,"reference")),t),i=n.useCallback((t=>kn(t,e,"floating")),r),s=n.useCallback((t=>kn(t,e,"item")),o);return n.useMemo((()=>({getReferenceProps:a,getFloatingProps:i,getItemProps:s})),[a,i,s])}let In=!1;function En(e,t,r){switch(e){case"vertical":return t;case"horizontal":return r;default:return t||r}}function Dn(e,t){return En(t,e===Ot||e===Mt,e===Pt||e===jt)}function Tn(e,t,r){return En(t,e===Mt,r?e===Pt:e===jt)||"Enter"===e||" "===e||""===e}function On(e,t,r){return En(t,r?e===jt:e===Pt,e===Ot)}function Mn(e,t){const{open:r,onOpenChange:o,elements:a}=e,{listRef:i,activeIndex:s,onNavigate:l=()=>{},enabled:c=!0,selectedIndex:u=null,allowEscape:f=!1,loop:p=!1,nested:h=!1,rtl:m=!1,virtual:g=!1,focusItemOnOpen:v="auto",focusItemOnHover:y=!0,openOnArrowKeyDown:b=!0,disabledIndices:w,orientation:x="vertical",cols:S=1,scrollItemIntoView:A=!0,virtualItemRef:k,itemSizes:E,dense:D=!1}=t;const P=vr(qr(a.floating)),R=dr(),N=fr(),L=Tt(l),U=z(a.domReference),B=n.useRef(v),W=n.useRef(null!=u?u:-1),H=n.useRef(null),Y=n.useRef(!0),V=n.useRef(L),G=n.useRef(!!a.floating),Z=n.useRef(r),Q=n.useRef(!1),K=n.useRef(!1),X=vr(w),J=vr(r),$=vr(A),q=vr(u),[ee,te]=n.useState(),[re,ne]=n.useState(),oe=Tt((function(e,t,r){function n(e){g?(te(e.id),null==N||N.events.emit("virtualfocus",e),k&&(k.current=e)):Er(e,{preventScroll:!0,sync:!(!j()||!M())&&(In||Q.current)})}void 0===r&&(r=!1);const o=e.current[t.current];o&&n(o),requestAnimationFrame((()=>{const a=e.current[t.current]||o;if(!a)return;o||n(a);const i=$.current;i&&ie&&(r||!Y.current)&&(null==a.scrollIntoView||a.scrollIntoView("boolean"===typeof i?{block:"nearest",inline:"nearest"}:i))}))}));Yt((()=>{document.createElement("div").focus({get preventScroll(){return In=!0,!1}})}),[]),Yt((()=>{c&&(r&&a.floating?B.current&&null!=u&&(K.current=!0,W.current=u,L(u)):G.current&&(W.current=-1,V.current(null)))}),[c,r,a.floating,u,L]),Yt((()=>{if(c&&r&&a.floating)if(null==s){if(Q.current=!1,null!=q.current)return;if(G.current&&(W.current=-1,oe(i,W)),(!Z.current||!G.current)&&B.current&&(null!=H.current||!0===B.current&&null==H.current)){let e=0;const t=()=>{if(null==i.current[0]){if(e<2){(e?requestAnimationFrame:queueMicrotask)(t)}e++}else W.current=null==H.current||Tn(H.current,x,m)||h?Nt(i,X.current):Lt(i,X.current),H.current=null,L(W.current)};t()}}else _t(i,s)||(W.current=s,oe(i,W,K.current),K.current=!1)}),[c,r,a.floating,s,q,h,i,x,m,L,oe,X]),Yt((()=>{var e;if(!c||a.floating||!N||g||!G.current)return;const t=N.nodesRef.current,r=null==(e=t.find((e=>e.id===R)))||null==(e=e.context)?void 0:e.elements.floating,n=C(_(a.floating)),o=t.some((e=>e.context&&I(e.context.elements.floating,n)));r&&!o&&Y.current&&r.focus({preventScroll:!0})}),[c,a.floating,N,R,g]),Yt((()=>{if(c&&N&&g&&!R)return N.events.on("virtualfocus",e),()=>{N.events.off("virtualfocus",e)};function e(e){ne(e.id),k&&(k.current=e)}}),[c,N,g,R,k]),Yt((()=>{V.current=L,G.current=!!a.floating})),Yt((()=>{r||(H.current=null)}),[r]),Yt((()=>{Z.current=r}),[r]);const ae=null!=s,ie=n.useMemo((()=>{function e(e){if(!r)return;const t=i.current.indexOf(e);-1!==t&&L(t)}return{onFocus(t){let{currentTarget:r}=t;e(r)},onClick:e=>{let{currentTarget:t}=e;return t.focus({preventScroll:!0})},...y&&{onMouseMove(t){let{currentTarget:r}=t;e(r)},onPointerLeave(e){let{pointerType:t}=e;Y.current&&"touch"!==t&&(W.current=-1,oe(i,W),L(null),g||Er(P.current,{preventScroll:!0}))}}}}),[r,P,oe,y,i,L,g]),se=Tt((e=>{if(Y.current=!1,Q.current=!0,229===e.which)return;if(!J.current&&e.currentTarget===P.current)return;if(h&&On(e.key,x,m))return F(e),o(!1,e.nativeEvent,"list-navigation"),void(d(a.domReference)&&(g?null==N||N.events.emit("virtualfocus",a.domReference):a.domReference.focus()));const t=W.current,n=Nt(i,w),s=Lt(i,w);if(U||("Home"===e.key&&(F(e),W.current=n,L(W.current)),"End"===e.key&&(F(e),W.current=s,L(W.current))),S>1){const t=E||Array.from({length:i.current.length},(()=>({width:1,height:1}))),r=Ft(t,S,D),o=r.findIndex((e=>null!=e&&!Ht(i.current,e,w))),a=r.reduce(((e,t,r)=>null==t||Ht(i.current,t,w)?e:r),-1),l=r[Bt({current:r.map((e=>null!=e?i.current[e]:null))},{event:e,orientation:x,loop:p,rtl:m,cols:S,disabledIndices:Wt([...w||i.current.map(((e,t)=>Ht(i.current,t)?t:void 0)),void 0],r),minIndex:o,maxIndex:a,prevIndex:zt(W.current>s?n:W.current,t,r,S,e.key===Mt?"bl":e.key===(m?Pt:jt)?"tr":"tl"),stopEvent:!0})];if(null!=l&&(W.current=l,L(W.current)),"both"===x)return}if(Dn(e.key,x)){if(F(e),r&&!g&&C(e.currentTarget.ownerDocument)===e.currentTarget)return W.current=Tn(e.key,x,m)?n:s,void L(W.current);Tn(e.key,x,m)?W.current=p?t>=s?f&&t!==i.current.length?-1:n:Ut(i,{startingIndex:t,disabledIndices:w}):Math.min(s,Ut(i,{startingIndex:t,disabledIndices:w})):W.current=p?t<=n?f&&-1!==t?i.current.length:s:Ut(i,{startingIndex:t,decrement:!0,disabledIndices:w}):Math.max(n,Ut(i,{startingIndex:t,decrement:!0,disabledIndices:w})),_t(i,W.current)?L(null):L(W.current)}})),le=n.useMemo((()=>g&&r&&ae&&{"aria-activedescendant":re||ee}),[g,r,ae,re,ee]),ce=n.useMemo((()=>({"aria-orientation":"both"===x?void 0:x,...!z(a.domReference)&&le,onKeyDown:se,onPointerMove(){Y.current=!0}})),[le,se,a.domReference,x]),ue=n.useMemo((()=>{function e(e){"auto"===v&&T(e.nativeEvent)&&(B.current=!0)}return{...le,onKeyDown(e){Y.current=!1;const t=e.key.startsWith("Arrow"),n=["Home","End"].includes(e.key),a=t||n,s=function(e,t,r){return En(t,r?e===Pt:e===jt,e===Mt)}(e.key,x,m),l=On(e.key,x,m),c=Dn(e.key,x),d=(h?s:c)||"Enter"===e.key||""===e.key.trim();if(g&&r){const t=null==N?void 0:N.nodesRef.current.find((e=>null==e.parentId)),r=N&&t?function(e,t){let r,n=-1;return function t(o,a){a>n&&(r=o,n=a),Dr(e,o).forEach((e=>{t(e.id,a+1)}))}(t,0),e.find((e=>e.id===r))}(N.nodesRef.current,t.id):null;if(a&&r&&k){const t=new KeyboardEvent("keydown",{key:e.key,bubbles:!0});if(s||l){var f,p;const n=(null==(f=r.context)?void 0:f.elements.domReference)===e.currentTarget,o=l&&!n?null==(p=r.context)?void 0:p.elements.domReference:s?i.current.find((e=>(null==e?void 0:e.id)===ee)):null;o&&(F(e),o.dispatchEvent(t),ne(void 0))}var v;if((c||n)&&r.context)if(r.context.open&&r.parentId&&e.currentTarget!==r.context.elements.domReference)return F(e),void(null==(v=r.context.elements.domReference)||v.dispatchEvent(t))}return se(e)}(r||b||!t)&&(d&&(H.current=h&&c?null:e.key),h?s&&(F(e),r?(W.current=Nt(i,X.current),L(W.current)):o(!0,e.nativeEvent,"list-navigation")):c&&(null!=u&&(W.current=u),F(e),!r&&b?o(!0,e.nativeEvent,"list-navigation"):se(e),r&&L(W.current)))},onFocus(){r&&!g&&L(null)},onPointerDown:function(e){B.current=v,"auto"===v&&O(e.nativeEvent)&&(B.current=!0)},onMouseDown:e,onClick:e}}),[ee,le,se,X,v,i,h,L,o,r,b,x,m,u,N,g,k]);return n.useMemo((()=>c?{reference:ue,floating:ce,item:ie}:{}),[c,ue,ce,ie])}const Pn=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function jn(e,t){var r;void 0===t&&(t={});const{open:o,floatingId:a}=e,{enabled:i=!0,role:s="dialog"}=t,l=null!=(r=Pn.get(s))?r:s,c=ir(),u=null!=dr(),d=n.useMemo((()=>"tooltip"===l||"label"===s?{["aria-"+("label"===s?"labelledby":"describedby")]:o?a:void 0}:{"aria-expanded":o?"true":"false","aria-haspopup":"alertdialog"===l?"dialog":l,"aria-controls":o?a:void 0,..."listbox"===l&&{role:"combobox"},..."menu"===l&&{id:c},..."menu"===l&&u&&{role:"menuitem"},..."select"===s&&{"aria-autocomplete":"none"},..."combobox"===s&&{"aria-autocomplete":"list"}}),[l,a,u,o,c,s]),f=n.useMemo((()=>{const e={id:a,...l&&{role:l}};return"tooltip"===l||"label"===s?e:{...e,..."menu"===l&&{"aria-labelledby":c}}}),[l,a,c,s]),p=n.useCallback((e=>{let{active:t,selected:r}=e;const n={role:"option",...t&&{id:a+"-option"}};switch(s){case"select":return{...n,"aria-selected":t&&r};case"combobox":return{...n,...t&&{"aria-selected":!0}}}return{}}),[a,s]);return n.useMemo((()=>i?{reference:d,floating:f,item:p}:{}),[i,d,f,p])}const Rn=e=>e.replace(/[A-Z]+(?![a-z])|[A-Z]/g,((e,t)=>(t?"-":"")+e.toLowerCase()));function _n(e,t){return"function"===typeof e?e(t):e}function Nn(e,t){void 0===t&&(t={});const{open:r,elements:{floating:o}}=e,{duration:a=250}=t,i=("number"===typeof a?a:a.close)||0,[s,l]=n.useState("unmounted"),c=function(e,t){const[r,o]=n.useState(e);return e&&!r&&o(!0),n.useEffect((()=>{if(!e&&r){const e=setTimeout((()=>o(!1)),t);return()=>clearTimeout(e)}}),[e,r,t]),r}(r,i);return c||"close"!==s||l("unmounted"),Yt((()=>{if(o){if(r){l("initial");const e=requestAnimationFrame((()=>{l("open")}));return()=>{cancelAnimationFrame(e)}}l("close")}}),[r,o]),{isMounted:c,status:s}}function Ln(e,t){void 0===t&&(t={});const{initial:r={opacity:0},open:o,close:a,common:i,duration:s=250}=t,l=e.placement,c=l.split("-")[0],u=n.useMemo((()=>({side:c,placement:l})),[c,l]),d="number"===typeof s,f=(d?s:s.open)||0,p=(d?s:s.close)||0,[h,m]=n.useState((()=>({..._n(i,u),..._n(r,u)}))),{isMounted:g,status:v}=Nn(e,{duration:s}),y=vr(r),b=vr(o),w=vr(a),x=vr(i);return Yt((()=>{const e=_n(y.current,u),t=_n(w.current,u),r=_n(x.current,u),n=_n(b.current,u)||Object.keys(e).reduce(((e,t)=>(e[t]="",e)),{});if("initial"===v&&m((t=>({transitionProperty:t.transitionProperty,...r,...e}))),"open"===v&&m({transitionProperty:Object.keys(n).map(Rn).join(","),transitionDuration:f+"ms",...r,...n}),"close"===v){const n=t||e;m({transitionProperty:Object.keys(n).map(Rn).join(","),transitionDuration:p+"ms",...r,...n})}}),[p,w,y,b,x,f,v,u]),{isMounted:g,styles:h}}function Un(e,t){var r;const{open:o,dataRef:a}=e,{listRef:i,activeIndex:s,onMatch:l,onTypingChange:c,enabled:u=!0,findMatch:d=null,resetMs:f=750,ignoreKeys:p=[],selectedIndex:h=null}=t,m=n.useRef(),g=n.useRef(""),v=n.useRef(null!=(r=null!=h?h:s)?r:-1),y=n.useRef(null),b=Tt(l),w=Tt(c),x=vr(d),S=vr(p);Yt((()=>{o&&(clearTimeout(m.current),y.current=null,g.current="")}),[o]),Yt((()=>{var e;o&&""===g.current&&(v.current=null!=(e=null!=h?h:s)?e:-1)}),[o,h,s]);const A=Tt((e=>{e?a.current.typing||(a.current.typing=e,w(e)):a.current.typing&&(a.current.typing=e,w(e))})),k=Tt((e=>{function t(e,t,r){const n=x.current?x.current(t,r):t.find((e=>0===(null==e?void 0:e.toLocaleLowerCase().indexOf(r.toLocaleLowerCase()))));return n?e.indexOf(n):-1}const r=i.current;if(g.current.length>0&&" "!==g.current[0]&&(-1===t(r,r,g.current)?A(!1):" "===e.key&&F(e)),null==r||S.current.includes(e.key)||1!==e.key.length||e.ctrlKey||e.metaKey||e.altKey)return;o&&" "!==e.key&&(F(e),A(!0));r.every((e=>{var t,r;return!e||(null==(t=e[0])?void 0:t.toLocaleLowerCase())!==(null==(r=e[1])?void 0:r.toLocaleLowerCase())}))&&g.current===e.key&&(g.current="",v.current=y.current),g.current+=e.key,clearTimeout(m.current),m.current=setTimeout((()=>{g.current="",v.current=y.current,A(!1)}),f);const n=v.current,a=t(r,[...r.slice((n||0)+1),...r.slice(0,(n||0)+1)],g.current);-1!==a?(b(a),y.current=a):" "!==e.key&&(g.current="",A(!1))})),C=n.useMemo((()=>({onKeyDown:k})),[k]),I=n.useMemo((()=>({onKeyDown:k,onKeyUp(e){" "===e.key&&A(!1)}})),[k,A]);return n.useMemo((()=>u?{reference:C,floating:I}:{}),[u,C,I])}function Bn(e,t){return{...e,rects:{...e.rects,floating:{...e.rects.floating,height:t}}}}const Fn=e=>({name:"inner",options:e,async fn(t){const{listRef:r,overflowRef:n,onFallbackChange:o,offset:a=0,index:i=0,minItemsVisible:s=4,referenceOverflowThreshold:l=0,scrollRef:c,...u}=q(e,t),{rects:d,elements:{floating:f}}=t,p=r.current[i],h=(null==c?void 0:c.current)||f,m=f.clientTop||h.clientTop,g=0!==f.clientTop,v=0!==h.clientTop,y=f===h;if(!p)return{};const b={...t,...await vt(-p.offsetTop-f.clientTop-d.reference.height/2-p.offsetHeight/2-a).fn(t)},w=await et(Bn(b,h.scrollHeight+m+f.clientTop),u),x=await et(b,{...u,elementContext:"reference"}),S=G(0,w.top),A=b.y+S,k=(h.scrollHeight>h.clientHeight?e=>e:Z)(G(0,h.scrollHeight+(g&&y||v?2*m:0)-S-G(0,w.bottom)));if(h.style.maxHeight=k+"px",h.scrollTop=S,o){const e=h.offsetHeight<p.offsetHeight*V(s,r.current.length)-1||x.top>=-l||x.bottom>=-l;Pe.flushSync((()=>o(e)))}return n&&(n.current=await et(Bn({...b,y:A},h.offsetHeight+m+f.clientTop),u)),{y:A}}});function zn(e,t){const{open:r,elements:o}=e,{enabled:a=!0,overflowRef:i,scrollRef:s,onChange:l}=t,c=Tt(l),u=n.useRef(!1),d=n.useRef(null),f=n.useRef(null);n.useEffect((()=>{if(!a)return;function e(e){if(e.ctrlKey||!t||null==i.current)return;const r=e.deltaY,n=i.current.top>=-.5,o=i.current.bottom>=-.5,a=t.scrollHeight-t.clientHeight,s=r<0?-1:1,l=r<0?"max":"min";t.scrollHeight<=t.clientHeight||(!n&&r>0||!o&&r<0?(e.preventDefault(),Pe.flushSync((()=>{c((e=>e+Math[l](r,a*s)))}))):/firefox/i.test(D())&&(t.scrollTop+=r))}const t=(null==s?void 0:s.current)||o.floating;return r&&t?(t.addEventListener("wheel",e),requestAnimationFrame((()=>{d.current=t.scrollTop,null!=i.current&&(f.current={...i.current})})),()=>{d.current=null,f.current=null,t.removeEventListener("wheel",e)}):void 0}),[a,r,o.floating,i,s,c]);const p=n.useMemo((()=>({onKeyDown(){u.current=!0},onWheel(){u.current=!1},onPointerMove(){u.current=!1},onScroll(){const e=(null==s?void 0:s.current)||o.floating;if(i.current&&e&&u.current){if(null!==d.current){const t=e.scrollTop-d.current;(i.current.bottom<-.5&&t<-1||i.current.top<-.5&&t>1)&&Pe.flushSync((()=>c((e=>e+t))))}requestAnimationFrame((()=>{d.current=e.scrollTop}))}}})),[o.floating,c,i,s]);return n.useMemo((()=>a?{floating:p}:{}),[a,p])}function Wn(e,t){const[r,n]=e;let o=!1;const a=t.length;for(let i=0,s=a-1;i<a;s=i++){const[e,a]=t[i]||[0,0],[l,c]=t[s]||[0,0];a>=n!==c>=n&&r<=(l-e)*(n-a)/(c-a)+e&&(o=!o)}return o}function Hn(e){void 0===e&&(e={});const{buffer:t=.5,blockPointerEvents:r=!1,requireIntent:n=!0}=e;let o,a=!1,i=null,s=null,l=performance.now();const c=e=>{let{x:r,y:c,placement:d,elements:f,onClose:p,nodeId:h,tree:m}=e;return function(e){function g(){clearTimeout(o),p()}if(clearTimeout(o),!f.domReference||!f.floating||null==d||null==r||null==c)return;const{clientX:v,clientY:y}=e,b=[v,y],w=L(e),x="mouseleave"===e.type,S=I(f.floating,w),A=I(f.domReference,w),k=f.domReference.getBoundingClientRect(),C=f.floating.getBoundingClientRect(),E=d.split("-")[0],D=r>C.right-C.width/2,T=c>C.bottom-C.height/2,O=function(e,t){return e[0]>=t.x&&e[0]<=t.x+t.width&&e[1]>=t.y&&e[1]<=t.y+t.height}(b,k),M=C.width>k.width,P=C.height>k.height,j=(M?k:C).left,R=(M?k:C).right,_=(P?k:C).top,N=(P?k:C).bottom;if(S&&(a=!0,!x))return;if(A&&(a=!1),A&&!x)return void(a=!0);if(x&&u(e.relatedTarget)&&I(f.floating,e.relatedTarget))return;if(m&&Dr(m.nodesRef.current,h).some((e=>{let{context:t}=e;return null==t?void 0:t.open})))return;if("top"===E&&c>=k.bottom-1||"bottom"===E&&c<=k.top+1||"left"===E&&r>=k.right-1||"right"===E&&r<=k.left+1)return g();let U=[];switch(E){case"top":U=[[j,k.top+1],[j,C.bottom-1],[R,C.bottom-1],[R,k.top+1]];break;case"bottom":U=[[j,C.top+1],[j,k.bottom-1],[R,k.bottom-1],[R,C.top+1]];break;case"left":U=[[C.right-1,N],[C.right-1,_],[k.left+1,_],[k.left+1,N]];break;case"right":U=[[k.right-1,N],[k.right-1,_],[C.left+1,_],[C.left+1,N]]}if(!Wn([v,y],U)){if(a&&!O)return g();if(!x&&n){const t=function(e,t){const r=performance.now(),n=r-l;if(null===i||null===s||0===n)return i=e,s=t,l=r,null;const o=e-i,a=t-s,c=Math.sqrt(o*o+a*a);return i=e,s=t,l=r,c/n}(e.clientX,e.clientY);if(null!==t&&t<.1)return g()}Wn([v,y],function(e){let[r,n]=e;switch(E){case"top":return[[M?r+t/2:D?r+4*t:r-4*t,n+t+1],[M?r-t/2:D?r+4*t:r-4*t,n+t+1],...[[C.left,D||M?C.bottom-t:C.top],[C.right,D?M?C.bottom-t:C.top:C.bottom-t]]];case"bottom":return[[M?r+t/2:D?r+4*t:r-4*t,n-t],[M?r-t/2:D?r+4*t:r-4*t,n-t],...[[C.left,D||M?C.top+t:C.bottom],[C.right,D?M?C.top+t:C.bottom:C.top+t]]];case"left":{const e=[r+t+1,P?n+t/2:T?n+4*t:n-4*t],o=[r+t+1,P?n-t/2:T?n+4*t:n-4*t];return[...[[T||P?C.right-t:C.left,C.top],[T?P?C.right-t:C.left:C.right-t,C.bottom]],e,o]}case"right":return[[r-t,P?n+t/2:T?n+4*t:n-4*t],[r-t,P?n-t/2:T?n+4*t:n-4*t],...[[T||P?C.left+t:C.right,C.top],[T?P?C.left+t:C.right:C.left+t,C.bottom]]]}}([r,c]))?!a&&n&&(o=window.setTimeout(g,40)):g()}}};return c.__options={blockPointerEvents:r},c}},7762:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Clear")},18700:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close")},95122:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96M17 13l-5 5-5-5h3V9h4v4z"}),"CloudDownload")},57988:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"}),"Delete")},51069:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M10 18h4v-2h-4zM3 6v2h18V6zm3 7h12v-2H6z"}),"FilterList")},13260:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 17h-2v-2h2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25"}),"Help")},3199:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M8.59 16.59 13.17 12 8.59 7.41 10 6l6 6-6 6z"}),"KeyboardArrowRight")},16632:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M19 8H5c-1.66 0-3 1.34-3 3v6h4v4h12v-4h4v-6c0-1.66-1.34-3-3-3m-3 11H8v-5h8zm3-7c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1m-1-9H6v4h12z"}),"Print")},98523:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M19 13H5v-2h14z"}),"Remove")},19223:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"}),"Search")},18116:(e,t,r)=>{"use strict";var n=r(24994).default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(r(79526)),a=r(44414);t.default=(0,o.default)((0,a.jsx)("path",{d:"M14.67 5v14H9.33V5zm1 14H21V5h-5.33zm-7.34 0V5H3v14z"}),"ViewColumn")},79526:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=r(92142)},55158:(e,t,r)=>{"use strict";r.d(t,{A:()=>m});var n=r(9950),o=r(72004),a=r(3484),i=r(59254),s=r(18463),l=r(24763),c=r(57191),u=r(45558),d=r(1614);function f(e){return(0,d.Ay)("MuiBackdrop",e)}(0,u.A)("MuiBackdrop",["root","invisible"]);var p=r(44414);const h=(0,i.Ay)("div",{name:"MuiBackdrop",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.invisible&&t.invisible]}})({position:"fixed",display:"flex",alignItems:"center",justifyContent:"center",right:0,bottom:0,top:0,left:0,backgroundColor:"rgba(0, 0, 0, 0.5)",WebkitTapHighlightColor:"transparent",variants:[{props:{invisible:!0},style:{backgroundColor:"transparent"}}]}),m=n.forwardRef((function(e,t){const r=(0,s.b)({props:e,name:"MuiBackdrop"}),{children:n,className:i,component:u="div",invisible:d=!1,open:m,components:g={},componentsProps:v={},slotProps:y={},slots:b={},TransitionComponent:w,transitionDuration:x,...S}=r,A={...r,component:u,invisible:d},k=(e=>{const{classes:t,invisible:r}=e,n={root:["root",r&&"invisible"]};return(0,a.A)(n,f,t)})(A),C={slots:{transition:w,root:g.Root,...b},slotProps:{...v,...y}},[I,E]=(0,l.A)("root",{elementType:h,externalForwardedProps:C,className:(0,o.A)(k.root,i),ownerState:A}),[D,T]=(0,l.A)("transition",{elementType:c.A,externalForwardedProps:C,ownerState:A}),O=(e=>{const{ownerState:t,...r}=e;return r})(T);return(0,p.jsx)(D,{in:m,timeout:x,...S,...O,children:(0,p.jsx)(I,{"aria-hidden":!0,...E,classes:k,ref:t,children:n})})}))},34276:(e,t,r)=>{"use strict";r.d(t,{A:()=>A});var n=r(9950),o=r(72004),a=r(33136),i=r(3484),s=r(39624),l=r(19608),c=r(59254),u=r(54265),d=r(18463),f=r(31891),p=r(89548),h=r(51734),m=r(96827),g=r(15514);const v=n.createContext(void 0);var y=r(44414);const b=[{props:{size:"small"},style:{"& > *:nth-of-type(1)":{fontSize:18}}},{props:{size:"medium"},style:{"& > *:nth-of-type(1)":{fontSize:20}}},{props:{size:"large"},style:{"& > *:nth-of-type(1)":{fontSize:22}}}],w=(0,c.Ay)(f.A,{shouldForwardProp:e=>(0,l.A)(e)||"classes"===e,name:"MuiButton",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.variant],t[`${r.variant}${(0,p.A)(r.color)}`],t[`size${(0,p.A)(r.size)}`],t[`${r.variant}Size${(0,p.A)(r.size)}`],"inherit"===r.color&&t.colorInherit,r.disableElevation&&t.disableElevation,r.fullWidth&&t.fullWidth]}})((0,u.A)((e=>{let{theme:t}=e;const r="light"===t.palette.mode?t.palette.grey[300]:t.palette.grey[800],n="light"===t.palette.mode?t.palette.grey.A100:t.palette.grey[700];return{...t.typography.button,minWidth:64,padding:"6px 16px",border:0,borderRadius:(t.vars||t).shape.borderRadius,transition:t.transitions.create(["background-color","box-shadow","border-color","color"],{duration:t.transitions.duration.short}),"&:hover":{textDecoration:"none"},[`&.${m.A.disabled}`]:{color:(t.vars||t).palette.action.disabled},variants:[{props:{variant:"contained"},style:{color:"var(--variant-containedColor)",backgroundColor:"var(--variant-containedBg)",boxShadow:(t.vars||t).shadows[2],"&:hover":{boxShadow:(t.vars||t).shadows[4],"@media (hover: none)":{boxShadow:(t.vars||t).shadows[2]}},"&:active":{boxShadow:(t.vars||t).shadows[8]},[`&.${m.A.focusVisible}`]:{boxShadow:(t.vars||t).shadows[6]},[`&.${m.A.disabled}`]:{color:(t.vars||t).palette.action.disabled,boxShadow:(t.vars||t).shadows[0],backgroundColor:(t.vars||t).palette.action.disabledBackground}}},{props:{variant:"outlined"},style:{padding:"5px 15px",border:"1px solid currentColor",borderColor:"var(--variant-outlinedBorder, currentColor)",backgroundColor:"var(--variant-outlinedBg)",color:"var(--variant-outlinedColor)",[`&.${m.A.disabled}`]:{border:`1px solid ${(t.vars||t).palette.action.disabledBackground}`}}},{props:{variant:"text"},style:{padding:"6px 8px",color:"var(--variant-textColor)",backgroundColor:"var(--variant-textBg)"}},...Object.entries(t.palette).filter((0,h.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{"--variant-textColor":(t.vars||t).palette[r].main,"--variant-outlinedColor":(t.vars||t).palette[r].main,"--variant-outlinedBorder":t.vars?`rgba(${t.vars.palette[r].mainChannel} / 0.5)`:(0,s.X4)(t.palette[r].main,.5),"--variant-containedColor":(t.vars||t).palette[r].contrastText,"--variant-containedBg":(t.vars||t).palette[r].main,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":(t.vars||t).palette[r].dark,"--variant-textBg":t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,s.X4)(t.palette[r].main,t.palette.action.hoverOpacity),"--variant-outlinedBorder":(t.vars||t).palette[r].main,"--variant-outlinedBg":t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,s.X4)(t.palette[r].main,t.palette.action.hoverOpacity)}}}}})),{props:{color:"inherit"},style:{color:"inherit",borderColor:"currentColor","--variant-containedBg":t.vars?t.vars.palette.Button.inheritContainedBg:r,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":t.vars?t.vars.palette.Button.inheritContainedHoverBg:n,"--variant-textBg":t.vars?`rgba(${t.vars.palette.text.primaryChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,s.X4)(t.palette.text.primary,t.palette.action.hoverOpacity),"--variant-outlinedBg":t.vars?`rgba(${t.vars.palette.text.primaryChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,s.X4)(t.palette.text.primary,t.palette.action.hoverOpacity)}}}},{props:{size:"small",variant:"text"},style:{padding:"4px 5px",fontSize:t.typography.pxToRem(13)}},{props:{size:"large",variant:"text"},style:{padding:"8px 11px",fontSize:t.typography.pxToRem(15)}},{props:{size:"small",variant:"outlined"},style:{padding:"3px 9px",fontSize:t.typography.pxToRem(13)}},{props:{size:"large",variant:"outlined"},style:{padding:"7px 21px",fontSize:t.typography.pxToRem(15)}},{props:{size:"small",variant:"contained"},style:{padding:"4px 10px",fontSize:t.typography.pxToRem(13)}},{props:{size:"large",variant:"contained"},style:{padding:"8px 22px",fontSize:t.typography.pxToRem(15)}},{props:{disableElevation:!0},style:{boxShadow:"none","&:hover":{boxShadow:"none"},[`&.${m.A.focusVisible}`]:{boxShadow:"none"},"&:active":{boxShadow:"none"},[`&.${m.A.disabled}`]:{boxShadow:"none"}}},{props:{fullWidth:!0},style:{width:"100%"}}]}}))),x=(0,c.Ay)("span",{name:"MuiButton",slot:"StartIcon",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.startIcon,t[`iconSize${(0,p.A)(r.size)}`]]}})({display:"inherit",marginRight:8,marginLeft:-4,variants:[{props:{size:"small"},style:{marginLeft:-2}},...b]}),S=(0,c.Ay)("span",{name:"MuiButton",slot:"EndIcon",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.endIcon,t[`iconSize${(0,p.A)(r.size)}`]]}})({display:"inherit",marginRight:-4,marginLeft:8,variants:[{props:{size:"small"},style:{marginRight:-2}},...b]}),A=n.forwardRef((function(e,t){const r=n.useContext(g.A),s=n.useContext(v),l=(0,a.A)(r,e),c=(0,d.b)({props:l,name:"MuiButton"}),{children:u,color:f="primary",component:h="button",className:b,disabled:A=!1,disableElevation:k=!1,disableFocusRipple:C=!1,endIcon:I,focusVisibleClassName:E,fullWidth:D=!1,size:T="medium",startIcon:O,type:M,variant:P="text",...j}=c,R={...c,color:f,component:h,disabled:A,disableElevation:k,disableFocusRipple:C,fullWidth:D,size:T,type:M,variant:P},_=(e=>{const{color:t,disableElevation:r,fullWidth:n,size:o,variant:a,classes:s}=e,l={root:["root",a,`${a}${(0,p.A)(t)}`,`size${(0,p.A)(o)}`,`${a}Size${(0,p.A)(o)}`,`color${(0,p.A)(t)}`,r&&"disableElevation",n&&"fullWidth"],label:["label"],startIcon:["icon","startIcon",`iconSize${(0,p.A)(o)}`],endIcon:["icon","endIcon",`iconSize${(0,p.A)(o)}`]},c=(0,i.A)(l,m.B,s);return{...s,...c}})(R),N=O&&(0,y.jsx)(x,{className:_.startIcon,ownerState:R,children:O}),L=I&&(0,y.jsx)(S,{className:_.endIcon,ownerState:R,children:I}),U=s||"";return(0,y.jsxs)(w,{ownerState:R,className:(0,o.A)(r.className,_.root,b,U),component:h,disabled:A,focusRipple:!C,focusVisibleClassName:(0,o.A)(_.focusVisible,E),ref:t,type:M,...j,classes:_,children:[N,u,L]})}))},96827:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,B:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiButton",e)}const i=(0,n.A)("MuiButton",["root","text","textInherit","textPrimary","textSecondary","textSuccess","textError","textInfo","textWarning","outlined","outlinedInherit","outlinedPrimary","outlinedSecondary","outlinedSuccess","outlinedError","outlinedInfo","outlinedWarning","contained","containedInherit","containedPrimary","containedSecondary","containedSuccess","containedError","containedInfo","containedWarning","disableElevation","focusVisible","disabled","colorInherit","colorPrimary","colorSecondary","colorSuccess","colorError","colorInfo","colorWarning","textSizeSmall","textSizeMedium","textSizeLarge","outlinedSizeSmall","outlinedSizeMedium","outlinedSizeLarge","containedSizeSmall","containedSizeMedium","containedSizeLarge","sizeMedium","sizeSmall","sizeLarge","fullWidth","startIcon","endIcon","icon","iconSizeSmall","iconSizeMedium","iconSizeLarge"])},82807:(e,t,r)=>{"use strict";r.r(t),r.d(t,{buttonClasses:()=>o.A,default:()=>n.A,getButtonUtilityClass:()=>o.B});var n=r(34276),o=r(96827)},31891:(e,t,r)=>{"use strict";r.d(t,{A:()=>B});var n=r(9950),o=r(72004),a=r(3484),i=r(5180),s=r(59254),l=r(18463),c=r(31506),u=r(1976),d=r(6848);class f{static create(){return new f}static use(){const e=(0,d.A)(f.create).current,[t,r]=n.useState(!1);return e.shouldMount=t,e.setShouldMount=r,n.useEffect(e.mountEffect,[t]),e}constructor(){this.ref={current:null},this.mounted=null,this.didMount=!1,this.shouldMount=!1,this.setShouldMount=null}mount(){return this.mounted||(this.mounted=function(){let e,t;const r=new Promise(((r,n)=>{e=r,t=n}));return r.resolve=e,r.reject=t,r}(),this.shouldMount=!0,this.setShouldMount(this.shouldMount)),this.mounted}mountEffect=()=>{this.shouldMount&&!this.didMount&&null!==this.ref.current&&(this.didMount=!0,this.mounted.resolve())};start(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];this.mount().then((()=>this.ref.current?.start(...t)))}stop(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];this.mount().then((()=>this.ref.current?.stop(...t)))}pulsate(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];this.mount().then((()=>this.ref.current?.pulsate(...t)))}}var p=r(98587),h=r(58168);var m=r(25540),g=r(28555);function v(e,t){var r=Object.create(null);return e&&n.Children.map(e,(function(e){return e})).forEach((function(e){r[e.key]=function(e){return t&&(0,n.isValidElement)(e)?t(e):e}(e)})),r}function y(e,t,r){return null!=r[t]?r[t]:e.props[t]}function b(e,t,r){var o=v(e.children),a=function(e,t){function r(r){return r in t?t[r]:e[r]}e=e||{},t=t||{};var n,o=Object.create(null),a=[];for(var i in e)i in t?a.length&&(o[i]=a,a=[]):a.push(i);var s={};for(var l in t){if(o[l])for(n=0;n<o[l].length;n++){var c=o[l][n];s[o[l][n]]=r(c)}s[l]=r(l)}for(n=0;n<a.length;n++)s[a[n]]=r(a[n]);return s}(t,o);return Object.keys(a).forEach((function(i){var s=a[i];if((0,n.isValidElement)(s)){var l=i in t,c=i in o,u=t[i],d=(0,n.isValidElement)(u)&&!u.props.in;!c||l&&!d?c||!l||d?c&&l&&(0,n.isValidElement)(u)&&(a[i]=(0,n.cloneElement)(s,{onExited:r.bind(null,s),in:u.props.in,exit:y(s,"exit",e),enter:y(s,"enter",e)})):a[i]=(0,n.cloneElement)(s,{in:!1}):a[i]=(0,n.cloneElement)(s,{onExited:r.bind(null,s),in:!0,exit:y(s,"exit",e),enter:y(s,"enter",e)})}})),a}var w=Object.values||function(e){return Object.keys(e).map((function(t){return e[t]}))},x=function(e){function t(t,r){var n,o=(n=e.call(this,t,r)||this).handleExited.bind(function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(n));return n.state={contextValue:{isMounting:!0},handleExited:o,firstRender:!0},n}(0,m.A)(t,e);var r=t.prototype;return r.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},r.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(e,t){var r,o,a=t.children,i=t.handleExited;return{children:t.firstRender?(r=e,o=i,v(r.children,(function(e){return(0,n.cloneElement)(e,{onExited:o.bind(null,e),in:!0,appear:y(e,"appear",r),enter:y(e,"enter",r),exit:y(e,"exit",r)})}))):b(e,a,i),firstRender:!1}},r.handleExited=function(e,t){var r=v(this.props.children);e.key in r||(e.props.onExited&&e.props.onExited(t),this.mounted&&this.setState((function(t){var r=(0,h.A)({},t.children);return delete r[e.key],{children:r}})))},r.render=function(){var e=this.props,t=e.component,r=e.childFactory,o=(0,p.A)(e,["component","childFactory"]),a=this.state.contextValue,i=w(this.state.children).map(r);return delete o.appear,delete o.enter,delete o.exit,null===t?n.createElement(g.A.Provider,{value:a},i):n.createElement(g.A.Provider,{value:a},n.createElement(t,o,i))},t}(n.Component);x.propTypes={},x.defaultProps={component:"div",childFactory:function(e){return e}};const S=x;var A=r(52215),k=r(88283),C=r(44414);const I=function(e){const{className:t,classes:r,pulsate:a=!1,rippleX:i,rippleY:s,rippleSize:l,in:c,onExited:u,timeout:d}=e,[f,p]=n.useState(!1),h=(0,o.A)(t,r.ripple,r.rippleVisible,a&&r.ripplePulsate),m={width:l,height:l,top:-l/2+s,left:-l/2+i},g=(0,o.A)(r.child,f&&r.childLeaving,a&&r.childPulsate);return c||f||p(!0),n.useEffect((()=>{if(!c&&null!=u){const e=setTimeout(u,d);return()=>{clearTimeout(e)}}}),[u,c,d]),(0,C.jsx)("span",{className:h,style:m,children:(0,C.jsx)("span",{className:g})})};var E=r(45558);const D=(0,E.A)("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),T=k.keyframes`
+  0% {
+    transform: scale(0);
+    opacity: 0.1;
+  }
+
+  100% {
+    transform: scale(1);
+    opacity: 0.3;
+  }
+`,O=k.keyframes`
+  0% {
+    opacity: 1;
+  }
+
+  100% {
+    opacity: 0;
+  }
+`,M=k.keyframes`
+  0% {
+    transform: scale(1);
+  }
+
+  50% {
+    transform: scale(0.92);
+  }
+
+  100% {
+    transform: scale(1);
+  }
+`,P=(0,s.Ay)("span",{name:"MuiTouchRipple",slot:"Root"})({overflow:"hidden",pointerEvents:"none",position:"absolute",zIndex:0,top:0,right:0,bottom:0,left:0,borderRadius:"inherit"}),j=(0,s.Ay)(I,{name:"MuiTouchRipple",slot:"Ripple"})`
+  opacity: 0;
+  position: absolute;
+
+  &.${D.rippleVisible} {
+    opacity: 0.3;
+    transform: scale(1);
+    animation-name: ${T};
+    animation-duration: ${550}ms;
+    animation-timing-function: ${e=>{let{theme:t}=e;return t.transitions.easing.easeInOut}};
+  }
+
+  &.${D.ripplePulsate} {
+    animation-duration: ${e=>{let{theme:t}=e;return t.transitions.duration.shorter}}ms;
+  }
+
+  & .${D.child} {
+    opacity: 1;
+    display: block;
+    width: 100%;
+    height: 100%;
+    border-radius: 50%;
+    background-color: currentColor;
+  }
+
+  & .${D.childLeaving} {
+    opacity: 0;
+    animation-name: ${O};
+    animation-duration: ${550}ms;
+    animation-timing-function: ${e=>{let{theme:t}=e;return t.transitions.easing.easeInOut}};
+  }
+
+  & .${D.childPulsate} {
+    position: absolute;
+    /* @noflip */
+    left: 0px;
+    top: 0;
+    animation-name: ${M};
+    animation-duration: 2500ms;
+    animation-timing-function: ${e=>{let{theme:t}=e;return t.transitions.easing.easeInOut}};
+    animation-iteration-count: infinite;
+    animation-delay: 200ms;
+  }
+`,R=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiTouchRipple"}),{center:a=!1,classes:i={},className:s,...c}=r,[u,d]=n.useState([]),f=n.useRef(0),p=n.useRef(null);n.useEffect((()=>{p.current&&(p.current(),p.current=null)}),[u]);const h=n.useRef(!1),m=(0,A.A)(),g=n.useRef(null),v=n.useRef(null),y=n.useCallback((e=>{const{pulsate:t,rippleX:r,rippleY:n,rippleSize:a,cb:s}=e;d((e=>[...e,(0,C.jsx)(j,{classes:{ripple:(0,o.A)(i.ripple,D.ripple),rippleVisible:(0,o.A)(i.rippleVisible,D.rippleVisible),ripplePulsate:(0,o.A)(i.ripplePulsate,D.ripplePulsate),child:(0,o.A)(i.child,D.child),childLeaving:(0,o.A)(i.childLeaving,D.childLeaving),childPulsate:(0,o.A)(i.childPulsate,D.childPulsate)},timeout:550,pulsate:t,rippleX:r,rippleY:n,rippleSize:a},f.current)])),f.current+=1,p.current=s}),[i]),b=n.useCallback((function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:()=>{};const{pulsate:n=!1,center:o=a||t.pulsate,fakeElement:i=!1}=t;if("mousedown"===e?.type&&h.current)return void(h.current=!1);"touchstart"===e?.type&&(h.current=!0);const s=i?null:v.current,l=s?s.getBoundingClientRect():{width:0,height:0,left:0,top:0};let c,u,d;if(o||void 0===e||0===e.clientX&&0===e.clientY||!e.clientX&&!e.touches)c=Math.round(l.width/2),u=Math.round(l.height/2);else{const{clientX:t,clientY:r}=e.touches&&e.touches.length>0?e.touches[0]:e;c=Math.round(t-l.left),u=Math.round(r-l.top)}if(o)d=Math.sqrt((2*l.width**2+l.height**2)/3),d%2===0&&(d+=1);else{const e=2*Math.max(Math.abs((s?s.clientWidth:0)-c),c)+2,t=2*Math.max(Math.abs((s?s.clientHeight:0)-u),u)+2;d=Math.sqrt(e**2+t**2)}e?.touches?null===g.current&&(g.current=()=>{y({pulsate:n,rippleX:c,rippleY:u,rippleSize:d,cb:r})},m.start(80,(()=>{g.current&&(g.current(),g.current=null)}))):y({pulsate:n,rippleX:c,rippleY:u,rippleSize:d,cb:r})}),[a,y,m]),w=n.useCallback((()=>{b({},{pulsate:!0})}),[b]),x=n.useCallback(((e,t)=>{if(m.clear(),"touchend"===e?.type&&g.current)return g.current(),g.current=null,void m.start(0,(()=>{x(e,t)}));g.current=null,d((e=>e.length>0?e.slice(1):e)),p.current=t}),[m]);return n.useImperativeHandle(t,(()=>({pulsate:w,start:b,stop:x})),[w,b,x]),(0,C.jsx)(P,{className:(0,o.A)(D.root,i.root,s),ref:v,...c,children:(0,C.jsx)(S,{component:null,exit:!0,children:u})})}));var _=r(1614);function N(e){return(0,_.Ay)("MuiButtonBase",e)}const L=(0,E.A)("MuiButtonBase",["root","disabled","focusVisible"]),U=(0,s.Ay)("button",{name:"MuiButtonBase",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",boxSizing:"border-box",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none",textDecoration:"none",color:"inherit","&::-moz-focus-inner":{borderStyle:"none"},[`&.${L.disabled}`]:{pointerEvents:"none",cursor:"default"},"@media print":{colorAdjust:"exact"}}),B=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiButtonBase"}),{action:s,centerRipple:d=!1,children:p,className:h,component:m="button",disabled:g=!1,disableRipple:v=!1,disableTouchRipple:y=!1,focusRipple:b=!1,focusVisibleClassName:w,LinkComponent:x="a",onBlur:S,onClick:A,onContextMenu:k,onDragLeave:I,onFocus:E,onFocusVisible:D,onKeyDown:T,onKeyUp:O,onMouseDown:M,onMouseLeave:P,onMouseUp:j,onTouchEnd:_,onTouchMove:L,onTouchStart:B,tabIndex:F=0,TouchRippleProps:z,touchRippleRef:W,type:H,...Y}=r,V=n.useRef(null),G=f.use(),Z=(0,c.A)(G.ref,W),[Q,K]=n.useState(!1);g&&Q&&K(!1),n.useImperativeHandle(s,(()=>({focusVisible:()=>{K(!0),V.current.focus()}})),[]);const X=G.shouldMount&&!v&&!g;function J(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:y;return(0,u.A)((n=>{t&&t(n);return r||G[e](n),!0}))}n.useEffect((()=>{Q&&b&&!v&&G.pulsate()}),[v,b,Q,G]);const $=J("start",M),q=J("stop",k),ee=J("stop",I),te=J("stop",j),re=J("stop",(e=>{Q&&e.preventDefault(),P&&P(e)})),ne=J("start",B),oe=J("stop",_),ae=J("stop",L),ie=J("stop",(e=>{(0,i.A)(e.target)||K(!1),S&&S(e)}),!1),se=(0,u.A)((e=>{V.current||(V.current=e.currentTarget),(0,i.A)(e.target)&&(K(!0),D&&D(e)),E&&E(e)})),le=()=>{const e=V.current;return m&&"button"!==m&&!("A"===e.tagName&&e.href)},ce=(0,u.A)((e=>{b&&!e.repeat&&Q&&" "===e.key&&G.stop(e,(()=>{G.start(e)})),e.target===e.currentTarget&&le()&&" "===e.key&&e.preventDefault(),T&&T(e),e.target===e.currentTarget&&le()&&"Enter"===e.key&&!g&&(e.preventDefault(),A&&A(e))})),ue=(0,u.A)((e=>{b&&" "===e.key&&Q&&!e.defaultPrevented&&G.stop(e,(()=>{G.pulsate(e)})),O&&O(e),A&&e.target===e.currentTarget&&le()&&" "===e.key&&!e.defaultPrevented&&A(e)}));let de=m;"button"===de&&(Y.href||Y.to)&&(de=x);const fe={};"button"===de?(fe.type=void 0===H?"button":H,fe.disabled=g):(Y.href||Y.to||(fe.role="button"),g&&(fe["aria-disabled"]=g));const pe=(0,c.A)(t,V),he={...r,centerRipple:d,component:m,disabled:g,disableRipple:v,disableTouchRipple:y,focusRipple:b,tabIndex:F,focusVisible:Q},me=(e=>{const{disabled:t,focusVisible:r,focusVisibleClassName:n,classes:o}=e,i={root:["root",t&&"disabled",r&&"focusVisible"]},s=(0,a.A)(i,N,o);return r&&n&&(s.root+=` ${n}`),s})(he);return(0,C.jsxs)(U,{as:de,className:(0,o.A)(me.root,h),ownerState:he,onBlur:ie,onClick:A,onContextMenu:q,onFocus:se,onKeyDown:ce,onKeyUp:ue,onMouseDown:$,onMouseLeave:re,onMouseUp:te,onDragLeave:ee,onTouchEnd:oe,onTouchMove:ae,onTouchStart:ne,ref:pe,tabIndex:g?-1:F,type:H,...fe,...Y,children:[p,X?(0,C.jsx)(R,{ref:Z,center:d,...z}):null]})}))},15514:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(9950).createContext({})},51496:(e,t,r)=>{"use strict";r.d(t,{A:()=>k});var n=r(9950),o=r(72004),a=r(3484),i=r(39624),s=r(46282),l=r(65471),c=r(44414);const u=(0,l.A)((0,c.jsx)("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlank"),d=(0,l.A)((0,c.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),f=(0,l.A)((0,c.jsx)("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}),"IndeterminateCheckBox");var p=r(89548),h=r(19608),m=r(24377),g=r(59254),v=r(54265),y=r(51734),b=r(18463);const w=(0,g.Ay)(s.A,{shouldForwardProp:e=>(0,h.A)(e)||"classes"===e,name:"MuiCheckbox",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.indeterminate&&t.indeterminate,t[`size${(0,p.A)(r.size)}`],"default"!==r.color&&t[`color${(0,p.A)(r.color)}`]]}})((0,v.A)((e=>{let{theme:t}=e;return{color:(t.vars||t).palette.text.secondary,variants:[{props:{color:"default",disableRipple:!1},style:{"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette.action.activeChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,i.X4)(t.palette.action.active,t.palette.action.hoverOpacity)}}},...Object.entries(t.palette).filter((0,y.A)()).map((e=>{let[r]=e;return{props:{color:r,disableRipple:!1},style:{"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,i.X4)(t.palette[r].main,t.palette.action.hoverOpacity)}}}})),...Object.entries(t.palette).filter((0,y.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{[`&.${m.A.checked}, &.${m.A.indeterminate}`]:{color:(t.vars||t).palette[r].main},[`&.${m.A.disabled}`]:{color:(t.vars||t).palette.action.disabled}}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:"transparent"}}}}]}}))),x=(0,c.jsx)(d,{}),S=(0,c.jsx)(u,{}),A=(0,c.jsx)(f,{}),k=n.forwardRef((function(e,t){const r=(0,b.b)({props:e,name:"MuiCheckbox"}),{checkedIcon:i=x,color:s="primary",icon:l=S,indeterminate:u=!1,indeterminateIcon:d=A,inputProps:f,size:h="medium",disableRipple:g=!1,className:v,...y}=r,k=u?d:l,C=u?d:i,I={...r,disableRipple:g,color:s,indeterminate:u,size:h},E=(e=>{const{classes:t,indeterminate:r,color:n,size:o}=e,i={root:["root",r&&"indeterminate",`color${(0,p.A)(n)}`,`size${(0,p.A)(o)}`]},s=(0,a.A)(i,m.w,t);return{...t,...s}})(I);return(0,c.jsx)(w,{type:"checkbox",inputProps:{"data-indeterminate":u,...f},icon:n.cloneElement(k,{fontSize:k.props.fontSize??h}),checkedIcon:n.cloneElement(C,{fontSize:C.props.fontSize??h}),ownerState:I,ref:t,className:(0,o.A)(E.root,v),disableRipple:g,...y,classes:E})}))},24377:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,w:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiCheckbox",e)}const i=(0,n.A)("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary","sizeSmall","sizeMedium"])},92678:(e,t,r)=>{"use strict";r.r(t),r.d(t,{checkboxClasses:()=>o.A,default:()=>n.A,getCheckboxUtilityClass:()=>o.w});var n=r(51496),o=r(24377)},87299:(e,t,r)=>{"use strict";r.d(t,{A:()=>x});var n=r(9950),o=r(72004),a=r(3484),i=r(39624),s=r(65471),l=r(44414);const c=(0,s.A)((0,l.jsx)("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"}),"Cancel");var u=r(31506),d=r(89548),f=r(31891),p=r(59254),h=r(54265),m=r(51734),g=r(18463),v=r(39771);const y=(0,p.Ay)("div",{name:"MuiChip",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e,{color:n,iconColor:o,clickable:a,onDelete:i,size:s,variant:l}=r;return[{[`& .${v.A.avatar}`]:t.avatar},{[`& .${v.A.avatar}`]:t[`avatar${(0,d.A)(s)}`]},{[`& .${v.A.avatar}`]:t[`avatarColor${(0,d.A)(n)}`]},{[`& .${v.A.icon}`]:t.icon},{[`& .${v.A.icon}`]:t[`icon${(0,d.A)(s)}`]},{[`& .${v.A.icon}`]:t[`iconColor${(0,d.A)(o)}`]},{[`& .${v.A.deleteIcon}`]:t.deleteIcon},{[`& .${v.A.deleteIcon}`]:t[`deleteIcon${(0,d.A)(s)}`]},{[`& .${v.A.deleteIcon}`]:t[`deleteIconColor${(0,d.A)(n)}`]},{[`& .${v.A.deleteIcon}`]:t[`deleteIcon${(0,d.A)(l)}Color${(0,d.A)(n)}`]},t.root,t[`size${(0,d.A)(s)}`],t[`color${(0,d.A)(n)}`],a&&t.clickable,a&&"default"!==n&&t[`clickableColor${(0,d.A)(n)})`],i&&t.deletable,i&&"default"!==n&&t[`deletableColor${(0,d.A)(n)}`],t[l],t[`${l}${(0,d.A)(n)}`]]}})((0,h.A)((e=>{let{theme:t}=e;const r="light"===t.palette.mode?t.palette.grey[700]:t.palette.grey[300];return{maxWidth:"100%",fontFamily:t.typography.fontFamily,fontSize:t.typography.pxToRem(13),display:"inline-flex",alignItems:"center",justifyContent:"center",height:32,color:(t.vars||t).palette.text.primary,backgroundColor:(t.vars||t).palette.action.selected,borderRadius:16,whiteSpace:"nowrap",transition:t.transitions.create(["background-color","box-shadow"]),cursor:"unset",outline:0,textDecoration:"none",border:0,padding:0,verticalAlign:"middle",boxSizing:"border-box",[`&.${v.A.disabled}`]:{opacity:(t.vars||t).palette.action.disabledOpacity,pointerEvents:"none"},[`& .${v.A.avatar}`]:{marginLeft:5,marginRight:-6,width:24,height:24,color:t.vars?t.vars.palette.Chip.defaultAvatarColor:r,fontSize:t.typography.pxToRem(12)},[`& .${v.A.avatarColorPrimary}`]:{color:(t.vars||t).palette.primary.contrastText,backgroundColor:(t.vars||t).palette.primary.dark},[`& .${v.A.avatarColorSecondary}`]:{color:(t.vars||t).palette.secondary.contrastText,backgroundColor:(t.vars||t).palette.secondary.dark},[`& .${v.A.avatarSmall}`]:{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:t.typography.pxToRem(10)},[`& .${v.A.icon}`]:{marginLeft:5,marginRight:-6},[`& .${v.A.deleteIcon}`]:{WebkitTapHighlightColor:"transparent",color:t.vars?`rgba(${t.vars.palette.text.primaryChannel} / 0.26)`:(0,i.X4)(t.palette.text.primary,.26),fontSize:22,cursor:"pointer",margin:"0 5px 0 -6px","&:hover":{color:t.vars?`rgba(${t.vars.palette.text.primaryChannel} / 0.4)`:(0,i.X4)(t.palette.text.primary,.4)}},variants:[{props:{size:"small"},style:{height:24,[`& .${v.A.icon}`]:{fontSize:18,marginLeft:4,marginRight:-4},[`& .${v.A.deleteIcon}`]:{fontSize:16,marginRight:4,marginLeft:-4}}},...Object.entries(t.palette).filter((0,m.A)(["contrastText"])).map((e=>{let[r]=e;return{props:{color:r},style:{backgroundColor:(t.vars||t).palette[r].main,color:(t.vars||t).palette[r].contrastText,[`& .${v.A.deleteIcon}`]:{color:t.vars?`rgba(${t.vars.palette[r].contrastTextChannel} / 0.7)`:(0,i.X4)(t.palette[r].contrastText,.7),"&:hover, &:active":{color:(t.vars||t).palette[r].contrastText}}}}})),{props:e=>e.iconColor===e.color,style:{[`& .${v.A.icon}`]:{color:t.vars?t.vars.palette.Chip.defaultIconColor:r}}},{props:e=>e.iconColor===e.color&&"default"!==e.color,style:{[`& .${v.A.icon}`]:{color:"inherit"}}},{props:{onDelete:!0},style:{[`&.${v.A.focusVisible}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.action.selectedChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.focusOpacity}))`:(0,i.X4)(t.palette.action.selected,t.palette.action.selectedOpacity+t.palette.action.focusOpacity)}}},...Object.entries(t.palette).filter((0,m.A)(["dark"])).map((e=>{let[r]=e;return{props:{color:r,onDelete:!0},style:{[`&.${v.A.focusVisible}`]:{background:(t.vars||t).palette[r].dark}}}})),{props:{clickable:!0},style:{userSelect:"none",WebkitTapHighlightColor:"transparent",cursor:"pointer","&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette.action.selectedChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:(0,i.X4)(t.palette.action.selected,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity)},[`&.${v.A.focusVisible}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.action.selectedChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.focusOpacity}))`:(0,i.X4)(t.palette.action.selected,t.palette.action.selectedOpacity+t.palette.action.focusOpacity)},"&:active":{boxShadow:(t.vars||t).shadows[1]}}},...Object.entries(t.palette).filter((0,m.A)(["dark"])).map((e=>{let[r]=e;return{props:{color:r,clickable:!0},style:{[`&:hover, &.${v.A.focusVisible}`]:{backgroundColor:(t.vars||t).palette[r].dark}}}})),{props:{variant:"outlined"},style:{backgroundColor:"transparent",border:t.vars?`1px solid ${t.vars.palette.Chip.defaultBorder}`:`1px solid ${"light"===t.palette.mode?t.palette.grey[400]:t.palette.grey[700]}`,[`&.${v.A.clickable}:hover`]:{backgroundColor:(t.vars||t).palette.action.hover},[`&.${v.A.focusVisible}`]:{backgroundColor:(t.vars||t).palette.action.focus},[`& .${v.A.avatar}`]:{marginLeft:4},[`& .${v.A.avatarSmall}`]:{marginLeft:2},[`& .${v.A.icon}`]:{marginLeft:4},[`& .${v.A.iconSmall}`]:{marginLeft:2},[`& .${v.A.deleteIcon}`]:{marginRight:5},[`& .${v.A.deleteIconSmall}`]:{marginRight:3}}},...Object.entries(t.palette).filter((0,m.A)()).map((e=>{let[r]=e;return{props:{variant:"outlined",color:r},style:{color:(t.vars||t).palette[r].main,border:`1px solid ${t.vars?`rgba(${t.vars.palette[r].mainChannel} / 0.7)`:(0,i.X4)(t.palette[r].main,.7)}`,[`&.${v.A.clickable}:hover`]:{backgroundColor:t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,i.X4)(t.palette[r].main,t.palette.action.hoverOpacity)},[`&.${v.A.focusVisible}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.focusOpacity})`:(0,i.X4)(t.palette[r].main,t.palette.action.focusOpacity)},[`& .${v.A.deleteIcon}`]:{color:t.vars?`rgba(${t.vars.palette[r].mainChannel} / 0.7)`:(0,i.X4)(t.palette[r].main,.7),"&:hover, &:active":{color:(t.vars||t).palette[r].main}}}}}))]}}))),b=(0,p.Ay)("span",{name:"MuiChip",slot:"Label",overridesResolver:(e,t)=>{const{ownerState:r}=e,{size:n}=r;return[t.label,t[`label${(0,d.A)(n)}`]]}})({overflow:"hidden",textOverflow:"ellipsis",paddingLeft:12,paddingRight:12,whiteSpace:"nowrap",variants:[{props:{variant:"outlined"},style:{paddingLeft:11,paddingRight:11}},{props:{size:"small"},style:{paddingLeft:8,paddingRight:8}},{props:{size:"small",variant:"outlined"},style:{paddingLeft:7,paddingRight:7}}]});function w(e){return"Backspace"===e.key||"Delete"===e.key}const x=n.forwardRef((function(e,t){const r=(0,g.b)({props:e,name:"MuiChip"}),{avatar:i,className:s,clickable:p,color:h="default",component:m,deleteIcon:x,disabled:S=!1,icon:A,label:k,onClick:C,onDelete:I,onKeyDown:E,onKeyUp:D,size:T="medium",variant:O="filled",tabIndex:M,skipFocusWhenDisabled:P=!1,...j}=r,R=n.useRef(null),_=(0,u.A)(R,t),N=e=>{e.stopPropagation(),I&&I(e)},L=!(!1===p||!C)||p,U=L||I?f.A:m||"div",B={...r,component:U,disabled:S,size:T,color:h,iconColor:n.isValidElement(A)&&A.props.color||h,onDelete:!!I,clickable:L,variant:O},F=(e=>{const{classes:t,disabled:r,size:n,color:o,iconColor:i,onDelete:s,clickable:l,variant:c}=e,u={root:["root",c,r&&"disabled",`size${(0,d.A)(n)}`,`color${(0,d.A)(o)}`,l&&"clickable",l&&`clickableColor${(0,d.A)(o)}`,s&&"deletable",s&&`deletableColor${(0,d.A)(o)}`,`${c}${(0,d.A)(o)}`],label:["label",`label${(0,d.A)(n)}`],avatar:["avatar",`avatar${(0,d.A)(n)}`,`avatarColor${(0,d.A)(o)}`],icon:["icon",`icon${(0,d.A)(n)}`,`iconColor${(0,d.A)(i)}`],deleteIcon:["deleteIcon",`deleteIcon${(0,d.A)(n)}`,`deleteIconColor${(0,d.A)(o)}`,`deleteIcon${(0,d.A)(c)}Color${(0,d.A)(o)}`]};return(0,a.A)(u,v.f,t)})(B),z=U===f.A?{component:m||"div",focusVisibleClassName:F.focusVisible,...I&&{disableRipple:!0}}:{};let W=null;I&&(W=x&&n.isValidElement(x)?n.cloneElement(x,{className:(0,o.A)(x.props.className,F.deleteIcon),onClick:N}):(0,l.jsx)(c,{className:(0,o.A)(F.deleteIcon),onClick:N}));let H=null;i&&n.isValidElement(i)&&(H=n.cloneElement(i,{className:(0,o.A)(F.avatar,i.props.className)}));let Y=null;return A&&n.isValidElement(A)&&(Y=n.cloneElement(A,{className:(0,o.A)(F.icon,A.props.className)})),(0,l.jsxs)(y,{as:U,className:(0,o.A)(F.root,s),disabled:!(!L||!S)||void 0,onClick:C,onKeyDown:e=>{e.currentTarget===e.target&&w(e)&&e.preventDefault(),E&&E(e)},onKeyUp:e=>{e.currentTarget===e.target&&I&&w(e)&&I(e),D&&D(e)},ref:_,tabIndex:P&&S?-1:M,ownerState:B,...z,...j,children:[H||Y,(0,l.jsx)(b,{className:(0,o.A)(F.label),ownerState:B,children:k}),W]})}))},39771:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,f:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiChip",e)}const i=(0,n.A)("MuiChip",["root","sizeSmall","sizeMedium","colorDefault","colorError","colorInfo","colorPrimary","colorSecondary","colorSuccess","colorWarning","disabled","clickable","clickableColorPrimary","clickableColorSecondary","deletable","deletableColorPrimary","deletableColorSecondary","outlined","filled","outlinedPrimary","outlinedSecondary","filledPrimary","filledSecondary","avatar","avatarSmall","avatarMedium","avatarColorPrimary","avatarColorSecondary","icon","iconSmall","iconMedium","iconColorPrimary","iconColorSecondary","label","labelSmall","labelMedium","deleteIcon","deleteIconSmall","deleteIconMedium","deleteIconColorPrimary","deleteIconColorSecondary","deleteIconOutlinedColorPrimary","deleteIconOutlinedColorSecondary","deleteIconFilledColorPrimary","deleteIconFilledColorSecondary","focusVisible"])},10793:(e,t,r)=>{"use strict";r.r(t),r.d(t,{chipClasses:()=>o.A,default:()=>n.A,getChipUtilityClass:()=>o.f});var n=r(87299),o=r(39771)},18463:(e,t,r)=>{"use strict";r.d(t,{b:()=>o});r(9950);var n=r(6171);r(44414);function o(e){return(0,n.b)(e)}},40777:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,K:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiDivider",e)}const i=(0,n.A)("MuiDivider",["root","absolute","fullWidth","inset","middle","flexItem","light","vertical","withChildren","withChildrenVertical","textAlignRight","textAlignLeft","wrapper","wrapperVertical"])},57191:(e,t,r)=>{"use strict";r.d(t,{A:()=>d});var n=r(9950),o=r(32448),a=r(69688),i=r(14857),s=r(70576),l=r(31506),c=r(44414);const u={entering:{opacity:1},entered:{opacity:1}},d=n.forwardRef((function(e,t){const r=(0,i.A)(),d={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{addEndListener:f,appear:p=!0,children:h,easing:m,in:g,onEnter:v,onEntered:y,onEntering:b,onExit:w,onExited:x,onExiting:S,style:A,timeout:k=d,TransitionComponent:C=o.Ay,...I}=e,E=n.useRef(null),D=(0,l.A)(E,(0,a.A)(h),t),T=e=>t=>{if(e){const r=E.current;void 0===t?e(r):e(r,t)}},O=T(b),M=T(((e,t)=>{(0,s.q)(e);const n=(0,s.c)({style:A,timeout:k,easing:m},{mode:"enter"});e.style.webkitTransition=r.transitions.create("opacity",n),e.style.transition=r.transitions.create("opacity",n),v&&v(e,t)})),P=T(y),j=T(S),R=T((e=>{const t=(0,s.c)({style:A,timeout:k,easing:m},{mode:"exit"});e.style.webkitTransition=r.transitions.create("opacity",t),e.style.transition=r.transitions.create("opacity",t),w&&w(e)})),_=T(x);return(0,c.jsx)(C,{appear:p,in:g,nodeRef:E,onEnter:M,onEntered:P,onEntering:O,onExit:R,onExited:_,onExiting:j,addEndListener:e=>{f&&f(E.current,e)},timeout:k,...I,children:(e,t)=>n.cloneElement(h,{style:{opacity:0,visibility:"exited"!==e||g?void 0:"hidden",...u[e],...A,...h.props.style},ref:D,...t})})}))},85685:(e,t,r)=>{"use strict";r.d(t,{A:()=>y});var n=r(9950),o=r(64750),a=r(3484),i=r(22302),s=r(19608),l=r(59254),c=r(54265),u=r(51734),d=r(18463),f=r(22797),p=r(89548),h=r(44414);const m=(0,l.Ay)(i.Sh,{shouldForwardProp:e=>(0,s.A)(e)||"classes"===e,name:"MuiFilledInput",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[...(0,i.WC)(e,t),!r.disableUnderline&&t.underline]}})((0,c.A)((e=>{let{theme:t}=e;const r="light"===t.palette.mode,n=r?"rgba(0, 0, 0, 0.42)":"rgba(255, 255, 255, 0.7)",o=r?"rgba(0, 0, 0, 0.06)":"rgba(255, 255, 255, 0.09)",a=r?"rgba(0, 0, 0, 0.09)":"rgba(255, 255, 255, 0.13)",i=r?"rgba(0, 0, 0, 0.12)":"rgba(255, 255, 255, 0.12)";return{position:"relative",backgroundColor:t.vars?t.vars.palette.FilledInput.bg:o,borderTopLeftRadius:(t.vars||t).shape.borderRadius,borderTopRightRadius:(t.vars||t).shape.borderRadius,transition:t.transitions.create("background-color",{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut}),"&:hover":{backgroundColor:t.vars?t.vars.palette.FilledInput.hoverBg:a,"@media (hover: none)":{backgroundColor:t.vars?t.vars.palette.FilledInput.bg:o}},[`&.${f.A.focused}`]:{backgroundColor:t.vars?t.vars.palette.FilledInput.bg:o},[`&.${f.A.disabled}`]:{backgroundColor:t.vars?t.vars.palette.FilledInput.disabledBg:i},variants:[{props:e=>{let{ownerState:t}=e;return!t.disableUnderline},style:{"&::after":{left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:t.transitions.create("transform",{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut}),pointerEvents:"none"},[`&.${f.A.focused}:after`]:{transform:"scaleX(1) translateX(0)"},[`&.${f.A.error}`]:{"&::before, &::after":{borderBottomColor:(t.vars||t).palette.error.main}},"&::before":{borderBottom:`1px solid ${t.vars?`rgba(${t.vars.palette.common.onBackgroundChannel} / ${t.vars.opacity.inputUnderline})`:n}`,left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:t.transitions.create("border-bottom-color",{duration:t.transitions.duration.shorter}),pointerEvents:"none"},[`&:hover:not(.${f.A.disabled}, .${f.A.error}):before`]:{borderBottom:`1px solid ${(t.vars||t).palette.text.primary}`},[`&.${f.A.disabled}:before`]:{borderBottomStyle:"dotted"}}},...Object.entries(t.palette).filter((0,u.A)()).map((e=>{let[r]=e;return{props:{disableUnderline:!1,color:r},style:{"&::after":{borderBottom:`2px solid ${(t.vars||t).palette[r]?.main}`}}}})),{props:e=>{let{ownerState:t}=e;return t.startAdornment},style:{paddingLeft:12}},{props:e=>{let{ownerState:t}=e;return t.endAdornment},style:{paddingRight:12}},{props:e=>{let{ownerState:t}=e;return t.multiline},style:{padding:"25px 12px 8px"}},{props:e=>{let{ownerState:t,size:r}=e;return t.multiline&&"small"===r},style:{paddingTop:21,paddingBottom:4}},{props:e=>{let{ownerState:t}=e;return t.multiline&&t.hiddenLabel},style:{paddingTop:16,paddingBottom:17}},{props:e=>{let{ownerState:t}=e;return t.multiline&&t.hiddenLabel&&"small"===t.size},style:{paddingTop:8,paddingBottom:9}}]}}))),g=(0,l.Ay)(i.ck,{name:"MuiFilledInput",slot:"Input",overridesResolver:i.Oj})((0,c.A)((e=>{let{theme:t}=e;return{paddingTop:25,paddingRight:12,paddingBottom:8,paddingLeft:12,...!t.vars&&{"&:-webkit-autofill":{WebkitBoxShadow:"light"===t.palette.mode?null:"0 0 0 100px #266798 inset",WebkitTextFillColor:"light"===t.palette.mode?null:"#fff",caretColor:"light"===t.palette.mode?null:"#fff",borderTopLeftRadius:"inherit",borderTopRightRadius:"inherit"}},...t.vars&&{"&:-webkit-autofill":{borderTopLeftRadius:"inherit",borderTopRightRadius:"inherit"},[t.getColorSchemeSelector("dark")]:{"&:-webkit-autofill":{WebkitBoxShadow:"0 0 0 100px #266798 inset",WebkitTextFillColor:"#fff",caretColor:"#fff"}}},variants:[{props:{size:"small"},style:{paddingTop:21,paddingBottom:4}},{props:e=>{let{ownerState:t}=e;return t.hiddenLabel},style:{paddingTop:16,paddingBottom:17}},{props:e=>{let{ownerState:t}=e;return t.startAdornment},style:{paddingLeft:0}},{props:e=>{let{ownerState:t}=e;return t.endAdornment},style:{paddingRight:0}},{props:e=>{let{ownerState:t}=e;return t.hiddenLabel&&"small"===t.size},style:{paddingTop:8,paddingBottom:9}},{props:e=>{let{ownerState:t}=e;return t.multiline},style:{paddingTop:0,paddingBottom:0,paddingLeft:0,paddingRight:0}}]}}))),v=n.forwardRef((function(e,t){const r=(0,d.b)({props:e,name:"MuiFilledInput"}),{disableUnderline:n=!1,components:s={},componentsProps:l,fullWidth:c=!1,hiddenLabel:u,inputComponent:v="input",multiline:y=!1,slotProps:b,slots:w={},type:x="text",...S}=r,A={...r,disableUnderline:n,fullWidth:c,inputComponent:v,multiline:y,type:x},k=(e=>{const{classes:t,disableUnderline:r,startAdornment:n,endAdornment:o,size:i,hiddenLabel:s,multiline:l}=e,c={root:["root",!r&&"underline",n&&"adornedStart",o&&"adornedEnd","small"===i&&`size${(0,p.A)(i)}`,s&&"hiddenLabel",l&&"multiline"],input:["input"]},u=(0,a.A)(c,f.N,t);return{...t,...u}})(r),C={root:{ownerState:A},input:{ownerState:A}},I=b??l?(0,o.A)(C,b??l):C,E=w.root??s.Root??m,D=w.input??s.Input??g;return(0,h.jsx)(i.Ay,{slots:{root:E,input:D},componentsProps:I,fullWidth:c,inputComponent:v,multiline:y,ref:t,type:x,...S,classes:k})}));v&&(v.muiName="Input");const y=v},22797:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,N:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiFilledInput",e)}const i={...r(63589).A,...(0,n.A)("MuiFilledInput",["root","underline","input","adornedStart","adornedEnd","sizeSmall","multiline","hiddenLabel"])}},72145:(e,t,r)=>{"use strict";r.d(t,{A:()=>m});var n=r(9950),o=r(72004),a=r(3484),i=r(59254),s=r(18463),l=r(43317),c=r(89548),u=r(36658),d=r(15866),f=r(35105),p=r(44414);const h=(0,i.Ay)("div",{name:"MuiFormControl",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return{...t.root,...t[`margin${(0,c.A)(r.margin)}`],...r.fullWidth&&t.fullWidth}}})({display:"inline-flex",flexDirection:"column",position:"relative",minWidth:0,padding:0,margin:0,border:0,verticalAlign:"top",variants:[{props:{margin:"normal"},style:{marginTop:16,marginBottom:8}},{props:{margin:"dense"},style:{marginTop:8,marginBottom:4}},{props:{fullWidth:!0},style:{width:"100%"}}]}),m=n.forwardRef((function(e,t){const r=(0,s.b)({props:e,name:"MuiFormControl"}),{children:i,className:m,color:g="primary",component:v="div",disabled:y=!1,error:b=!1,focused:w,fullWidth:x=!1,hiddenLabel:S=!1,margin:A="none",required:k=!1,size:C="medium",variant:I="outlined",...E}=r,D={...r,color:g,component:v,disabled:y,error:b,fullWidth:x,hiddenLabel:S,margin:A,required:k,size:C,variant:I},T=(e=>{const{classes:t,margin:r,fullWidth:n}=e,o={root:["root","none"!==r&&`margin${(0,c.A)(r)}`,n&&"fullWidth"]};return(0,a.A)(o,f.c,t)})(D),[O,M]=n.useState((()=>{let e=!1;return i&&n.Children.forEach(i,(t=>{if(!(0,u.A)(t,["Input","Select"]))return;const r=(0,u.A)(t,["Select"])?t.props.input:t;r&&(0,l.gr)(r.props)&&(e=!0)})),e})),[P,j]=n.useState((()=>{let e=!1;return i&&n.Children.forEach(i,(t=>{(0,u.A)(t,["Input","Select"])&&((0,l.lq)(t.props,!0)||(0,l.lq)(t.props.inputProps,!0))&&(e=!0)})),e})),[R,_]=n.useState(!1);y&&R&&_(!1);const N=void 0===w||y?R:w;let L;n.useRef(!1);const U=n.useMemo((()=>({adornedStart:O,setAdornedStart:M,color:g,disabled:y,error:b,filled:P,focused:N,fullWidth:x,hiddenLabel:S,size:C,onBlur:()=>{_(!1)},onEmpty:()=>{j(!1)},onFilled:()=>{j(!0)},onFocus:()=>{_(!0)},registerEffect:L,required:k,variant:I})),[O,g,y,b,P,N,x,S,L,k,C,I]);return(0,p.jsx)(d.A.Provider,{value:U,children:(0,p.jsx)(h,{as:v,ownerState:D,className:(0,o.A)(T.root,m),ref:t,...E,children:i})})}))},15866:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(9950).createContext(void 0)},35105:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,c:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiFormControl",e)}const i=(0,n.A)("MuiFormControl",["root","marginNone","marginNormal","marginDense","fullWidth","disabled"])},68624:(e,t,r)=>{"use strict";function n(e){let{props:t,states:r,muiFormControl:n}=e;return r.reduce(((e,r)=>(e[r]=t[r],n&&"undefined"===typeof t[r]&&(e[r]=n[r]),e)),{})}r.d(t,{A:()=>n})},6998:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,formControlClasses:()=>a.A,getFormControlUtilityClasses:()=>a.c,useFormControl:()=>o.A});var n=r(72145),o=r(39766),a=r(35105)},39766:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(9950),o=r(15866);function a(){return n.useContext(o.A)}},7233:(e,t,r)=>{"use strict";r.d(t,{A:()=>y});var n=r(9950),o=r(72004),a=r(3484),i=r(39766),s=r(59254),l=r(54265),c=r(18463),u=r(87233),d=r(89548),f=r(98257),p=r(68624),h=r(24763),m=r(44414);const g=(0,s.Ay)("label",{name:"MuiFormControlLabel",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[{[`& .${f.A.label}`]:t.label},t.root,t[`labelPlacement${(0,d.A)(r.labelPlacement)}`]]}})((0,l.A)((e=>{let{theme:t}=e;return{display:"inline-flex",alignItems:"center",cursor:"pointer",verticalAlign:"middle",WebkitTapHighlightColor:"transparent",marginLeft:-11,marginRight:16,[`&.${f.A.disabled}`]:{cursor:"default"},[`& .${f.A.label}`]:{[`&.${f.A.disabled}`]:{color:(t.vars||t).palette.text.disabled}},variants:[{props:{labelPlacement:"start"},style:{flexDirection:"row-reverse",marginRight:-11}},{props:{labelPlacement:"top"},style:{flexDirection:"column-reverse"}},{props:{labelPlacement:"bottom"},style:{flexDirection:"column"}},{props:e=>{let{labelPlacement:t}=e;return"start"===t||"top"===t||"bottom"===t},style:{marginLeft:16}}]}}))),v=(0,s.Ay)("span",{name:"MuiFormControlLabel",slot:"Asterisk",overridesResolver:(e,t)=>t.asterisk})((0,l.A)((e=>{let{theme:t}=e;return{[`&.${f.A.error}`]:{color:(t.vars||t).palette.error.main}}}))),y=n.forwardRef((function(e,t){const r=(0,c.b)({props:e,name:"MuiFormControlLabel"}),{checked:s,className:l,componentsProps:y={},control:b,disabled:w,disableTypography:x,inputRef:S,label:A,labelPlacement:k="end",name:C,onChange:I,required:E,slots:D={},slotProps:T={},value:O,...M}=r,P=(0,i.A)(),j=w??b.props.disabled??P?.disabled,R=E??b.props.required,_={disabled:j,required:R};["checked","name","onChange","value","inputRef"].forEach((e=>{"undefined"===typeof b.props[e]&&"undefined"!==typeof r[e]&&(_[e]=r[e])}));const N=(0,p.A)({props:r,muiFormControl:P,states:["error"]}),L={...r,disabled:j,labelPlacement:k,required:R,error:N.error},U=(e=>{const{classes:t,disabled:r,labelPlacement:n,error:o,required:i}=e,s={root:["root",r&&"disabled",`labelPlacement${(0,d.A)(n)}`,o&&"error",i&&"required"],label:["label",r&&"disabled"],asterisk:["asterisk",o&&"error"]};return(0,a.A)(s,f.u,t)})(L),B={slots:D,slotProps:{...y,...T}},[F,z]=(0,h.A)("typography",{elementType:u.A,externalForwardedProps:B,ownerState:L});let W=A;return null==W||W.type===u.A||x||(W=(0,m.jsx)(F,{component:"span",...z,className:(0,o.A)(U.label,z?.className),children:W})),(0,m.jsxs)(g,{className:(0,o.A)(U.root,l),ownerState:L,ref:t,...M,children:[n.cloneElement(b,_),R?(0,m.jsxs)("div",{children:[W,(0,m.jsxs)(v,{ownerState:L,"aria-hidden":!0,className:U.asterisk,children:["\u2009","*"]})]}):W]})}))},98257:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,u:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiFormControlLabel",e)}const i=(0,n.A)("MuiFormControlLabel",["root","labelPlacementStart","labelPlacementTop","labelPlacementBottom","disabled","label","error","required","asterisk"])},65544:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,formControlLabelClasses:()=>o.A,getFormControlLabelUtilityClasses:()=>o.u});var n=r(7233),o=r(98257)},30609:(e,t,r)=>{"use strict";r.d(t,{A:()=>p});var n=r(9950),o=r(72004),a=r(3484),i=r(59254),s=r(18463),l=r(449),c=r(39766),u=r(68624),d=r(44414);const f=(0,i.Ay)("div",{name:"MuiFormGroup",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.row&&t.row]}})({display:"flex",flexDirection:"column",flexWrap:"wrap",variants:[{props:{row:!0},style:{flexDirection:"row"}}]}),p=n.forwardRef((function(e,t){const r=(0,s.b)({props:e,name:"MuiFormGroup"}),{className:n,row:i=!1,...p}=r,h=(0,c.A)(),m=(0,u.A)({props:r,muiFormControl:h,states:["error"]}),g={...r,row:i,error:m.error},v=(e=>{const{classes:t,row:r,error:n}=e,o={root:["root",r&&"row",n&&"error"]};return(0,a.A)(o,l.c,t)})(g);return(0,d.jsx)(f,{className:(0,o.A)(v.root,n),ownerState:g,ref:t,...p})}))},449:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,c:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiFormGroup",e)}const i=(0,n.A)("MuiFormGroup",["root","row","error"])},44320:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,formGroupClasses:()=>o.A,getFormGroupUtilityClass:()=>o.c});var n=r(30609),o=r(449)},29277:(e,t,r)=>{"use strict";r.d(t,{A:()=>v});var n=r(9950),o=r(72004),a=r(3484),i=r(68624),s=r(39766),l=r(89548),c=r(59254),u=r(54265),d=r(51734),f=r(18463),p=r(44789),h=r(44414);const m=(0,c.Ay)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return{...t.root,..."secondary"===r.color&&t.colorSecondary,...r.filled&&t.filled}}})((0,u.A)((e=>{let{theme:t}=e;return{color:(t.vars||t).palette.text.secondary,...t.typography.body1,lineHeight:"1.4375em",padding:0,position:"relative",variants:[...Object.entries(t.palette).filter((0,d.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{[`&.${p.A.focused}`]:{color:(t.vars||t).palette[r].main}}}})),{props:{},style:{[`&.${p.A.disabled}`]:{color:(t.vars||t).palette.text.disabled},[`&.${p.A.error}`]:{color:(t.vars||t).palette.error.main}}}]}}))),g=(0,c.Ay)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:(e,t)=>t.asterisk})((0,u.A)((e=>{let{theme:t}=e;return{[`&.${p.A.error}`]:{color:(t.vars||t).palette.error.main}}}))),v=n.forwardRef((function(e,t){const r=(0,f.b)({props:e,name:"MuiFormLabel"}),{children:n,className:c,color:u,component:d="label",disabled:v,error:y,filled:b,focused:w,required:x,...S}=r,A=(0,s.A)(),k=(0,i.A)({props:r,muiFormControl:A,states:["color","required","focused","disabled","error","filled"]}),C={...r,color:k.color||"primary",component:d,disabled:k.disabled,error:k.error,filled:k.filled,focused:k.focused,required:k.required},I=(e=>{const{classes:t,color:r,focused:n,disabled:o,error:i,filled:s,required:c}=e,u={root:["root",`color${(0,l.A)(r)}`,o&&"disabled",i&&"error",s&&"filled",n&&"focused",c&&"required"],asterisk:["asterisk",i&&"error"]};return(0,a.A)(u,p.Z,t)})(C);return(0,h.jsxs)(m,{as:d,ownerState:C,className:(0,o.A)(I.root,c),ref:t,...S,children:[n,k.required&&(0,h.jsxs)(g,{ownerState:C,"aria-hidden":!0,className:I.asterisk,children:["\u2009","*"]})]})}))},44789:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,Z:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiFormLabel",e)}const i=(0,n.A)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"])},4139:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>y});var n=r(9950),o=r(72004),a=r(23505),i=r(80237),s=r(3484),l=r(59254),c=r(18463),u=r(14857);const d=n.createContext();var f=r(35899),p=r(44414);function h(e){let{breakpoints:t,values:r}=e,n="";Object.keys(r).forEach((e=>{""===n&&0!==r[e]&&(n=e)}));const o=Object.keys(t).sort(((e,r)=>t[e]-t[r]));return o.slice(0,o.indexOf(n))}const m=(0,l.Ay)("div",{name:"MuiGrid",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e,{container:n,direction:o,item:a,spacing:i,wrap:s,zeroMinWidth:l,breakpoints:c}=r;let u=[];n&&(u=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e||e<=0)return[];if("string"===typeof e&&!Number.isNaN(Number(e))||"number"===typeof e)return[r[`spacing-xs-${String(e)}`]];const n=[];return t.forEach((t=>{const o=e[t];Number(o)>0&&n.push(r[`spacing-${t}-${String(o)}`])})),n}(i,c,t));const d=[];return c.forEach((e=>{const n=r[e];n&&d.push(t[`grid-${e}-${String(n)}`])})),[t.root,n&&t.container,a&&t.item,l&&t.zeroMinWidth,...u,"row"!==o&&t[`direction-xs-${String(o)}`],"wrap"!==s&&t[`wrap-xs-${String(s)}`],...d]}})((e=>{let{ownerState:t}=e;return{boxSizing:"border-box",...t.container&&{display:"flex",flexWrap:"wrap",width:"100%"},...t.item&&{margin:0},...t.zeroMinWidth&&{minWidth:0},..."wrap"!==t.wrap&&{flexWrap:t.wrap}}}),(function(e){let{theme:t,ownerState:r}=e;const n=(0,a.kW)({values:r.direction,breakpoints:t.breakpoints.values});return(0,a.NI)({theme:t},n,(e=>{const t={flexDirection:e};return e.startsWith("column")&&(t[`& > .${f.A.item}`]={maxWidth:"none"}),t}))}),(function(e){let{theme:t,ownerState:r}=e;const{container:n,rowSpacing:o}=r;let i={};if(n&&0!==o){const e=(0,a.kW)({values:o,breakpoints:t.breakpoints.values});let r;"object"===typeof e&&(r=h({breakpoints:t.breakpoints.values,values:e})),i=(0,a.NI)({theme:t},e,((e,n)=>{const o=t.spacing(e);return"0px"!==o?{marginTop:`-${o}`,[`& > .${f.A.item}`]:{paddingTop:o}}:r?.includes(n)?{}:{marginTop:0,[`& > .${f.A.item}`]:{paddingTop:0}}}))}return i}),(function(e){let{theme:t,ownerState:r}=e;const{container:n,columnSpacing:o}=r;let i={};if(n&&0!==o){const e=(0,a.kW)({values:o,breakpoints:t.breakpoints.values});let r;"object"===typeof e&&(r=h({breakpoints:t.breakpoints.values,values:e})),i=(0,a.NI)({theme:t},e,((e,n)=>{const o=t.spacing(e);if("0px"!==o){return{width:`calc(100% + ${o})`,marginLeft:`-${o}`,[`& > .${f.A.item}`]:{paddingLeft:o}}}return r?.includes(n)?{}:{width:"100%",marginLeft:0,[`& > .${f.A.item}`]:{paddingLeft:0}}}))}return i}),(function(e){let t,{theme:r,ownerState:n}=e;return r.breakpoints.keys.reduce(((e,o)=>{let i={};if(n[o]&&(t=n[o]),!t)return e;if(!0===t)i={flexBasis:0,flexGrow:1,maxWidth:"100%"};else if("auto"===t)i={flexBasis:"auto",flexGrow:0,flexShrink:0,maxWidth:"none",width:"auto"};else{const s=(0,a.kW)({values:n.columns,breakpoints:r.breakpoints.values}),l="object"===typeof s?s[o]:s;if(void 0===l||null===l)return e;const c=Math.round(t/l*1e8)/1e6+"%";let u={};if(n.container&&n.item&&0!==n.columnSpacing){const e=r.spacing(n.columnSpacing);if("0px"!==e){const t=`calc(${c} + ${e})`;u={flexBasis:t,maxWidth:t}}}i={flexBasis:c,flexGrow:0,maxWidth:c,...u}}return 0===r.breakpoints.values[o]?Object.assign(e,i):e[r.breakpoints.up(o)]=i,e}),{})}));const g=e=>{const{classes:t,container:r,direction:n,item:o,spacing:a,wrap:i,zeroMinWidth:l,breakpoints:c}=e;let u=[];r&&(u=function(e,t){if(!e||e<=0)return[];if("string"===typeof e&&!Number.isNaN(Number(e))||"number"===typeof e)return[`spacing-xs-${String(e)}`];const r=[];return t.forEach((t=>{const n=e[t];if(Number(n)>0){const e=`spacing-${t}-${String(n)}`;r.push(e)}})),r}(a,c));const d=[];c.forEach((t=>{const r=e[t];r&&d.push(`grid-${t}-${String(r)}`)}));const p={root:["root",r&&"container",o&&"item",l&&"zeroMinWidth",...u,"row"!==n&&`direction-xs-${String(n)}`,"wrap"!==i&&`wrap-xs-${String(i)}`,...d]};return(0,s.A)(p,f.n,t)},v=n.forwardRef((function(e,t){const r=(0,c.b)({props:e,name:"MuiGrid"}),{breakpoints:a}=(0,u.A)(),s=(0,i.A)(r),{className:l,columns:f,columnSpacing:h,component:v="div",container:y=!1,direction:b="row",item:w=!1,rowSpacing:x,spacing:S=0,wrap:A="wrap",zeroMinWidth:k=!1,...C}=s,I=x||S,E=h||S,D=n.useContext(d),T=y?f||12:D,O={},M={...C};a.keys.forEach((e=>{null!=C[e]&&(O[e]=C[e],delete M[e])}));const P={...s,columns:T,container:y,direction:b,item:w,rowSpacing:I,columnSpacing:E,wrap:A,zeroMinWidth:k,spacing:S,...O,breakpoints:a.keys},j=g(P);return(0,p.jsx)(d.Provider,{value:T,children:(0,p.jsx)(m,{ownerState:P,className:(0,o.A)(j.root,l),as:v,ref:t,...M})})}));const y=v},35899:(e,t,r)=>{"use strict";r.d(t,{A:()=>s,n:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiGrid",e)}const i=["auto",!0,1,2,3,4,5,6,7,8,9,10,11,12],s=(0,n.A)("MuiGrid",["root","container","item","zeroMinWidth",...[0,1,2,3,4,5,6,7,8,9,10].map((e=>`spacing-xs-${e}`)),...["column-reverse","column","row-reverse","row"].map((e=>`direction-xs-${e}`)),...["nowrap","wrap-reverse","wrap"].map((e=>`wrap-xs-${e}`)),...i.map((e=>`grid-xs-${e}`)),...i.map((e=>`grid-sm-${e}`)),...i.map((e=>`grid-md-${e}`)),...i.map((e=>`grid-lg-${e}`)),...i.map((e=>`grid-xl-${e}`))])},20643:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.Ay,getGridUtilityClass:()=>o.n,gridClasses:()=>o.A});var n=r(4139),o=r(35899)},40165:(e,t,r)=>{"use strict";r.d(t,{A:()=>m});var n=r(9950),o=r(52215),a=r(69688),i=r(32448),s=r(14857),l=r(70576),c=r(31506),u=r(44414);function d(e){return`scale(${e}, ${e**2})`}const f={entering:{opacity:1,transform:d(1)},entered:{opacity:1,transform:"none"}},p="undefined"!==typeof navigator&&/^((?!chrome|android).)*(safari|mobile)/i.test(navigator.userAgent)&&/(os |version\/)15(.|_)4/i.test(navigator.userAgent),h=n.forwardRef((function(e,t){const{addEndListener:r,appear:h=!0,children:m,easing:g,in:v,onEnter:y,onEntered:b,onEntering:w,onExit:x,onExited:S,onExiting:A,style:k,timeout:C="auto",TransitionComponent:I=i.Ay,...E}=e,D=(0,o.A)(),T=n.useRef(),O=(0,s.A)(),M=n.useRef(null),P=(0,c.A)(M,(0,a.A)(m),t),j=e=>t=>{if(e){const r=M.current;void 0===t?e(r):e(r,t)}},R=j(w),_=j(((e,t)=>{(0,l.q)(e);const{duration:r,delay:n,easing:o}=(0,l.c)({style:k,timeout:C,easing:g},{mode:"enter"});let a;"auto"===C?(a=O.transitions.getAutoHeightDuration(e.clientHeight),T.current=a):a=r,e.style.transition=[O.transitions.create("opacity",{duration:a,delay:n}),O.transitions.create("transform",{duration:p?a:.666*a,delay:n,easing:o})].join(","),y&&y(e,t)})),N=j(b),L=j(A),U=j((e=>{const{duration:t,delay:r,easing:n}=(0,l.c)({style:k,timeout:C,easing:g},{mode:"exit"});let o;"auto"===C?(o=O.transitions.getAutoHeightDuration(e.clientHeight),T.current=o):o=t,e.style.transition=[O.transitions.create("opacity",{duration:o,delay:r}),O.transitions.create("transform",{duration:p?o:.666*o,delay:p?r:r||.333*o,easing:n})].join(","),e.style.opacity=0,e.style.transform=d(.75),x&&x(e)})),B=j(S);return(0,u.jsx)(I,{appear:h,in:v,nodeRef:M,onEnter:_,onEntered:N,onEntering:R,onExit:U,onExited:B,onExiting:L,addEndListener:e=>{"auto"===C&&D.start(T.current||0,e),r&&r(M.current,e)},timeout:"auto"===C?null:C,...E,children:(e,t)=>n.cloneElement(m,{style:{opacity:0,transform:d(.75),visibility:"exited"!==e||v?void 0:"hidden",...f[e],...k,...m.props.style},ref:P,...t})})}));h&&(h.muiSupportAuto=!0);const m=h},58864:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A});var n=r(40165)},57073:(e,t,r)=>{"use strict";r.d(t,{A:()=>g});var n=r(9950),o=r(72004),a=r(3484),i=r(39624),s=r(59254),l=r(54265),c=r(51734),u=r(18463),d=r(31891),f=r(89548),p=r(97921),h=r(44414);const m=(0,s.Ay)(d.A,{name:"MuiIconButton",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,"default"!==r.color&&t[`color${(0,f.A)(r.color)}`],r.edge&&t[`edge${(0,f.A)(r.edge)}`],t[`size${(0,f.A)(r.size)}`]]}})((0,l.A)((e=>{let{theme:t}=e;return{textAlign:"center",flex:"0 0 auto",fontSize:t.typography.pxToRem(24),padding:8,borderRadius:"50%",color:(t.vars||t).palette.action.active,transition:t.transitions.create("background-color",{duration:t.transitions.duration.shortest}),variants:[{props:e=>!e.disableRipple,style:{"--IconButton-hoverBg":t.vars?`rgba(${t.vars.palette.action.activeChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,i.X4)(t.palette.action.active,t.palette.action.hoverOpacity),"&:hover":{backgroundColor:"var(--IconButton-hoverBg)","@media (hover: none)":{backgroundColor:"transparent"}}}},{props:{edge:"start"},style:{marginLeft:-12}},{props:{edge:"start",size:"small"},style:{marginLeft:-3}},{props:{edge:"end"},style:{marginRight:-12}},{props:{edge:"end",size:"small"},style:{marginRight:-3}}]}})),(0,l.A)((e=>{let{theme:t}=e;return{variants:[{props:{color:"inherit"},style:{color:"inherit"}},...Object.entries(t.palette).filter((0,c.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{color:(t.vars||t).palette[r].main}}})),...Object.entries(t.palette).filter((0,c.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{"--IconButton-hoverBg":t.vars?`rgba(${(t.vars||t).palette[r].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,i.X4)((t.vars||t).palette[r].main,t.palette.action.hoverOpacity)}}})),{props:{size:"small"},style:{padding:5,fontSize:t.typography.pxToRem(18)}},{props:{size:"large"},style:{padding:12,fontSize:t.typography.pxToRem(28)}}],[`&.${p.A.disabled}`]:{backgroundColor:"transparent",color:(t.vars||t).palette.action.disabled}}}))),g=n.forwardRef((function(e,t){const r=(0,u.b)({props:e,name:"MuiIconButton"}),{edge:n=!1,children:i,className:s,color:l="default",disabled:c=!1,disableFocusRipple:d=!1,size:g="medium",...v}=r,y={...r,edge:n,color:l,disabled:c,disableFocusRipple:d,size:g},b=(e=>{const{classes:t,disabled:r,color:n,edge:o,size:i}=e,s={root:["root",r&&"disabled","default"!==n&&`color${(0,f.A)(n)}`,o&&`edge${(0,f.A)(o)}`,`size${(0,f.A)(i)}`]};return(0,a.A)(s,p.G,t)})(y);return(0,h.jsx)(m,{className:(0,o.A)(b.root,s),centerRipple:!0,focusRipple:!d,disabled:c,ref:t,...v,ownerState:y,children:i})}))},97921:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,G:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiIconButton",e)}const i=(0,n.A)("MuiIconButton",["root","disabled","colorInherit","colorPrimary","colorSecondary","colorError","colorInfo","colorSuccess","colorWarning","edgeStart","edgeEnd","sizeSmall","sizeMedium","sizeLarge"])},74438:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getIconButtonUtilityClass:()=>o.G,iconButtonClasses:()=>o.A});var n=r(57073),o=r(97921)},82321:(e,t,r)=>{"use strict";r.d(t,{A:()=>v});var n=r(9950),o=r(3484),a=r(64750),i=r(22302),s=r(19608),l=r(59254),c=r(54265),u=r(51734),d=r(18463),f=r(10465),p=r(44414);const h=(0,l.Ay)(i.Sh,{shouldForwardProp:e=>(0,s.A)(e)||"classes"===e,name:"MuiInput",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[...(0,i.WC)(e,t),!r.disableUnderline&&t.underline]}})((0,c.A)((e=>{let{theme:t}=e;let r="light"===t.palette.mode?"rgba(0, 0, 0, 0.42)":"rgba(255, 255, 255, 0.7)";return t.vars&&(r=`rgba(${t.vars.palette.common.onBackgroundChannel} / ${t.vars.opacity.inputUnderline})`),{position:"relative",variants:[{props:e=>{let{ownerState:t}=e;return t.formControl},style:{"label + &":{marginTop:16}}},{props:e=>{let{ownerState:t}=e;return!t.disableUnderline},style:{"&::after":{left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:t.transitions.create("transform",{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut}),pointerEvents:"none"},[`&.${f.A.focused}:after`]:{transform:"scaleX(1) translateX(0)"},[`&.${f.A.error}`]:{"&::before, &::after":{borderBottomColor:(t.vars||t).palette.error.main}},"&::before":{borderBottom:`1px solid ${r}`,left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:t.transitions.create("border-bottom-color",{duration:t.transitions.duration.shorter}),pointerEvents:"none"},[`&:hover:not(.${f.A.disabled}, .${f.A.error}):before`]:{borderBottom:`2px solid ${(t.vars||t).palette.text.primary}`,"@media (hover: none)":{borderBottom:`1px solid ${r}`}},[`&.${f.A.disabled}:before`]:{borderBottomStyle:"dotted"}}},...Object.entries(t.palette).filter((0,u.A)()).map((e=>{let[r]=e;return{props:{color:r,disableUnderline:!1},style:{"&::after":{borderBottom:`2px solid ${(t.vars||t).palette[r].main}`}}}}))]}}))),m=(0,l.Ay)(i.ck,{name:"MuiInput",slot:"Input",overridesResolver:i.Oj})({}),g=n.forwardRef((function(e,t){const r=(0,d.b)({props:e,name:"MuiInput"}),{disableUnderline:n=!1,components:s={},componentsProps:l,fullWidth:c=!1,inputComponent:u="input",multiline:g=!1,slotProps:v,slots:y={},type:b="text",...w}=r,x=(e=>{const{classes:t,disableUnderline:r}=e,n={root:["root",!r&&"underline"],input:["input"]},a=(0,o.A)(n,f.B,t);return{...t,...a}})(r),S={root:{ownerState:{disableUnderline:n}}},A=v??l?(0,a.A)(v??l,S):S,k=y.root??s.Root??h,C=y.input??s.Input??m;return(0,p.jsx)(i.Ay,{slots:{root:k,input:C},slotProps:A,fullWidth:c,inputComponent:u,multiline:g,ref:t,type:b,...w,classes:x})}));g&&(g.muiName="Input");const v=g},34289:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getInputUtilityClass:()=>o.B,inputClasses:()=>o.A});var n=r(82321),o=r(10465)},10465:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,B:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiInput",e)}const i={...r(63589).A,...(0,n.A)("MuiInput",["root","underline","input"])}},22302:(e,t,r)=>{"use strict";r.d(t,{ck:()=>P,Sh:()=>M,Ay:()=>R,Oj:()=>O,WC:()=>T});var n=r(37750),o=r(9950),a=r(72004),i=r(3484),s=r(49456),l=r(89222),c=r(95034),u=r(97654),d=r(44414);function f(e){return parseInt(e,10)||0}const p={visibility:"hidden",position:"absolute",overflow:"hidden",height:0,top:0,left:0,transform:"translateZ(0)"};const h=o.forwardRef((function(e,t){const{onChange:r,maxRows:n,minRows:a=1,style:i,value:h,...m}=e,{current:g}=o.useRef(null!=h),v=o.useRef(null),y=(0,s.A)(t,v),b=o.useRef(null),w=o.useRef(null),x=o.useCallback((()=>{const t=v.current,r=(0,l.A)(t).getComputedStyle(t);if("0px"===r.width)return{outerHeightStyle:0,overflowing:!1};const o=w.current;o.style.width=r.width,o.value=t.value||e.placeholder||"x","\n"===o.value.slice(-1)&&(o.value+=" ");const i=r.boxSizing,s=f(r.paddingBottom)+f(r.paddingTop),c=f(r.borderBottomWidth)+f(r.borderTopWidth),u=o.scrollHeight;o.value="x";const d=o.scrollHeight;let p=u;a&&(p=Math.max(Number(a)*d,p)),n&&(p=Math.min(Number(n)*d,p)),p=Math.max(p,d);return{outerHeightStyle:p+("border-box"===i?s+c:0),overflowing:Math.abs(p-u)<=1}}),[n,a,e.placeholder]),S=o.useCallback((()=>{const e=x();if(void 0===(t=e)||null===t||0===Object.keys(t).length||0===t.outerHeightStyle&&!t.overflowing)return;var t;const r=e.outerHeightStyle,n=v.current;b.current!==r&&(b.current=r,n.style.height=`${r}px`),n.style.overflow=e.overflowing?"hidden":""}),[x]);(0,c.A)((()=>{const e=()=>{S()};let t;const r=(0,u.A)(e),n=v.current,o=(0,l.A)(n);let a;return o.addEventListener("resize",r),"undefined"!==typeof ResizeObserver&&(a=new ResizeObserver(e),a.observe(n)),()=>{r.clear(),cancelAnimationFrame(t),o.removeEventListener("resize",r),a&&a.disconnect()}}),[x,S]),(0,c.A)((()=>{S()}));return(0,d.jsxs)(o.Fragment,{children:[(0,d.jsx)("textarea",{value:h,onChange:e=>{g||S(),r&&r(e)},ref:y,rows:a,style:i,...m}),(0,d.jsx)("textarea",{"aria-hidden":!0,className:e.className,readOnly:!0,ref:w,tabIndex:-1,style:{...p,...i,paddingTop:0,paddingBottom:0}})]})}));var m,g=r(19745),v=r(68624),y=r(15866),b=r(39766),w=r(59254),x=r(84431),S=r(54265),A=r(18463),k=r(89548),C=r(31506),I=r(79044),E=r(43317),D=r(63589);const T=(e,t)=>{const{ownerState:r}=e;return[t.root,r.formControl&&t.formControl,r.startAdornment&&t.adornedStart,r.endAdornment&&t.adornedEnd,r.error&&t.error,"small"===r.size&&t.sizeSmall,r.multiline&&t.multiline,r.color&&t[`color${(0,k.A)(r.color)}`],r.fullWidth&&t.fullWidth,r.hiddenLabel&&t.hiddenLabel]},O=(e,t)=>{const{ownerState:r}=e;return[t.input,"small"===r.size&&t.inputSizeSmall,r.multiline&&t.inputMultiline,"search"===r.type&&t.inputTypeSearch,r.startAdornment&&t.inputAdornedStart,r.endAdornment&&t.inputAdornedEnd,r.hiddenLabel&&t.inputHiddenLabel]},M=(0,w.Ay)("div",{name:"MuiInputBase",slot:"Root",overridesResolver:T})((0,S.A)((e=>{let{theme:t}=e;return{...t.typography.body1,color:(t.vars||t).palette.text.primary,lineHeight:"1.4375em",boxSizing:"border-box",position:"relative",cursor:"text",display:"inline-flex",alignItems:"center",[`&.${D.A.disabled}`]:{color:(t.vars||t).palette.text.disabled,cursor:"default"},variants:[{props:e=>{let{ownerState:t}=e;return t.multiline},style:{padding:"4px 0 5px"}},{props:e=>{let{ownerState:t,size:r}=e;return t.multiline&&"small"===r},style:{paddingTop:1}},{props:e=>{let{ownerState:t}=e;return t.fullWidth},style:{width:"100%"}}]}}))),P=(0,w.Ay)("input",{name:"MuiInputBase",slot:"Input",overridesResolver:O})((0,S.A)((e=>{let{theme:t}=e;const r="light"===t.palette.mode,n={color:"currentColor",...t.vars?{opacity:t.vars.opacity.inputPlaceholder}:{opacity:r?.42:.5},transition:t.transitions.create("opacity",{duration:t.transitions.duration.shorter})},o={opacity:"0 !important"},a=t.vars?{opacity:t.vars.opacity.inputPlaceholder}:{opacity:r?.42:.5};return{font:"inherit",letterSpacing:"inherit",color:"currentColor",padding:"4px 0 5px",border:0,boxSizing:"content-box",background:"none",height:"1.4375em",margin:0,WebkitTapHighlightColor:"transparent",display:"block",minWidth:0,width:"100%","&::-webkit-input-placeholder":n,"&::-moz-placeholder":n,"&::-ms-input-placeholder":n,"&:focus":{outline:0},"&:invalid":{boxShadow:"none"},"&::-webkit-search-decoration":{WebkitAppearance:"none"},[`label[data-shrink=false] + .${D.A.formControl} &`]:{"&::-webkit-input-placeholder":o,"&::-moz-placeholder":o,"&::-ms-input-placeholder":o,"&:focus::-webkit-input-placeholder":a,"&:focus::-moz-placeholder":a,"&:focus::-ms-input-placeholder":a},[`&.${D.A.disabled}`]:{opacity:1,WebkitTextFillColor:(t.vars||t).palette.text.disabled},variants:[{props:e=>{let{ownerState:t}=e;return!t.disableInjectingGlobalStyles},style:{animationName:"mui-auto-fill-cancel",animationDuration:"10ms","&:-webkit-autofill":{animationDuration:"5000s",animationName:"mui-auto-fill"}}},{props:{size:"small"},style:{paddingTop:1}},{props:e=>{let{ownerState:t}=e;return t.multiline},style:{height:"auto",resize:"none",padding:0,paddingTop:0}},{props:{type:"search"},style:{MozAppearance:"textfield"}}]}}))),j=(0,x.Dp)({"@keyframes mui-auto-fill":{from:{display:"block"}},"@keyframes mui-auto-fill-cancel":{from:{display:"block"}}}),R=o.forwardRef((function(e,t){const r=(0,A.b)({props:e,name:"MuiInputBase"}),{"aria-describedby":s,autoComplete:l,autoFocus:c,className:u,color:f,components:p={},componentsProps:w={},defaultValue:x,disabled:S,disableInjectingGlobalStyles:T,endAdornment:O,error:R,fullWidth:_=!1,id:N,inputComponent:L="input",inputProps:U={},inputRef:B,margin:F,maxRows:z,minRows:W,multiline:H=!1,name:Y,onBlur:V,onChange:G,onClick:Z,onFocus:Q,onKeyDown:K,onKeyUp:X,placeholder:J,readOnly:$,renderSuffix:q,rows:ee,size:te,slotProps:re={},slots:ne={},startAdornment:oe,type:ae="text",value:ie,...se}=r,le=null!=U.value?U.value:ie,{current:ce}=o.useRef(null!=le),ue=o.useRef(),de=o.useCallback((e=>{0}),[]),fe=(0,C.A)(ue,B,U.ref,de),[pe,he]=o.useState(!1),me=(0,b.A)();const ge=(0,v.A)({props:r,muiFormControl:me,states:["color","disabled","error","hiddenLabel","size","required","filled"]});ge.focused=me?me.focused:pe,o.useEffect((()=>{!me&&S&&pe&&(he(!1),V&&V())}),[me,S,pe,V]);const ve=me&&me.onFilled,ye=me&&me.onEmpty,be=o.useCallback((e=>{(0,E.lq)(e)?ve&&ve():ye&&ye()}),[ve,ye]);(0,I.A)((()=>{ce&&be({value:le})}),[le,be,ce]);o.useEffect((()=>{be(ue.current)}),[]);let we=L,xe=U;H&&"input"===we&&(xe=ee?{type:void 0,minRows:ee,maxRows:ee,...xe}:{type:void 0,maxRows:z,minRows:W,...xe},we=h);o.useEffect((()=>{me&&me.setAdornedStart(Boolean(oe))}),[me,oe]);const Se={...r,color:ge.color||"primary",disabled:ge.disabled,endAdornment:O,error:ge.error,focused:ge.focused,formControl:me,fullWidth:_,hiddenLabel:ge.hiddenLabel,multiline:H,size:ge.size,startAdornment:oe,type:ae},Ae=(e=>{const{classes:t,color:r,disabled:n,error:o,endAdornment:a,focused:s,formControl:l,fullWidth:c,hiddenLabel:u,multiline:d,readOnly:f,size:p,startAdornment:h,type:m}=e,g={root:["root",`color${(0,k.A)(r)}`,n&&"disabled",o&&"error",c&&"fullWidth",s&&"focused",l&&"formControl",p&&"medium"!==p&&`size${(0,k.A)(p)}`,d&&"multiline",h&&"adornedStart",a&&"adornedEnd",u&&"hiddenLabel",f&&"readOnly"],input:["input",n&&"disabled","search"===m&&"inputTypeSearch",d&&"inputMultiline","small"===p&&"inputSizeSmall",u&&"inputHiddenLabel",h&&"inputAdornedStart",a&&"inputAdornedEnd",f&&"readOnly"]};return(0,i.A)(g,D.g,t)})(Se),ke=ne.root||p.Root||M,Ce=re.root||w.root||{},Ie=ne.input||p.Input||P;return xe={...xe,...re.input??w.input},(0,d.jsxs)(o.Fragment,{children:[!T&&"function"===typeof j&&(m||(m=(0,d.jsx)(j,{}))),(0,d.jsxs)(ke,{...Ce,ref:t,onClick:e=>{ue.current&&e.currentTarget===e.target&&ue.current.focus(),Z&&Z(e)},...se,...!(0,g.A)(ke)&&{ownerState:{...Se,...Ce.ownerState}},className:(0,a.A)(Ae.root,Ce.className,u,$&&"MuiInputBase-readOnly"),children:[oe,(0,d.jsx)(y.A.Provider,{value:null,children:(0,d.jsx)(Ie,{"aria-invalid":ge.error,"aria-describedby":s,autoComplete:l,autoFocus:c,defaultValue:x,disabled:ge.disabled,id:N,onAnimationStart:e=>{be("mui-auto-fill-cancel"===e.animationName?ue.current:{value:"x"})},name:Y,placeholder:J,readOnly:$,required:ge.required,rows:ee,value:le,onKeyDown:K,onKeyUp:X,type:ae,...xe,...!(0,g.A)(Ie)&&{as:we,ownerState:{...Se,...xe.ownerState}},ref:fe,className:(0,a.A)(Ae.input,xe.className,$&&"MuiInputBase-readOnly"),onBlur:e=>{V&&V(e),U.onBlur&&U.onBlur(e),me&&me.onBlur?me.onBlur(e):he(!1)},onChange:function(e){if(!ce){const t=e.target||ue.current;if(null==t)throw new Error((0,n.A)(1));be({value:t.value})}for(var t=arguments.length,r=new Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];U.onChange&&U.onChange(e,...r),G&&G(e,...r)},onFocus:e=>{Q&&Q(e),U.onFocus&&U.onFocus(e),me&&me.onFocus?me.onFocus(e):he(!0)}})}),O,q?q({...ge,startAdornment:oe}):null]})]})}))},58332:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.Ay,getInputBaseUtilityClass:()=>o.g,inputBaseClasses:()=>o.A});var n=r(22302),o=r(63589)},63589:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,g:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiInputBase",e)}const i=(0,n.A)("MuiInputBase",["root","formControl","focused","disabled","adornedStart","adornedEnd","error","sizeSmall","multiline","colorSecondary","fullWidth","hiddenLabel","readOnly","input","inputSizeSmall","inputMultiline","inputTypeSearch","inputAdornedStart","inputAdornedEnd","inputHiddenLabel"])},43317:(e,t,r)=>{"use strict";function n(e){return null!=e&&!(Array.isArray(e)&&0===e.length)}function o(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return e&&(n(e.value)&&""!==e.value||t&&n(e.defaultValue)&&""!==e.defaultValue)}function a(e){return e.startAdornment}r.d(t,{gr:()=>a,lq:()=>o})},66059:(e,t,r)=>{"use strict";r.d(t,{A:()=>y});var n=r(9950),o=r(3484),a=r(72004),i=r(68624),s=r(39766),l=r(29277),c=r(44789),u=r(89548),d=r(19608),f=r(59254),p=r(54265),h=r(18463),m=r(83071),g=r(44414);const v=(0,f.Ay)(l.A,{shouldForwardProp:e=>(0,d.A)(e)||"classes"===e,name:"MuiInputLabel",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[{[`& .${c.A.asterisk}`]:t.asterisk},t.root,r.formControl&&t.formControl,"small"===r.size&&t.sizeSmall,r.shrink&&t.shrink,!r.disableAnimation&&t.animated,r.focused&&t.focused,t[r.variant]]}})((0,p.A)((e=>{let{theme:t}=e;return{display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%",variants:[{props:e=>{let{ownerState:t}=e;return t.formControl},style:{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"}},{props:{size:"small"},style:{transform:"translate(0, 17px) scale(1)"}},{props:e=>{let{ownerState:t}=e;return t.shrink},style:{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"}},{props:e=>{let{ownerState:t}=e;return!t.disableAnimation},style:{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})}},{props:{variant:"filled"},style:{zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"}},{props:{variant:"filled",size:"small"},style:{transform:"translate(12px, 13px) scale(1)"}},{props:e=>{let{variant:t,ownerState:r}=e;return"filled"===t&&r.shrink},style:{userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"}},{props:e=>{let{variant:t,ownerState:r,size:n}=e;return"filled"===t&&r.shrink&&"small"===n},style:{transform:"translate(12px, 4px) scale(0.75)"}},{props:{variant:"outlined"},style:{zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"}},{props:{variant:"outlined",size:"small"},style:{transform:"translate(14px, 9px) scale(1)"}},{props:e=>{let{variant:t,ownerState:r}=e;return"outlined"===t&&r.shrink},style:{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}}]}}))),y=n.forwardRef((function(e,t){const r=(0,h.b)({name:"MuiInputLabel",props:e}),{disableAnimation:n=!1,margin:l,shrink:c,variant:d,className:f,...p}=r,y=(0,s.A)();let b=c;"undefined"===typeof b&&y&&(b=y.filled||y.focused||y.adornedStart);const w=(0,i.A)({props:r,muiFormControl:y,states:["size","variant","required","focused"]}),x={...r,disableAnimation:n,formControl:y,shrink:b,size:w.size,variant:w.variant,required:w.required,focused:w.focused},S=(e=>{const{classes:t,formControl:r,size:n,shrink:a,disableAnimation:i,variant:s,required:l}=e,c={root:["root",r&&"formControl",!i&&"animated",a&&"shrink",n&&"normal"!==n&&`size${(0,u.A)(n)}`,s],asterisk:[l&&"asterisk"]},d=(0,o.A)(c,m.R,t);return{...t,...d}})(x);return(0,g.jsx)(v,{"data-shrink":b,ref:t,className:(0,a.A)(S.root,f),...p,ownerState:x,classes:S})}))},51081:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getInputLabelUtilityClasses:()=>o.R,inputLabelClasses:()=>o.A});var n=r(66059),o=r(83071)},83071:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,R:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiInputLabel",e)}const i=(0,n.A)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"])},249:(e,t,r)=>{"use strict";r.d(t,{A:()=>h});var n=r(9950),o=r(72004),a=r(3484),i=r(59254),s=r(18463),l=r(13372),c=r(45558),u=r(1614);function d(e){return(0,u.Ay)("MuiList",e)}(0,c.A)("MuiList",["root","padding","dense","subheader"]);var f=r(44414);const p=(0,i.Ay)("ul",{name:"MuiList",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,!r.disablePadding&&t.padding,r.dense&&t.dense,r.subheader&&t.subheader]}})({listStyle:"none",margin:0,padding:0,position:"relative",variants:[{props:e=>{let{ownerState:t}=e;return!t.disablePadding},style:{paddingTop:8,paddingBottom:8}},{props:e=>{let{ownerState:t}=e;return t.subheader},style:{paddingTop:0}}]}),h=n.forwardRef((function(e,t){const r=(0,s.b)({props:e,name:"MuiList"}),{children:i,className:c,component:u="ul",dense:h=!1,disablePadding:m=!1,subheader:g,...v}=r,y=n.useMemo((()=>({dense:h})),[h]),b={...r,component:u,dense:h,disablePadding:m},w=(e=>{const{classes:t,disablePadding:r,dense:n,subheader:o}=e,i={root:["root",!r&&"padding",n&&"dense",o&&"subheader"]};return(0,a.A)(i,d,t)})(b);return(0,f.jsx)(l.A.Provider,{value:y,children:(0,f.jsxs)(p,{as:u,className:(0,o.A)(w.root,c),ref:t,ownerState:b,...v,children:[g,i]})})}))},13372:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(9950).createContext({})},92455:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,f:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiListItemIcon",e)}const i=(0,n.A)("MuiListItemIcon",["root","alignItemsFlexStart"])},83563:(e,t,r)=>{"use strict";r.d(t,{A:()=>h});var n=r(9950),o=r(72004),a=r(3484),i=r(27569),s=r(87233),l=r(13372),c=r(59254),u=r(18463),d=r(88543),f=r(44414);const p=(0,c.Ay)("div",{name:"MuiListItemText",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[{[`& .${d.A.primary}`]:t.primary},{[`& .${d.A.secondary}`]:t.secondary},t.root,r.inset&&t.inset,r.primary&&r.secondary&&t.multiline,r.dense&&t.dense]}})({flex:"1 1 auto",minWidth:0,marginTop:4,marginBottom:4,[`.${i.A.root}:where(& .${d.A.primary})`]:{display:"block"},[`.${i.A.root}:where(& .${d.A.secondary})`]:{display:"block"},variants:[{props:e=>{let{ownerState:t}=e;return t.primary&&t.secondary},style:{marginTop:6,marginBottom:6}},{props:e=>{let{ownerState:t}=e;return t.inset},style:{paddingLeft:56}}]}),h=n.forwardRef((function(e,t){const r=(0,u.b)({props:e,name:"MuiListItemText"}),{children:i,className:c,disableTypography:h=!1,inset:m=!1,primary:g,primaryTypographyProps:v,secondary:y,secondaryTypographyProps:b,...w}=r,{dense:x}=n.useContext(l.A);let S=null!=g?g:i,A=y;const k={...r,disableTypography:h,inset:m,primary:!!S,secondary:!!A,dense:x},C=(e=>{const{classes:t,inset:r,primary:n,secondary:o,dense:i}=e,s={root:["root",r&&"inset",i&&"dense",n&&o&&"multiline"],primary:["primary"],secondary:["secondary"]};return(0,a.A)(s,d.b,t)})(k);return null==S||S.type===s.A||h||(S=(0,f.jsx)(s.A,{variant:x?"body2":"body1",className:C.primary,component:v?.variant?void 0:"span",...v,children:S})),null==A||A.type===s.A||h||(A=(0,f.jsx)(s.A,{variant:"body2",className:C.secondary,color:"textSecondary",...b,children:A})),(0,f.jsxs)(p,{className:(0,o.A)(C.root,c),ownerState:k,ref:t,...w,children:[S,A]})}))},74287:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getListItemTextUtilityClass:()=>o.b,listItemTextClasses:()=>o.A});var n=r(83563),o=r(88543)},88543:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,b:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiListItemText",e)}const i=(0,n.A)("MuiListItemText",["root","multiline","dense","inset","primary","secondary"])},97591:(e,t,r)=>{"use strict";r.d(t,{A:()=>P});var n=r(9950),o=(r(26429),r(72004)),a=r(3484),i=r(44730),s=r(70134),l=r(27402),c=r(249);const u=r(52478).A;var d=r(31506),f=r(79044),p=r(70827),h=r(44414);function m(e,t,r){return e===t?e.firstChild:t&&t.nextElementSibling?t.nextElementSibling:r?null:e.firstChild}function g(e,t,r){return e===t?r?e.firstChild:e.lastChild:t&&t.previousElementSibling?t.previousElementSibling:r?null:e.lastChild}function v(e,t){if(void 0===t)return!0;let r=e.innerText;return void 0===r&&(r=e.textContent),r=r.trim().toLowerCase(),0!==r.length&&(t.repeating?r[0]===t.keys[0]:r.startsWith(t.keys.join("")))}function y(e,t,r,n,o,a){let i=!1,s=o(e,t,!!t&&r);for(;s;){if(s===e.firstChild){if(i)return!1;i=!0}const t=!n&&(s.disabled||"true"===s.getAttribute("aria-disabled"));if(s.hasAttribute("tabindex")&&v(s,a)&&!t)return s.focus(),!0;s=o(e,s,r)}return!1}const b=n.forwardRef((function(e,t){const{actions:r,autoFocus:o=!1,autoFocusItem:a=!1,children:i,className:s,disabledItemsFocusable:b=!1,disableListWrap:w=!1,onKeyDown:x,variant:S="selectedMenu",...A}=e,k=n.useRef(null),C=n.useRef({keys:[],repeating:!0,previousKeyMatched:!0,lastTime:null});(0,f.A)((()=>{o&&k.current.focus()}),[o]),n.useImperativeHandle(r,(()=>({adjustStyleForScrollbar:(e,t)=>{let{direction:r}=t;const n=!k.current.style.width;if(e.clientHeight<k.current.clientHeight&&n){const t=`${u((0,p.A)(e))}px`;k.current.style["rtl"===r?"paddingLeft":"paddingRight"]=t,k.current.style.width=`calc(100% + ${t})`}return k.current}})),[]);const I=(0,d.A)(k,t);let E=-1;n.Children.forEach(i,((e,t)=>{n.isValidElement(e)?(e.props.disabled||("selectedMenu"===S&&e.props.selected||-1===E)&&(E=t),E===t&&(e.props.disabled||e.props.muiSkipListHighlight||e.type.muiSkipListHighlight)&&(E+=1,E>=i.length&&(E=-1))):E===t&&(E+=1,E>=i.length&&(E=-1))}));const D=n.Children.map(i,((e,t)=>{if(t===E){const t={};return a&&(t.autoFocus=!0),void 0===e.props.tabIndex&&"selectedMenu"===S&&(t.tabIndex=0),n.cloneElement(e,t)}return e}));return(0,h.jsx)(c.A,{role:"menu",ref:I,className:s,onKeyDown:e=>{const t=k.current,r=e.key;if(e.ctrlKey||e.metaKey||e.altKey)return void(x&&x(e));const n=(0,l.A)(t).activeElement;if("ArrowDown"===r)e.preventDefault(),y(t,n,w,b,m);else if("ArrowUp"===r)e.preventDefault(),y(t,n,w,b,g);else if("Home"===r)e.preventDefault(),y(t,null,w,b,m);else if("End"===r)e.preventDefault(),y(t,null,w,b,g);else if(1===r.length){const o=C.current,a=r.toLowerCase(),i=performance.now();o.keys.length>0&&(i-o.lastTime>500?(o.keys=[],o.repeating=!0,o.previousKeyMatched=!0):o.repeating&&a!==o.keys[0]&&(o.repeating=!1)),o.lastTime=i,o.keys.push(a);const s=n&&!o.repeating&&v(n,o);o.previousKeyMatched&&(s||y(t,n,!1,b,m,o))?e.preventDefault():o.previousKeyMatched=!1}x&&x(e)},tabIndex:o?0:-1,...A,children:D})}));var w=r(11001),x=r(19608),S=r(59254),A=r(18463),k=r(45558),C=r(1614);function I(e){return(0,C.Ay)("MuiMenu",e)}(0,k.A)("MuiMenu",["root","paper","list"]);const E={vertical:"top",horizontal:"right"},D={vertical:"top",horizontal:"left"},T=(0,S.Ay)(w.Ay,{shouldForwardProp:e=>(0,x.A)(e)||"classes"===e,name:"MuiMenu",slot:"Root",overridesResolver:(e,t)=>t.root})({}),O=(0,S.Ay)(w.IJ,{name:"MuiMenu",slot:"Paper",overridesResolver:(e,t)=>t.paper})({maxHeight:"calc(100% - 96px)",WebkitOverflowScrolling:"touch"}),M=(0,S.Ay)(b,{name:"MuiMenu",slot:"List",overridesResolver:(e,t)=>t.list})({outline:0}),P=n.forwardRef((function(e,t){const r=(0,A.b)({props:e,name:"MuiMenu"}),{autoFocus:l=!0,children:c,className:u,disableAutoFocusItem:d=!1,MenuListProps:f={},onClose:p,open:m,PaperProps:g={},PopoverClasses:v,transitionDuration:y="auto",TransitionProps:{onEntering:b,...w}={},variant:x="selectedMenu",slots:S={},slotProps:k={},...C}=r,P=(0,i.I)(),j={...r,autoFocus:l,disableAutoFocusItem:d,MenuListProps:f,onEntering:b,PaperProps:g,transitionDuration:y,TransitionProps:w,variant:x},R=(e=>{const{classes:t}=e;return(0,a.A)({root:["root"],paper:["paper"],list:["list"]},I,t)})(j),_=l&&!d&&m,N=n.useRef(null);let L=-1;n.Children.map(c,((e,t)=>{n.isValidElement(e)&&(e.props.disabled||("selectedMenu"===x&&e.props.selected||-1===L)&&(L=t))}));const U=S.paper??O,B=k.paper??g,F=(0,s.A)({elementType:S.root,externalSlotProps:k.root,ownerState:j,className:[R.root,u]}),z=(0,s.A)({elementType:U,externalSlotProps:B,ownerState:j,className:R.paper});return(0,h.jsx)(T,{onClose:p,anchorOrigin:{vertical:"bottom",horizontal:P?"right":"left"},transformOrigin:P?E:D,slots:{paper:U,root:S.root},slotProps:{root:F,paper:z},open:m,ref:t,transitionDuration:y,TransitionProps:{onEntering:(e,t)=>{N.current&&N.current.adjustStyleForScrollbar(e,{direction:P?"rtl":"ltr"}),b&&b(e,t)},...w},ownerState:j,...C,classes:v,children:(0,h.jsx)(M,{onKeyDown:e=>{"Tab"===e.key&&(e.preventDefault(),p&&p(e,"tabKeyDown"))},actions:N,autoFocus:l&&(-1===L||d),autoFocusItem:_,variant:x,...f,className:(0,o.A)(R.list,f.className),children:c})})}))},27987:(e,t,r)=>{"use strict";r.d(t,{A:()=>x});var n=r(9950),o=r(72004),a=r(3484),i=r(39624),s=r(19608),l=r(59254),c=r(54265),u=r(18463),d=r(13372),f=r(31891),p=r(79044),h=r(31506),m=r(40777),g=r(92455),v=r(88543),y=r(72359),b=r(44414);const w=(0,l.Ay)(f.A,{shouldForwardProp:e=>(0,s.A)(e)||"classes"===e,name:"MuiMenuItem",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.dense&&t.dense,r.divider&&t.divider,!r.disableGutters&&t.gutters]}})((0,c.A)((e=>{let{theme:t}=e;return{...t.typography.body1,display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",minHeight:48,paddingTop:6,paddingBottom:6,boxSizing:"border-box",whiteSpace:"nowrap","&:hover":{textDecoration:"none",backgroundColor:(t.vars||t).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${y.A.selected}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,i.X4)(t.palette.primary.main,t.palette.action.selectedOpacity),[`&.${y.A.focusVisible}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.focusOpacity}))`:(0,i.X4)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.focusOpacity)}},[`&.${y.A.selected}:hover`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:(0,i.X4)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,i.X4)(t.palette.primary.main,t.palette.action.selectedOpacity)}},[`&.${y.A.focusVisible}`]:{backgroundColor:(t.vars||t).palette.action.focus},[`&.${y.A.disabled}`]:{opacity:(t.vars||t).palette.action.disabledOpacity},[`& + .${m.A.root}`]:{marginTop:t.spacing(1),marginBottom:t.spacing(1)},[`& + .${m.A.inset}`]:{marginLeft:52},[`& .${v.A.root}`]:{marginTop:0,marginBottom:0},[`& .${v.A.inset}`]:{paddingLeft:36},[`& .${g.A.root}`]:{minWidth:36},variants:[{props:e=>{let{ownerState:t}=e;return!t.disableGutters},style:{paddingLeft:16,paddingRight:16}},{props:e=>{let{ownerState:t}=e;return t.divider},style:{borderBottom:`1px solid ${(t.vars||t).palette.divider}`,backgroundClip:"padding-box"}},{props:e=>{let{ownerState:t}=e;return!t.dense},style:{[t.breakpoints.up("sm")]:{minHeight:"auto"}}},{props:e=>{let{ownerState:t}=e;return t.dense},style:{minHeight:32,paddingTop:4,paddingBottom:4,...t.typography.body2,[`& .${g.A.root} svg`]:{fontSize:"1.25rem"}}}]}}))),x=n.forwardRef((function(e,t){const r=(0,u.b)({props:e,name:"MuiMenuItem"}),{autoFocus:i=!1,component:s="li",dense:l=!1,divider:c=!1,disableGutters:f=!1,focusVisibleClassName:m,role:g="menuitem",tabIndex:v,className:x,...S}=r,A=n.useContext(d.A),k=n.useMemo((()=>({dense:l||A.dense||!1,disableGutters:f})),[A.dense,l,f]),C=n.useRef(null);(0,p.A)((()=>{i&&C.current&&C.current.focus()}),[i]);const I={...r,dense:k.dense,divider:c,disableGutters:f},E=(e=>{const{disabled:t,dense:r,divider:n,disableGutters:o,selected:i,classes:s}=e,l={root:["root",r&&"dense",t&&"disabled",!o&&"gutters",n&&"divider",i&&"selected"]},c=(0,a.A)(l,y.Z,s);return{...s,...c}})(r),D=(0,h.A)(C,t);let T;return r.disabled||(T=void 0!==v?v:-1),(0,b.jsx)(d.A.Provider,{value:k,children:(0,b.jsx)(w,{ref:D,role:g,tabIndex:T,component:s,focusVisibleClassName:(0,o.A)(E.focusVisible,m),className:(0,o.A)(E.root,x),...S,ownerState:I,classes:E})})}))},50663:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getMenuItemUtilityClass:()=>o.Z,menuItemClasses:()=>o.A});var n=r(27987),o=r(72359)},72359:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,Z:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiMenuItem",e)}const i=(0,n.A)("MuiMenuItem",["root","focusVisible","dense","disabled","divider","gutters","selected"])},66633:(e,t,r)=>{"use strict";r.d(t,{A:()=>U});var n=r(9950),o=r(72004),a=r(3484),i=r(49456),s=r(69688),l=r(61262),c=r(44414);const u=["input","select","textarea","a[href]","button","[tabindex]","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])'].join(",");function d(e){const t=[],r=[];return Array.from(e.querySelectorAll(u)).forEach(((e,n)=>{const o=function(e){const t=parseInt(e.getAttribute("tabindex")||"",10);return Number.isNaN(t)?"true"===e.contentEditable||("AUDIO"===e.nodeName||"VIDEO"===e.nodeName||"DETAILS"===e.nodeName)&&null===e.getAttribute("tabindex")?0:e.tabIndex:t}(e);-1!==o&&function(e){return!(e.disabled||"INPUT"===e.tagName&&"hidden"===e.type||function(e){if("INPUT"!==e.tagName||"radio"!==e.type)return!1;if(!e.name)return!1;const t=t=>e.ownerDocument.querySelector(`input[type="radio"]${t}`);let r=t(`[name="${e.name}"]:checked`);return r||(r=t(`[name="${e.name}"]`)),r!==e}(e))}(e)&&(0===o?t.push(e):r.push({documentOrder:n,tabIndex:o,node:e}))})),r.sort(((e,t)=>e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex)).map((e=>e.node)).concat(t)}function f(){return!0}const p=function(e){const{children:t,disableAutoFocus:r=!1,disableEnforceFocus:o=!1,disableRestoreFocus:a=!1,getTabbable:u=d,isEnabled:p=f,open:h}=e,m=n.useRef(!1),g=n.useRef(null),v=n.useRef(null),y=n.useRef(null),b=n.useRef(null),w=n.useRef(!1),x=n.useRef(null),S=(0,i.A)((0,s.A)(t),x),A=n.useRef(null);n.useEffect((()=>{h&&x.current&&(w.current=!r)}),[r,h]),n.useEffect((()=>{if(!h||!x.current)return;const e=(0,l.A)(x.current);return x.current.contains(e.activeElement)||(x.current.hasAttribute("tabIndex")||x.current.setAttribute("tabIndex","-1"),w.current&&x.current.focus()),()=>{a||(y.current&&y.current.focus&&(m.current=!0,y.current.focus()),y.current=null)}}),[h]),n.useEffect((()=>{if(!h||!x.current)return;const e=(0,l.A)(x.current),t=t=>{A.current=t,!o&&p()&&"Tab"===t.key&&e.activeElement===x.current&&t.shiftKey&&(m.current=!0,v.current&&v.current.focus())},r=()=>{const t=x.current;if(null===t)return;if(!e.hasFocus()||!p()||m.current)return void(m.current=!1);if(t.contains(e.activeElement))return;if(o&&e.activeElement!==g.current&&e.activeElement!==v.current)return;if(e.activeElement!==b.current)b.current=null;else if(null!==b.current)return;if(!w.current)return;let r=[];if(e.activeElement!==g.current&&e.activeElement!==v.current||(r=u(x.current)),r.length>0){const e=Boolean(A.current?.shiftKey&&"Tab"===A.current?.key),t=r[0],n=r[r.length-1];"string"!==typeof t&&"string"!==typeof n&&(e?n.focus():t.focus())}else t.focus()};e.addEventListener("focusin",r),e.addEventListener("keydown",t,!0);const n=setInterval((()=>{e.activeElement&&"BODY"===e.activeElement.tagName&&r()}),50);return()=>{clearInterval(n),e.removeEventListener("focusin",r),e.removeEventListener("keydown",t,!0)}}),[r,o,a,p,h,u]);const k=e=>{null===y.current&&(y.current=e.relatedTarget),w.current=!0};return(0,c.jsxs)(n.Fragment,{children:[(0,c.jsx)("div",{tabIndex:h?0:-1,onFocus:k,ref:g,"data-testid":"sentinelStart"}),n.cloneElement(t,{ref:S,onFocus:e=>{null===y.current&&(y.current=e.relatedTarget),w.current=!0,b.current=e.target;const r=t.props.onFocus;r&&r(e)}}),(0,c.jsx)("div",{tabIndex:h?0:-1,onFocus:k,ref:v,"data-testid":"sentinelEnd"})]})};var h=r(96039),m=r(59254),g=r(54265),v=r(18463),y=r(55158),b=r(59520),w=r(21538),x=r(12620),S=r(89222),A=r(52478);function k(e,t){t?e.setAttribute("aria-hidden","true"):e.removeAttribute("aria-hidden")}function C(e){return parseInt((0,S.A)(e).getComputedStyle(e).paddingRight,10)||0}function I(e,t,r,n,o){const a=[t,r,...n];[].forEach.call(e.children,(e=>{const t=!a.includes(e),r=!function(e){const t=["TEMPLATE","SCRIPT","STYLE","LINK","MAP","META","NOSCRIPT","PICTURE","COL","COLGROUP","PARAM","SLOT","SOURCE","TRACK"].includes(e.tagName),r="INPUT"===e.tagName&&"hidden"===e.getAttribute("type");return t||r}(e);t&&r&&k(e,o)}))}function E(e,t){let r=-1;return e.some(((e,n)=>!!t(e)&&(r=n,!0))),r}function D(e,t){const r=[],n=e.container;if(!t.disableScrollLock){if(function(e){const t=(0,l.A)(e);return t.body===e?(0,S.A)(e).innerWidth>t.documentElement.clientWidth:e.scrollHeight>e.clientHeight}(n)){const e=(0,A.A)((0,S.A)(n));r.push({value:n.style.paddingRight,property:"padding-right",el:n}),n.style.paddingRight=`${C(n)+e}px`;const t=(0,l.A)(n).querySelectorAll(".mui-fixed");[].forEach.call(t,(t=>{r.push({value:t.style.paddingRight,property:"padding-right",el:t}),t.style.paddingRight=`${C(t)+e}px`}))}let e;if(n.parentNode instanceof DocumentFragment)e=(0,l.A)(n).body;else{const t=n.parentElement,r=(0,S.A)(n);e="HTML"===t?.nodeName&&"scroll"===r.getComputedStyle(t).overflowY?t:n}r.push({value:e.style.overflow,property:"overflow",el:e},{value:e.style.overflowX,property:"overflow-x",el:e},{value:e.style.overflowY,property:"overflow-y",el:e}),e.style.overflow="hidden"}return()=>{r.forEach((e=>{let{value:t,el:r,property:n}=e;t?r.style.setProperty(n,t):r.style.removeProperty(n)}))}}const T=new class{constructor(){this.modals=[],this.containers=[]}add(e,t){let r=this.modals.indexOf(e);if(-1!==r)return r;r=this.modals.length,this.modals.push(e),e.modalRef&&k(e.modalRef,!1);const n=function(e){const t=[];return[].forEach.call(e.children,(e=>{"true"===e.getAttribute("aria-hidden")&&t.push(e)})),t}(t);I(t,e.mount,e.modalRef,n,!0);const o=E(this.containers,(e=>e.container===t));return-1!==o?(this.containers[o].modals.push(e),r):(this.containers.push({modals:[e],container:t,restore:null,hiddenSiblings:n}),r)}mount(e,t){const r=E(this.containers,(t=>t.modals.includes(e))),n=this.containers[r];n.restore||(n.restore=D(n,t))}remove(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];const r=this.modals.indexOf(e);if(-1===r)return r;const n=E(this.containers,(t=>t.modals.includes(e))),o=this.containers[n];if(o.modals.splice(o.modals.indexOf(e),1),this.modals.splice(r,1),0===o.modals.length)o.restore&&o.restore(),e.modalRef&&k(e.modalRef,t),I(o.container,e.mount,e.modalRef,o.hiddenSiblings,!1),this.containers.splice(n,1);else{const e=o.modals[o.modals.length-1];e.modalRef&&k(e.modalRef,!1)}return r}isTopModal(e){return this.modals.length>0&&this.modals[this.modals.length-1]===e}};const O=function(e){const{container:t,disableEscapeKeyDown:r=!1,disableScrollLock:o=!1,closeAfterTransition:a=!1,onTransitionEnter:s,onTransitionExited:c,children:u,onClose:d,open:f,rootRef:p}=e,h=n.useRef({}),m=n.useRef(null),g=n.useRef(null),v=(0,i.A)(g,p),[y,S]=n.useState(!f),A=function(e){return!!e&&e.props.hasOwnProperty("in")}(u);let C=!0;"false"!==e["aria-hidden"]&&!1!==e["aria-hidden"]||(C=!1);const I=()=>(h.current.modalRef=g.current,h.current.mount=m.current,h.current),E=()=>{T.mount(I(),{disableScrollLock:o}),g.current&&(g.current.scrollTop=0)},D=(0,b.A)((()=>{const e=function(e){return"function"===typeof e?e():e}(t)||(0,l.A)(m.current).body;T.add(I(),e),g.current&&E()})),O=()=>T.isTopModal(I()),M=(0,b.A)((e=>{m.current=e,e&&(f&&O()?E():g.current&&k(g.current,C))})),P=n.useCallback((()=>{T.remove(I(),C)}),[C]);n.useEffect((()=>()=>{P()}),[P]),n.useEffect((()=>{f?D():A&&a||P()}),[f,P,A,a,D]);const j=e=>t=>{e.onKeyDown?.(t),"Escape"===t.key&&229!==t.which&&O()&&(r||(t.stopPropagation(),d&&d(t,"escapeKeyDown")))},R=e=>t=>{e.onClick?.(t),t.target===t.currentTarget&&d&&d(t,"backdropClick")};return{getRootProps:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const r=(0,x.A)(e);delete r.onTransitionEnter,delete r.onTransitionExited;const n={...r,...t};return{role:"presentation",...n,onKeyDown:j(n),ref:v}},getBackdropProps:function(){const e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{"aria-hidden":!0,...e,onClick:R(e),open:f}},getTransitionProps:()=>({onEnter:(0,w.A)((()=>{S(!1),s&&s()}),u?.props.onEnter),onExited:(0,w.A)((()=>{S(!0),c&&c(),a&&P()}),u?.props.onExited)}),rootRef:v,portalRef:M,isTopModal:O,exited:y,hasTransition:A}};var M=r(45558),P=r(1614);function j(e){return(0,P.Ay)("MuiModal",e)}(0,M.A)("MuiModal",["root","hidden","backdrop"]);var R=r(24763),_=r(31506);const N=(0,m.Ay)("div",{name:"MuiModal",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,!r.open&&r.exited&&t.hidden]}})((0,g.A)((e=>{let{theme:t}=e;return{position:"fixed",zIndex:(t.vars||t).zIndex.modal,right:0,bottom:0,top:0,left:0,variants:[{props:e=>{let{ownerState:t}=e;return!t.open&&t.exited},style:{visibility:"hidden"}}]}}))),L=(0,m.Ay)(y.A,{name:"MuiModal",slot:"Backdrop",overridesResolver:(e,t)=>t.backdrop})({zIndex:-1}),U=n.forwardRef((function(e,t){const r=(0,v.b)({name:"MuiModal",props:e}),{BackdropComponent:i=L,BackdropProps:s,classes:l,className:u,closeAfterTransition:d=!1,children:f,container:m,component:g,components:y={},componentsProps:b={},disableAutoFocus:w=!1,disableEnforceFocus:x=!1,disableEscapeKeyDown:S=!1,disablePortal:A=!1,disableRestoreFocus:k=!1,disableScrollLock:C=!1,hideBackdrop:I=!1,keepMounted:E=!1,onBackdropClick:D,onClose:T,onTransitionEnter:M,onTransitionExited:P,open:U,slotProps:B={},slots:F={},theme:z,...W}=r,H={...r,closeAfterTransition:d,disableAutoFocus:w,disableEnforceFocus:x,disableEscapeKeyDown:S,disablePortal:A,disableRestoreFocus:k,disableScrollLock:C,hideBackdrop:I,keepMounted:E},{getRootProps:Y,getBackdropProps:V,getTransitionProps:G,portalRef:Z,isTopModal:Q,exited:K,hasTransition:X}=O({...H,rootRef:t}),J={...H,exited:K},$=(e=>{const{open:t,exited:r,classes:n}=e,o={root:["root",!t&&r&&"hidden"],backdrop:["backdrop"]};return(0,a.A)(o,j,n)})(J),q={};if(void 0===f.props.tabIndex&&(q.tabIndex="-1"),X){const{onEnter:e,onExited:t}=G();q.onEnter=e,q.onExited=t}const ee={...W,slots:{root:y.Root,backdrop:y.Backdrop,...F},slotProps:{...b,...B}},[te,re]=(0,R.A)("root",{elementType:N,externalForwardedProps:ee,getSlotProps:Y,additionalProps:{ref:t,as:g},ownerState:J,className:(0,o.A)(u,$?.root,!J.open&&J.exited&&$?.hidden)}),[ne,oe]=(0,R.A)("backdrop",{elementType:i,externalForwardedProps:ee,additionalProps:s,getSlotProps:e=>V({...e,onClick:t=>{D&&D(t),e?.onClick&&e.onClick(t)}}),className:(0,o.A)(s?.className,$?.backdrop),ownerState:J}),ae=(0,_.A)(s?.ref,oe.ref);return E||U||X&&!K?(0,c.jsx)(h.A,{ref:Z,container:m,disablePortal:A,children:(0,c.jsxs)(te,{...re,children:[!I&&i?(0,c.jsx)(ne,{...oe,ref:ae}):null,(0,c.jsx)(p,{disableEnforceFocus:x,disableAutoFocus:w,disableRestoreFocus:k,isEnabled:Q,open:U,children:n.cloneElement(f,q)})]})}):null}))},2660:(e,t,r)=>{"use strict";r.d(t,{A:()=>S});var n,o=r(9950),a=r(3484),i=r(19608),s=r(59254),l=r(54265),c=r(44414);const u=(0,s.Ay)("fieldset",{shouldForwardProp:i.A})({textAlign:"left",position:"absolute",bottom:0,right:0,top:-5,left:0,margin:0,padding:"0 8px",pointerEvents:"none",borderRadius:"inherit",borderStyle:"solid",borderWidth:1,overflow:"hidden",minWidth:"0%"}),d=(0,s.Ay)("legend",{shouldForwardProp:i.A})((0,l.A)((e=>{let{theme:t}=e;return{float:"unset",width:"auto",overflow:"hidden",variants:[{props:e=>{let{ownerState:t}=e;return!t.withLabel},style:{padding:0,lineHeight:"11px",transition:t.transitions.create("width",{duration:150,easing:t.transitions.easing.easeOut})}},{props:e=>{let{ownerState:t}=e;return t.withLabel},style:{display:"block",padding:0,height:11,fontSize:"0.75em",visibility:"hidden",maxWidth:.01,transition:t.transitions.create("max-width",{duration:50,easing:t.transitions.easing.easeOut}),whiteSpace:"nowrap","& > span":{paddingLeft:5,paddingRight:5,display:"inline-block",opacity:0,visibility:"visible"}}},{props:e=>{let{ownerState:t}=e;return t.withLabel&&t.notched},style:{maxWidth:"100%",transition:t.transitions.create("max-width",{duration:100,easing:t.transitions.easing.easeOut,delay:50})}}]}})));var f=r(39766),p=r(68624),h=r(51734),m=r(18463),g=r(79229),v=r(22302);const y=(0,s.Ay)(v.Sh,{shouldForwardProp:e=>(0,i.A)(e)||"classes"===e,name:"MuiOutlinedInput",slot:"Root",overridesResolver:v.WC})((0,l.A)((e=>{let{theme:t}=e;const r="light"===t.palette.mode?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)";return{position:"relative",borderRadius:(t.vars||t).shape.borderRadius,[`&:hover .${g.A.notchedOutline}`]:{borderColor:(t.vars||t).palette.text.primary},"@media (hover: none)":{[`&:hover .${g.A.notchedOutline}`]:{borderColor:t.vars?`rgba(${t.vars.palette.common.onBackgroundChannel} / 0.23)`:r}},[`&.${g.A.focused} .${g.A.notchedOutline}`]:{borderWidth:2},variants:[...Object.entries(t.palette).filter((0,h.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{[`&.${g.A.focused} .${g.A.notchedOutline}`]:{borderColor:(t.vars||t).palette[r].main}}}})),{props:{},style:{[`&.${g.A.error} .${g.A.notchedOutline}`]:{borderColor:(t.vars||t).palette.error.main},[`&.${g.A.disabled} .${g.A.notchedOutline}`]:{borderColor:(t.vars||t).palette.action.disabled}}},{props:e=>{let{ownerState:t}=e;return t.startAdornment},style:{paddingLeft:14}},{props:e=>{let{ownerState:t}=e;return t.endAdornment},style:{paddingRight:14}},{props:e=>{let{ownerState:t}=e;return t.multiline},style:{padding:"16.5px 14px"}},{props:e=>{let{ownerState:t,size:r}=e;return t.multiline&&"small"===r},style:{padding:"8.5px 14px"}}]}}))),b=(0,s.Ay)((function(e){const{children:t,classes:r,className:o,label:a,notched:i,...s}=e,l=null!=a&&""!==a,f={...e,notched:i,withLabel:l};return(0,c.jsx)(u,{"aria-hidden":!0,className:o,ownerState:f,...s,children:(0,c.jsx)(d,{ownerState:f,children:l?(0,c.jsx)("span",{children:a}):n||(n=(0,c.jsx)("span",{className:"notranslate",children:"\u200b"}))})})}),{name:"MuiOutlinedInput",slot:"NotchedOutline",overridesResolver:(e,t)=>t.notchedOutline})((0,l.A)((e=>{let{theme:t}=e;const r="light"===t.palette.mode?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)";return{borderColor:t.vars?`rgba(${t.vars.palette.common.onBackgroundChannel} / 0.23)`:r}}))),w=(0,s.Ay)(v.ck,{name:"MuiOutlinedInput",slot:"Input",overridesResolver:v.Oj})((0,l.A)((e=>{let{theme:t}=e;return{padding:"16.5px 14px",...!t.vars&&{"&:-webkit-autofill":{WebkitBoxShadow:"light"===t.palette.mode?null:"0 0 0 100px #266798 inset",WebkitTextFillColor:"light"===t.palette.mode?null:"#fff",caretColor:"light"===t.palette.mode?null:"#fff",borderRadius:"inherit"}},...t.vars&&{"&:-webkit-autofill":{borderRadius:"inherit"},[t.getColorSchemeSelector("dark")]:{"&:-webkit-autofill":{WebkitBoxShadow:"0 0 0 100px #266798 inset",WebkitTextFillColor:"#fff",caretColor:"#fff"}}},variants:[{props:{size:"small"},style:{padding:"8.5px 14px"}},{props:e=>{let{ownerState:t}=e;return t.multiline},style:{padding:0}},{props:e=>{let{ownerState:t}=e;return t.startAdornment},style:{paddingLeft:0}},{props:e=>{let{ownerState:t}=e;return t.endAdornment},style:{paddingRight:0}}]}}))),x=o.forwardRef((function(e,t){var r;const n=(0,m.b)({props:e,name:"MuiOutlinedInput"}),{components:i={},fullWidth:s=!1,inputComponent:l="input",label:u,multiline:d=!1,notched:h,slots:x={},type:S="text",...A}=n,k=(e=>{const{classes:t}=e,r=(0,a.A)({root:["root"],notchedOutline:["notchedOutline"],input:["input"]},g.v,t);return{...t,...r}})(n),C=(0,f.A)(),I=(0,p.A)({props:n,muiFormControl:C,states:["color","disabled","error","focused","hiddenLabel","size","required"]}),E={...n,color:I.color||"primary",disabled:I.disabled,error:I.error,focused:I.focused,formControl:C,fullWidth:s,hiddenLabel:I.hiddenLabel,multiline:d,size:I.size,type:S},D=x.root??i.Root??y,T=x.input??i.Input??w;return(0,c.jsx)(v.Ay,{slots:{root:D,input:T},renderSuffix:e=>(0,c.jsx)(b,{ownerState:E,className:k.notchedOutline,label:null!=u&&""!==u&&I.required?r||(r=(0,c.jsxs)(o.Fragment,{children:[u,"\u2009","*"]})):u,notched:"undefined"!==typeof h?h:Boolean(e.startAdornment||e.filled||e.focused)}),fullWidth:s,inputComponent:l,multiline:d,ref:t,type:S,...A,classes:{...k,notchedOutline:null}})}));x&&(x.muiName="Input");const S=x},79229:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,v:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiOutlinedInput",e)}const i={...r(63589).A,...(0,n.A)("MuiOutlinedInput",["root","notchedOutline","input"])}},35661:(e,t,r)=>{"use strict";r.d(t,{A:()=>m});var n=r(9950),o=r(72004),a=r(3484),i=r(39624),s=r(59254),l=r(14857),c=r(54265),u=r(18463),d=r(46909),f=r(65413),p=r(44414);const h=(0,s.Ay)("div",{name:"MuiPaper",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.variant],!r.square&&t.rounded,"elevation"===r.variant&&t[`elevation${r.elevation}`]]}})((0,c.A)((e=>{let{theme:t}=e;return{backgroundColor:(t.vars||t).palette.background.paper,color:(t.vars||t).palette.text.primary,transition:t.transitions.create("box-shadow"),variants:[{props:e=>{let{ownerState:t}=e;return!t.square},style:{borderRadius:t.shape.borderRadius}},{props:{variant:"outlined"},style:{border:`1px solid ${(t.vars||t).palette.divider}`}},{props:{variant:"elevation"},style:{boxShadow:"var(--Paper-shadow)",backgroundImage:"var(--Paper-overlay)"}}]}}))),m=n.forwardRef((function(e,t){const r=(0,u.b)({props:e,name:"MuiPaper"}),n=(0,l.A)(),{className:s,component:c="div",elevation:m=1,square:g=!1,variant:v="elevation",...y}=r,b={...r,component:c,elevation:m,square:g,variant:v},w=(e=>{const{square:t,elevation:r,variant:n,classes:o}=e,i={root:["root",n,!t&&"rounded","elevation"===n&&`elevation${r}`]};return(0,a.A)(i,f.j,o)})(b);return(0,p.jsx)(h,{as:c,ownerState:b,className:(0,o.A)(w.root,s),ref:t,...y,style:{..."elevation"===v&&{"--Paper-shadow":(n.vars||n).shadows[m],...n.vars&&{"--Paper-overlay":n.vars.overlays?.[m]},...!n.vars&&"dark"===n.palette.mode&&{"--Paper-overlay":`linear-gradient(${(0,i.X4)("#fff",(0,d.A)(m))}, ${(0,i.X4)("#fff",(0,d.A)(m))})`}},...y.style}})}))},61227:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getPaperUtilityClass:()=>o.j,paperClasses:()=>o.A});var n=r(35661),o=r(65413)},65413:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,j:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiPaper",e)}const i=(0,n.A)("MuiPaper",["root","rounded","outlined","elevation","elevation0","elevation1","elevation2","elevation3","elevation4","elevation5","elevation6","elevation7","elevation8","elevation9","elevation10","elevation11","elevation12","elevation13","elevation14","elevation15","elevation16","elevation17","elevation18","elevation19","elevation20","elevation21","elevation22","elevation23","elevation24"])},11001:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>C,Dy:()=>b,IJ:()=>k,fB:()=>w,yt:()=>A});var n=r(9950),o=r(72004),a=r(3484),i=r(19745),s=r(59254),l=r(18463),c=r(21209),u=r(27402),d=r(70827),f=r(31506),p=r(40165),h=r(66633),m=r(35661),g=r(86249),v=r(24763),y=r(44414);function b(e,t){let r=0;return"number"===typeof t?r=t:"center"===t?r=e.height/2:"bottom"===t&&(r=e.height),r}function w(e,t){let r=0;return"number"===typeof t?r=t:"center"===t?r=e.width/2:"right"===t&&(r=e.width),r}function x(e){return[e.horizontal,e.vertical].map((e=>"number"===typeof e?`${e}px`:e)).join(" ")}function S(e){return"function"===typeof e?e():e}const A=(0,s.Ay)(h.A,{name:"MuiPopover",slot:"Root",overridesResolver:(e,t)=>t.root})({}),k=(0,s.Ay)(m.A,{name:"MuiPopover",slot:"Paper",overridesResolver:(e,t)=>t.paper})({position:"absolute",overflowY:"auto",overflowX:"hidden",minWidth:16,minHeight:16,maxWidth:"calc(100% - 32px)",maxHeight:"calc(100% - 32px)",outline:0}),C=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiPopover"}),{action:s,anchorEl:h,anchorOrigin:m={vertical:"top",horizontal:"left"},anchorPosition:C,anchorReference:I="anchorEl",children:E,className:D,container:T,elevation:O=8,marginThreshold:M=16,open:P,PaperProps:j={},slots:R={},slotProps:_={},transformOrigin:N={vertical:"top",horizontal:"left"},TransitionComponent:L=p.A,transitionDuration:U="auto",TransitionProps:{onEntering:B,...F}={},disableScrollLock:z=!1,...W}=r,H=_?.paper??j,Y=n.useRef(),V={...r,anchorOrigin:m,anchorReference:I,elevation:O,marginThreshold:M,externalPaperSlotProps:H,transformOrigin:N,TransitionComponent:L,transitionDuration:U,TransitionProps:F},G=(e=>{const{classes:t}=e;return(0,a.A)({root:["root"],paper:["paper"]},g.K,t)})(V),Z=n.useCallback((()=>{if("anchorPosition"===I)return C;const e=S(h),t=(e&&1===e.nodeType?e:(0,u.A)(Y.current).body).getBoundingClientRect();return{top:t.top+b(t,m.vertical),left:t.left+w(t,m.horizontal)}}),[h,m.horizontal,m.vertical,C,I]),Q=n.useCallback((e=>({vertical:b(e,N.vertical),horizontal:w(e,N.horizontal)})),[N.horizontal,N.vertical]),K=n.useCallback((e=>{const t={width:e.offsetWidth,height:e.offsetHeight},r=Q(t);if("none"===I)return{top:null,left:null,transformOrigin:x(r)};const n=Z();let o=n.top-r.vertical,a=n.left-r.horizontal;const i=o+t.height,s=a+t.width,l=(0,d.A)(S(h)),c=l.innerHeight-M,u=l.innerWidth-M;if(null!==M&&o<M){const e=o-M;o-=e,r.vertical+=e}else if(null!==M&&i>c){const e=i-c;o-=e,r.vertical+=e}if(null!==M&&a<M){const e=a-M;a-=e,r.horizontal+=e}else if(s>u){const e=s-u;a-=e,r.horizontal+=e}return{top:`${Math.round(o)}px`,left:`${Math.round(a)}px`,transformOrigin:x(r)}}),[h,I,Z,Q,M]),[X,J]=n.useState(P),$=n.useCallback((()=>{const e=Y.current;if(!e)return;const t=K(e);null!==t.top&&e.style.setProperty("top",t.top),null!==t.left&&(e.style.left=t.left),e.style.transformOrigin=t.transformOrigin,J(!0)}),[K]);n.useEffect((()=>(z&&window.addEventListener("scroll",$),()=>window.removeEventListener("scroll",$))),[h,z,$]);n.useEffect((()=>{P&&$()})),n.useImperativeHandle(s,(()=>P?{updatePosition:()=>{$()}}:null),[P,$]),n.useEffect((()=>{if(!P)return;const e=(0,c.A)((()=>{$()})),t=(0,d.A)(h);return t.addEventListener("resize",e),()=>{e.clear(),t.removeEventListener("resize",e)}}),[h,P,$]);let q=U;"auto"!==U||L.muiSupportAuto||(q=void 0);const ee=T||(h?(0,u.A)(S(h)).body:void 0),te={slots:R,slotProps:{..._,paper:H}},[re,ne]=(0,v.A)("paper",{elementType:k,externalForwardedProps:te,additionalProps:{elevation:O,className:(0,o.A)(G.paper,H?.className),style:X?H.style:{...H.style,opacity:0}},ownerState:V}),[oe,{slotProps:ae,...ie}]=(0,v.A)("root",{elementType:A,externalForwardedProps:te,additionalProps:{slotProps:{backdrop:{invisible:!0}},container:ee,open:P},ownerState:V,className:(0,o.A)(G.root,D)}),se=(0,f.A)(Y,ne.ref);return(0,y.jsx)(oe,{...ie,...!(0,i.A)(oe)&&{slotProps:ae,disableScrollLock:z},...W,ref:t,children:(0,y.jsx)(L,{appear:!0,in:P,onEntering:(e,t)=>{B&&B(e,t),$()},onExited:()=>{J(!1)},timeout:q,...F,children:(0,y.jsx)(re,{...ne,ref:se,children:E})})})}))},41820:(e,t,r)=>{"use strict";r.r(t),r.d(t,{PopoverPaper:()=>n.IJ,PopoverRoot:()=>n.yt,default:()=>n.Ay,getOffsetLeft:()=>n.fB,getOffsetTop:()=>n.Dy,getPopoverUtilityClass:()=>o.K,popoverClasses:()=>o.A});var n=r(11001),o=r(86249)},86249:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,K:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiPopover",e)}const i=(0,n.A)("MuiPopover",["root","paper"])},1849:(e,t,r)=>{"use strict";r.d(t,{A:()=>Ne});var n=r(44730),o=r(9950),a=r(49456),i=r(95034),s=r(61262);function l(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function c(e){return e instanceof l(e).Element||e instanceof Element}function u(e){return e instanceof l(e).HTMLElement||e instanceof HTMLElement}function d(e){return"undefined"!==typeof ShadowRoot&&(e instanceof l(e).ShadowRoot||e instanceof ShadowRoot)}var f=Math.max,p=Math.min,h=Math.round;function m(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function g(){return!/^((?!chrome|android).)*safari/i.test(m())}function v(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!1);var n=e.getBoundingClientRect(),o=1,a=1;t&&u(e)&&(o=e.offsetWidth>0&&h(n.width)/e.offsetWidth||1,a=e.offsetHeight>0&&h(n.height)/e.offsetHeight||1);var i=(c(e)?l(e):window).visualViewport,s=!g()&&r,d=(n.left+(s&&i?i.offsetLeft:0))/o,f=(n.top+(s&&i?i.offsetTop:0))/a,p=n.width/o,m=n.height/a;return{width:p,height:m,top:f,right:d+p,bottom:f+m,left:d,x:d,y:f}}function y(e){var t=l(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function b(e){return e?(e.nodeName||"").toLowerCase():null}function w(e){return((c(e)?e.ownerDocument:e.document)||window.document).documentElement}function x(e){return v(w(e)).left+y(e).scrollLeft}function S(e){return l(e).getComputedStyle(e)}function A(e){var t=S(e),r=t.overflow,n=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+o+n)}function k(e,t,r){void 0===r&&(r=!1);var n=u(t),o=u(t)&&function(e){var t=e.getBoundingClientRect(),r=h(t.width)/e.offsetWidth||1,n=h(t.height)/e.offsetHeight||1;return 1!==r||1!==n}(t),a=w(t),i=v(e,o,r),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(n||!n&&!r)&&(("body"!==b(t)||A(a))&&(s=function(e){return e!==l(e)&&u(e)?{scrollLeft:(t=e).scrollLeft,scrollTop:t.scrollTop}:y(e);var t}(t)),u(t)?((c=v(t,!0)).x+=t.clientLeft,c.y+=t.clientTop):a&&(c.x=x(a))),{x:i.left+s.scrollLeft-c.x,y:i.top+s.scrollTop-c.y,width:i.width,height:i.height}}function C(e){var t=v(e),r=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-r)<=1&&(r=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:r,height:n}}function I(e){return"html"===b(e)?e:e.assignedSlot||e.parentNode||(d(e)?e.host:null)||w(e)}function E(e){return["html","body","#document"].indexOf(b(e))>=0?e.ownerDocument.body:u(e)&&A(e)?e:E(I(e))}function D(e,t){var r;void 0===t&&(t=[]);var n=E(e),o=n===(null==(r=e.ownerDocument)?void 0:r.body),a=l(n),i=o?[a].concat(a.visualViewport||[],A(n)?n:[]):n,s=t.concat(i);return o?s:s.concat(D(I(i)))}function T(e){return["table","td","th"].indexOf(b(e))>=0}function O(e){return u(e)&&"fixed"!==S(e).position?e.offsetParent:null}function M(e){for(var t=l(e),r=O(e);r&&T(r)&&"static"===S(r).position;)r=O(r);return r&&("html"===b(r)||"body"===b(r)&&"static"===S(r).position)?t:r||function(e){var t=/firefox/i.test(m());if(/Trident/i.test(m())&&u(e)&&"fixed"===S(e).position)return null;var r=I(e);for(d(r)&&(r=r.host);u(r)&&["html","body"].indexOf(b(r))<0;){var n=S(r);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||t&&"filter"===n.willChange||t&&n.filter&&"none"!==n.filter)return r;r=r.parentNode}return null}(e)||t}var P="top",j="bottom",R="right",_="left",N="auto",L=[P,j,R,_],U="start",B="end",F="viewport",z="popper",W=L.reduce((function(e,t){return e.concat([t+"-"+U,t+"-"+B])}),[]),H=[].concat(L,[N]).reduce((function(e,t){return e.concat([t,t+"-"+U,t+"-"+B])}),[]),Y=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function V(e){var t=new Map,r=new Set,n=[];function o(e){r.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!r.has(e)){var n=t.get(e);n&&o(n)}})),n.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){r.has(e.name)||o(e)})),n}function G(e){var t;return function(){return t||(t=new Promise((function(r){Promise.resolve().then((function(){t=void 0,r(e())}))}))),t}}var Z={placement:"bottom",modifiers:[],strategy:"absolute"};function Q(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return!t.some((function(e){return!(e&&"function"===typeof e.getBoundingClientRect)}))}function K(e){void 0===e&&(e={});var t=e,r=t.defaultModifiers,n=void 0===r?[]:r,o=t.defaultOptions,a=void 0===o?Z:o;return function(e,t,r){void 0===r&&(r=a);var o={placement:"bottom",orderedModifiers:[],options:Object.assign({},Z,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},i=[],s=!1,l={state:o,setOptions:function(r){var s="function"===typeof r?r(o.options):r;u(),o.options=Object.assign({},a,o.options,s),o.scrollParents={reference:c(e)?D(e):e.contextElement?D(e.contextElement):[],popper:D(t)};var d=function(e){var t=V(e);return Y.reduce((function(e,r){return e.concat(t.filter((function(e){return e.phase===r})))}),[])}(function(e){var t=e.reduce((function(e,t){var r=e[t.name];return e[t.name]=r?Object.assign({},r,t,{options:Object.assign({},r.options,t.options),data:Object.assign({},r.data,t.data)}):t,e}),{});return Object.keys(t).map((function(e){return t[e]}))}([].concat(n,o.options.modifiers)));return o.orderedModifiers=d.filter((function(e){return e.enabled})),o.orderedModifiers.forEach((function(e){var t=e.name,r=e.options,n=void 0===r?{}:r,a=e.effect;if("function"===typeof a){var s=a({state:o,name:t,instance:l,options:n}),c=function(){};i.push(s||c)}})),l.update()},forceUpdate:function(){if(!s){var e=o.elements,t=e.reference,r=e.popper;if(Q(t,r)){o.rects={reference:k(t,M(r),"fixed"===o.options.strategy),popper:C(r)},o.reset=!1,o.placement=o.options.placement,o.orderedModifiers.forEach((function(e){return o.modifiersData[e.name]=Object.assign({},e.data)}));for(var n=0;n<o.orderedModifiers.length;n++)if(!0!==o.reset){var a=o.orderedModifiers[n],i=a.fn,c=a.options,u=void 0===c?{}:c,d=a.name;"function"===typeof i&&(o=i({state:o,options:u,name:d,instance:l})||o)}else o.reset=!1,n=-1}}},update:G((function(){return new Promise((function(e){l.forceUpdate(),e(o)}))})),destroy:function(){u(),s=!0}};if(!Q(e,t))return l;function u(){i.forEach((function(e){return e()})),i=[]}return l.setOptions(r).then((function(e){!s&&r.onFirstUpdate&&r.onFirstUpdate(e)})),l}}var X={passive:!0};function J(e){return e.split("-")[0]}function $(e){return e.split("-")[1]}function q(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function ee(e){var t,r=e.reference,n=e.element,o=e.placement,a=o?J(o):null,i=o?$(o):null,s=r.x+r.width/2-n.width/2,l=r.y+r.height/2-n.height/2;switch(a){case P:t={x:s,y:r.y-n.height};break;case j:t={x:s,y:r.y+r.height};break;case R:t={x:r.x+r.width,y:l};break;case _:t={x:r.x-n.width,y:l};break;default:t={x:r.x,y:r.y}}var c=a?q(a):null;if(null!=c){var u="y"===c?"height":"width";switch(i){case U:t[c]=t[c]-(r[u]/2-n[u]/2);break;case B:t[c]=t[c]+(r[u]/2-n[u]/2)}}return t}var te={top:"auto",right:"auto",bottom:"auto",left:"auto"};function re(e){var t,r=e.popper,n=e.popperRect,o=e.placement,a=e.variation,i=e.offsets,s=e.position,c=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,f=e.isFixed,p=i.x,m=void 0===p?0:p,g=i.y,v=void 0===g?0:g,y="function"===typeof d?d({x:m,y:v}):{x:m,y:v};m=y.x,v=y.y;var b=i.hasOwnProperty("x"),x=i.hasOwnProperty("y"),A=_,k=P,C=window;if(u){var I=M(r),E="clientHeight",D="clientWidth";if(I===l(r)&&"static"!==S(I=w(r)).position&&"absolute"===s&&(E="scrollHeight",D="scrollWidth"),o===P||(o===_||o===R)&&a===B)k=j,v-=(f&&I===C&&C.visualViewport?C.visualViewport.height:I[E])-n.height,v*=c?1:-1;if(o===_||(o===P||o===j)&&a===B)A=R,m-=(f&&I===C&&C.visualViewport?C.visualViewport.width:I[D])-n.width,m*=c?1:-1}var T,O=Object.assign({position:s},u&&te),N=!0===d?function(e,t){var r=e.x,n=e.y,o=t.devicePixelRatio||1;return{x:h(r*o)/o||0,y:h(n*o)/o||0}}({x:m,y:v},l(r)):{x:m,y:v};return m=N.x,v=N.y,c?Object.assign({},O,((T={})[k]=x?"0":"",T[A]=b?"0":"",T.transform=(C.devicePixelRatio||1)<=1?"translate("+m+"px, "+v+"px)":"translate3d("+m+"px, "+v+"px, 0)",T)):Object.assign({},O,((t={})[k]=x?v+"px":"",t[A]=b?m+"px":"",t.transform="",t))}const ne={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,r=e.options,n=e.name,o=r.offset,a=void 0===o?[0,0]:o,i=H.reduce((function(e,r){return e[r]=function(e,t,r){var n=J(e),o=[_,P].indexOf(n)>=0?-1:1,a="function"===typeof r?r(Object.assign({},t,{placement:e})):r,i=a[0],s=a[1];return i=i||0,s=(s||0)*o,[_,R].indexOf(n)>=0?{x:s,y:i}:{x:i,y:s}}(r,t.rects,a),e}),{}),s=i[t.placement],l=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[n]=i}};var oe={left:"right",right:"left",bottom:"top",top:"bottom"};function ae(e){return e.replace(/left|right|bottom|top/g,(function(e){return oe[e]}))}var ie={start:"end",end:"start"};function se(e){return e.replace(/start|end/g,(function(e){return ie[e]}))}function le(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&d(r)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function ce(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function ue(e,t,r){return t===F?ce(function(e,t){var r=l(e),n=w(e),o=r.visualViewport,a=n.clientWidth,i=n.clientHeight,s=0,c=0;if(o){a=o.width,i=o.height;var u=g();(u||!u&&"fixed"===t)&&(s=o.offsetLeft,c=o.offsetTop)}return{width:a,height:i,x:s+x(e),y:c}}(e,r)):c(t)?function(e,t){var r=v(e,!1,"fixed"===t);return r.top=r.top+e.clientTop,r.left=r.left+e.clientLeft,r.bottom=r.top+e.clientHeight,r.right=r.left+e.clientWidth,r.width=e.clientWidth,r.height=e.clientHeight,r.x=r.left,r.y=r.top,r}(t,r):ce(function(e){var t,r=w(e),n=y(e),o=null==(t=e.ownerDocument)?void 0:t.body,a=f(r.scrollWidth,r.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),i=f(r.scrollHeight,r.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),s=-n.scrollLeft+x(e),l=-n.scrollTop;return"rtl"===S(o||r).direction&&(s+=f(r.clientWidth,o?o.clientWidth:0)-a),{width:a,height:i,x:s,y:l}}(w(e)))}function de(e,t,r,n){var o="clippingParents"===t?function(e){var t=D(I(e)),r=["absolute","fixed"].indexOf(S(e).position)>=0&&u(e)?M(e):e;return c(r)?t.filter((function(e){return c(e)&&le(e,r)&&"body"!==b(e)})):[]}(e):[].concat(t),a=[].concat(o,[r]),i=a[0],s=a.reduce((function(t,r){var o=ue(e,r,n);return t.top=f(o.top,t.top),t.right=p(o.right,t.right),t.bottom=p(o.bottom,t.bottom),t.left=f(o.left,t.left),t}),ue(e,i,n));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function fe(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function pe(e,t){return t.reduce((function(t,r){return t[r]=e,t}),{})}function he(e,t){void 0===t&&(t={});var r=t,n=r.placement,o=void 0===n?e.placement:n,a=r.strategy,i=void 0===a?e.strategy:a,s=r.boundary,l=void 0===s?"clippingParents":s,u=r.rootBoundary,d=void 0===u?F:u,f=r.elementContext,p=void 0===f?z:f,h=r.altBoundary,m=void 0!==h&&h,g=r.padding,y=void 0===g?0:g,b=fe("number"!==typeof y?y:pe(y,L)),x=p===z?"reference":z,S=e.rects.popper,A=e.elements[m?x:p],k=de(c(A)?A:A.contextElement||w(e.elements.popper),l,d,i),C=v(e.elements.reference),I=ee({reference:C,element:S,strategy:"absolute",placement:o}),E=ce(Object.assign({},S,I)),D=p===z?E:C,T={top:k.top-D.top+b.top,bottom:D.bottom-k.bottom+b.bottom,left:k.left-D.left+b.left,right:D.right-k.right+b.right},O=e.modifiersData.offset;if(p===z&&O){var M=O[o];Object.keys(T).forEach((function(e){var t=[R,j].indexOf(e)>=0?1:-1,r=[P,j].indexOf(e)>=0?"y":"x";T[e]+=M[r]*t}))}return T}function me(e,t,r){return f(e,p(t,r))}const ge={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name,o=r.mainAxis,a=void 0===o||o,i=r.altAxis,s=void 0!==i&&i,l=r.boundary,c=r.rootBoundary,u=r.altBoundary,d=r.padding,h=r.tether,m=void 0===h||h,g=r.tetherOffset,v=void 0===g?0:g,y=he(t,{boundary:l,rootBoundary:c,padding:d,altBoundary:u}),b=J(t.placement),w=$(t.placement),x=!w,S=q(b),A="x"===S?"y":"x",k=t.modifiersData.popperOffsets,I=t.rects.reference,E=t.rects.popper,D="function"===typeof v?v(Object.assign({},t.rects,{placement:t.placement})):v,T="number"===typeof D?{mainAxis:D,altAxis:D}:Object.assign({mainAxis:0,altAxis:0},D),O=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,N={x:0,y:0};if(k){if(a){var L,B="y"===S?P:_,F="y"===S?j:R,z="y"===S?"height":"width",W=k[S],H=W+y[B],Y=W-y[F],V=m?-E[z]/2:0,G=w===U?I[z]:E[z],Z=w===U?-E[z]:-I[z],Q=t.elements.arrow,K=m&&Q?C(Q):{width:0,height:0},X=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},ee=X[B],te=X[F],re=me(0,I[z],K[z]),ne=x?I[z]/2-V-re-ee-T.mainAxis:G-re-ee-T.mainAxis,oe=x?-I[z]/2+V+re+te+T.mainAxis:Z+re+te+T.mainAxis,ae=t.elements.arrow&&M(t.elements.arrow),ie=ae?"y"===S?ae.clientTop||0:ae.clientLeft||0:0,se=null!=(L=null==O?void 0:O[S])?L:0,le=W+oe-se,ce=me(m?p(H,W+ne-se-ie):H,W,m?f(Y,le):Y);k[S]=ce,N[S]=ce-W}if(s){var ue,de="x"===S?P:_,fe="x"===S?j:R,pe=k[A],ge="y"===A?"height":"width",ve=pe+y[de],ye=pe-y[fe],be=-1!==[P,_].indexOf(b),we=null!=(ue=null==O?void 0:O[A])?ue:0,xe=be?ve:pe-I[ge]-E[ge]-we+T.altAxis,Se=be?pe+I[ge]+E[ge]-we-T.altAxis:ye,Ae=m&&be?function(e,t,r){var n=me(e,t,r);return n>r?r:n}(xe,pe,Se):me(m?xe:ve,pe,m?Se:ye);k[A]=Ae,N[A]=Ae-pe}t.modifiersData[n]=N}},requiresIfExists:["offset"]};const ve={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,r=e.state,n=e.name,o=e.options,a=r.elements.arrow,i=r.modifiersData.popperOffsets,s=J(r.placement),l=q(s),c=[_,R].indexOf(s)>=0?"height":"width";if(a&&i){var u=function(e,t){return fe("number"!==typeof(e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:pe(e,L))}(o.padding,r),d=C(a),f="y"===l?P:_,p="y"===l?j:R,h=r.rects.reference[c]+r.rects.reference[l]-i[l]-r.rects.popper[c],m=i[l]-r.rects.reference[l],g=M(a),v=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,y=h/2-m/2,b=u[f],w=v-d[c]-u[p],x=v/2-d[c]/2+y,S=me(b,x,w),A=l;r.modifiersData[n]=((t={})[A]=S,t.centerOffset=S-x,t)}},effect:function(e){var t=e.state,r=e.options.element,n=void 0===r?"[data-popper-arrow]":r;null!=n&&("string"!==typeof n||(n=t.elements.popper.querySelector(n)))&&le(t.elements.popper,n)&&(t.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ye(e,t,r){return void 0===r&&(r={x:0,y:0}),{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}function be(e){return[P,R,j,_].some((function(t){return e[t]>=0}))}var we=K({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,r=e.instance,n=e.options,o=n.scroll,a=void 0===o||o,i=n.resize,s=void 0===i||i,c=l(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return a&&u.forEach((function(e){e.addEventListener("scroll",r.update,X)})),s&&c.addEventListener("resize",r.update,X),function(){a&&u.forEach((function(e){e.removeEventListener("scroll",r.update,X)})),s&&c.removeEventListener("resize",r.update,X)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,r=e.name;t.modifiersData[r]=ee({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,r=e.options,n=r.gpuAcceleration,o=void 0===n||n,a=r.adaptive,i=void 0===a||a,s=r.roundOffsets,l=void 0===s||s,c={placement:J(t.placement),variation:$(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,re(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:i,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,re(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},{name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var r=t.styles[e]||{},n=t.attributes[e]||{},o=t.elements[e];u(o)&&b(o)&&(Object.assign(o.style,r),Object.keys(n).forEach((function(e){var t=n[e];!1===t?o.removeAttribute(e):o.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,r.popper),t.styles=r,t.elements.arrow&&Object.assign(t.elements.arrow.style,r.arrow),function(){Object.keys(t.elements).forEach((function(e){var n=t.elements[e],o=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:r[e]).reduce((function(e,t){return e[t]="",e}),{});u(n)&&b(n)&&(Object.assign(n.style,a),Object.keys(o).forEach((function(e){n.removeAttribute(e)})))}))}},requires:["computeStyles"]},ne,{name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name;if(!t.modifiersData[n]._skip){for(var o=r.mainAxis,a=void 0===o||o,i=r.altAxis,s=void 0===i||i,l=r.fallbackPlacements,c=r.padding,u=r.boundary,d=r.rootBoundary,f=r.altBoundary,p=r.flipVariations,h=void 0===p||p,m=r.allowedAutoPlacements,g=t.options.placement,v=J(g),y=l||(v===g||!h?[ae(g)]:function(e){if(J(e)===N)return[];var t=ae(e);return[se(e),t,se(t)]}(g)),b=[g].concat(y).reduce((function(e,r){return e.concat(J(r)===N?function(e,t){void 0===t&&(t={});var r=t,n=r.placement,o=r.boundary,a=r.rootBoundary,i=r.padding,s=r.flipVariations,l=r.allowedAutoPlacements,c=void 0===l?H:l,u=$(n),d=u?s?W:W.filter((function(e){return $(e)===u})):L,f=d.filter((function(e){return c.indexOf(e)>=0}));0===f.length&&(f=d);var p=f.reduce((function(t,r){return t[r]=he(e,{placement:r,boundary:o,rootBoundary:a,padding:i})[J(r)],t}),{});return Object.keys(p).sort((function(e,t){return p[e]-p[t]}))}(t,{placement:r,boundary:u,rootBoundary:d,padding:c,flipVariations:h,allowedAutoPlacements:m}):r)}),[]),w=t.rects.reference,x=t.rects.popper,S=new Map,A=!0,k=b[0],C=0;C<b.length;C++){var I=b[C],E=J(I),D=$(I)===U,T=[P,j].indexOf(E)>=0,O=T?"width":"height",M=he(t,{placement:I,boundary:u,rootBoundary:d,altBoundary:f,padding:c}),B=T?D?R:_:D?j:P;w[O]>x[O]&&(B=ae(B));var F=ae(B),z=[];if(a&&z.push(M[E]<=0),s&&z.push(M[B]<=0,M[F]<=0),z.every((function(e){return e}))){k=I,A=!1;break}S.set(I,z)}if(A)for(var Y=function(e){var t=b.find((function(t){var r=S.get(t);if(r)return r.slice(0,e).every((function(e){return e}))}));if(t)return k=t,"break"},V=h?3:1;V>0;V--){if("break"===Y(V))break}t.placement!==k&&(t.modifiersData[n]._skip=!0,t.placement=k,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}},ge,ve,{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,r=e.name,n=t.rects.reference,o=t.rects.popper,a=t.modifiersData.preventOverflow,i=he(t,{elementContext:"reference"}),s=he(t,{altBoundary:!0}),l=ye(i,n),c=ye(s,o,a),u=be(l),d=be(c);t.modifiersData[r]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}}]}),xe=r(3484),Se=r(70134),Ae=r(96039),ke=r(45558),Ce=r(1614);function Ie(e){return(0,Ce.Ay)("MuiPopper",e)}(0,ke.A)("MuiPopper",["root"]);var Ee=r(44414);function De(e){return"function"===typeof e?e():e}function Te(e){return void 0!==e.nodeType}const Oe={},Me=o.forwardRef((function(e,t){const{anchorEl:r,children:n,direction:s,disablePortal:l,modifiers:c,open:u,placement:d,popperOptions:f,popperRef:p,slotProps:h={},slots:m={},TransitionProps:g,ownerState:v,...y}=e,b=o.useRef(null),w=(0,a.A)(b,t),x=o.useRef(null),S=(0,a.A)(x,p),A=o.useRef(S);(0,i.A)((()=>{A.current=S}),[S]),o.useImperativeHandle(p,(()=>x.current),[]);const k=function(e,t){if("ltr"===t)return e;switch(e){case"bottom-end":return"bottom-start";case"bottom-start":return"bottom-end";case"top-end":return"top-start";case"top-start":return"top-end";default:return e}}(d,s),[C,I]=o.useState(k),[E,D]=o.useState(De(r));o.useEffect((()=>{x.current&&x.current.forceUpdate()})),o.useEffect((()=>{r&&D(De(r))}),[r]),(0,i.A)((()=>{if(!E||!u)return;let e=[{name:"preventOverflow",options:{altBoundary:l}},{name:"flip",options:{altBoundary:l}},{name:"onUpdate",enabled:!0,phase:"afterWrite",fn:e=>{let{state:t}=e;I(t.placement)}}];null!=c&&(e=e.concat(c)),f&&null!=f.modifiers&&(e=e.concat(f.modifiers));const t=we(E,b.current,{placement:k,...f,modifiers:e});return A.current(t),()=>{t.destroy(),A.current(null)}}),[E,l,c,u,f,k]);const T={placement:C};null!==g&&(T.TransitionProps=g);const O=(e=>{const{classes:t}=e;return(0,xe.A)({root:["root"]},Ie,t)})(e),M=m.root??"div",P=(0,Se.A)({elementType:M,externalSlotProps:h.root,externalForwardedProps:y,additionalProps:{role:"tooltip",ref:w},ownerState:e,className:O.root});return(0,Ee.jsx)(M,{...P,children:"function"===typeof n?n(T):n})})),Pe=o.forwardRef((function(e,t){const{anchorEl:r,children:n,container:a,direction:i="ltr",disablePortal:l=!1,keepMounted:c=!1,modifiers:u,open:d,placement:f="bottom",popperOptions:p=Oe,popperRef:h,style:m,transition:g=!1,slotProps:v={},slots:y={},...b}=e,[w,x]=o.useState(!0);if(!c&&!d&&(!g||w))return null;let S;if(a)S=a;else if(r){const e=De(r);S=e&&Te(e)?(0,s.A)(e).body:(0,s.A)(null).body}const A=d||!c||g&&!w?void 0:"none",k=g?{in:d,onEnter:()=>{x(!1)},onExited:()=>{x(!0)}}:void 0;return(0,Ee.jsx)(Ae.A,{disablePortal:l,container:S,children:(0,Ee.jsx)(Me,{anchorEl:r,direction:i,disablePortal:l,modifiers:u,ref:t,open:g?!w:d,placement:f,popperOptions:p,popperRef:h,slotProps:v,slots:y,...b,style:{position:"fixed",top:0,left:0,display:A,...m},TransitionProps:k,children:n})})}));var je=r(59254),Re=r(18463);const _e=(0,je.Ay)(Pe,{name:"MuiPopper",slot:"Root",overridesResolver:(e,t)=>t.root})({}),Ne=o.forwardRef((function(e,t){const r=(0,n.I)(),o=(0,Re.b)({props:e,name:"MuiPopper"}),{anchorEl:a,component:i,components:s,componentsProps:l,container:c,disablePortal:u,keepMounted:d,modifiers:f,open:p,placement:h,popperOptions:m,popperRef:g,transition:v,slots:y,slotProps:b,...w}=o,x=y?.root??s?.Root,S={anchorEl:a,container:c,disablePortal:u,keepMounted:d,modifiers:f,open:p,placement:h,popperOptions:m,popperRef:g,transition:v,...w};return(0,Ee.jsx)(_e,{as:i,direction:r?"rtl":"ltr",slots:{root:x},slotProps:b??l,...S,ref:t})}))},96039:(e,t,r)=>{"use strict";r.d(t,{A:()=>u});var n=r(9950),o=r(17119),a=r(49456),i=r(69688),s=r(95034),l=r(53614),c=r(44414);const u=n.forwardRef((function(e,t){const{children:r,container:u,disablePortal:d=!1}=e,[f,p]=n.useState(null),h=(0,a.A)(n.isValidElement(r)?(0,i.A)(r):null,t);if((0,s.A)((()=>{d||p(function(e){return"function"===typeof e?e():e}(u)||document.body)}),[u,d]),(0,s.A)((()=>{if(f&&!d)return(0,l.A)(t,f),()=>{(0,l.A)(t,null)}}),[t,f,d]),d){if(n.isValidElement(r)){const e={ref:h};return n.cloneElement(r,e)}return(0,c.jsx)(n.Fragment,{children:r})}return(0,c.jsx)(n.Fragment,{children:f?o.createPortal(r,f):f})}))},66553:(e,t,r)=>{"use strict";r.d(t,{A:()=>K});var n=r(9950),o=r(72004),a=r(64750),i=r(69688),s=r(37750),l=(r(26429),r(3484)),c=r(95014),u=r(27402),d=r(89548),f=r(97591),p=r(45558),h=r(1614);function m(e){return(0,h.Ay)("MuiNativeSelect",e)}const g=(0,p.A)("MuiNativeSelect",["root","select","multiple","filled","outlined","standard","disabled","icon","iconOpen","iconFilled","iconOutlined","iconStandard","nativeInput","error"]);var v=r(59254),y=r(19608),b=r(44414);const w=(0,v.Ay)("select")((e=>{let{theme:t}=e;return{MozAppearance:"none",WebkitAppearance:"none",userSelect:"none",borderRadius:0,cursor:"pointer","&:focus":{borderRadius:0},[`&.${g.disabled}`]:{cursor:"default"},"&[multiple]":{height:"auto"},"&:not([multiple]) option, &:not([multiple]) optgroup":{backgroundColor:(t.vars||t).palette.background.paper},variants:[{props:e=>{let{ownerState:t}=e;return"filled"!==t.variant&&"outlined"!==t.variant},style:{"&&&":{paddingRight:24,minWidth:16}}},{props:{variant:"filled"},style:{"&&&":{paddingRight:32}}},{props:{variant:"outlined"},style:{borderRadius:(t.vars||t).shape.borderRadius,"&:focus":{borderRadius:(t.vars||t).shape.borderRadius},"&&&":{paddingRight:32}}}]}})),x=(0,v.Ay)(w,{name:"MuiNativeSelect",slot:"Select",shouldForwardProp:y.A,overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.select,t[r.variant],r.error&&t.error,{[`&.${g.multiple}`]:t.multiple}]}})({}),S=(0,v.Ay)("svg")((e=>{let{theme:t}=e;return{position:"absolute",right:0,top:"calc(50% - .5em)",pointerEvents:"none",color:(t.vars||t).palette.action.active,[`&.${g.disabled}`]:{color:(t.vars||t).palette.action.disabled},variants:[{props:e=>{let{ownerState:t}=e;return t.open},style:{transform:"rotate(180deg)"}},{props:{variant:"filled"},style:{right:7}},{props:{variant:"outlined"},style:{right:7}}]}})),A=(0,v.Ay)(S,{name:"MuiNativeSelect",slot:"Icon",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.icon,r.variant&&t[`icon${(0,d.A)(r.variant)}`],r.open&&t.iconOpen]}})({}),k=n.forwardRef((function(e,t){const{className:r,disabled:a,error:i,IconComponent:s,inputRef:c,variant:u="standard",...f}=e,p={...e,disabled:a,variant:u,error:i},h=(e=>{const{classes:t,variant:r,disabled:n,multiple:o,open:a,error:i}=e,s={select:["select",r,n&&"disabled",o&&"multiple",i&&"error"],icon:["icon",`icon${(0,d.A)(r)}`,a&&"iconOpen",n&&"disabled"]};return(0,l.A)(s,m,t)})(p);return(0,b.jsxs)(n.Fragment,{children:[(0,b.jsx)(x,{ownerState:p,className:(0,o.A)(h.select,r),disabled:a,ref:c||t,...f}),e.multiple?null:(0,b.jsx)(A,{as:s,ownerState:p,className:h.icon})]})}));var C,I=r(43317),E=r(61960),D=r(31506),T=r(48733),O=r(19103);const M=(0,v.Ay)(w,{name:"MuiSelect",slot:"Select",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[{[`&.${O.A.select}`]:t.select},{[`&.${O.A.select}`]:t[r.variant]},{[`&.${O.A.error}`]:t.error},{[`&.${O.A.multiple}`]:t.multiple}]}})({[`&.${O.A.select}`]:{height:"auto",minHeight:"1.4375em",textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden"}}),P=(0,v.Ay)(S,{name:"MuiSelect",slot:"Icon",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.icon,r.variant&&t[`icon${(0,d.A)(r.variant)}`],r.open&&t.iconOpen]}})({}),j=(0,v.Ay)("input",{shouldForwardProp:e=>(0,E.A)(e)&&"classes"!==e,name:"MuiSelect",slot:"NativeInput",overridesResolver:(e,t)=>t.nativeInput})({bottom:0,left:0,position:"absolute",opacity:0,pointerEvents:"none",width:"100%",boxSizing:"border-box"});function R(e,t){return"object"===typeof t&&null!==t?e===t:String(e)===String(t)}function _(e){return null==e||"string"===typeof e&&!e.trim()}const N=n.forwardRef((function(e,t){const{"aria-describedby":r,"aria-label":a,autoFocus:i,autoWidth:p,children:h,className:m,defaultOpen:g,defaultValue:v,disabled:y,displayEmpty:w,error:x=!1,IconComponent:S,inputRef:A,labelId:k,MenuProps:E={},multiple:N,name:L,onBlur:U,onChange:B,onClose:F,onFocus:z,onOpen:W,open:H,readOnly:Y,renderValue:V,SelectDisplayProps:G={},tabIndex:Z,type:Q,value:K,variant:X="standard",...J}=e,[$,q]=(0,T.A)({controlled:K,default:v,name:"Select"}),[ee,te]=(0,T.A)({controlled:H,default:g,name:"Select"}),re=n.useRef(null),ne=n.useRef(null),[oe,ae]=n.useState(null),{current:ie}=n.useRef(null!=H),[se,le]=n.useState(),ce=(0,D.A)(t,A),ue=n.useCallback((e=>{ne.current=e,e&&ae(e)}),[]),de=oe?.parentNode;n.useImperativeHandle(ce,(()=>({focus:()=>{ne.current.focus()},node:re.current,value:$})),[$]),n.useEffect((()=>{g&&ee&&oe&&!ie&&(le(p?null:de.clientWidth),ne.current.focus())}),[oe,p]),n.useEffect((()=>{i&&ne.current.focus()}),[i]),n.useEffect((()=>{if(!k)return;const e=(0,u.A)(ne.current).getElementById(k);if(e){const t=()=>{getSelection().isCollapsed&&ne.current.focus()};return e.addEventListener("click",t),()=>{e.removeEventListener("click",t)}}}),[k]);const fe=(e,t)=>{e?W&&W(t):F&&F(t),ie||(le(p?null:de.clientWidth),te(e))},pe=n.Children.toArray(h),he=e=>t=>{let r;if(t.currentTarget.hasAttribute("tabindex")){if(N){r=Array.isArray($)?$.slice():[];const t=$.indexOf(e.props.value);-1===t?r.push(e.props.value):r.splice(t,1)}else r=e.props.value;if(e.props.onClick&&e.props.onClick(t),$!==r&&(q(r),B)){const n=t.nativeEvent||t,o=new n.constructor(n.type,n);Object.defineProperty(o,"target",{writable:!0,value:{value:r,name:L}}),B(o,e)}N||fe(!1,t)}},me=null!==oe&&ee;let ge,ve;delete J["aria-invalid"];const ye=[];let be=!1,we=!1;((0,I.lq)({value:$})||w)&&(V?ge=V($):be=!0);const xe=pe.map((e=>{if(!n.isValidElement(e))return null;let t;if(N){if(!Array.isArray($))throw new Error((0,s.A)(2));t=$.some((t=>R(t,e.props.value))),t&&be&&ye.push(e.props.children)}else t=R($,e.props.value),t&&be&&(ve=e.props.children);return t&&(we=!0),n.cloneElement(e,{"aria-selected":t?"true":"false",onClick:he(e),onKeyUp:t=>{" "===t.key&&t.preventDefault(),e.props.onKeyUp&&e.props.onKeyUp(t)},role:"option",selected:t,value:void 0,"data-value":e.props.value})}));be&&(ge=N?0===ye.length?null:ye.reduce(((e,t,r)=>(e.push(t),r<ye.length-1&&e.push(", "),e)),[]):ve);let Se,Ae=se;!p&&ie&&oe&&(Ae=de.clientWidth),Se="undefined"!==typeof Z?Z:y?null:0;const ke=G.id||(L?`mui-component-select-${L}`:void 0),Ce={...e,variant:X,value:$,open:me,error:x},Ie=(e=>{const{classes:t,variant:r,disabled:n,multiple:o,open:a,error:i}=e,s={select:["select",r,n&&"disabled",o&&"multiple",i&&"error"],icon:["icon",`icon${(0,d.A)(r)}`,a&&"iconOpen",n&&"disabled"],nativeInput:["nativeInput"]};return(0,l.A)(s,O.T,t)})(Ce),Ee={...E.PaperProps,...E.slotProps?.paper},De=(0,c.A)();return(0,b.jsxs)(n.Fragment,{children:[(0,b.jsx)(M,{as:"div",ref:ue,tabIndex:Se,role:"combobox","aria-controls":De,"aria-disabled":y?"true":void 0,"aria-expanded":me?"true":"false","aria-haspopup":"listbox","aria-label":a,"aria-labelledby":[k,ke].filter(Boolean).join(" ")||void 0,"aria-describedby":r,onKeyDown:e=>{if(!Y){[" ","ArrowUp","ArrowDown","Enter"].includes(e.key)&&(e.preventDefault(),fe(!0,e))}},onMouseDown:y||Y?null:e=>{0===e.button&&(e.preventDefault(),ne.current.focus(),fe(!0,e))},onBlur:e=>{!me&&U&&(Object.defineProperty(e,"target",{writable:!0,value:{value:$,name:L}}),U(e))},onFocus:z,...G,ownerState:Ce,className:(0,o.A)(G.className,Ie.select,m),id:ke,children:_(ge)?C||(C=(0,b.jsx)("span",{className:"notranslate",children:"\u200b"})):ge}),(0,b.jsx)(j,{"aria-invalid":x,value:Array.isArray($)?$.join(","):$,name:L,ref:re,"aria-hidden":!0,onChange:e=>{const t=pe.find((t=>t.props.value===e.target.value));void 0!==t&&(q(t.props.value),B&&B(e,t))},tabIndex:-1,disabled:y,className:Ie.nativeInput,autoFocus:i,...J,ownerState:Ce}),(0,b.jsx)(P,{as:S,className:Ie.icon,ownerState:Ce}),(0,b.jsx)(f.A,{id:`menu-${L||""}`,anchorEl:de,open:me,onClose:e=>{fe(!1,e)},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},...E,MenuListProps:{"aria-labelledby":k,role:"listbox","aria-multiselectable":N?"true":void 0,disableListWrap:!0,id:De,...E.MenuListProps},slotProps:{...E.slotProps,paper:{...Ee,style:{minWidth:Ae,...null!=Ee?Ee.style:null}}},children:xe})]})}));var L=r(68624),U=r(39766),B=r(63976),F=r(82321),z=r(85685),W=r(2660),H=r(18463);const Y={name:"MuiSelect",overridesResolver:(e,t)=>t.root,shouldForwardProp:e=>(0,y.A)(e)&&"variant"!==e,slot:"Root"},V=(0,v.Ay)(F.A,Y)(""),G=(0,v.Ay)(W.A,Y)(""),Z=(0,v.Ay)(z.A,Y)(""),Q=n.forwardRef((function(e,t){const r=(0,H.b)({name:"MuiSelect",props:e}),{autoWidth:s=!1,children:l,classes:c={},className:u,defaultOpen:d=!1,displayEmpty:f=!1,IconComponent:p=B.A,id:h,input:m,inputProps:g,label:v,labelId:y,MenuProps:w,multiple:x=!1,native:S=!1,onClose:A,onOpen:C,open:I,renderValue:E,SelectDisplayProps:T,variant:O="outlined",...M}=r,P=S?k:N,j=(0,U.A)(),R=(0,L.A)({props:r,muiFormControl:j,states:["variant","error"]}),_=R.variant||O,F={...r,variant:_,classes:c},z=(e=>{const{classes:t}=e;return t})(F),{root:W,...Y}=z,Q=m||{standard:(0,b.jsx)(V,{ownerState:F}),outlined:(0,b.jsx)(G,{label:v,ownerState:F}),filled:(0,b.jsx)(Z,{ownerState:F})}[_],K=(0,D.A)(t,(0,i.A)(Q));return(0,b.jsx)(n.Fragment,{children:n.cloneElement(Q,{inputComponent:P,inputProps:{children:l,error:R.error,IconComponent:p,variant:_,type:void 0,multiple:x,...S?{id:h}:{autoWidth:s,defaultOpen:d,displayEmpty:f,labelId:y,MenuProps:w,onClose:A,onOpen:C,open:I,renderValue:E,SelectDisplayProps:{id:h,...T}},...g,classes:g?(0,a.A)(Y,g.classes):Y,...m?m.props.inputProps:{}},...(x&&S||f)&&"outlined"===_?{notched:!0}:{},ref:K,className:(0,o.A)(Q.props.className,u,z.root),...!m&&{variant:_},...M})})}));Q.muiName="Select";const K=Q},63303:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getSelectUtilityClasses:()=>o.T,selectClasses:()=>o.A});var n=r(66553),o=r(19103)},19103:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,T:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiSelect",e)}const i=(0,n.A)("MuiSelect",["root","select","multiple","filled","outlined","standard","disabled","focused","icon","iconOpen","iconFilled","iconOutlined","iconStandard","nativeInput","error"])},9360:(e,t,r)=>{"use strict";r.d(t,{A:()=>g});var n=r(9950),o=r(72004),a=r(3484),i=r(89548),s=r(59254),l=r(54265),c=r(18463),u=r(45558),d=r(1614);function f(e){return(0,d.Ay)("MuiSvgIcon",e)}(0,u.A)("MuiSvgIcon",["root","colorPrimary","colorSecondary","colorAction","colorError","colorDisabled","fontSizeInherit","fontSizeSmall","fontSizeMedium","fontSizeLarge"]);var p=r(44414);const h=(0,s.Ay)("svg",{name:"MuiSvgIcon",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,"inherit"!==r.color&&t[`color${(0,i.A)(r.color)}`],t[`fontSize${(0,i.A)(r.fontSize)}`]]}})((0,l.A)((e=>{let{theme:t}=e;return{userSelect:"none",width:"1em",height:"1em",display:"inline-block",flexShrink:0,transition:t.transitions?.create?.("fill",{duration:(t.vars??t).transitions?.duration?.shorter}),variants:[{props:e=>!e.hasSvgAsChild,style:{fill:"currentColor"}},{props:{fontSize:"inherit"},style:{fontSize:"inherit"}},{props:{fontSize:"small"},style:{fontSize:t.typography?.pxToRem?.(20)||"1.25rem"}},{props:{fontSize:"medium"},style:{fontSize:t.typography?.pxToRem?.(24)||"1.5rem"}},{props:{fontSize:"large"},style:{fontSize:t.typography?.pxToRem?.(35)||"2.1875rem"}},...Object.entries((t.vars??t).palette).filter((e=>{let[,t]=e;return t&&t.main})).map((e=>{let[r]=e;return{props:{color:r},style:{color:(t.vars??t).palette?.[r]?.main}}})),{props:{color:"action"},style:{color:(t.vars??t).palette?.action?.active}},{props:{color:"disabled"},style:{color:(t.vars??t).palette?.action?.disabled}},{props:{color:"inherit"},style:{color:void 0}}]}}))),m=n.forwardRef((function(e,t){const r=(0,c.b)({props:e,name:"MuiSvgIcon"}),{children:s,className:l,color:u="inherit",component:d="svg",fontSize:m="medium",htmlColor:g,inheritViewBox:v=!1,titleAccess:y,viewBox:b="0 0 24 24",...w}=r,x=n.isValidElement(s)&&"svg"===s.type,S={...r,color:u,component:d,fontSize:m,instanceFontSize:e.fontSize,inheritViewBox:v,viewBox:b,hasSvgAsChild:x},A={};v||(A.viewBox=b);const k=(e=>{const{color:t,fontSize:r,classes:n}=e,o={root:["root","inherit"!==t&&`color${(0,i.A)(t)}`,`fontSize${(0,i.A)(r)}`]};return(0,a.A)(o,f,n)})(S);return(0,p.jsxs)(h,{as:d,className:(0,o.A)(k.root,l),focusable:"false",color:g,"aria-hidden":!y||void 0,role:y?"img":void 0,ref:t,...A,...w,...x&&s.props,ownerState:S,children:[x?s.props.children:s,y?(0,p.jsx)("title",{children:y}):null]})}));m&&(m.muiName="SvgIcon");const g=m},397:(e,t,r)=>{"use strict";r.d(t,{A:()=>h});var n=r(9950),o=r(72004),a=r(3484),i=r(646),s=r(59254),l=r(54265),c=r(18463),u=r(40197),d=r(44414);const f=(0,s.Ay)("table",{name:"MuiTable",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.stickyHeader&&t.stickyHeader]}})((0,l.A)((e=>{let{theme:t}=e;return{display:"table",width:"100%",borderCollapse:"collapse",borderSpacing:0,"& caption":{...t.typography.body2,padding:t.spacing(2),color:(t.vars||t).palette.text.secondary,textAlign:"left",captionSide:"bottom"},variants:[{props:e=>{let{ownerState:t}=e;return t.stickyHeader},style:{borderCollapse:"separate"}}]}}))),p="table",h=n.forwardRef((function(e,t){const r=(0,c.b)({props:e,name:"MuiTable"}),{className:s,component:l=p,padding:h="normal",size:m="medium",stickyHeader:g=!1,...v}=r,y={...r,component:l,padding:h,size:m,stickyHeader:g},b=(e=>{const{classes:t,stickyHeader:r}=e,n={root:["root",r&&"stickyHeader"]};return(0,a.A)(n,u.l,t)})(y),w=n.useMemo((()=>({padding:h,size:m,stickyHeader:g})),[h,m,g]);return(0,d.jsx)(i.A.Provider,{value:w,children:(0,d.jsx)(f,{as:l,role:l===p?null:"table",ref:t,className:(0,o.A)(b.root,s),ownerState:y,...v})})}))},646:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(9950).createContext()},89330:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(9950).createContext()},39245:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTableUtilityClass:()=>o.l,tableClasses:()=>o.A});var n=r(397),o=r(40197)},40197:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,l:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTable",e)}const i=(0,n.A)("MuiTable",["root","stickyHeader"])},22057:(e,t,r)=>{"use strict";r.d(t,{A:()=>h});var n=r(9950),o=r(72004),a=r(3484),i=r(89330),s=r(59254),l=r(18463),c=r(79161),u=r(44414);const d=(0,s.Ay)("tbody",{name:"MuiTableBody",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"table-row-group"}),f={variant:"body"},p="tbody",h=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiTableBody"}),{className:n,component:s=p,...h}=r,m={...r,component:s},g=(e=>{const{classes:t}=e;return(0,a.A)({root:["root"]},c.b,t)})(m);return(0,u.jsx)(i.A.Provider,{value:f,children:(0,u.jsx)(d,{className:(0,o.A)(g.root,n),as:s,ref:t,role:s===p?null:"rowgroup",ownerState:m,...h})})}))},83325:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTableBodyUtilityClass:()=>o.b,tableBodyClasses:()=>o.A});var n=r(22057),o=r(79161)},79161:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,b:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTableBody",e)}const i=(0,n.A)("MuiTableBody",["root"])},68605:(e,t,r)=>{"use strict";r.d(t,{A:()=>g});var n=r(9950),o=r(72004),a=r(3484),i=r(39624),s=r(89548),l=r(646),c=r(89330),u=r(59254),d=r(54265),f=r(18463),p=r(51733),h=r(44414);const m=(0,u.Ay)("td",{name:"MuiTableCell",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.variant],t[`size${(0,s.A)(r.size)}`],"normal"!==r.padding&&t[`padding${(0,s.A)(r.padding)}`],"inherit"!==r.align&&t[`align${(0,s.A)(r.align)}`],r.stickyHeader&&t.stickyHeader]}})((0,d.A)((e=>{let{theme:t}=e;return{...t.typography.body2,display:"table-cell",verticalAlign:"inherit",borderBottom:t.vars?`1px solid ${t.vars.palette.TableCell.border}`:`1px solid\n    ${"light"===t.palette.mode?(0,i.a)((0,i.X4)(t.palette.divider,1),.88):(0,i.e$)((0,i.X4)(t.palette.divider,1),.68)}`,textAlign:"left",padding:16,variants:[{props:{variant:"head"},style:{color:(t.vars||t).palette.text.primary,lineHeight:t.typography.pxToRem(24),fontWeight:t.typography.fontWeightMedium}},{props:{variant:"body"},style:{color:(t.vars||t).palette.text.primary}},{props:{variant:"footer"},style:{color:(t.vars||t).palette.text.secondary,lineHeight:t.typography.pxToRem(21),fontSize:t.typography.pxToRem(12)}},{props:{size:"small"},style:{padding:"6px 16px",[`&.${p.A.paddingCheckbox}`]:{width:24,padding:"0 12px 0 16px","& > *":{padding:0}}}},{props:{padding:"checkbox"},style:{width:48,padding:"0 0 0 4px"}},{props:{padding:"none"},style:{padding:0}},{props:{align:"left"},style:{textAlign:"left"}},{props:{align:"center"},style:{textAlign:"center"}},{props:{align:"right"},style:{textAlign:"right",flexDirection:"row-reverse"}},{props:{align:"justify"},style:{textAlign:"justify"}},{props:e=>{let{ownerState:t}=e;return t.stickyHeader},style:{position:"sticky",top:0,zIndex:2,backgroundColor:(t.vars||t).palette.background.default}}]}}))),g=n.forwardRef((function(e,t){const r=(0,f.b)({props:e,name:"MuiTableCell"}),{align:i="inherit",className:u,component:d,padding:g,scope:v,size:y,sortDirection:b,variant:w,...x}=r,S=n.useContext(l.A),A=n.useContext(c.A),k=A&&"head"===A.variant;let C;C=d||(k?"th":"td");let I=v;"td"===C?I=void 0:!I&&k&&(I="col");const E=w||A&&A.variant,D={...r,align:i,component:C,padding:g||(S&&S.padding?S.padding:"normal"),size:y||(S&&S.size?S.size:"medium"),sortDirection:b,stickyHeader:"head"===E&&S&&S.stickyHeader,variant:E},T=(e=>{const{classes:t,variant:r,align:n,padding:o,size:i,stickyHeader:l}=e,c={root:["root",r,l&&"stickyHeader","inherit"!==n&&`align${(0,s.A)(n)}`,"normal"!==o&&`padding${(0,s.A)(o)}`,`size${(0,s.A)(i)}`]};return(0,a.A)(c,p.r,t)})(D);let O=null;return b&&(O="asc"===b?"ascending":"descending"),(0,h.jsx)(m,{as:C,ref:t,className:(0,o.A)(T.root,u),"aria-sort":O,scope:I,ownerState:D,...x})}))},92101:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTableCellUtilityClass:()=>o.r,tableCellClasses:()=>o.A});var n=r(68605),o=r(51733)},51733:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,r:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTableCell",e)}const i=(0,n.A)("MuiTableCell",["root","head","body","footer","sizeSmall","sizeMedium","paddingCheckbox","paddingNone","alignLeft","alignCenter","alignRight","alignJustify","stickyHeader"])},10937:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>v,getTableFooterUtilityClass:()=>d,tableFooterClasses:()=>f});var n=r(9950),o=r(72004),a=r(3484),i=r(89330),s=r(59254),l=r(18463),c=r(45558),u=r(1614);function d(e){return(0,u.Ay)("MuiTableFooter",e)}const f=(0,c.A)("MuiTableFooter",["root"]);var p=r(44414);const h=(0,s.Ay)("tfoot",{name:"MuiTableFooter",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"table-footer-group"}),m={variant:"footer"},g="tfoot",v=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiTableFooter"}),{className:n,component:s=g,...c}=r,u={...r,component:s},f=(e=>{const{classes:t}=e;return(0,a.A)({root:["root"]},d,t)})(u);return(0,p.jsx)(i.A.Provider,{value:m,children:(0,p.jsx)(h,{as:s,className:(0,o.A)(f.root,n),ref:t,role:s===g?null:"rowgroup",ownerState:u,...c})})}))},24965:(e,t,r)=>{"use strict";r.d(t,{A:()=>h});var n=r(9950),o=r(72004),a=r(3484),i=r(89330),s=r(59254),l=r(18463),c=r(90525),u=r(44414);const d=(0,s.Ay)("thead",{name:"MuiTableHead",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"table-header-group"}),f={variant:"head"},p="thead",h=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiTableHead"}),{className:n,component:s=p,...h}=r,m={...r,component:s},g=(e=>{const{classes:t}=e;return(0,a.A)({root:["root"]},c.X,t)})(m);return(0,u.jsx)(i.A.Provider,{value:f,children:(0,u.jsx)(d,{as:s,className:(0,o.A)(g.root,n),ref:t,role:s===p?null:"rowgroup",ownerState:m,...h})})}))},53687:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTableHeadUtilityClass:()=>o.X,tableHeadClasses:()=>o.A});var n=r(24965),o=r(90525)},90525:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,X:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTableHead",e)}const i=(0,n.A)("MuiTableHead",["root"])},39447:(e,t,r)=>{"use strict";r.d(t,{A:()=>N});var n=r(9950),o=r(72004),a=r(3484),i=r(19745),s=r(59254),l=r(54265),c=r(18463),u=r(22302),d=r(27987),f=r(66553),p=r(68605),h=r(34977),m=r(44730),g=r(65471),v=r(44414);const y=(0,g.A)((0,v.jsx)("path",{d:"M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"}),"KeyboardArrowLeft"),b=(0,g.A)((0,v.jsx)("path",{d:"M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"}),"KeyboardArrowRight");var w=r(57073);const x=(0,g.A)((0,v.jsx)("path",{d:"M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"}),"LastPage"),S=(0,g.A)((0,v.jsx)("path",{d:"M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"}),"FirstPage"),A=n.forwardRef((function(e,t){const{backIconButtonProps:r,count:n,disabled:o=!1,getItemAriaLabel:a,nextIconButtonProps:i,onPageChange:s,page:l,rowsPerPage:c,showFirstButton:u,showLastButton:d,slots:f={},slotProps:p={},...h}=e,g=(0,m.I)(),A=f.firstButton??w.A,k=f.lastButton??w.A,C=f.nextButton??w.A,I=f.previousButton??w.A,E=f.firstButtonIcon??S,D=f.lastButtonIcon??x,T=f.nextButtonIcon??b,O=f.previousButtonIcon??y,M=g?k:A,P=g?C:I,j=g?I:C,R=g?A:k,_=g?p.lastButton:p.firstButton,N=g?p.nextButton:p.previousButton,L=g?p.previousButton:p.nextButton,U=g?p.firstButton:p.lastButton;return(0,v.jsxs)("div",{ref:t,...h,children:[u&&(0,v.jsx)(M,{onClick:e=>{s(e,0)},disabled:o||0===l,"aria-label":a("first",l),title:a("first",l),..._,children:g?(0,v.jsx)(D,{...p.lastButtonIcon}):(0,v.jsx)(E,{...p.firstButtonIcon})}),(0,v.jsx)(P,{onClick:e=>{s(e,l-1)},disabled:o||0===l,color:"inherit","aria-label":a("previous",l),title:a("previous",l),...N??r,children:g?(0,v.jsx)(T,{...p.nextButtonIcon}):(0,v.jsx)(O,{...p.previousButtonIcon})}),(0,v.jsx)(j,{onClick:e=>{s(e,l+1)},disabled:o||-1!==n&&l>=Math.ceil(n/c)-1,color:"inherit","aria-label":a("next",l),title:a("next",l),...L??i,children:g?(0,v.jsx)(O,{...p.previousButtonIcon}):(0,v.jsx)(T,{...p.nextButtonIcon})}),d&&(0,v.jsx)(R,{onClick:e=>{s(e,Math.max(0,Math.ceil(n/c)-1))},disabled:o||l>=Math.ceil(n/c)-1,"aria-label":a("last",l),title:a("last",l),...U,children:g?(0,v.jsx)(E,{...p.firstButtonIcon}):(0,v.jsx)(D,{...p.lastButtonIcon})})]})}));var k,C=r(31014),I=r(9633);const E=(0,s.Ay)(p.A,{name:"MuiTablePagination",slot:"Root",overridesResolver:(e,t)=>t.root})((0,l.A)((e=>{let{theme:t}=e;return{overflow:"auto",color:(t.vars||t).palette.text.primary,fontSize:t.typography.pxToRem(14),"&:last-child":{padding:0}}}))),D=(0,s.Ay)(h.A,{name:"MuiTablePagination",slot:"Toolbar",overridesResolver:(e,t)=>({[`& .${I.A.actions}`]:t.actions,...t.toolbar})})((0,l.A)((e=>{let{theme:t}=e;return{minHeight:52,paddingRight:2,[`${t.breakpoints.up("xs")} and (orientation: landscape)`]:{minHeight:52},[t.breakpoints.up("sm")]:{minHeight:52,paddingRight:2},[`& .${I.A.actions}`]:{flexShrink:0,marginLeft:20}}}))),T=(0,s.Ay)("div",{name:"MuiTablePagination",slot:"Spacer",overridesResolver:(e,t)=>t.spacer})({flex:"1 1 100%"}),O=(0,s.Ay)("p",{name:"MuiTablePagination",slot:"SelectLabel",overridesResolver:(e,t)=>t.selectLabel})((0,l.A)((e=>{let{theme:t}=e;return{...t.typography.body2,flexShrink:0}}))),M=(0,s.Ay)(f.A,{name:"MuiTablePagination",slot:"Select",overridesResolver:(e,t)=>({[`& .${I.A.selectIcon}`]:t.selectIcon,[`& .${I.A.select}`]:t.select,...t.input,...t.selectRoot})})({color:"inherit",fontSize:"inherit",flexShrink:0,marginRight:32,marginLeft:8,[`& .${I.A.select}`]:{paddingLeft:8,paddingRight:24,textAlign:"right",textAlignLast:"right"}}),P=(0,s.Ay)(d.A,{name:"MuiTablePagination",slot:"MenuItem",overridesResolver:(e,t)=>t.menuItem})({}),j=(0,s.Ay)("p",{name:"MuiTablePagination",slot:"DisplayedRows",overridesResolver:(e,t)=>t.displayedRows})((0,l.A)((e=>{let{theme:t}=e;return{...t.typography.body2,flexShrink:0}})));function R(e){let{from:t,to:r,count:n}=e;return`${t}\u2013${r} of ${-1!==n?n:`more than ${r}`}`}function _(e){return`Go to ${e} page`}const N=n.forwardRef((function(e,t){const r=(0,c.b)({props:e,name:"MuiTablePagination"}),{ActionsComponent:s=A,backIconButtonProps:l,className:d,colSpan:f,component:h=p.A,count:m,disabled:g=!1,getItemAriaLabel:y=_,labelDisplayedRows:b=R,labelRowsPerPage:w="Rows per page:",nextIconButtonProps:x,onPageChange:S,onRowsPerPageChange:N,page:L,rowsPerPage:U,rowsPerPageOptions:B=[10,25,50,100],SelectProps:F={},showFirstButton:z=!1,showLastButton:W=!1,slotProps:H={},slots:Y={},...V}=r,G=r,Z=(e=>{const{classes:t}=e;return(0,a.A)({root:["root"],toolbar:["toolbar"],spacer:["spacer"],selectLabel:["selectLabel"],select:["select"],input:["input"],selectIcon:["selectIcon"],menuItem:["menuItem"],displayedRows:["displayedRows"],actions:["actions"]},I.B,t)})(G),Q=H?.select??F,K=Q.native?"option":P;let X;h!==p.A&&"td"!==h||(X=f||1e3);const J=(0,C.A)(Q.id),$=(0,C.A)(Q.labelId);return(0,v.jsx)(E,{colSpan:X,ref:t,as:h,ownerState:G,className:(0,o.A)(Z.root,d),...V,children:(0,v.jsxs)(D,{className:Z.toolbar,children:[(0,v.jsx)(T,{className:Z.spacer}),B.length>1&&(0,v.jsx)(O,{className:Z.selectLabel,id:$,children:w}),B.length>1&&(0,v.jsx)(M,{variant:"standard",...!Q.variant&&{input:k||(k=(0,v.jsx)(u.Ay,{}))},value:U,onChange:N,id:J,labelId:$,...Q,classes:{...Q.classes,root:(0,o.A)(Z.input,Z.selectRoot,(Q.classes||{}).root),select:(0,o.A)(Z.select,(Q.classes||{}).select),icon:(0,o.A)(Z.selectIcon,(Q.classes||{}).icon)},disabled:g,children:B.map((e=>(0,n.createElement)(K,{...!(0,i.A)(K)&&{ownerState:G},className:Z.menuItem,key:e.label?e.label:e,value:e.value?e.value:e},e.label?e.label:e)))}),(0,v.jsx)(j,{className:Z.displayedRows,children:b({from:0===m?0:L*U+1,to:-1===m?(L+1)*U:-1===U?m:Math.min(m,(L+1)*U),count:-1===m?-1:m,page:L})}),(0,v.jsx)(s,{className:Z.actions,backIconButtonProps:l,count:m,nextIconButtonProps:x,onPageChange:S,page:L,rowsPerPage:U,showFirstButton:z,showLastButton:W,slotProps:H.actions,slots:Y.actions,getItemAriaLabel:y,disabled:g})]})})}))},77761:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTablePaginationUtilityClass:()=>o.B,tablePaginationClasses:()=>o.A});var n=r(39447),o=r(9633)},9633:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,B:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTablePagination",e)}const i=(0,n.A)("MuiTablePagination",["root","toolbar","spacer","selectLabel","selectRoot","select","selectIcon","input","menuItem","displayedRows","actions"])},10371:(e,t,r)=>{"use strict";r.d(t,{A:()=>m});var n=r(9950),o=r(72004),a=r(3484),i=r(39624),s=r(89330),l=r(59254),c=r(54265),u=r(18463),d=r(71927),f=r(44414);const p=(0,l.Ay)("tr",{name:"MuiTableRow",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.head&&t.head,r.footer&&t.footer]}})((0,c.A)((e=>{let{theme:t}=e;return{color:"inherit",display:"table-row",verticalAlign:"middle",outline:0,[`&.${d.A.hover}:hover`]:{backgroundColor:(t.vars||t).palette.action.hover},[`&.${d.A.selected}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,i.X4)(t.palette.primary.main,t.palette.action.selectedOpacity),"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:(0,i.X4)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity)}}}}))),h="tr",m=n.forwardRef((function(e,t){const r=(0,u.b)({props:e,name:"MuiTableRow"}),{className:i,component:l=h,hover:c=!1,selected:m=!1,...g}=r,v=n.useContext(s.A),y={...r,component:l,hover:c,selected:m,head:v&&"head"===v.variant,footer:v&&"footer"===v.variant},b=(e=>{const{classes:t,selected:r,hover:n,head:o,footer:i}=e,s={root:["root",r&&"selected",n&&"hover",o&&"head",i&&"footer"]};return(0,a.A)(s,d.r,t)})(y);return(0,f.jsx)(p,{as:l,ref:t,className:(0,o.A)(b.root,i),role:l===h?null:"row",ownerState:y,...g})}))},93591:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTableRowUtilityClass:()=>o.r,tableRowClasses:()=>o.A});var n=r(10371),o=r(71927)},71927:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,r:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTableRow",e)}const i=(0,n.A)("MuiTableRow",["root","selected","hover","head","footer"])},55369:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>w,getTableSortLabelUtilityClass:()=>g,tableSortLabelClasses:()=>v});var n=r(3484),o=r(72004),a=r(9950),i=r(31891),s=r(65471),l=r(44414);const c=(0,s.A)((0,l.jsx)("path",{d:"M20 12l-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"}),"ArrowDownward");var u=r(59254),d=r(54265),f=r(18463),p=r(89548),h=r(45558),m=r(1614);function g(e){return(0,m.Ay)("MuiTableSortLabel",e)}const v=(0,h.A)("MuiTableSortLabel",["root","active","icon","iconDirectionDesc","iconDirectionAsc","directionDesc","directionAsc"]),y=(0,u.Ay)(i.A,{name:"MuiTableSortLabel",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.active&&t.active]}})((0,d.A)((e=>{let{theme:t}=e;return{cursor:"pointer",display:"inline-flex",justifyContent:"flex-start",flexDirection:"inherit",alignItems:"center","&:focus":{color:(t.vars||t).palette.text.secondary},"&:hover":{color:(t.vars||t).palette.text.secondary,[`& .${v.icon}`]:{opacity:.5}},[`&.${v.active}`]:{color:(t.vars||t).palette.text.primary,[`& .${v.icon}`]:{opacity:1,color:(t.vars||t).palette.text.secondary}}}}))),b=(0,u.Ay)("span",{name:"MuiTableSortLabel",slot:"Icon",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.icon,t[`iconDirection${(0,p.A)(r.direction)}`]]}})((0,d.A)((e=>{let{theme:t}=e;return{fontSize:18,marginRight:4,marginLeft:4,opacity:0,transition:t.transitions.create(["opacity","transform"],{duration:t.transitions.duration.shorter}),userSelect:"none",variants:[{props:{direction:"desc"},style:{transform:"rotate(0deg)"}},{props:{direction:"asc"},style:{transform:"rotate(180deg)"}}]}}))),w=a.forwardRef((function(e,t){const r=(0,f.b)({props:e,name:"MuiTableSortLabel"}),{active:a=!1,children:i,className:s,direction:u="asc",hideSortIcon:d=!1,IconComponent:h=c,...m}=r,v={...r,active:a,direction:u,hideSortIcon:d,IconComponent:h},w=(e=>{const{classes:t,direction:r,active:o}=e,a={root:["root",o&&"active",`direction${(0,p.A)(r)}`],icon:["icon",`iconDirection${(0,p.A)(r)}`]};return(0,n.A)(a,g,t)})(v);return(0,l.jsxs)(y,{className:(0,o.A)(w.root,s),component:"span",disableRipple:!0,ownerState:v,ref:t,...m,children:[i,d&&!a?null:(0,l.jsx)(b,{as:h,className:(0,o.A)(w.icon),ownerState:v})]})}))},52983:(e,t,r)=>{"use strict";r.d(t,{A:()=>M});var n=r(9950),o=r(72004),a=r(3484),i=r(95014),s=r(59254),l=r(18463),c=r(82321),u=r(85685),d=r(2660),f=r(66059),p=r(72145),h=r(68624),m=r(39766),g=r(54265),v=r(89548),y=r(45558),b=r(1614);function w(e){return(0,b.Ay)("MuiFormHelperText",e)}const x=(0,y.A)("MuiFormHelperText",["root","error","disabled","sizeSmall","sizeMedium","contained","focused","filled","required"]);var S,A=r(44414);const k=(0,s.Ay)("p",{name:"MuiFormHelperText",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.size&&t[`size${(0,v.A)(r.size)}`],r.contained&&t.contained,r.filled&&t.filled]}})((0,g.A)((e=>{let{theme:t}=e;return{color:(t.vars||t).palette.text.secondary,...t.typography.caption,textAlign:"left",marginTop:3,marginRight:0,marginBottom:0,marginLeft:0,[`&.${x.disabled}`]:{color:(t.vars||t).palette.text.disabled},[`&.${x.error}`]:{color:(t.vars||t).palette.error.main},variants:[{props:{size:"small"},style:{marginTop:4}},{props:e=>{let{ownerState:t}=e;return t.contained},style:{marginLeft:14,marginRight:14}}]}}))),C=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiFormHelperText"}),{children:n,className:i,component:s="p",disabled:c,error:u,filled:d,focused:f,margin:p,required:g,variant:y,...b}=r,x=(0,m.A)(),C=(0,h.A)({props:r,muiFormControl:x,states:["variant","size","disabled","error","filled","focused","required"]}),I={...r,component:s,contained:"filled"===C.variant||"outlined"===C.variant,variant:C.variant,size:C.size,disabled:C.disabled,error:C.error,filled:C.filled,focused:C.focused,required:C.required};delete I.ownerState;const E=(e=>{const{classes:t,contained:r,size:n,disabled:o,error:i,filled:s,focused:l,required:c}=e,u={root:["root",o&&"disabled",i&&"error",n&&`size${(0,v.A)(n)}`,r&&"contained",l&&"focused",s&&"filled",c&&"required"]};return(0,a.A)(u,w,t)})(I);return(0,A.jsx)(k,{as:s,className:(0,o.A)(E.root,i),ref:t,...b,ownerState:I,children:" "===n?S||(S=(0,A.jsx)("span",{className:"notranslate",children:"\u200b"})):n})}));var I=r(66553),E=r(38493),D=r(24763);const T={standard:c.A,filled:u.A,outlined:d.A},O=(0,s.Ay)(p.A,{name:"MuiTextField",slot:"Root",overridesResolver:(e,t)=>t.root})({}),M=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiTextField"}),{autoComplete:n,autoFocus:s=!1,children:c,className:u,color:d="primary",defaultValue:p,disabled:h=!1,error:m=!1,FormHelperTextProps:g,fullWidth:v=!1,helperText:y,id:b,InputLabelProps:w,inputProps:x,InputProps:S,inputRef:k,label:M,maxRows:P,minRows:j,multiline:R=!1,name:_,onBlur:N,onChange:L,onFocus:U,placeholder:B,required:F=!1,rows:z,select:W=!1,SelectProps:H,slots:Y={},slotProps:V={},type:G,value:Z,variant:Q="outlined",...K}=r,X={...r,autoFocus:s,color:d,disabled:h,error:m,fullWidth:v,multiline:R,required:F,select:W,variant:Q},J=(e=>{const{classes:t}=e;return(0,a.A)({root:["root"]},E._,t)})(X);const $=(0,i.A)(b),q=y&&$?`${$}-helper-text`:void 0,ee=M&&$?`${$}-label`:void 0,te=T[Q],re={slots:Y,slotProps:{input:S,inputLabel:w,htmlInput:x,formHelperText:g,select:H,...V}},ne={},oe=re.slotProps.inputLabel;"outlined"===Q&&(oe&&"undefined"!==typeof oe.shrink&&(ne.notched=oe.shrink),ne.label=M),W&&(H&&H.native||(ne.id=void 0),ne["aria-describedby"]=void 0);const[ae,ie]=(0,D.A)("input",{elementType:te,externalForwardedProps:re,additionalProps:ne,ownerState:X}),[se,le]=(0,D.A)("inputLabel",{elementType:f.A,externalForwardedProps:re,ownerState:X}),[ce,ue]=(0,D.A)("htmlInput",{elementType:"input",externalForwardedProps:re,ownerState:X}),[de,fe]=(0,D.A)("formHelperText",{elementType:C,externalForwardedProps:re,ownerState:X}),[pe,he]=(0,D.A)("select",{elementType:I.A,externalForwardedProps:re,ownerState:X}),me=(0,A.jsx)(ae,{"aria-describedby":q,autoComplete:n,autoFocus:s,defaultValue:p,fullWidth:v,multiline:R,name:_,rows:z,maxRows:P,minRows:j,type:G,value:Z,id:$,inputRef:k,onBlur:N,onChange:L,onFocus:U,placeholder:B,inputProps:ue,slots:{input:Y.htmlInput?ce:void 0},...ie});return(0,A.jsxs)(O,{className:(0,o.A)(J.root,u),disabled:h,error:m,fullWidth:v,ref:t,required:F,color:d,variant:Q,ownerState:X,...K,children:[null!=M&&""!==M&&(0,A.jsx)(se,{htmlFor:$,id:ee,...le,children:M}),W?(0,A.jsx)(pe,{"aria-describedby":q,id:$,labelId:ee,value:Z,input:me,...he,children:c}):me,y&&(0,A.jsx)(de,{id:q,...fe,children:y})]})}))},21560:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTextFieldUtilityClass:()=>o._,textFieldClasses:()=>o.A});var n=r(52983),o=r(38493)},38493:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,_:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTextField",e)}const i=(0,n.A)("MuiTextField",["root"])},34977:(e,t,r)=>{"use strict";r.d(t,{A:()=>f});var n=r(9950),o=r(72004),a=r(3484),i=r(59254),s=r(54265),l=r(18463),c=r(76273),u=r(44414);const d=(0,i.Ay)("div",{name:"MuiToolbar",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,!r.disableGutters&&t.gutters,t[r.variant]]}})((0,s.A)((e=>{let{theme:t}=e;return{position:"relative",display:"flex",alignItems:"center",variants:[{props:e=>{let{ownerState:t}=e;return!t.disableGutters},style:{paddingLeft:t.spacing(2),paddingRight:t.spacing(2),[t.breakpoints.up("sm")]:{paddingLeft:t.spacing(3),paddingRight:t.spacing(3)}}},{props:{variant:"dense"},style:{minHeight:48}},{props:{variant:"regular"},style:t.mixins.toolbar}]}}))),f=n.forwardRef((function(e,t){const r=(0,l.b)({props:e,name:"MuiToolbar"}),{className:n,component:i="div",disableGutters:s=!1,variant:f="regular",...p}=r,h={...r,component:i,disableGutters:s,variant:f},m=(e=>{const{classes:t,disableGutters:r,variant:n}=e,o={root:["root",!r&&"gutters",n]};return(0,a.A)(o,c.U,t)})(h);return(0,u.jsx)(d,{as:i,className:(0,o.A)(m.root,n),ref:t,ownerState:h,...p})}))},47710:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getToolbarUtilityClass:()=>o.U,toolbarClasses:()=>o.A});var n=r(34977),o=r(76273)},76273:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,U:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiToolbar",e)}const i=(0,n.A)("MuiToolbar",["root","gutters","regular","dense"])},53065:(e,t,r)=>{"use strict";r.d(t,{A:()=>P});var n=r(9950),o=r(72004),a=r(52215),i=r(3484),s=r(39624),l=r(44730),c=r(5180),u=r(69688),d=r(59254),f=r(14857),p=r(54265),h=r(18463),m=r(89548),g=r(40165),v=r(1849),y=r(1976),b=r(31506),w=r(31014),x=r(48733),S=r(24763),A=r(64697),k=r(44414);const C=(0,d.Ay)(v.A,{name:"MuiTooltip",slot:"Popper",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.popper,!r.disableInteractive&&t.popperInteractive,r.arrow&&t.popperArrow,!r.open&&t.popperClose]}})((0,p.A)((e=>{let{theme:t}=e;return{zIndex:(t.vars||t).zIndex.tooltip,pointerEvents:"none",variants:[{props:e=>{let{ownerState:t}=e;return!t.disableInteractive},style:{pointerEvents:"auto"}},{props:e=>{let{open:t}=e;return!t},style:{pointerEvents:"none"}},{props:e=>{let{ownerState:t}=e;return t.arrow},style:{[`&[data-popper-placement*="bottom"] .${A.A.arrow}`]:{top:0,marginTop:"-0.71em","&::before":{transformOrigin:"0 100%"}},[`&[data-popper-placement*="top"] .${A.A.arrow}`]:{bottom:0,marginBottom:"-0.71em","&::before":{transformOrigin:"100% 0"}},[`&[data-popper-placement*="right"] .${A.A.arrow}`]:{height:"1em",width:"0.71em","&::before":{transformOrigin:"100% 100%"}},[`&[data-popper-placement*="left"] .${A.A.arrow}`]:{height:"1em",width:"0.71em","&::before":{transformOrigin:"0 0"}}}},{props:e=>{let{ownerState:t}=e;return t.arrow&&!t.isRtl},style:{[`&[data-popper-placement*="right"] .${A.A.arrow}`]:{left:0,marginLeft:"-0.71em"}}},{props:e=>{let{ownerState:t}=e;return t.arrow&&!!t.isRtl},style:{[`&[data-popper-placement*="right"] .${A.A.arrow}`]:{right:0,marginRight:"-0.71em"}}},{props:e=>{let{ownerState:t}=e;return t.arrow&&!t.isRtl},style:{[`&[data-popper-placement*="left"] .${A.A.arrow}`]:{right:0,marginRight:"-0.71em"}}},{props:e=>{let{ownerState:t}=e;return t.arrow&&!!t.isRtl},style:{[`&[data-popper-placement*="left"] .${A.A.arrow}`]:{left:0,marginLeft:"-0.71em"}}}]}}))),I=(0,d.Ay)("div",{name:"MuiTooltip",slot:"Tooltip",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.tooltip,r.touch&&t.touch,r.arrow&&t.tooltipArrow,t[`tooltipPlacement${(0,m.A)(r.placement.split("-")[0])}`]]}})((0,p.A)((e=>{let{theme:t}=e;return{backgroundColor:t.vars?t.vars.palette.Tooltip.bg:(0,s.X4)(t.palette.grey[700],.92),borderRadius:(t.vars||t).shape.borderRadius,color:(t.vars||t).palette.common.white,fontFamily:t.typography.fontFamily,padding:"4px 8px",fontSize:t.typography.pxToRem(11),maxWidth:300,margin:2,wordWrap:"break-word",fontWeight:t.typography.fontWeightMedium,[`.${A.A.popper}[data-popper-placement*="left"] &`]:{transformOrigin:"right center"},[`.${A.A.popper}[data-popper-placement*="right"] &`]:{transformOrigin:"left center"},[`.${A.A.popper}[data-popper-placement*="top"] &`]:{transformOrigin:"center bottom",marginBottom:"14px"},[`.${A.A.popper}[data-popper-placement*="bottom"] &`]:{transformOrigin:"center top",marginTop:"14px"},variants:[{props:e=>{let{ownerState:t}=e;return t.arrow},style:{position:"relative",margin:0}},{props:e=>{let{ownerState:t}=e;return t.touch},style:{padding:"8px 16px",fontSize:t.typography.pxToRem(14),lineHeight:(r=16/14,Math.round(1e5*r)/1e5)+"em",fontWeight:t.typography.fontWeightRegular}},{props:e=>{let{ownerState:t}=e;return!t.isRtl},style:{[`.${A.A.popper}[data-popper-placement*="left"] &`]:{marginRight:"14px"},[`.${A.A.popper}[data-popper-placement*="right"] &`]:{marginLeft:"14px"}}},{props:e=>{let{ownerState:t}=e;return!t.isRtl&&t.touch},style:{[`.${A.A.popper}[data-popper-placement*="left"] &`]:{marginRight:"24px"},[`.${A.A.popper}[data-popper-placement*="right"] &`]:{marginLeft:"24px"}}},{props:e=>{let{ownerState:t}=e;return!!t.isRtl},style:{[`.${A.A.popper}[data-popper-placement*="left"] &`]:{marginLeft:"14px"},[`.${A.A.popper}[data-popper-placement*="right"] &`]:{marginRight:"14px"}}},{props:e=>{let{ownerState:t}=e;return!!t.isRtl&&t.touch},style:{[`.${A.A.popper}[data-popper-placement*="left"] &`]:{marginLeft:"24px"},[`.${A.A.popper}[data-popper-placement*="right"] &`]:{marginRight:"24px"}}},{props:e=>{let{ownerState:t}=e;return t.touch},style:{[`.${A.A.popper}[data-popper-placement*="top"] &`]:{marginBottom:"24px"}}},{props:e=>{let{ownerState:t}=e;return t.touch},style:{[`.${A.A.popper}[data-popper-placement*="bottom"] &`]:{marginTop:"24px"}}}]};var r}))),E=(0,d.Ay)("span",{name:"MuiTooltip",slot:"Arrow",overridesResolver:(e,t)=>t.arrow})((0,p.A)((e=>{let{theme:t}=e;return{overflow:"hidden",position:"absolute",width:"1em",height:"0.71em",boxSizing:"border-box",color:t.vars?t.vars.palette.Tooltip.bg:(0,s.X4)(t.palette.grey[700],.9),"&::before":{content:'""',margin:"auto",display:"block",width:"100%",height:"100%",backgroundColor:"currentColor",transform:"rotate(45deg)"}}})));let D=!1;const T=new a.E;let O={x:0,y:0};function M(e,t){return function(r){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a<n;a++)o[a-1]=arguments[a];t&&t(r,...o),e(r,...o)}}const P=n.forwardRef((function(e,t){const r=(0,h.b)({props:e,name:"MuiTooltip"}),{arrow:s=!1,children:d,classes:p,components:P={},componentsProps:j={},describeChild:R=!1,disableFocusListener:_=!1,disableHoverListener:N=!1,disableInteractive:L=!1,disableTouchListener:U=!1,enterDelay:B=100,enterNextDelay:F=0,enterTouchDelay:z=700,followCursor:W=!1,id:H,leaveDelay:Y=0,leaveTouchDelay:V=1500,onClose:G,onOpen:Z,open:Q,placement:K="bottom",PopperComponent:X,PopperProps:J={},slotProps:$={},slots:q={},title:ee,TransitionComponent:te,TransitionProps:re,...ne}=r,oe=n.isValidElement(d)?d:(0,k.jsx)("span",{children:d}),ae=(0,f.A)(),ie=(0,l.I)(),[se,le]=n.useState(),[ce,ue]=n.useState(null),de=n.useRef(!1),fe=L||W,pe=(0,a.A)(),he=(0,a.A)(),me=(0,a.A)(),ge=(0,a.A)(),[ve,ye]=(0,x.A)({controlled:Q,default:!1,name:"Tooltip",state:"open"});let be=ve;const we=(0,w.A)(H),xe=n.useRef(),Se=(0,y.A)((()=>{void 0!==xe.current&&(document.body.style.WebkitUserSelect=xe.current,xe.current=void 0),ge.clear()}));n.useEffect((()=>Se),[Se]);const Ae=e=>{T.clear(),D=!0,ye(!0),Z&&!be&&Z(e)},ke=(0,y.A)((e=>{T.start(800+Y,(()=>{D=!1})),ye(!1),G&&be&&G(e),pe.start(ae.transitions.duration.shortest,(()=>{de.current=!1}))})),Ce=e=>{de.current&&"touchstart"!==e.type||(se&&se.removeAttribute("title"),he.clear(),me.clear(),B||D&&F?he.start(D?F:B,(()=>{Ae(e)})):Ae(e))},Ie=e=>{he.clear(),me.start(Y,(()=>{ke(e)}))},[,Ee]=n.useState(!1),De=e=>{(0,c.A)(e.target)||(Ee(!1),Ie(e))},Te=e=>{se||le(e.currentTarget),(0,c.A)(e.target)&&(Ee(!0),Ce(e))},Oe=e=>{de.current=!0;const t=oe.props;t.onTouchStart&&t.onTouchStart(e)},Me=e=>{Oe(e),me.clear(),pe.clear(),Se(),xe.current=document.body.style.WebkitUserSelect,document.body.style.WebkitUserSelect="none",ge.start(z,(()=>{document.body.style.WebkitUserSelect=xe.current,Ce(e)}))},Pe=e=>{oe.props.onTouchEnd&&oe.props.onTouchEnd(e),Se(),me.start(V,(()=>{ke(e)}))};n.useEffect((()=>{if(be)return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)};function e(e){"Escape"===e.key&&ke(e)}}),[ke,be]);const je=(0,b.A)((0,u.A)(oe),le,t);ee||0===ee||(be=!1);const Re=n.useRef(),_e={},Ne="string"===typeof ee;R?(_e.title=be||!Ne||N?null:ee,_e["aria-describedby"]=be?we:null):(_e["aria-label"]=Ne?ee:null,_e["aria-labelledby"]=be&&!Ne?we:null);const Le={..._e,...ne,...oe.props,className:(0,o.A)(ne.className,oe.props.className),onTouchStart:Oe,ref:je,...W?{onMouseMove:e=>{const t=oe.props;t.onMouseMove&&t.onMouseMove(e),O={x:e.clientX,y:e.clientY},Re.current&&Re.current.update()}}:{}};const Ue={};U||(Le.onTouchStart=Me,Le.onTouchEnd=Pe),N||(Le.onMouseOver=M(Ce,Le.onMouseOver),Le.onMouseLeave=M(Ie,Le.onMouseLeave),fe||(Ue.onMouseOver=Ce,Ue.onMouseLeave=Ie)),_||(Le.onFocus=M(Te,Le.onFocus),Le.onBlur=M(De,Le.onBlur),fe||(Ue.onFocus=Te,Ue.onBlur=De));const Be={...r,isRtl:ie,arrow:s,disableInteractive:fe,placement:K,PopperComponentProp:X,touch:de.current},Fe="function"===typeof $.popper?$.popper(Be):$.popper,ze=n.useMemo((()=>{let e=[{name:"arrow",enabled:Boolean(ce),options:{element:ce,padding:4}}];return J.popperOptions?.modifiers&&(e=e.concat(J.popperOptions.modifiers)),Fe?.popperOptions?.modifiers&&(e=e.concat(Fe.popperOptions.modifiers)),{...J.popperOptions,...Fe?.popperOptions,modifiers:e}}),[ce,J.popperOptions,Fe?.popperOptions]),We=(e=>{const{classes:t,disableInteractive:r,arrow:n,touch:o,placement:a}=e,s={popper:["popper",!r&&"popperInteractive",n&&"popperArrow"],tooltip:["tooltip",n&&"tooltipArrow",o&&"touch",`tooltipPlacement${(0,m.A)(a.split("-")[0])}`],arrow:["arrow"]};return(0,i.A)(s,A.E,t)})(Be),He="function"===typeof $.transition?$.transition(Be):$.transition,Ye={slots:{popper:P.Popper,transition:P.Transition??te,tooltip:P.Tooltip,arrow:P.Arrow,...q},slotProps:{arrow:$.arrow??j.arrow,popper:{...J,...Fe??j.popper},tooltip:$.tooltip??j.tooltip,transition:{...re,...He??j.transition}}},[Ve,Ge]=(0,S.A)("popper",{elementType:C,externalForwardedProps:Ye,ownerState:Be,className:(0,o.A)(We.popper,J?.className)}),[Ze,Qe]=(0,S.A)("transition",{elementType:g.A,externalForwardedProps:Ye,ownerState:Be}),[Ke,Xe]=(0,S.A)("tooltip",{elementType:I,className:We.tooltip,externalForwardedProps:Ye,ownerState:Be}),[Je,$e]=(0,S.A)("arrow",{elementType:E,className:We.arrow,externalForwardedProps:Ye,ownerState:Be,ref:ue});return(0,k.jsxs)(n.Fragment,{children:[n.cloneElement(oe,Le),(0,k.jsx)(Ve,{as:X??v.A,placement:K,anchorEl:W?{getBoundingClientRect:()=>({top:O.y,left:O.x,right:O.x,bottom:O.y,width:0,height:0})}:se,popperRef:Re,open:!!se&&be,id:we,transition:!0,...Ue,...Ge,popperOptions:ze,children:e=>{let{TransitionProps:t}=e;return(0,k.jsx)(Ze,{timeout:ae.transitions.duration.shorter,...t,...Qe,children:(0,k.jsxs)(Ke,{...Xe,children:[ee,s?(0,k.jsx)(Je,{...$e}):null]})})}})]})}))},19126:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTooltipUtilityClass:()=>o.E,tooltipClasses:()=>o.A});var n=r(53065),o=r(64697)},64697:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,E:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTooltip",e)}const i=(0,n.A)("MuiTooltip",["popper","popperInteractive","popperArrow","popperClose","tooltip","tooltipArrow","touch","tooltipPlacementLeft","tooltipPlacementRight","tooltipPlacementTop","tooltipPlacementBottom","arrow"])},87233:(e,t,r)=>{"use strict";r.d(t,{A:()=>y});var n=r(9950),o=r(72004),a=r(3484),i=r(84431),s=r(59254),l=r(54265),c=r(18463),u=r(89548),d=r(51734),f=r(27569),p=r(44414);const h={primary:!0,secondary:!0,error:!0,info:!0,success:!0,warning:!0,textPrimary:!0,textSecondary:!0,textDisabled:!0},m=(0,i.Dg)(),g=(0,s.Ay)("span",{name:"MuiTypography",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.variant&&t[r.variant],"inherit"!==r.align&&t[`align${(0,u.A)(r.align)}`],r.noWrap&&t.noWrap,r.gutterBottom&&t.gutterBottom,r.paragraph&&t.paragraph]}})((0,l.A)((e=>{let{theme:t}=e;return{margin:0,variants:[{props:{variant:"inherit"},style:{font:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}},...Object.entries(t.typography).filter((e=>{let[t,r]=e;return"inherit"!==t&&r&&"object"===typeof r})).map((e=>{let[t,r]=e;return{props:{variant:t},style:r}})),...Object.entries(t.palette).filter((0,d.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{color:(t.vars||t).palette[r].main}}})),...Object.entries(t.palette?.text||{}).filter((e=>{let[,t]=e;return"string"===typeof t})).map((e=>{let[r]=e;return{props:{color:`text${(0,u.A)(r)}`},style:{color:(t.vars||t).palette.text[r]}}})),{props:e=>{let{ownerState:t}=e;return"inherit"!==t.align},style:{textAlign:"var(--Typography-textAlign)"}},{props:e=>{let{ownerState:t}=e;return t.noWrap},style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},{props:e=>{let{ownerState:t}=e;return t.gutterBottom},style:{marginBottom:"0.35em"}},{props:e=>{let{ownerState:t}=e;return t.paragraph},style:{marginBottom:16}}]}}))),v={h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",h6:"h6",subtitle1:"h6",subtitle2:"h6",body1:"p",body2:"p",inherit:"p"},y=n.forwardRef((function(e,t){const{color:r,...n}=(0,c.b)({props:e,name:"MuiTypography"}),i=m({...n,...!h[r]&&{color:r}}),{align:s="inherit",className:l,component:d,gutterBottom:y=!1,noWrap:b=!1,paragraph:w=!1,variant:x="body1",variantMapping:S=v,...A}=i,k={...i,align:s,color:r,className:l,component:d,gutterBottom:y,noWrap:b,paragraph:w,variant:x,variantMapping:S},C=d||(w?"p":S[x]||v[x])||"span",I=(e=>{const{align:t,gutterBottom:r,noWrap:n,paragraph:o,variant:i,classes:s}=e,l={root:["root",i,"inherit"!==e.align&&`align${(0,u.A)(t)}`,r&&"gutterBottom",n&&"noWrap",o&&"paragraph"]};return(0,a.A)(l,f.y,s)})(k);return(0,p.jsx)(g,{as:C,ref:t,className:(0,o.A)(I.root,l),...A,ownerState:k,style:{..."inherit"!==s&&{"--Typography-textAlign":s},...A.style}})}))},36410:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n.A,getTypographyUtilityClass:()=>o.y,typographyClasses:()=>o.A});var n=r(87233),o=r(27569)},27569:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,y:()=>a});var n=r(45558),o=r(1614);function a(e){return(0,o.Ay)("MuiTypography",e)}const i=(0,n.A)("MuiTypography",["root","h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","inherit","button","caption","overline","alignLeft","alignRight","alignCenter","alignJustify","noWrap","gutterBottom","paragraph"])},46282:(e,t,r)=>{"use strict";r.d(t,{A:()=>y});var n=r(9950),o=r(72004),a=r(3484),i=r(89548),s=r(19608),l=r(59254),c=r(48733),u=r(39766),d=r(31891),f=r(45558),p=r(1614);function h(e){return(0,p.Ay)("PrivateSwitchBase",e)}(0,f.A)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var m=r(44414);const g=(0,l.Ay)(d.A)({padding:9,borderRadius:"50%",variants:[{props:{edge:"start",size:"small"},style:{marginLeft:-3}},{props:e=>{let{edge:t,ownerState:r}=e;return"start"===t&&"small"!==r.size},style:{marginLeft:-12}},{props:{edge:"end",size:"small"},style:{marginRight:-3}},{props:e=>{let{edge:t,ownerState:r}=e;return"end"===t&&"small"!==r.size},style:{marginRight:-12}}]}),v=(0,l.Ay)("input",{shouldForwardProp:s.A})({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),y=n.forwardRef((function(e,t){const{autoFocus:r,checked:n,checkedIcon:s,className:l,defaultChecked:d,disabled:f,disableFocusRipple:p=!1,edge:y=!1,icon:b,id:w,inputProps:x,inputRef:S,name:A,onBlur:k,onChange:C,onFocus:I,readOnly:E,required:D=!1,tabIndex:T,type:O,value:M,...P}=e,[j,R]=(0,c.A)({controlled:n,default:Boolean(d),name:"SwitchBase",state:"checked"}),_=(0,u.A)();let N=f;_&&"undefined"===typeof N&&(N=_.disabled);const L="checkbox"===O||"radio"===O,U={...e,checked:j,disabled:N,disableFocusRipple:p,edge:y},B=(e=>{const{classes:t,checked:r,disabled:n,edge:o}=e,s={root:["root",r&&"checked",n&&"disabled",o&&`edge${(0,i.A)(o)}`],input:["input"]};return(0,a.A)(s,h,t)})(U);return(0,m.jsxs)(g,{component:"span",className:(0,o.A)(B.root,l),centerRipple:!0,focusRipple:!p,disabled:N,tabIndex:null,role:void 0,onFocus:e=>{I&&I(e),_&&_.onFocus&&_.onFocus(e)},onBlur:e=>{k&&k(e),_&&_.onBlur&&_.onBlur(e)},ownerState:U,ref:t,...P,children:[(0,m.jsx)(v,{autoFocus:r,checked:n,defaultChecked:d,className:B.input,disabled:N,id:L?w:void 0,name:A,onChange:e=>{if(e.nativeEvent.defaultPrevented)return;const t=e.target.checked;R(t),C&&C(e,t)},readOnly:E,ref:S,required:D,ownerState:U,tabIndex:T,type:O,..."checkbox"===O&&void 0===M?{}:{value:M},...x}),j?s:b]})}))},63976:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});r(9950);var n=r(65471),o=r(44414);const a=(0,n.A)((0,o.jsx)("path",{d:"M7 10l5 5 5-5z"}),"ArrowDropDown")},41644:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});const n=e=>e,o=(()=>{let e=n;return{configure(t){e=t},generate:t=>e(t),reset(){e=n}}})()},34809:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});const n=function(e){return"string"===typeof e};const o=function(e,t,r){return void 0===e||n(e)?t:{...t,ownerState:{...t.ownerState,...r}}}},3484:(e,t,r)=>{"use strict";function n(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;const n={};for(const o in e){const a=e[o];let i="",s=!0;for(let e=0;e<a.length;e+=1){const n=a[e];n&&(i+=(!0===s?"":" ")+t(n),s=!1,r&&r[n]&&(i+=" "+r[n]))}n[o]=i}return n}r.d(t,{A:()=>n})},21538:(e,t,r)=>{"use strict";function n(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.reduce(((e,t)=>null==t?e:function(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];e.apply(this,n),t.apply(this,n)}),(()=>{}))}r.d(t,{A:()=>n})},97654:(e,t,r)=>{"use strict";function n(e){let t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:166;function n(){for(var n=arguments.length,o=new Array(n),a=0;a<n;a++)o[a]=arguments[a];clearTimeout(t),t=setTimeout((()=>{e.apply(this,o)}),r)}return n.clear=()=>{clearTimeout(t)},n}r.d(t,{A:()=>n})},64750:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,Q:()=>o});var n=r(9950);function o(e){if("object"!==typeof e||null===e)return!1;const t=Object.getPrototypeOf(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function a(e){if(n.isValidElement(e)||!o(e))return e;const t={};return Object.keys(e).forEach((r=>{t[r]=a(e[r])})),t}function i(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{clone:!0};const s=r.clone?{...e}:e;return o(e)&&o(t)&&Object.keys(t).forEach((l=>{n.isValidElement(t[l])?s[l]=t[l]:o(t[l])&&Object.prototype.hasOwnProperty.call(e,l)&&o(e[l])?s[l]=i(e[l],t[l],r):r.clone?s[l]=o(t[l])?a(t[l]):t[l]:s[l]=t[l]})),s}},12620:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(void 0===e)return{};const r={};return Object.keys(e).filter((r=>r.match(/^on[A-Z]/)&&"function"===typeof e[r]&&!t.includes(r))).forEach((t=>{r[t]=e[t]})),r}},37750:(e,t,r)=>{"use strict";function n(e){const t=new URL(`https://mui.com/production-error/?code=${e}`);for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return n.forEach((e=>t.searchParams.append("args[]",e))),`Minified MUI error #${e}; visit ${t} for the full message.`}r.d(t,{A:()=>n})},1614:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>a});var n=r(41644);const o={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function a(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui";const a=o[t];return a?`${r}-${a}`:`${n.A.generate(e)}-${t}`}},45558:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(1614);function o(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui";const o={};return t.forEach((t=>{o[t]=(0,n.Ay)(e,t,r)})),o}},69688:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(9950);function o(e){return parseInt(n.version,10)>=19?e?.props?.ref||null:e?.ref||null}},52478:(e,t,r)=>{"use strict";function n(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window;const t=e.document.documentElement.clientWidth;return e.innerWidth-t}r.d(t,{A:()=>n})},5180:(e,t,r)=>{"use strict";function n(e){try{return e.matches(":focus-visible")}catch(t){0}return!1}r.d(t,{A:()=>n})},89449:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var n=r(72004),o=r(12620);const a=function(e){if(void 0===e)return{};const t={};return Object.keys(e).filter((t=>!(t.match(/^on[A-Z]/)&&"function"===typeof e[t]))).forEach((r=>{t[r]=e[r]})),t};const i=function(e){const{getSlotProps:t,additionalProps:r,externalSlotProps:i,externalForwardedProps:s,className:l}=e;if(!t){const e=(0,n.A)(r?.className,l,s?.className,i?.className),t={...r?.style,...s?.style,...i?.style},o={...r,...s,...i};return e.length>0&&(o.className=e),Object.keys(t).length>0&&(o.style=t),{props:o,internalRef:void 0}}const c=(0,o.A)({...s,...i}),u=a(i),d=a(s),f=t(c),p=(0,n.A)(f?.className,r?.className,l,s?.className,i?.className),h={...f?.style,...r?.style,...s?.style,...i?.style},m={...f,...r,...d,...u};return p.length>0&&(m.className=p),Object.keys(h).length>0&&(m.style=h),{props:m,internalRef:f.ref}}},61262:(e,t,r)=>{"use strict";function n(e){return e&&e.ownerDocument||document}r.d(t,{A:()=>n})},89222:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(61262);function o(e){return(0,n.A)(e).defaultView||window}},26598:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=function(e,t,r){return"function"===typeof e?e(t,r):e}},33136:(e,t,r)=>{"use strict";function n(e,t){const r={...t};for(const o in e)if(Object.prototype.hasOwnProperty.call(e,o)){const a=o;if("components"===a||"slots"===a)r[a]={...e[a],...r[a]};else if("componentsProps"===a||"slotProps"===a){const o=e[a],i=t[a];if(i)if(o){r[a]={...i};for(const e in o)if(Object.prototype.hasOwnProperty.call(o,e)){const t=e;r[a][t]=n(o[t],i[t])}}else r[a]=i;else r[a]=o||{}}else void 0===r[a]&&(r[a]=e[a])}return r}r.d(t,{A:()=>n})},53614:(e,t,r)=>{"use strict";function n(e,t){"function"===typeof e?e(t):e&&(e.current=t)}r.d(t,{A:()=>n})},60182:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(9950);function o(e){let{controlled:t,default:r,name:o,state:a="value"}=e;const{current:i}=n.useRef(void 0!==t),[s,l]=n.useState(r);return[i?t:s,n.useCallback((e=>{i||l(e)}),[])]}},95034:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(9950);const o="undefined"!==typeof window?n.useLayoutEffect:n.useEffect},59520:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(9950),o=r(95034);const a=function(e){const t=n.useRef(e);return(0,o.A)((()=>{t.current=e})),n.useRef((function(){return(0,t.current)(...arguments)})).current}},49456:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(9950),o=r(53614);function a(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return n.useMemo((()=>t.every((e=>null==e))?null:e=>{t.forEach((t=>{(0,o.A)(t,e)}))}),t)}},95014:(e,t,r)=>{"use strict";var n;r.d(t,{A:()=>s});var o=r(9950);let a=0;const i={...n||(n=r.t(o,2))}.useId;function s(e){if(void 0!==i){const t=i();return e??t}return function(e){const[t,r]=o.useState(e),n=e||t;return o.useEffect((()=>{null==t&&(a+=1,r(`mui-${a}`))}),[t]),n}(e)}},6848:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(9950);const o={};function a(e,t){const r=n.useRef(o);return r.current===o&&(r.current=e(t)),r}},70134:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(49456),o=r(34809),a=r(89449),i=r(26598);const s=function(e){const{elementType:t,externalSlotProps:r,ownerState:s,skipResolvingSlotProps:l=!1,...c}=e,u=l?{}:(0,i.A)(r,s),{props:d,internalRef:f}=(0,a.A)({...c,externalSlotProps:u}),p=(0,n.A)(f,u?.ref,e.additionalProps?.ref);return(0,o.A)(t,{...d,ref:p},s)}},52215:(e,t,r)=>{"use strict";r.d(t,{E:()=>i,A:()=>s});var n=r(6848),o=r(9950);const a=[];class i{static create(){return new i}currentId=null;start(e,t){this.clear(),this.currentId=setTimeout((()=>{this.currentId=null,t()}),e)}clear=()=>{null!==this.currentId&&(clearTimeout(this.currentId),this.currentId=null)};disposeEffect=()=>this.clear}function s(){const e=(0,n.A)(i.create).current;var t;return t=e.disposeEffect,o.useEffect(t,a),e}},49092:(e,t,r)=>{"use strict";r.d(t,{A:()=>l});r(9950);var n=r(79603),o=r(67550),a=r(44414);function i(e){let{theme:t,...r}=e;const i=o.A in t?t[o.A]:void 0;return(0,a.jsx)(n.A,{...r,themeId:i?o.A:void 0,theme:i||t})}var s=r(55036);function l(e){let{theme:t,...r}=e;if("function"===typeof t)return(0,a.jsx)(i,{theme:t,...r});return"colorSchemes"in(o.A in t?t[o.A]:t)?(0,a.jsx)(s.Zr,{theme:t,...r}):(0,a.jsx)(i,{theme:t,...r})}},55036:(e,t,r)=>{"use strict";r.d(t,{Zr:()=>I,Gk:()=>A,Gs:()=>C,Ut:()=>x});var n=r(9950),o=r(70505),a=r(33158),i=r(21784),s=r(79603),l=r(44414);const c="mode",u="color-scheme",d="data-color-scheme";function f(e){if("undefined"!==typeof window&&"function"===typeof window.matchMedia&&"system"===e){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}}function p(e,t){return"light"===e.mode||"system"===e.mode&&"light"===e.systemMode?t("light"):"dark"===e.mode||"system"===e.mode&&"dark"===e.systemMode?t("dark"):void 0}function h(e,t){if("undefined"===typeof window)return;let r;try{r=localStorage.getItem(e)||void 0,r||localStorage.setItem(e,t)}catch{}return r||t}function m(e){const{defaultMode:t="light",defaultLightColorScheme:r,defaultDarkColorScheme:o,supportedColorSchemes:a=[],modeStorageKey:i=c,colorSchemeStorageKey:s=u,storageWindow:l=("undefined"===typeof window?void 0:window),noSsr:d=!1}=e,m=a.join(","),g=a.length>1,[v,y]=n.useState((()=>{const e=h(i,t),n=h(`${s}-light`,r),a=h(`${s}-dark`,o);return{mode:e,systemMode:f(e),lightColorScheme:n,darkColorScheme:a}})),[b,w]=n.useState(d||!g);n.useEffect((()=>{w(!0)}),[]);const x=function(e){return p(e,(t=>"light"===t?e.lightColorScheme:"dark"===t?e.darkColorScheme:void 0))}(v),S=n.useCallback((e=>{y((r=>{if(e===r.mode)return r;const n=e??t;try{localStorage.setItem(i,n)}catch{}return{...r,mode:n,systemMode:f(n)}}))}),[i,t]),A=n.useCallback((e=>{e?"string"===typeof e?e&&!m.includes(e)?console.error(`\`${e}\` does not exist in \`theme.colorSchemes\`.`):y((t=>{const r={...t};return p(t,(t=>{try{localStorage.setItem(`${s}-${t}`,e)}catch{}"light"===t&&(r.lightColorScheme=e),"dark"===t&&(r.darkColorScheme=e)})),r})):y((t=>{const n={...t},a=null===e.light?r:e.light,i=null===e.dark?o:e.dark;if(a)if(m.includes(a)){n.lightColorScheme=a;try{localStorage.setItem(`${s}-light`,a)}catch(l){}}else console.error(`\`${a}\` does not exist in \`theme.colorSchemes\`.`);if(i)if(m.includes(i)){n.darkColorScheme=i;try{localStorage.setItem(`${s}-dark`,i)}catch(l){}}else console.error(`\`${i}\` does not exist in \`theme.colorSchemes\`.`);return n})):y((e=>{try{localStorage.setItem(`${s}-light`,r),localStorage.setItem(`${s}-dark`,o)}catch{}return{...e,lightColorScheme:r,darkColorScheme:o}}))}),[m,s,r,o]),k=n.useCallback((e=>{"system"===v.mode&&y((t=>{const r=e?.matches?"dark":"light";return t.systemMode===r?t:{...t,systemMode:r}}))}),[v.mode]),C=n.useRef(k);return C.current=k,n.useEffect((()=>{if("function"!==typeof window.matchMedia||!g)return;const e=function(){return C.current(...arguments)},t=window.matchMedia("(prefers-color-scheme: dark)");return t.addListener(e),e(t),()=>{t.removeListener(e)}}),[g]),n.useEffect((()=>{if(l&&g){const e=e=>{const r=e.newValue;"string"!==typeof e.key||!e.key.startsWith(s)||r&&!m.match(r)||(e.key.endsWith("light")&&A({light:r}),e.key.endsWith("dark")&&A({dark:r})),e.key!==i||r&&!["light","dark","system"].includes(r)||S(r||t)};return l.addEventListener("storage",e),()=>{l.removeEventListener("storage",e)}}}),[A,S,i,s,m,t,l,g]),{...v,mode:b?v.mode:void 0,systemMode:b?v.systemMode:void 0,colorScheme:b?x:void 0,setMode:S,setColorScheme:A}}var g=r(90176),v=r(83936),y=r(67550);const b={attribute:"data-mui-color-scheme",colorSchemeStorageKey:"mui-color-scheme",defaultLightColorScheme:"light",defaultDarkColorScheme:"dark",modeStorageKey:"mui-mode"},{CssVarsProvider:w,useColorScheme:x,getInitColorSchemeScript:S}=function(e){const{themeId:t,theme:r={},modeStorageKey:o=c,colorSchemeStorageKey:f=u,disableTransitionOnChange:p=!1,defaultColorScheme:h,resolveTheme:g}=e,v={allColorSchemes:[],colorScheme:void 0,darkColorScheme:void 0,lightColorScheme:void 0,mode:void 0,setColorScheme:()=>{},setMode:()=>{},systemMode:void 0},y=n.createContext(void 0),b="string"===typeof h?h:h.light,w="string"===typeof h?h:h.dark;return{CssVarsProvider:function(e){const{children:c,theme:u,modeStorageKey:d=o,colorSchemeStorageKey:v=f,disableTransitionOnChange:b=p,storageWindow:w=("undefined"===typeof window?void 0:window),documentNode:x=("undefined"===typeof document?void 0:document),colorSchemeNode:S=("undefined"===typeof document?void 0:document.documentElement),disableNestedContext:A=!1,disableStyleSheetGeneration:k=!1,defaultMode:C="system",noSsr:I}=e,E=n.useRef(!1),D=(0,i.A)(),T=n.useContext(y),O=!!T&&!A,M=n.useMemo((()=>u||("function"===typeof r?r():r)),[u]),P=M[t],{colorSchemes:j={},components:R={},cssVarPrefix:_,...N}=P||M,L=Object.keys(j).filter((e=>!!j[e])).join(","),U=n.useMemo((()=>L.split(",")),[L]),B="string"===typeof h?h:h.light,F="string"===typeof h?h:h.dark,z=j[B]&&j[F]?C:j[N.defaultColorScheme]?.palette?.mode||N.palette?.mode,{mode:W,setMode:H,systemMode:Y,lightColorScheme:V,darkColorScheme:G,colorScheme:Z,setColorScheme:Q}=m({supportedColorSchemes:U,defaultLightColorScheme:B,defaultDarkColorScheme:F,modeStorageKey:d,colorSchemeStorageKey:v,defaultMode:z,storageWindow:w,noSsr:I});let K=W,X=Z;O&&(K=T.mode,X=T.colorScheme);const J=X||N.defaultColorScheme,$=N.generateThemeVars?.()||N.vars,q={...N,components:R,colorSchemes:j,cssVarPrefix:_,vars:$};if("function"===typeof q.generateSpacing&&(q.spacing=q.generateSpacing()),J){const e=j[J];e&&"object"===typeof e&&Object.keys(e).forEach((t=>{e[t]&&"object"===typeof e[t]?q[t]={...q[t],...e[t]}:q[t]=e[t]}))}const ee=N.colorSchemeSelector;n.useEffect((()=>{if(X&&S&&ee&&"media"!==ee){const e=ee;let t=ee;if("class"===e&&(t=".%s"),"data"===e&&(t="[data-%s]"),e?.startsWith("data-")&&!e.includes("%s")&&(t=`[${e}="%s"]`),t.startsWith("."))S.classList.remove(...U.map((e=>t.substring(1).replace("%s",e)))),S.classList.add(t.substring(1).replace("%s",X));else{const e=t.replace("%s",X).match(/\[([^\]]+)\]/);if(e){const[t,r]=e[1].split("=");r||U.forEach((e=>{S.removeAttribute(t.replace(X,e))})),S.setAttribute(t,r?r.replace(/"|'/g,""):"")}else S.setAttribute(t,X)}}}),[X,ee,S,U]),n.useEffect((()=>{let e;if(b&&E.current&&x){const t=x.createElement("style");t.appendChild(x.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),x.head.appendChild(t),window.getComputedStyle(x.body),e=setTimeout((()=>{x.head.removeChild(t)}),1)}return()=>{clearTimeout(e)}}),[X,b,x]),n.useEffect((()=>(E.current=!0,()=>{E.current=!1})),[]);const te=n.useMemo((()=>({allColorSchemes:U,colorScheme:X,darkColorScheme:G,lightColorScheme:V,mode:K,setColorScheme:Q,setMode:H,systemMode:Y})),[U,X,G,V,K,Q,H,Y,q.colorSchemeSelector]);let re=!0;(k||!1===N.cssVariables||O&&D?.cssVarPrefix===_)&&(re=!1);const ne=(0,l.jsxs)(n.Fragment,{children:[(0,l.jsx)(s.A,{themeId:P?t:void 0,theme:g?g(q):q,children:c}),re&&(0,l.jsx)(a.A,{styles:q.generateStyleSheets?.()||[]})]});return O?ne:(0,l.jsx)(y.Provider,{value:te,children:ne})},useColorScheme:()=>n.useContext(y)||v,getInitColorSchemeScript:e=>function(e){const{defaultMode:t="system",defaultLightColorScheme:r="light",defaultDarkColorScheme:n="dark",modeStorageKey:o=c,colorSchemeStorageKey:a=u,attribute:i=d,colorSchemeNode:s="document.documentElement",nonce:f}=e||{};let p="",h=i;if("class"===i&&(h=".%s"),"data"===i&&(h="[data-%s]"),h.startsWith(".")){const e=h.substring(1);p+=`${s}.classList.remove('${e}'.replace('%s', light), '${e}'.replace('%s', dark));\n      ${s}.classList.add('${e}'.replace('%s', colorScheme));`}const m=h.match(/\[([^\]]+)\]/);if(m){const[e,t]=m[1].split("=");t||(p+=`${s}.removeAttribute('${e}'.replace('%s', light));\n      ${s}.removeAttribute('${e}'.replace('%s', dark));`),p+=`\n      ${s}.setAttribute('${e}'.replace('%s', colorScheme), ${t?`${t}.replace('%s', colorScheme)`:'""'});`}else p+=`${s}.setAttribute('${h}', colorScheme);`;return(0,l.jsx)("script",{suppressHydrationWarning:!0,nonce:"undefined"===typeof window?f:"",dangerouslySetInnerHTML:{__html:`(function() {\ntry {\n  let colorScheme = '';\n  const mode = localStorage.getItem('${o}') || '${t}';\n  const dark = localStorage.getItem('${a}-dark') || '${n}';\n  const light = localStorage.getItem('${a}-light') || '${r}';\n  if (mode === 'system') {\n    // handle system mode\n    const mql = window.matchMedia('(prefers-color-scheme: dark)');\n    if (mql.matches) {\n      colorScheme = dark\n    } else {\n      colorScheme = light\n    }\n  }\n  if (mode === 'light') {\n    colorScheme = light;\n  }\n  if (mode === 'dark') {\n    colorScheme = dark;\n  }\n  if (colorScheme) {\n    ${p}\n  }\n} catch(e){}})();`}},"mui-color-scheme-init")}({colorSchemeStorageKey:f,defaultLightColorScheme:b,defaultDarkColorScheme:w,modeStorageKey:o,...e})}}({themeId:y.A,theme:()=>(0,g.A)({cssVariables:!0}),colorSchemeStorageKey:b.colorSchemeStorageKey,modeStorageKey:b.modeStorageKey,defaultColorScheme:{light:b.defaultLightColorScheme,dark:b.defaultDarkColorScheme},resolveTheme:e=>{const t={...e,typography:(0,v.A)(e.palette,e.typography)};return t.unstable_sx=function(e){return(0,o.A)({sx:e,theme:this})},t}});function A(e){return(0,l.jsx)(w,{...e})}let k=!1;const C=e=>(k||(console.warn(["MUI: The getInitColorSchemeScript function has been deprecated.","","You should use `import InitColorSchemeScript from '@mui/material/InitColorSchemeScript'`","and replace the function call with `<InitColorSchemeScript />` instead."].join("\n")),k=!0),S(e)),I=w},4861:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>l,Qw:()=>s,UL:()=>i});var n=r(41064),o=r(46909);const a=[...Array(25)].map(((e,t)=>{if(0===t)return"none";const r=(0,o.A)(t);return`linear-gradient(rgba(255 255 255 / ${r}), rgba(255 255 255 / ${r}))`}));function i(e){return{inputPlaceholder:"dark"===e?.5:.42,inputUnderline:"dark"===e?.7:.42,switchTrackDisabled:"dark"===e?.2:.12,switchTrack:"dark"===e?.3:.38}}function s(e){return"dark"===e?a:[]}function l(e){const{palette:t={mode:"light"},opacity:r,overlays:o,...a}=e,l=(0,n.Ay)(t);return{palette:l,opacity:{...i(l.mode),...r},overlays:o||s(l.mode),...a}}},25631:(e,t,r)=>{"use strict";function n(e,t){return{toolbar:{minHeight:56,[e.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[e.up("sm")]:{minHeight:64}},...t}}r.d(t,{A:()=>n})},41064:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>b});var n=r(37750),o=r(64750),a=r(39624);const i={black:"#000",white:"#fff"},s={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},l={50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",A100:"#ea80fc",A200:"#e040fb",A400:"#d500f9",A700:"#aa00ff"},c={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},u={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},d={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},f={50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",A100:"#80d8ff",A200:"#40c4ff",A400:"#00b0ff",A700:"#0091ea"},p={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"};function h(){return{text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:i.white,default:i.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}}}const m=h();function g(){return{text:{primary:i.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:i.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}}}const v=g();function y(e,t,r,n){const o=n.light||n,i=n.dark||1.5*n;e[t]||(e.hasOwnProperty(r)?e[t]=e[r]:"light"===t?e.light=(0,a.a)(e.main,o):"dark"===t&&(e.dark=(0,a.e$)(e.main,i)))}function b(e){const{mode:t="light",contrastThreshold:r=3,tonalOffset:b=.2,...w}=e,x=e.primary||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:d[200],light:d[50],dark:d[400]}:{main:d[700],light:d[400],dark:d[800]}}(t),S=e.secondary||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:l[200],light:l[50],dark:l[400]}:{main:l[500],light:l[300],dark:l[700]}}(t),A=e.error||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:c[500],light:c[300],dark:c[700]}:{main:c[700],light:c[400],dark:c[800]}}(t),k=e.info||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:f[400],light:f[300],dark:f[700]}:{main:f[700],light:f[500],dark:f[900]}}(t),C=e.success||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:p[400],light:p[300],dark:p[700]}:{main:p[800],light:p[500],dark:p[900]}}(t),I=e.warning||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:u[400],light:u[300],dark:u[700]}:{main:"#ed6c02",light:u[500],dark:u[900]}}(t);function E(e){return(0,a.eM)(e,v.text.primary)>=r?v.text.primary:m.text.primary}const D=e=>{let{color:t,name:r,mainShade:o=500,lightShade:a=300,darkShade:i=700}=e;if(t={...t},!t.main&&t[o]&&(t.main=t[o]),!t.hasOwnProperty("main"))throw new Error((0,n.A)(11,r?` (${r})`:"",o));if("string"!==typeof t.main)throw new Error((0,n.A)(12,r?` (${r})`:"",JSON.stringify(t.main)));return y(t,"light",a,b),y(t,"dark",i,b),t.contrastText||(t.contrastText=E(t.main)),t};let T;"light"===t?T=h():"dark"===t&&(T=g());return(0,o.A)({common:{...i},mode:t,primary:D({color:x,name:"primary"}),secondary:D({color:S,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:D({color:A,name:"error"}),warning:D({color:I,name:"warning"}),info:D({color:k,name:"info"}),success:D({color:C,name:"success"}),grey:s,contrastThreshold:r,getContrastText:E,augmentColor:D,tonalOffset:b,...T},w)}},90176:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(41064),o=r(75074),a=r(6469);function i(e,t,r){e.colorSchemes&&r&&(e.colorSchemes[t]={...!0!==r&&r,palette:(0,n.Ay)({...!0===r?{}:r.palette,mode:t})})}function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{palette:t,cssVariables:r=!1,colorSchemes:n=(t?void 0:{light:!0}),defaultColorScheme:s=t?.mode,...l}=e,c=s||"light",u=n?.[c],d={...n,...t?{[c]:{..."boolean"!==typeof u&&u,palette:t}}:void 0};for(var f=arguments.length,p=new Array(f>1?f-1:0),h=1;h<f;h++)p[h-1]=arguments[h];if(!1===r){if(!("colorSchemes"in e))return(0,a.A)(e,...p);let r=t;"palette"in e||d[c]&&(!0!==d[c]?r=d[c].palette:"dark"===c&&(r={mode:"dark"}));const n=(0,a.A)({...e,palette:r},...p);return n.defaultColorScheme=c,n.colorSchemes=d,"light"===n.palette.mode&&(n.colorSchemes.light={...!0!==d.light&&d.light,palette:n.palette},i(n,"dark",d.dark)),"dark"===n.palette.mode&&(n.colorSchemes.dark={...!0!==d.dark&&d.dark,palette:n.palette},i(n,"light",d.light)),n}return t||"light"in d||"light"!==c||(d.light=!0),(0,o.A)({...l,colorSchemes:d,defaultColorScheme:c,..."boolean"!==typeof r&&r},...p)}},6469:(e,t,r)=>{"use strict";r.d(t,{D:()=>v,A:()=>y});var n=r(37750),o=r(64750),a=r(57356),i=r(70505),s=r(95593),l=r(25631),c=r(41064),u=r(83936);function d(){return[`${arguments.length<=0?void 0:arguments[0]}px ${arguments.length<=1?void 0:arguments[1]}px ${arguments.length<=2?void 0:arguments[2]}px ${arguments.length<=3?void 0:arguments[3]}px rgba(0,0,0,0.2)`,`${arguments.length<=4?void 0:arguments[4]}px ${arguments.length<=5?void 0:arguments[5]}px ${arguments.length<=6?void 0:arguments[6]}px ${arguments.length<=7?void 0:arguments[7]}px rgba(0,0,0,0.14)`,`${arguments.length<=8?void 0:arguments[8]}px ${arguments.length<=9?void 0:arguments[9]}px ${arguments.length<=10?void 0:arguments[10]}px ${arguments.length<=11?void 0:arguments[11]}px rgba(0,0,0,0.12)`].join(",")}const f=["none",d(0,2,1,-1,0,1,1,0,0,1,3,0),d(0,3,1,-2,0,2,2,0,0,1,5,0),d(0,3,3,-2,0,3,4,0,0,1,8,0),d(0,2,4,-1,0,4,5,0,0,1,10,0),d(0,3,5,-1,0,5,8,0,0,1,14,0),d(0,3,5,-1,0,6,10,0,0,1,18,0),d(0,4,5,-2,0,7,10,1,0,2,16,1),d(0,5,5,-3,0,8,10,1,0,3,14,2),d(0,5,6,-3,0,9,12,1,0,3,16,2),d(0,6,6,-3,0,10,14,1,0,4,18,3),d(0,6,7,-4,0,11,15,1,0,4,20,3),d(0,7,8,-4,0,12,17,2,0,5,22,4),d(0,7,8,-4,0,13,19,2,0,5,24,4),d(0,7,9,-4,0,14,21,2,0,5,26,4),d(0,8,9,-5,0,15,22,2,0,6,28,5),d(0,8,10,-5,0,16,24,2,0,6,30,5),d(0,8,11,-5,0,17,26,2,0,6,32,5),d(0,9,11,-5,0,18,28,2,0,7,34,6),d(0,9,12,-6,0,19,29,2,0,7,36,6),d(0,10,13,-6,0,20,31,3,0,8,38,7),d(0,10,13,-6,0,21,33,3,0,8,40,7),d(0,10,14,-6,0,22,35,3,0,8,42,7),d(0,11,14,-7,0,23,36,3,0,9,44,8),d(0,11,15,-7,0,24,38,3,0,9,46,8)];var p=r(75361);const h={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500};var m=r(52127);function g(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{breakpoints:t,mixins:r={},spacing:d,palette:g={},transitions:v={},typography:y={},shape:b,...w}=e;if(e.vars)throw new Error((0,n.A)(20));const x=(0,c.Ay)(g),S=(0,s.A)(e);let A=(0,o.A)(S,{mixins:(0,l.A)(S.breakpoints,r),palette:x,shadows:f.slice(),typography:(0,u.A)(x,y),transitions:(0,p.Ay)(v),zIndex:{...h}});A=(0,o.A)(A,w);for(var k=arguments.length,C=new Array(k>1?k-1:0),I=1;I<k;I++)C[I-1]=arguments[I];return A=C.reduce(((e,t)=>(0,o.A)(e,t)),A),A.unstable_sxConfig={...a.A,...w?.unstable_sxConfig},A.unstable_sx=function(e){return(0,i.A)({sx:e,theme:this})},A.toRuntimeSource=m.F,A}function v(){return g(...arguments)}const y=g},75074:(e,t,r)=>{"use strict";r.d(t,{A:()=>D});var n=r(37750),o=r(64750);function a(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";function t(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];if(!n.length)return"";const a=n[0];return"string"!==typeof a||a.match(/(#|\(|\)|(-?(\d*\.)?\d+)(px|em|%|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc))|^(-?(\d*\.)?\d+)$|(\d+ \d+ \d+)/)?`, ${a}`:`, var(--${e?`${e}-`:""}${a}${t(...n.slice(1))})`}return function(r){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a<n;a++)o[a-1]=arguments[a];return`var(--${e?`${e}-`:""}${r}${t(...o)})`}}var i=r(40897),s=r(28195);function l(e){const t={};return Object.entries(e).forEach((e=>{const[r,n]=e;"object"===typeof n&&(t[r]=`${n.fontStyle?`${n.fontStyle} `:""}${n.fontVariant?`${n.fontVariant} `:""}${n.fontWeight?`${n.fontWeight} `:""}${n.fontStretch?`${n.fontStretch} `:""}${n.fontSize||""}${n.lineHeight?`/${n.lineHeight} `:""}${n.fontFamily||""}`)})),t}var c=r(22382);const u=function(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=e;t.forEach(((e,a)=>{a===t.length-1?Array.isArray(o)?o[Number(e)]=r:o&&"object"===typeof o&&(o[e]=r):o&&"object"===typeof o&&(o[e]||(o[e]=n.includes(e)?[]:{}),o=o[e])}))};function d(e,t){const{prefix:r,shouldSkipGeneratingVar:n}=t||{},o={},a={},i={};var s,l;return s=(e,t,s)=>{if(("string"===typeof t||"number"===typeof t)&&(!n||!n(e,t))){const n=`--${r?`${r}-`:""}${e.join("-")}`,l=((e,t)=>"number"===typeof t?["lineHeight","fontWeight","opacity","zIndex"].some((t=>e.includes(t)))||e[e.length-1].toLowerCase().includes("opacity")?t:`${t}px`:t)(e,t);Object.assign(o,{[n]:l}),u(a,e,`var(${n})`,s),u(i,e,`var(${n}, ${l})`,s)}},l=e=>"vars"===e[0],function e(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];Object.entries(t).forEach((t=>{let[o,a]=t;(!l||l&&!l([...r,o]))&&void 0!==a&&null!==a&&("object"===typeof a&&Object.keys(a).length>0?e(a,[...r,o],Array.isArray(a)?[...n,o]:n):s([...r,o],a,n))}))}(e),{css:o,vars:a,varsWithDefaults:i}}const f=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{getSelector:r=y,disableCssColorScheme:n,colorSchemeSelector:o}=t,{colorSchemes:a={},components:i,defaultColorScheme:s="light",...l}=e,{vars:u,css:f,varsWithDefaults:p}=d(l,t);let h=p;const m={},{[s]:g,...v}=a;if(Object.entries(v||{}).forEach((e=>{let[r,n]=e;const{vars:o,css:a,varsWithDefaults:i}=d(n,t);h=(0,c.A)(h,i),m[r]={css:a,vars:o}})),g){const{css:e,vars:r,varsWithDefaults:n}=d(g,t);h=(0,c.A)(h,n),m[s]={css:e,vars:r}}function y(t,r){let n=o;if("class"===o&&(n=".%s"),"data"===o&&(n="[data-%s]"),o?.startsWith("data-")&&!o.includes("%s")&&(n=`[${o}="%s"]`),t){if("media"===n){if(e.defaultColorScheme===t)return":root";const n=a[t]?.palette?.mode||t;return{[`@media (prefers-color-scheme: ${n})`]:{":root":r}}}if(n)return e.defaultColorScheme===t?`:root, ${n.replace("%s",String(t))}`:n.replace("%s",String(t))}return":root"}return{vars:h,generateThemeVars:()=>{let e={...u};return Object.entries(m).forEach((t=>{let[,{vars:r}]=t;e=(0,c.A)(e,r)})),e},generateStyleSheets:()=>{const t=[],o=e.defaultColorScheme||"light";function i(e,r){Object.keys(r).length&&t.push("string"===typeof e?{[e]:{...r}}:e)}i(r(void 0,{...f}),f);const{[o]:s,...l}=m;if(s){const{css:e}=s,t=a[o]?.palette?.mode,l=!n&&t?{colorScheme:t,...e}:{...e};i(r(o,{...l}),l)}return Object.entries(l).forEach((e=>{let[t,{css:o}]=e;const s=a[t]?.palette?.mode,l=!n&&s?{colorScheme:s,...o}:{...o};i(r(t,{...l}),l)})),t}}};var p=r(57356),h=r(70505),m=r(39624),g=r(6469),v=r(4861),y=r(46548),b=r(70298);const w=e=>(t,r)=>{const n=e.rootSelector||":root",o=e.colorSchemeSelector;let a=o;if("class"===o&&(a=".%s"),"data"===o&&(a="[data-%s]"),o?.startsWith("data-")&&!o.includes("%s")&&(a=`[${o}="%s"]`),e.defaultColorScheme===t){if("dark"===t){const o={};return(0,b.A)(e.cssVarPrefix).forEach((e=>{o[e]=r[e],delete r[e]})),"media"===a?{[n]:r,"@media (prefers-color-scheme: dark)":{[n]:o}}:a?{[a.replace("%s",t)]:o,[`${n}, ${a.replace("%s",t)}`]:r}:{[n]:{...r,...o}}}if(a&&"media"!==a)return`${n}, ${a.replace("%s",String(t))}`}else if(t){if("media"===a)return{[`@media (prefers-color-scheme: ${String(t)})`]:{[n]:r}};if(a)return a.replace("%s",String(t))}return n};var x=r(52127);function S(e,t,r){!e[t]&&r&&(e[t]=r)}function A(e){return e&&e.startsWith("hsl")?(0,m.YL)(e):e}function k(e,t){`${t}Channel`in e||(e[`${t}Channel`]=(0,m.Me)(A(e[t]),`MUI: Can't create \`palette.${t}Channel\` because \`palette.${t}\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().\nTo suppress this warning, you need to explicitly provide the \`palette.${t}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`))}const C=e=>{try{return e()}catch(t){}},I=function(){return a(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"mui")};function E(e,t,r,n){if(!t)return;t=!0===t?{}:t;const o="dark"===n?"dark":"light";if(!r)return void(e[n]=(0,v.Ay)({...t,palette:{mode:o,...t?.palette}}));const{palette:a,...i}=(0,g.A)({...r,palette:{mode:o,...t?.palette}});return e[n]={...t,palette:a,opacity:{...(0,v.UL)(o),...t?.opacity},overlays:t?.overlays||(0,v.Qw)(o)},i}function D(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{colorSchemes:t={light:!0},defaultColorScheme:r,disableCssColorScheme:a=!1,cssVarPrefix:c="mui",shouldSkipGeneratingVar:u=y.A,colorSchemeSelector:d=(t.light&&t.dark?"media":void 0),rootSelector:g=":root",...v}=e,b=Object.keys(t)[0],D=r||(t.light&&"light"!==b?"light":b),T=I(c),{[D]:O,light:M,dark:P,...j}=t,R={...j};let _=O;if(("dark"===D&&!("dark"in t)||"light"===D&&!("light"in t))&&(_=!0),!_)throw new Error((0,n.A)(21,D));const N=E(R,_,v,D);M&&!R.light&&E(R,M,void 0,"light"),P&&!R.dark&&E(R,P,void 0,"dark");let L={defaultColorScheme:D,...N,cssVarPrefix:c,colorSchemeSelector:d,rootSelector:g,getCssVar:T,colorSchemes:R,font:{...l(N.typography),...N.font},spacing:(U=v.spacing,"number"===typeof U?`${U}px`:"string"===typeof U||"function"===typeof U||Array.isArray(U)?U:"8px")};var U;Object.keys(L.colorSchemes).forEach((e=>{const t=L.colorSchemes[e].palette,r=e=>{const r=e.split("-"),n=r[1],o=r[2];return T(e,t[n][o])};var n;if("light"===t.mode&&(S(t.common,"background","#fff"),S(t.common,"onBackground","#000")),"dark"===t.mode&&(S(t.common,"background","#000"),S(t.common,"onBackground","#fff")),n=t,["Alert","AppBar","Avatar","Button","Chip","FilledInput","LinearProgress","Skeleton","Slider","SnackbarContent","SpeedDialAction","StepConnector","StepContent","Switch","TableCell","Tooltip"].forEach((e=>{n[e]||(n[e]={})})),"light"===t.mode){S(t.Alert,"errorColor",(0,m.Nd)(t.error.light,.6)),S(t.Alert,"infoColor",(0,m.Nd)(t.info.light,.6)),S(t.Alert,"successColor",(0,m.Nd)(t.success.light,.6)),S(t.Alert,"warningColor",(0,m.Nd)(t.warning.light,.6)),S(t.Alert,"errorFilledBg",r("palette-error-main")),S(t.Alert,"infoFilledBg",r("palette-info-main")),S(t.Alert,"successFilledBg",r("palette-success-main")),S(t.Alert,"warningFilledBg",r("palette-warning-main")),S(t.Alert,"errorFilledColor",C((()=>t.getContrastText(t.error.main)))),S(t.Alert,"infoFilledColor",C((()=>t.getContrastText(t.info.main)))),S(t.Alert,"successFilledColor",C((()=>t.getContrastText(t.success.main)))),S(t.Alert,"warningFilledColor",C((()=>t.getContrastText(t.warning.main)))),S(t.Alert,"errorStandardBg",(0,m.j4)(t.error.light,.9)),S(t.Alert,"infoStandardBg",(0,m.j4)(t.info.light,.9)),S(t.Alert,"successStandardBg",(0,m.j4)(t.success.light,.9)),S(t.Alert,"warningStandardBg",(0,m.j4)(t.warning.light,.9)),S(t.Alert,"errorIconColor",r("palette-error-main")),S(t.Alert,"infoIconColor",r("palette-info-main")),S(t.Alert,"successIconColor",r("palette-success-main")),S(t.Alert,"warningIconColor",r("palette-warning-main")),S(t.AppBar,"defaultBg",r("palette-grey-100")),S(t.Avatar,"defaultBg",r("palette-grey-400")),S(t.Button,"inheritContainedBg",r("palette-grey-300")),S(t.Button,"inheritContainedHoverBg",r("palette-grey-A100")),S(t.Chip,"defaultBorder",r("palette-grey-400")),S(t.Chip,"defaultAvatarColor",r("palette-grey-700")),S(t.Chip,"defaultIconColor",r("palette-grey-700")),S(t.FilledInput,"bg","rgba(0, 0, 0, 0.06)"),S(t.FilledInput,"hoverBg","rgba(0, 0, 0, 0.09)"),S(t.FilledInput,"disabledBg","rgba(0, 0, 0, 0.12)"),S(t.LinearProgress,"primaryBg",(0,m.j4)(t.primary.main,.62)),S(t.LinearProgress,"secondaryBg",(0,m.j4)(t.secondary.main,.62)),S(t.LinearProgress,"errorBg",(0,m.j4)(t.error.main,.62)),S(t.LinearProgress,"infoBg",(0,m.j4)(t.info.main,.62)),S(t.LinearProgress,"successBg",(0,m.j4)(t.success.main,.62)),S(t.LinearProgress,"warningBg",(0,m.j4)(t.warning.main,.62)),S(t.Skeleton,"bg",`rgba(${r("palette-text-primaryChannel")} / 0.11)`),S(t.Slider,"primaryTrack",(0,m.j4)(t.primary.main,.62)),S(t.Slider,"secondaryTrack",(0,m.j4)(t.secondary.main,.62)),S(t.Slider,"errorTrack",(0,m.j4)(t.error.main,.62)),S(t.Slider,"infoTrack",(0,m.j4)(t.info.main,.62)),S(t.Slider,"successTrack",(0,m.j4)(t.success.main,.62)),S(t.Slider,"warningTrack",(0,m.j4)(t.warning.main,.62));const e=(0,m.Y9)(t.background.default,.8);S(t.SnackbarContent,"bg",e),S(t.SnackbarContent,"color",C((()=>t.getContrastText(e)))),S(t.SpeedDialAction,"fabHoverBg",(0,m.Y9)(t.background.paper,.15)),S(t.StepConnector,"border",r("palette-grey-400")),S(t.StepContent,"border",r("palette-grey-400")),S(t.Switch,"defaultColor",r("palette-common-white")),S(t.Switch,"defaultDisabledColor",r("palette-grey-100")),S(t.Switch,"primaryDisabledColor",(0,m.j4)(t.primary.main,.62)),S(t.Switch,"secondaryDisabledColor",(0,m.j4)(t.secondary.main,.62)),S(t.Switch,"errorDisabledColor",(0,m.j4)(t.error.main,.62)),S(t.Switch,"infoDisabledColor",(0,m.j4)(t.info.main,.62)),S(t.Switch,"successDisabledColor",(0,m.j4)(t.success.main,.62)),S(t.Switch,"warningDisabledColor",(0,m.j4)(t.warning.main,.62)),S(t.TableCell,"border",(0,m.j4)((0,m.Cg)(t.divider,1),.88)),S(t.Tooltip,"bg",(0,m.Cg)(t.grey[700],.92))}if("dark"===t.mode){S(t.Alert,"errorColor",(0,m.j4)(t.error.light,.6)),S(t.Alert,"infoColor",(0,m.j4)(t.info.light,.6)),S(t.Alert,"successColor",(0,m.j4)(t.success.light,.6)),S(t.Alert,"warningColor",(0,m.j4)(t.warning.light,.6)),S(t.Alert,"errorFilledBg",r("palette-error-dark")),S(t.Alert,"infoFilledBg",r("palette-info-dark")),S(t.Alert,"successFilledBg",r("palette-success-dark")),S(t.Alert,"warningFilledBg",r("palette-warning-dark")),S(t.Alert,"errorFilledColor",C((()=>t.getContrastText(t.error.dark)))),S(t.Alert,"infoFilledColor",C((()=>t.getContrastText(t.info.dark)))),S(t.Alert,"successFilledColor",C((()=>t.getContrastText(t.success.dark)))),S(t.Alert,"warningFilledColor",C((()=>t.getContrastText(t.warning.dark)))),S(t.Alert,"errorStandardBg",(0,m.Nd)(t.error.light,.9)),S(t.Alert,"infoStandardBg",(0,m.Nd)(t.info.light,.9)),S(t.Alert,"successStandardBg",(0,m.Nd)(t.success.light,.9)),S(t.Alert,"warningStandardBg",(0,m.Nd)(t.warning.light,.9)),S(t.Alert,"errorIconColor",r("palette-error-main")),S(t.Alert,"infoIconColor",r("palette-info-main")),S(t.Alert,"successIconColor",r("palette-success-main")),S(t.Alert,"warningIconColor",r("palette-warning-main")),S(t.AppBar,"defaultBg",r("palette-grey-900")),S(t.AppBar,"darkBg",r("palette-background-paper")),S(t.AppBar,"darkColor",r("palette-text-primary")),S(t.Avatar,"defaultBg",r("palette-grey-600")),S(t.Button,"inheritContainedBg",r("palette-grey-800")),S(t.Button,"inheritContainedHoverBg",r("palette-grey-700")),S(t.Chip,"defaultBorder",r("palette-grey-700")),S(t.Chip,"defaultAvatarColor",r("palette-grey-300")),S(t.Chip,"defaultIconColor",r("palette-grey-300")),S(t.FilledInput,"bg","rgba(255, 255, 255, 0.09)"),S(t.FilledInput,"hoverBg","rgba(255, 255, 255, 0.13)"),S(t.FilledInput,"disabledBg","rgba(255, 255, 255, 0.12)"),S(t.LinearProgress,"primaryBg",(0,m.Nd)(t.primary.main,.5)),S(t.LinearProgress,"secondaryBg",(0,m.Nd)(t.secondary.main,.5)),S(t.LinearProgress,"errorBg",(0,m.Nd)(t.error.main,.5)),S(t.LinearProgress,"infoBg",(0,m.Nd)(t.info.main,.5)),S(t.LinearProgress,"successBg",(0,m.Nd)(t.success.main,.5)),S(t.LinearProgress,"warningBg",(0,m.Nd)(t.warning.main,.5)),S(t.Skeleton,"bg",`rgba(${r("palette-text-primaryChannel")} / 0.13)`),S(t.Slider,"primaryTrack",(0,m.Nd)(t.primary.main,.5)),S(t.Slider,"secondaryTrack",(0,m.Nd)(t.secondary.main,.5)),S(t.Slider,"errorTrack",(0,m.Nd)(t.error.main,.5)),S(t.Slider,"infoTrack",(0,m.Nd)(t.info.main,.5)),S(t.Slider,"successTrack",(0,m.Nd)(t.success.main,.5)),S(t.Slider,"warningTrack",(0,m.Nd)(t.warning.main,.5));const e=(0,m.Y9)(t.background.default,.98);S(t.SnackbarContent,"bg",e),S(t.SnackbarContent,"color",C((()=>t.getContrastText(e)))),S(t.SpeedDialAction,"fabHoverBg",(0,m.Y9)(t.background.paper,.15)),S(t.StepConnector,"border",r("palette-grey-600")),S(t.StepContent,"border",r("palette-grey-600")),S(t.Switch,"defaultColor",r("palette-grey-300")),S(t.Switch,"defaultDisabledColor",r("palette-grey-600")),S(t.Switch,"primaryDisabledColor",(0,m.Nd)(t.primary.main,.55)),S(t.Switch,"secondaryDisabledColor",(0,m.Nd)(t.secondary.main,.55)),S(t.Switch,"errorDisabledColor",(0,m.Nd)(t.error.main,.55)),S(t.Switch,"infoDisabledColor",(0,m.Nd)(t.info.main,.55)),S(t.Switch,"successDisabledColor",(0,m.Nd)(t.success.main,.55)),S(t.Switch,"warningDisabledColor",(0,m.Nd)(t.warning.main,.55)),S(t.TableCell,"border",(0,m.Nd)((0,m.Cg)(t.divider,1),.68)),S(t.Tooltip,"bg",(0,m.Cg)(t.grey[700],.92))}k(t.background,"default"),k(t.background,"paper"),k(t.common,"background"),k(t.common,"onBackground"),k(t,"divider"),Object.keys(t).forEach((e=>{const r=t[e];r&&"object"===typeof r&&(r.main&&S(t[e],"mainChannel",(0,m.Me)(A(r.main))),r.light&&S(t[e],"lightChannel",(0,m.Me)(A(r.light))),r.dark&&S(t[e],"darkChannel",(0,m.Me)(A(r.dark))),r.contrastText&&S(t[e],"contrastTextChannel",(0,m.Me)(A(r.contrastText))),"text"===e&&(k(t[e],"primary"),k(t[e],"secondary")),"action"===e&&(r.active&&k(t[e],"active"),r.selected&&k(t[e],"selected")))}))}));for(var B=arguments.length,F=new Array(B>1?B-1:0),z=1;z<B;z++)F[z-1]=arguments[z];L=F.reduce(((e,t)=>(0,o.A)(e,t)),L);const W={prefix:c,disableCssColorScheme:a,shouldSkipGeneratingVar:u,getSelector:w(L)},{vars:H,generateThemeVars:Y,generateStyleSheets:V}=f(L,W);return L.vars=H,Object.entries(L.colorSchemes[L.defaultColorScheme]).forEach((e=>{let[t,r]=e;L[t]=r})),L.generateThemeVars=Y,L.generateStyleSheets=V,L.generateSpacing=function(){return(0,i.A)(v.spacing,(0,s.LX)(this))},L.getColorSchemeSelector=function(e){return function(t){return"media"===e?`@media (prefers-color-scheme: ${t})`:e?e.startsWith("data-")&&!e.includes("%s")?`[${e}="${t}"] &`:"class"===e?`.${t} &`:"data"===e?`[data-${t}] &`:`${e.replace("%s",t)} &`:"&"}}(d),L.spacing=L.generateSpacing(),L.shouldSkipGeneratingVar=u,L.unstable_sxConfig={...p.A,...v?.unstable_sxConfig},L.unstable_sx=function(e){return(0,h.A)({sx:e,theme:this})},L.toRuntimeSource=x.F,L}},75361:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>s,cz:()=>n,p0:()=>o});const n={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},o={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function a(e){return`${Math.round(e)}ms`}function i(e){if(!e)return 0;const t=e/36;return Math.min(Math.round(10*(4+15*t**.25+t/5)),3e3)}function s(e){const t={...n,...e.easing},r={...o,...e.duration};return{getAutoHeightDuration:i,create:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["all"],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{duration:o=r.standard,easing:i=t.easeInOut,delay:s=0,...l}=n;return(Array.isArray(e)?e:[e]).map((e=>`${e} ${"string"===typeof o?o:a(o)} ${i} ${"string"===typeof s?s:a(s)}`)).join(",")},...e,easing:t,duration:r}}},83936:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var n=r(64750);const o={textTransform:"uppercase"},a='"Roboto", "Helvetica", "Arial", sans-serif';function i(e,t){const{fontFamily:r=a,fontSize:i=14,fontWeightLight:s=300,fontWeightRegular:l=400,fontWeightMedium:c=500,fontWeightBold:u=700,htmlFontSize:d=16,allVariants:f,pxToRem:p,...h}="function"===typeof t?t(e):t;const m=i/14,g=p||(e=>e/d*m+"rem"),v=(e,t,n,o,i)=>{return{fontFamily:r,fontWeight:e,fontSize:g(t),lineHeight:n,...r===a?{letterSpacing:(s=o/t,Math.round(1e5*s)/1e5)+"em"}:{},...i,...f};var s},y={h1:v(s,96,1.167,-1.5),h2:v(s,60,1.2,-.5),h3:v(l,48,1.167,0),h4:v(l,34,1.235,.25),h5:v(l,24,1.334,0),h6:v(c,20,1.6,.15),subtitle1:v(l,16,1.75,.15),subtitle2:v(c,14,1.57,.1),body1:v(l,16,1.5,.15),body2:v(l,14,1.43,.15),button:v(c,14,1.75,.4,o),caption:v(l,12,1.66,.4),overline:v(l,12,2.66,1,o),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return(0,n.A)({htmlFontSize:d,pxToRem:g,fontFamily:r,fontSize:i,fontWeightLight:s,fontWeightRegular:l,fontWeightMedium:c,fontWeightBold:u,...y},h,{clone:!1})}},97161:(e,t,r)=>{"use strict";function n(e){return String(parseFloat(e)).length===String(e).length}function o(e){return String(e).match(/[\d.\-+]*\s*(.*)/)[1]||""}function a(e){return parseFloat(e)}function i(e){return(t,r)=>{const n=o(t);if(n===r)return t;let i=a(t);"px"!==n&&("em"===n||"rem"===n)&&(i=a(t)*a(e));let s=i;if("px"!==r)if("em"===r)s=i/a(e);else{if("rem"!==r)return t;s=i/a(e)}return parseFloat(s.toFixed(5))+r}}function s(e){let{size:t,grid:r}=e;const n=t-t%r,o=n+r;return t-n<o-t?n:o}function l(e){let{lineHeight:t,pixels:r,htmlFontSize:n}=e;return r/(t*n)}function c(e){let{cssProperty:t,min:r,max:n,unit:o="rem",breakpoints:a=[600,900,1200],transform:i=null}=e;const s={[t]:`${r}${o}`},l=(n-r)/a[a.length-1];return a.forEach((e=>{let n=r+l*e;null!==i&&(n=i(n)),s[`@media (min-width:${e}px)`]={[t]:`${Math.round(1e4*n)/1e4}${o}`}})),s}r.d(t,{I3:()=>i,VR:()=>s,a9:()=>n,db:()=>a,l_:()=>o,qW:()=>l,yL:()=>c})},60195:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=(0,r(90176).A)()},70298:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=e=>[...[...Array(25)].map(((t,r)=>`--${e?`${e}-`:""}overlays-${r}`)),`--${e?`${e}-`:""}palette-AppBar-darkBg`,`--${e?`${e}-`:""}palette-AppBar-darkColor`]},46909:(e,t,r)=>{"use strict";function n(e){let t;return t=e<1?5.11916*e**2:4.5*Math.log(e+1)+2,Math.round(10*t)/1e3}r.d(t,{A:()=>n})},67550:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n="$$material"},5249:(e,t,r)=>{"use strict";r.r(t),r.d(t,{CssVarsProvider:()=>N.Zr,Experimental_CssVarsProvider:()=>N.Gk,StyledEngineProvider:()=>P,THEME_ID:()=>o.A,ThemeProvider:()=>C.A,adaptV4Theme:()=>s,alpha:()=>l.X4,createColorScheme:()=>b.Ay,createMuiTheme:()=>d.D,createStyles:()=>m,createTheme:()=>u.A,createTransitions:()=>y.Ay,css:()=>c.css,darken:()=>l.e$,decomposeColor:()=>l.rP,duration:()=>y.p0,easing:()=>y.cz,emphasize:()=>l.tL,experimentalStyled:()=>k.Ay,experimental_extendTheme:()=>B,experimental_sx:()=>V,extendTheme:()=>L.A,getContrastRatio:()=>l.eM,getInitColorSchemeScript:()=>N.Gs,getLuminance:()=>l.J1,getOverlayAlpha:()=>F.A,hexToRgb:()=>l.E2,hslToRgb:()=>l.YL,keyframes:()=>c.keyframes,lighten:()=>l.a,makeStyles:()=>j,private_createMixins:()=>H.A,private_createTypography:()=>W.A,private_excludeVariablesFromRoot:()=>Y.A,recomposeColor:()=>l.X0,responsiveFontSizes:()=>v,rgbToHex:()=>l.Ob,shouldSkipGeneratingVar:()=>z.A,styled:()=>k.Ay,unstable_createBreakpoints:()=>i.A,unstable_createMuiStrictModeTheme:()=>p,unstable_getUnit:()=>g.l_,unstable_toUnitless:()=>g.db,useColorScheme:()=>N.Ut,useTheme:()=>w.A,useThemeProps:()=>A,withStyles:()=>R,withTheme:()=>_});var n=r(37750),o=r(67550),a=r(40897),i=r(26373);function s(e){const{defaultProps:t={},mixins:r={},overrides:n={},palette:o={},props:s={},styleOverrides:l={},...c}=e,u={...c,components:{}};Object.keys(t).forEach((e=>{const r=u.components[e]||{};r.defaultProps=t[e],u.components[e]=r})),Object.keys(s).forEach((e=>{const t=u.components[e]||{};t.defaultProps=s[e],u.components[e]=t})),Object.keys(l).forEach((e=>{const t=u.components[e]||{};t.styleOverrides=l[e],u.components[e]=t})),Object.keys(n).forEach((e=>{const t=u.components[e]||{};t.styleOverrides=n[e],u.components[e]=t})),u.spacing=(0,a.A)(e.spacing);const d=(0,i.A)(e.breakpoints||{}),f=u.spacing;u.mixins={gutters:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{paddingLeft:f(2),paddingRight:f(2),...e,[d.up("sm")]:{paddingLeft:f(3),paddingRight:f(3),...e[d.up("sm")]}}},...r};const{type:p,mode:h,...m}=o,g=h||p||"light";return u.palette={text:{hint:"dark"===g?"rgba(255, 255, 255, 0.5)":"rgba(0, 0, 0, 0.38)"},mode:g,type:g,...m},u}var l=r(39624),c=r(88283),u=r(90176),d=r(6469),f=r(64750);function p(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return(0,u.A)((0,f.A)({unstable_strictMode:!0},e),...r)}let h=!1;function m(e){return h||(console.warn(["MUI: createStyles from @mui/material/styles is deprecated.","Please use @mui/styles/createStyles"].join("\n")),h=!0),e}var g=r(97161);function v(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{breakpoints:r=["sm","md","lg"],disableAlign:o=!1,factor:a=2,variants:i=["h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","caption","button","overline"]}=t,s={...e};s.typography={...s.typography};const l=s.typography,c=(0,g.I3)(l.htmlFontSize),u=r.map((e=>s.breakpoints.values[e]));return i.forEach((e=>{const t=l[e];if(!t)return;const r=parseFloat(c(t.fontSize,"rem"));if(r<=1)return;const i=r,s=1+(i-1)/a;let{lineHeight:d}=t;if(!(0,g.a9)(d)&&!o)throw new Error((0,n.A)(6));(0,g.a9)(d)||(d=parseFloat(c(d,"rem"))/parseFloat(r));let f=null;o||(f=e=>(0,g.VR)({size:e,grid:(0,g.qW)({pixels:4,lineHeight:d,htmlFontSize:l.htmlFontSize})})),l[e]={...t,...(0,g.yL)({cssProperty:"fontSize",min:s,max:i,unit:"rem",breakpoints:u,transform:f})}})),s}var y=r(75361),b=r(4861),w=r(14857),x=r(62161),S=r(60195);function A(e){let{props:t,name:r}=e;return(0,x.A)({props:t,name:r,defaultTheme:S.A,themeId:o.A})}var k=r(59254),C=r(49092),I=(r(9950),r(55245)),E=r(63387),D=r(59721),T=r(44414);const O=e=>{const t=(0,E.default)(e);class r extends D.v{constructor(e){super(e),this.prepend=t.sheet.prepend}}return t.sheet=new r({key:t.key,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy,prepend:t.sheet.prepend,insertionPoint:t.sheet.insertionPoint}),t};let M;function P(e){const{injectFirst:t,children:r}=e;return t&&M?(0,T.jsx)(I.C,{value:M,children:r}):r}function j(){throw new Error((0,n.A)(14))}function R(){throw new Error((0,n.A)(15))}function _(){throw new Error((0,n.A)(16))}"object"===typeof document&&(M=O({key:"css",prepend:!0}));var N=r(55036),L=r(75074);let U=!1;function B(){return U||(console.warn(["MUI: The `experimental_extendTheme` has been stabilized.","","You should use `import { extendTheme } from '@mui/material/styles'`"].join("\n")),U=!0),(0,L.A)(...arguments)}var F=r(46909),z=r(46548),W=r(83936),H=r(25631),Y=r(70298);function V(){throw new Error((0,n.A)(19))}},19608:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(61960);const o=e=>(0,n.A)(e)&&"classes"!==e},46548:(e,t,r)=>{"use strict";function n(e){return!!e[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/)||!!e[0].match(/sxConfig$/)||"palette"===e[0]&&!!e[1]?.match(/(mode|contrastThreshold|tonalOffset)/)}r.d(t,{A:()=>n})},61960:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=function(e){return"ownerState"!==e&&"theme"!==e&&"sx"!==e&&"as"!==e}},52127:(e,t,r)=>{"use strict";r.d(t,{F:()=>a});var n=r(64750);function o(e){return(0,n.Q)(e)||"undefined"===typeof e||"string"===typeof e||"boolean"===typeof e||"number"===typeof e||Array.isArray(e)}function a(){const e={...arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}};return function e(t){const r=Object.entries(t);for(let a=0;a<r.length;a++){const[i,s]=r[a];!o(s)||i.startsWith("unstable_")?delete t[i]:(0,n.Q)(s)&&(t[i]={...s},e(t[i]))}}(e),`import { unstable_createBreakpoints as createBreakpoints, createTransitions } from '@mui/material/styles';\n\nconst theme = ${JSON.stringify(e,null,2)};\n\ntheme.breakpoints = createBreakpoints(theme.breakpoints || {});\ntheme.transitions = createTransitions(theme.transitions || {});\n\nexport default theme;`}},59254:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>s});var n=r(69),o=r(60195),a=r(67550),i=r(19608);const s=(0,n.Ay)({themeId:a.A,defaultTheme:o.A,rootShouldForwardProp:i.A})},14857:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});r(9950);var n=r(35619),o=r(60195),a=r(67550);function i(){const e=(0,n.A)(o.A);return e[a.A]||e}},70576:(e,t,r)=>{"use strict";r.d(t,{c:()=>o,q:()=>n});const n=e=>e.scrollTop;function o(e,t){const{timeout:r,easing:n,style:o={}}=e;return{duration:o.transitionDuration??("number"===typeof r?r:r[t.mode]||0),easing:o.transitionTimingFunction??("object"===typeof n?n[t.mode]:n),delay:o.transitionDelay}}},89548:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(37750);const o=function(e){if("string"!==typeof e)throw new Error((0,n.A)(7));return e.charAt(0).toUpperCase()+e.slice(1)}},25920:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(21538).A},51734:(e,t,r)=>{"use strict";function n(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return t=>{let[,r]=t;return r&&function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(!function(e){return"string"===typeof e.main}(e))return!1;for(const r of t)if(!e.hasOwnProperty(r)||"string"!==typeof e[r])return!1;return!0}(r,e)}}r.d(t,{A:()=>n})},65471:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var n=r(9950),o=r(9360),a=r(44414);function i(e,t){function r(r,n){return(0,a.jsx)(o.A,{"data-testid":`${t}Icon`,ref:n,...r,children:e})}return r.muiName=o.A.muiName,n.memo(n.forwardRef(r))}},21209:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(97654).A},92142:(e,t,r)=>{"use strict";r.r(t),r.d(t,{capitalize:()=>o.A,createChainedFunction:()=>a.A,createSvgIcon:()=>i.A,debounce:()=>s.A,deprecatedPropType:()=>l,isMuiElement:()=>c.A,ownerDocument:()=>d.A,ownerWindow:()=>f.A,requirePropFactory:()=>p,setRef:()=>h,unstable_ClassNameGenerator:()=>x,unstable_memoTheme:()=>u.A,unstable_useEnhancedEffect:()=>m.A,unstable_useId:()=>g.A,unsupportedProp:()=>v,useControlled:()=>y.A,useEventCallback:()=>b.A,useForkRef:()=>w.A});var n=r(41644),o=r(89548),a=r(25920),i=r(65471),s=r(21209);const l=function(e,t){return()=>null};var c=r(36658),u=r(54265),d=r(27402),f=r(70827);const p=function(e,t){return()=>null};const h=r(53614).A;var m=r(79044),g=r(31014);const v=function(e,t,r,n,o){return null};var y=r(48733),b=r(1976),w=r(31506);const x={configure:e=>{n.A.configure(e)}}},19745:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=function(e){return"string"===typeof e}},36658:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(9950);const o=function(e,t){return n.isValidElement(e)&&-1!==t.indexOf(e.type.muiName??e.type?._payload?.value?.muiName)}},54265:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(10044);const o={theme:void 0};const a=function(e){let t,r;return function(a){let i=t;return void 0!==i&&a.theme===r||(o.theme=a.theme,i=(0,n.A)(e(o)),t=i,r=a.theme),i}}},27402:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(61262).A},70827:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(89222).A},48733:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(60182).A},79044:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(95034).A},1976:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(59520).A},31506:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(49456).A},31014:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(95014).A},24763:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(49456),o=r(34809),a=r(26598),i=r(89449);function s(e,t){const{className:r,elementType:s,ownerState:l,externalForwardedProps:c,getSlotOwnerState:u,internalForwardedProps:d,...f}=t,{component:p,slots:h={[e]:void 0},slotProps:m={[e]:void 0},...g}=c,v=h[e]||s,y=(0,a.A)(m[e],l),{props:{component:b,...w},internalRef:x}=(0,i.A)({className:r,...f,externalForwardedProps:"root"===e?g:void 0,externalSlotProps:y}),S=(0,n.A)(x,y?.ref,t.ref),A=u?u(w):{},k={...l,...A},C="root"===e?b||p:b,I=(0,o.A)(v,{..."root"===e&&!p&&!h[e]&&d,..."root"!==e&&!h[e]&&d,...w,...C&&{as:C},ref:S},k);return Object.keys(A).forEach((e=>{delete I[e]})),[v,I]}},84431:(e,t,r)=>{"use strict";r.d(t,{Dp:()=>d,Dg:()=>f});r(9950);var n=r(80237),o=r(33158),a=r(35619),i=r(44414);const s=function(e){let{styles:t,themeId:r,defaultTheme:n={}}=e;const s=(0,a.A)(n),l="function"===typeof t?t(r&&s[r]||s):t;return(0,i.jsx)(o.A,{styles:l})};var l=r(60195),c=r(67550);const u=function(e){return(0,i.jsx)(s,{...e,defaultTheme:l.A,themeId:c.A})};function d(e){return function(t){return(0,i.jsx)(u,{styles:"function"===typeof e?r=>e({theme:r,...t}):e})}}function f(){return n.A}},80740:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(9950).createContext(null)},21784:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(9950),o=r(80740);function a(){return n.useContext(o.A)}},33158:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});r(9950);var n=r(88283),o=r(44414);function a(e){const{styles:t,defaultTheme:r={}}=e,a="function"===typeof t?e=>{return t(void 0===(n=e)||null===n||0===Object.keys(n).length?r:e);var n}:t;return(0,o.jsx)(n.Global,{styles:a})}},2199:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>y,HX:()=>b,tT:()=>x});var n=r(58168),o=r(9950),a=r(57923),i=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,s=(0,a.A)((function(e){return i.test(e)||111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)<91})),l=r(55245),c=r(71783),u=r(89015),d=r(96477),f=s,p=function(e){return"theme"!==e},h=function(e){return"string"===typeof e&&e.charCodeAt(0)>96?f:p},m=function(e,t,r){var n;if(t){var o=t.shouldForwardProp;n=e.__emotion_forwardProp&&o?function(t){return e.__emotion_forwardProp(t)&&o(t)}:o}return"function"!==typeof n&&r&&(n=e.__emotion_forwardProp),n},g=function(e){var t=e.cache,r=e.serialized,n=e.isStringTag;return(0,c.registerStyles)(t,r,n),(0,d.s)((function(){return(0,c.insertStyles)(t,r,n)})),null},v=function e(t,r){var a,i,s=t.__emotion_real===t,d=s&&t.__emotion_base||t;void 0!==r&&(a=r.label,i=r.target);var f=m(t,r,s),p=f||h(d),v=!p("as");return function(){var y=arguments,b=s&&void 0!==t.__emotion_styles?t.__emotion_styles.slice(0):[];if(void 0!==a&&b.push("label:"+a+";"),null==y[0]||void 0===y[0].raw)b.push.apply(b,y);else{b.push(y[0][0]);for(var w=y.length,x=1;x<w;x++)b.push(y[x],y[0][x])}var S=(0,l.w)((function(e,t,r){var n=v&&e.as||d,a="",s=[],m=e;if(null==e.theme){for(var y in m={},e)m[y]=e[y];m.theme=o.useContext(l.T)}"string"===typeof e.className?a=(0,c.getRegisteredStyles)(t.registered,s,e.className):null!=e.className&&(a=e.className+" ");var w=(0,u.serializeStyles)(b.concat(s),t.registered,m);a+=t.key+"-"+w.name,void 0!==i&&(a+=" "+i);var x=v&&void 0===f?h(n):p,S={};for(var A in e)v&&"as"===A||x(A)&&(S[A]=e[A]);return S.className=a,r&&(S.ref=r),o.createElement(o.Fragment,null,o.createElement(g,{cache:t,serialized:w,isStringTag:"string"===typeof n}),o.createElement(n,S))}));return S.displayName=void 0!==a?a:"Styled("+("string"===typeof d?d:d.displayName||d.name||"Component")+")",S.defaultProps=t.defaultProps,S.__emotion_real=S,S.__emotion_base=d,S.__emotion_styles=b,S.__emotion_forwardProp=f,Object.defineProperty(S,"toString",{value:function(){return"."+i}}),S.withComponent=function(t,o){return e(t,(0,n.A)({},r,o,{shouldForwardProp:m(S,o,!0)})).apply(void 0,b)},S}}.bind();function y(e,t){return v(e,t)}function b(e,t){Array.isArray(e.__emotion_styles)&&(e.__emotion_styles=t(e.__emotion_styles))}["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"].forEach((function(e){v[e]=v(e)}));const w=[];function x(e){return w[0]=e,(0,u.serializeStyles)(w)}},6171:(e,t,r)=>{"use strict";r.d(t,{A:()=>l,b:()=>s});var n=r(9950),o=r(73808),a=r(44414);const i=n.createContext(void 0);function s(e){let{props:t,name:r}=e;return function(e){const{theme:t,name:r,props:n}=e;if(!t||!t.components||!t.components[r])return n;const a=t.components[r];return a.defaultProps?(0,o.A)(a.defaultProps,n):a.styleOverrides||a.variants?n:(0,o.A)(a,n)}({props:t,name:r,theme:{components:n.useContext(i)}})}const l=function(e){let{value:t,children:r}=e;return(0,a.jsx)(i.Provider,{value:t,children:r})}},44730:(e,t,r)=>{"use strict";r.d(t,{A:()=>s,I:()=>i});var n=r(9950),o=r(44414);const a=n.createContext();const i=()=>n.useContext(a)??!1,s=function(e){let{value:t,...r}=e;return(0,o.jsx)(a.Provider,{value:t??!0,...r})}},79603:(e,t,r)=>{"use strict";r.d(t,{A:()=>m});var n=r(9950),o=r(21784),a=r(80740);const i="function"===typeof Symbol&&Symbol.for?Symbol.for("mui.nested"):"__THEME_NESTED__";var s=r(44414);const l=function(e){const{children:t,theme:r}=e,l=(0,o.A)(),c=n.useMemo((()=>{const e=null===l?{...r}:function(e,t){if("function"===typeof t)return t(e);return{...e,...t}}(l,r);return null!=e&&(e[i]=null!==l),e}),[r,l]);return(0,s.jsx)(a.A.Provider,{value:c,children:t})};var c=r(55245),u=r(35789),d=r(44730),f=r(6171);const p={};function h(e,t,r){let o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return n.useMemo((()=>{const n=e&&t[e]||t;if("function"===typeof r){const a=r(n),i=e?{...t,[e]:a}:a;return o?()=>i:i}return e?{...t,[e]:r}:{...t,...r}}),[e,t,r,o])}const m=function(e){const{children:t,theme:r,themeId:n}=e,a=(0,u.A)(p),i=(0,o.A)()||p,m=h(n,a,r),g=h(n,i,r,!0),v="rtl"===(n?m[n]:m).direction;return(0,s.jsx)(l,{theme:g,children:(0,s.jsx)(c.T.Provider,{value:m,children:(0,s.jsx)(d.A,{value:v,children:(0,s.jsx)(f.A,{value:n?m[n].components:m.components,children:t})})})})}},23505:(e,t,r)=>{"use strict";r.d(t,{EU:()=>c,NI:()=>l,iZ:()=>d,kW:()=>f,vf:()=>u,zu:()=>a});var n=r(22382),o=r(35505);const a={xs:0,sm:600,md:900,lg:1200,xl:1536},i={keys:["xs","sm","md","lg","xl"],up:e=>`@media (min-width:${a[e]}px)`},s={containerQueries:e=>({up:t=>{let r="number"===typeof t?t:a[t]||t;return"number"===typeof r&&(r=`${r}px`),e?`@container ${e} (min-width:${r})`:`@container (min-width:${r})`}})};function l(e,t,r){const n=e.theme||{};if(Array.isArray(t)){const e=n.breakpoints||i;return t.reduce(((n,o,a)=>(n[e.up(e.keys[a])]=r(t[a]),n)),{})}if("object"===typeof t){const e=n.breakpoints||i;return Object.keys(t).reduce(((i,l)=>{if((0,o.ob)(e.keys,l)){const e=(0,o.CT)(n.containerQueries?n:s,l);e&&(i[e]=r(t[l],l))}else if(Object.keys(e.values||a).includes(l)){i[e.up(l)]=r(t[l],l)}else{const e=l;i[e]=t[e]}return i}),{})}return r(t)}function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=e.keys?.reduce(((t,r)=>(t[e.up(r)]={},t)),{});return t||{}}function u(e,t){return e.reduce(((e,t)=>{const r=e[t];return(!r||0===Object.keys(r).length)&&delete e[t],e}),t)}function d(e){const t=c(e);for(var r=arguments.length,o=new Array(r>1?r-1:0),a=1;a<r;a++)o[a-1]=arguments[a];const i=[t,...o].reduce(((e,t)=>(0,n.A)(e,t)),{});return u(Object.keys(t),i)}function f(e){let{values:t,breakpoints:r,base:n}=e;const o=n||function(e,t){if("object"!==typeof e)return{};const r={},n=Object.keys(t);return Array.isArray(e)?n.forEach(((t,n)=>{n<e.length&&(r[t]=!0)})):n.forEach((t=>{null!=e[t]&&(r[t]=!0)})),r}(t,r),a=Object.keys(o);if(0===a.length)return t;let i;return a.reduce(((e,r,n)=>(Array.isArray(t)?(e[r]=null!=t[n]?t[n]:t[i],i=n):"object"===typeof t?(e[r]=null!=t[r]?t[r]:t[i],i=r):e[r]=t,e)),{})}},39624:(e,t,r)=>{"use strict";r.d(t,{X4:()=>h,e$:()=>g,rP:()=>s,tL:()=>w,eM:()=>p,J1:()=>f,E2:()=>i,YL:()=>d,a:()=>y,Cg:()=>m,Me:()=>l,Nd:()=>v,Y9:()=>x,j4:()=>b,X0:()=>c,Ob:()=>u});var n=r(72950);const o=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MIN_SAFE_INTEGER,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.MAX_SAFE_INTEGER;return Math.max(t,Math.min(e,r))};function a(e){return o(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,arguments.length>2&&void 0!==arguments[2]?arguments[2]:1)}function i(e){e=e.slice(1);const t=new RegExp(`.{1,${e.length>=6?2:1}}`,"g");let r=e.match(t);return r&&1===r[0].length&&(r=r.map((e=>e+e))),r?`rgb${4===r.length?"a":""}(${r.map(((e,t)=>t<3?parseInt(e,16):Math.round(parseInt(e,16)/255*1e3)/1e3)).join(", ")})`:""}function s(e){if(e.type)return e;if("#"===e.charAt(0))return s(i(e));const t=e.indexOf("("),r=e.substring(0,t);if(!["rgb","rgba","hsl","hsla","color"].includes(r))throw new Error((0,n.A)(9,e));let o,a=e.substring(t+1,e.length-1);if("color"===r){if(a=a.split(" "),o=a.shift(),4===a.length&&"/"===a[3].charAt(0)&&(a[3]=a[3].slice(1)),!["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].includes(o))throw new Error((0,n.A)(10,o))}else a=a.split(",");return a=a.map((e=>parseFloat(e))),{type:r,values:a,colorSpace:o}}const l=(e,t)=>{try{return(e=>{const t=s(e);return t.values.slice(0,3).map(((e,r)=>t.type.includes("hsl")&&0!==r?`${e}%`:e)).join(" ")})(e)}catch(r){return e}};function c(e){const{type:t,colorSpace:r}=e;let{values:n}=e;return t.includes("rgb")?n=n.map(((e,t)=>t<3?parseInt(e,10):e)):t.includes("hsl")&&(n[1]=`${n[1]}%`,n[2]=`${n[2]}%`),n=t.includes("color")?`${r} ${n.join(" ")}`:`${n.join(", ")}`,`${t}(${n})`}function u(e){if(e.startsWith("#"))return e;const{values:t}=s(e);return`#${t.map(((e,t)=>function(e){const t=e.toString(16);return 1===t.length?`0${t}`:t}(3===t?Math.round(255*e):e))).join("")}`}function d(e){e=s(e);const{values:t}=e,r=t[0],n=t[1]/100,o=t[2]/100,a=n*Math.min(o,1-o),i=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(e+r/30)%12;return o-a*Math.max(Math.min(t-3,9-t,1),-1)};let l="rgb";const u=[Math.round(255*i(0)),Math.round(255*i(8)),Math.round(255*i(4))];return"hsla"===e.type&&(l+="a",u.push(t[3])),c({type:l,values:u})}function f(e){let t="hsl"===(e=s(e)).type||"hsla"===e.type?s(d(e)).values:e.values;return t=t.map((t=>("color"!==e.type&&(t/=255),t<=.03928?t/12.92:((t+.055)/1.055)**2.4))),Number((.2126*t[0]+.7152*t[1]+.0722*t[2]).toFixed(3))}function p(e,t){const r=f(e),n=f(t);return(Math.max(r,n)+.05)/(Math.min(r,n)+.05)}function h(e,t){return e=s(e),t=a(t),"rgb"!==e.type&&"hsl"!==e.type||(e.type+="a"),"color"===e.type?e.values[3]=`/${t}`:e.values[3]=t,c(e)}function m(e,t,r){try{return h(e,t)}catch(n){return e}}function g(e,t){if(e=s(e),t=a(t),e.type.includes("hsl"))e.values[2]*=1-t;else if(e.type.includes("rgb")||e.type.includes("color"))for(let r=0;r<3;r+=1)e.values[r]*=1-t;return c(e)}function v(e,t,r){try{return g(e,t)}catch(n){return e}}function y(e,t){if(e=s(e),t=a(t),e.type.includes("hsl"))e.values[2]+=(100-e.values[2])*t;else if(e.type.includes("rgb"))for(let r=0;r<3;r+=1)e.values[r]+=(255-e.values[r])*t;else if(e.type.includes("color"))for(let r=0;r<3;r+=1)e.values[r]+=(1-e.values[r])*t;return c(e)}function b(e,t,r){try{return y(e,t)}catch(n){return e}}function w(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.15;return f(e)>.5?g(e,t):y(e,t)}function x(e,t,r){try{return w(e,t)}catch(n){return e}}},26373:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});const n=e=>{const t=Object.keys(e).map((t=>({key:t,val:e[t]})))||[];return t.sort(((e,t)=>e.val-t.val)),t.reduce(((e,t)=>({...e,[t.key]:t.val})),{})};function o(e){const{values:t={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:r="px",step:o=5,...a}=e,i=n(t),s=Object.keys(i);function l(e){return`@media (min-width:${"number"===typeof t[e]?t[e]:e}${r})`}function c(e){return`@media (max-width:${("number"===typeof t[e]?t[e]:e)-o/100}${r})`}function u(e,n){const a=s.indexOf(n);return`@media (min-width:${"number"===typeof t[e]?t[e]:e}${r}) and (max-width:${(-1!==a&&"number"===typeof t[s[a]]?t[s[a]]:n)-o/100}${r})`}return{keys:s,values:i,up:l,down:c,between:u,only:function(e){return s.indexOf(e)+1<s.length?u(e,s[s.indexOf(e)+1]):l(e)},not:function(e){const t=s.indexOf(e);return 0===t?l(s[1]):t===s.length-1?c(s[t]):u(e,s[s.indexOf(e)+1]).replace("@media","@media not all and")},unit:r,...a}}},69:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>p});var n=r(2199),o=r(22382),a=r(95593),i=r(70505),s=r(10044);const l=(0,a.A)();function c(e){return"ownerState"!==e&&"theme"!==e&&"sx"!==e&&"as"!==e}function u(e){return e?(t,r)=>r[e]:null}function d(e,t){const r="function"===typeof t?t(e):t;if(Array.isArray(r))return r.flatMap((t=>d(e,t)));if(Array.isArray(r?.variants)){let t;if(r.isProcessed)t=r.style;else{const{variants:e,...n}=r;t=n}return f(e,r.variants,[t])}return r?.isProcessed?r.style:r}function f(e,t){let r,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];e:for(let o=0;o<t.length;o+=1){const a=t[o];if("function"===typeof a.props){if(r??={...e,...e.ownerState,ownerState:e.ownerState},!a.props(r))continue}else for(const t in a.props)if(e[t]!==a.props[t]&&e.ownerState?.[t]!==a.props[t])continue e;"function"===typeof a.style?(r??={...e,...e.ownerState,ownerState:e.ownerState},n.push(a.style(r))):n.push(a.style)}return n}function p(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{themeId:t,defaultTheme:r=l,rootShouldForwardProp:a=c,slotShouldForwardProp:p=c}=e;function g(e){!function(e,t,r){e.theme=function(e){for(const t in e)return!1;return!0}(e.theme)?r:e.theme[t]||e.theme}(e,t,r)}return function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,n.HX)(e,(e=>e.filter((e=>e!==i.A))));const{name:r,slot:l,skipVariantsResolver:v,skipSx:y,overridesResolver:b=u(m(l)),...w}=t,x=void 0!==v?v:l&&"Root"!==l&&"root"!==l||!1,S=y||!1;let A=c;"Root"===l||"root"===l?A=a:l?A=p:function(e){return"string"===typeof e&&e.charCodeAt(0)>96}(e)&&(A=void 0);const k=(0,n.Ay)(e,{shouldForwardProp:A,label:h(r,l),...w}),C=e=>{if("function"===typeof e&&e.__emotion_real!==e)return function(t){return d(t,e)};if((0,o.Q)(e)){const t=(0,s.A)(e);return t.variants?function(e){return d(e,t)}:t.style}return e},I=function(){const t=[];for(var n=arguments.length,o=new Array(n),a=0;a<n;a++)o[a]=arguments[a];const s=o.map(C),l=[];if(t.push(g),r&&b&&l.push((function(e){const t=e.theme,n=t.components?.[r]?.styleOverrides;if(!n)return null;const o={};for(const r in n)o[r]=d(e,n[r]);return b(e,o)})),r&&!x&&l.push((function(e){const t=e.theme,n=t?.components?.[r]?.variants;return n?f(e,n):null})),S||l.push(i.A),Array.isArray(s[0])){const e=s.shift(),r=new Array(t.length).fill(""),n=new Array(l.length).fill("");let o;o=[...r,...e,...n],o.raw=[...r,...e.raw,...n],t.unshift(o)}const c=[...t,...s,...l],u=k(...c);return e.muiName&&(u.muiName=e.muiName),u};return k.withConfig&&(I.withConfig=k.withConfig),I}}function h(e,t){}function m(e){return e?e.charAt(0).toLowerCase()+e.slice(1):e}},40897:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(28195);function o(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:8,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,n.LX)({spacing:e});if(e.mui)return e;const r=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return(0===r.length?[1]:r).map((e=>{const r=t(e);return"number"===typeof r?`${r}px`:r})).join(" ")};return r.mui=!0,r}},95593:(e,t,r)=>{"use strict";r.d(t,{A:()=>d});var n=r(22382),o=r(26373),a=r(35505);const i={borderRadius:4};var s=r(40897),l=r(70505),c=r(57356);function u(e,t){const r=this;if(r.vars){if(!r.colorSchemes?.[e]||"function"!==typeof r.getColorSchemeSelector)return{};let n=r.getColorSchemeSelector(e);return"&"===n?t:((n.includes("data-")||n.includes("."))&&(n=`*:where(${n.replace(/\s*&$/,"")}) &`),{[n]:t})}return r.palette.mode===e?t:{}}const d=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{breakpoints:t={},palette:r={},spacing:d,shape:f={},...p}=e,h=(0,o.A)(t),m=(0,s.A)(d);let g=(0,n.A)({breakpoints:h,direction:"ltr",components:{},palette:{mode:"light",...r},spacing:m,shape:{...i,...f}},p);g=(0,a.Ay)(g),g.applyStyles=u;for(var v=arguments.length,y=new Array(v>1?v-1:0),b=1;b<v;b++)y[b-1]=arguments[b];return g=y.reduce(((e,t)=>(0,n.A)(e,t)),g),g.unstable_sxConfig={...c.A,...p?.unstable_sxConfig},g.unstable_sx=function(e){return(0,l.A)({sx:e,theme:this})},g}},35505:(e,t,r)=>{"use strict";function n(e,t){if(!e.containerQueries)return t;const r=Object.keys(t).filter((e=>e.startsWith("@container"))).sort(((e,t)=>{const r=/min-width:\s*([0-9.]+)/;return+(e.match(r)?.[1]||0)-+(t.match(r)?.[1]||0)}));return r.length?r.reduce(((e,r)=>{const n=t[r];return delete e[r],e[r]=n,e}),{...t}):t}function o(e,t){return"@"===t||t.startsWith("@")&&(e.some((e=>t.startsWith(`@${e}`)))||!!t.match(/^@\d/))}function a(e,t){const r=t.match(/^@([^/]+)?\/?(.+)?$/);if(!r)return null;const[,n,o]=r,a=Number.isNaN(+n)?n||0:+n;return e.containerQueries(o).up(a)}function i(e){const t=(e,t)=>e.replace("@media",t?`@container ${t}`:"@container");function r(r,n){r.up=function(){return t(e.breakpoints.up(...arguments),n)},r.down=function(){return t(e.breakpoints.down(...arguments),n)},r.between=function(){return t(e.breakpoints.between(...arguments),n)},r.only=function(){return t(e.breakpoints.only(...arguments),n)},r.not=function(){const r=t(e.breakpoints.not(...arguments),n);return r.includes("not all and")?r.replace("not all and ","").replace("min-width:","width<").replace("max-width:","width>").replace("and","or"):r}}const n={},o=e=>(r(n,e),n);return r(o),{...e,containerQueries:o}}r.d(t,{Ay:()=>i,CT:()=>a,_S:()=>n,ob:()=>o})},69145:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(22382);const o=function(e,t){return t?(0,n.A)(e,t,{clone:!1}):e}},10044:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(2199);function o(e){const{variants:t,...r}=e,o={variants:t,style:(0,n.tT)(r),isProcessed:!0};return o.style===r||t&&t.forEach((e=>{"function"!==typeof e.style&&(e.style=(0,n.tT)(e.style))})),o}},28195:(e,t,r)=>{"use strict";r.d(t,{LX:()=>h,MA:()=>p,_W:()=>m,Lc:()=>y,Ms:()=>b});var n=r(23505),o=r(79449),a=r(69145);const i={m:"margin",p:"padding"},s={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},l={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},c=function(e){const t={};return r=>(void 0===t[r]&&(t[r]=e(r)),t[r])}((e=>{if(e.length>2){if(!l[e])return[e];e=l[e]}const[t,r]=e.split(""),n=i[t],o=s[r]||"";return Array.isArray(o)?o.map((e=>n+e)):[n+o]})),u=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],d=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],f=[...u,...d];function p(e,t,r,n){const a=(0,o.Yn)(e,t,!0)??r;return"number"===typeof a||"string"===typeof a?e=>"string"===typeof e?e:"string"===typeof a?`calc(${e} * ${a})`:a*e:Array.isArray(a)?e=>{if("string"===typeof e)return e;const t=Math.abs(e);const r=a[t];return e>=0?r:"number"===typeof r?-r:`-${r}`}:"function"===typeof a?a:()=>{}}function h(e){return p(e,"spacing",8)}function m(e,t){return"string"===typeof t||null==t?t:e(t)}function g(e,t,r,o){if(!t.includes(r))return null;const a=function(e,t){return r=>e.reduce(((e,n)=>(e[n]=m(t,r),e)),{})}(c(r),o),i=e[r];return(0,n.NI)(e,i,a)}function v(e,t){const r=h(e.theme);return Object.keys(e).map((n=>g(e,t,n,r))).reduce(a.A,{})}function y(e){return v(e,u)}function b(e){return v(e,d)}function w(e){return v(e,f)}y.propTypes={},y.filterProps=u,b.propTypes={},b.filterProps=d,w.propTypes={},w.filterProps=f},79449:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>s,BO:()=>i,Yn:()=>a});var n=r(74840),o=r(23505);function a(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!t||"string"!==typeof t)return null;if(e&&e.vars&&r){const r=`vars.${t}`.split(".").reduce(((e,t)=>e&&e[t]?e[t]:null),e);if(null!=r)return r}return t.split(".").reduce(((e,t)=>e&&null!=e[t]?e[t]:null),e)}function i(e,t,r){let n,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:r;return n="function"===typeof e?e(r):Array.isArray(e)?e[r]||o:a(e,r)||o,t&&(n=t(n,o,e)),n}const s=function(e){const{prop:t,cssProperty:r=e.prop,themeKey:s,transform:l}=e,c=e=>{if(null==e[t])return null;const c=e[t],u=a(e.theme,s)||{};return(0,o.NI)(e,c,(e=>{let o=i(u,l,e);return e===o&&"string"===typeof e&&(o=i(u,l,`${t}${"default"===e?"":(0,n.A)(e)}`,e)),!1===r?o:{[r]:o}}))};return c.propTypes={},c.filterProps=[t],c}},57356:(e,t,r)=>{"use strict";r.d(t,{A:()=>R});var n=r(28195),o=r(79449),a=r(69145);const i=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];const n=t.reduce(((e,t)=>(t.filterProps.forEach((r=>{e[r]=t})),e)),{}),o=e=>Object.keys(e).reduce(((t,r)=>n[r]?(0,a.A)(t,n[r](e)):t),{});return o.propTypes={},o.filterProps=t.reduce(((e,t)=>e.concat(t.filterProps)),[]),o};var s=r(23505);function l(e){return"number"!==typeof e?e:`${e}px solid`}function c(e,t){return(0,o.Ay)({prop:e,themeKey:"borders",transform:t})}const u=c("border",l),d=c("borderTop",l),f=c("borderRight",l),p=c("borderBottom",l),h=c("borderLeft",l),m=c("borderColor"),g=c("borderTopColor"),v=c("borderRightColor"),y=c("borderBottomColor"),b=c("borderLeftColor"),w=c("outline",l),x=c("outlineColor"),S=e=>{if(void 0!==e.borderRadius&&null!==e.borderRadius){const t=(0,n.MA)(e.theme,"shape.borderRadius",4,"borderRadius"),r=e=>({borderRadius:(0,n._W)(t,e)});return(0,s.NI)(e,e.borderRadius,r)}return null};S.propTypes={},S.filterProps=["borderRadius"];i(u,d,f,p,h,m,g,v,y,b,S,w,x);const A=e=>{if(void 0!==e.gap&&null!==e.gap){const t=(0,n.MA)(e.theme,"spacing",8,"gap"),r=e=>({gap:(0,n._W)(t,e)});return(0,s.NI)(e,e.gap,r)}return null};A.propTypes={},A.filterProps=["gap"];const k=e=>{if(void 0!==e.columnGap&&null!==e.columnGap){const t=(0,n.MA)(e.theme,"spacing",8,"columnGap"),r=e=>({columnGap:(0,n._W)(t,e)});return(0,s.NI)(e,e.columnGap,r)}return null};k.propTypes={},k.filterProps=["columnGap"];const C=e=>{if(void 0!==e.rowGap&&null!==e.rowGap){const t=(0,n.MA)(e.theme,"spacing",8,"rowGap"),r=e=>({rowGap:(0,n._W)(t,e)});return(0,s.NI)(e,e.rowGap,r)}return null};C.propTypes={},C.filterProps=["rowGap"];i(A,k,C,(0,o.Ay)({prop:"gridColumn"}),(0,o.Ay)({prop:"gridRow"}),(0,o.Ay)({prop:"gridAutoFlow"}),(0,o.Ay)({prop:"gridAutoColumns"}),(0,o.Ay)({prop:"gridAutoRows"}),(0,o.Ay)({prop:"gridTemplateColumns"}),(0,o.Ay)({prop:"gridTemplateRows"}),(0,o.Ay)({prop:"gridTemplateAreas"}),(0,o.Ay)({prop:"gridArea"}));function I(e,t){return"grey"===t?t:e}i((0,o.Ay)({prop:"color",themeKey:"palette",transform:I}),(0,o.Ay)({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:I}),(0,o.Ay)({prop:"backgroundColor",themeKey:"palette",transform:I}));function E(e){return e<=1&&0!==e?100*e+"%":e}const D=(0,o.Ay)({prop:"width",transform:E}),T=e=>{if(void 0!==e.maxWidth&&null!==e.maxWidth){const t=t=>{const r=e.theme?.breakpoints?.values?.[t]||s.zu[t];return r?"px"!==e.theme?.breakpoints?.unit?{maxWidth:`${r}${e.theme.breakpoints.unit}`}:{maxWidth:r}:{maxWidth:E(t)}};return(0,s.NI)(e,e.maxWidth,t)}return null};T.filterProps=["maxWidth"];const O=(0,o.Ay)({prop:"minWidth",transform:E}),M=(0,o.Ay)({prop:"height",transform:E}),P=(0,o.Ay)({prop:"maxHeight",transform:E}),j=(0,o.Ay)({prop:"minHeight",transform:E}),R=((0,o.Ay)({prop:"size",cssProperty:"width",transform:E}),(0,o.Ay)({prop:"size",cssProperty:"height",transform:E}),i(D,T,O,M,P,j,(0,o.Ay)({prop:"boxSizing"})),{border:{themeKey:"borders",transform:l},borderTop:{themeKey:"borders",transform:l},borderRight:{themeKey:"borders",transform:l},borderBottom:{themeKey:"borders",transform:l},borderLeft:{themeKey:"borders",transform:l},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:l},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:S},color:{themeKey:"palette",transform:I},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:I},backgroundColor:{themeKey:"palette",transform:I},p:{style:n.Ms},pt:{style:n.Ms},pr:{style:n.Ms},pb:{style:n.Ms},pl:{style:n.Ms},px:{style:n.Ms},py:{style:n.Ms},padding:{style:n.Ms},paddingTop:{style:n.Ms},paddingRight:{style:n.Ms},paddingBottom:{style:n.Ms},paddingLeft:{style:n.Ms},paddingX:{style:n.Ms},paddingY:{style:n.Ms},paddingInline:{style:n.Ms},paddingInlineStart:{style:n.Ms},paddingInlineEnd:{style:n.Ms},paddingBlock:{style:n.Ms},paddingBlockStart:{style:n.Ms},paddingBlockEnd:{style:n.Ms},m:{style:n.Lc},mt:{style:n.Lc},mr:{style:n.Lc},mb:{style:n.Lc},ml:{style:n.Lc},mx:{style:n.Lc},my:{style:n.Lc},margin:{style:n.Lc},marginTop:{style:n.Lc},marginRight:{style:n.Lc},marginBottom:{style:n.Lc},marginLeft:{style:n.Lc},marginX:{style:n.Lc},marginY:{style:n.Lc},marginInline:{style:n.Lc},marginInlineStart:{style:n.Lc},marginInlineEnd:{style:n.Lc},marginBlock:{style:n.Lc},marginBlockStart:{style:n.Lc},marginBlockEnd:{style:n.Lc},displayPrint:{cssProperty:!1,transform:e=>({"@media print":{display:e}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:A},rowGap:{style:C},columnGap:{style:k},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:E},maxWidth:{style:T},minWidth:{transform:E},height:{transform:E},maxHeight:{transform:E},minHeight:{transform:E},boxSizing:{},font:{themeKey:"font"},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}})},80237:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var n=r(22382),o=r(57356);const a=e=>{const t={systemProps:{},otherProps:{}},r=e?.theme?.unstable_sxConfig??o.A;return Object.keys(e).forEach((n=>{r[n]?t.systemProps[n]=e[n]:t.otherProps[n]=e[n]})),t};function i(e){const{sx:t,...r}=e,{systemProps:o,otherProps:i}=a(r);let s;return s=Array.isArray(t)?[o,...t]:"function"===typeof t?function(){const e=t(...arguments);return(0,n.Q)(e)?{...o,...e}:o}:{...o,...t},{...i,sx:s}}},70505:(e,t,r)=>{"use strict";r.d(t,{A:()=>u});var n=r(74840),o=r(69145),a=r(79449),i=r(23505),s=r(35505),l=r(57356);const c=function(){function e(e,t,r,o){const s={[e]:t,theme:r},l=o[e];if(!l)return{[e]:t};const{cssProperty:c=e,themeKey:u,transform:d,style:f}=l;if(null==t)return null;if("typography"===u&&"inherit"===t)return{[e]:t};const p=(0,a.Yn)(r,u)||{};if(f)return f(s);return(0,i.NI)(s,t,(t=>{let r=(0,a.BO)(p,d,t);return t===r&&"string"===typeof t&&(r=(0,a.BO)(p,d,`${e}${"default"===t?"":(0,n.A)(t)}`,t)),!1===c?r:{[c]:r}}))}return function t(r){const{sx:n,theme:a={}}=r||{};if(!n)return null;const c=a.unstable_sxConfig??l.A;function u(r){let n=r;if("function"===typeof r)n=r(a);else if("object"!==typeof r)return r;if(!n)return null;const l=(0,i.EU)(a.breakpoints),u=Object.keys(l);let d=l;return Object.keys(n).forEach((r=>{const s=(l=n[r],u=a,"function"===typeof l?l(u):l);var l,u;if(null!==s&&void 0!==s)if("object"===typeof s)if(c[r])d=(0,o.A)(d,e(r,s,a,c));else{const e=(0,i.NI)({theme:a},s,(e=>({[r]:e})));!function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];const n=t.reduce(((e,t)=>e.concat(Object.keys(t))),[]),o=new Set(n);return t.every((e=>o.size===Object.keys(e).length))}(e,s)?d=(0,o.A)(d,e):d[r]=t({sx:s,theme:a})}else d=(0,o.A)(d,e(r,s,a,c))})),(0,s._S)(a,(0,i.vf)(u,d))}return Array.isArray(n)?n.map(u):u(n)}}();c.filterProps=["sx"];const u=c},35619:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var n=r(95593),o=r(35789);const a=(0,n.A)();const i=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a;return(0,o.A)(e)}},51522:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(73808);function o(e){const{theme:t,name:r,props:o}=e;return t&&t.components&&t.components[r]&&t.components[r].defaultProps?(0,n.A)(t.components[r].defaultProps,o):o}},62161:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(51522),o=r(35619);function a(e){let{props:t,name:r,defaultTheme:a,themeId:i}=e,s=(0,o.A)(a);return i&&(s=s[i]||s),(0,n.A)({theme:s,name:r,props:t})}},35789:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(9950),o=r(55245);const a=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;const t=n.useContext(o.T);return t&&(r=t,0!==Object.keys(r).length)?t:e;var r}},74840:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(72950);function o(e){if("string"!==typeof e)throw new Error((0,n.A)(7));return e.charAt(0).toUpperCase()+e.slice(1)}},22382:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,Q:()=>o});var n=r(9950);function o(e){if("object"!==typeof e||null===e)return!1;const t=Object.getPrototypeOf(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function a(e){if(n.isValidElement(e)||!o(e))return e;const t={};return Object.keys(e).forEach((r=>{t[r]=a(e[r])})),t}function i(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{clone:!0};const s=r.clone?{...e}:e;return o(e)&&o(t)&&Object.keys(t).forEach((l=>{n.isValidElement(t[l])?s[l]=t[l]:o(t[l])&&Object.prototype.hasOwnProperty.call(e,l)&&o(e[l])?s[l]=i(e[l],t[l],r):r.clone?s[l]=o(t[l])?a(t[l]):t[l]:s[l]=t[l]})),s}},72950:(e,t,r)=>{"use strict";function n(e){const t=new URL(`https://mui.com/production-error/?code=${e}`);for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return n.forEach((e=>t.searchParams.append("args[]",e))),`Minified MUI error #${e}; visit ${t} for the full message.`}r.d(t,{A:()=>n})},73808:(e,t,r)=>{"use strict";function n(e,t){const r={...t};for(const o in e)if(Object.prototype.hasOwnProperty.call(e,o)){const a=o;if("components"===a||"slots"===a)r[a]={...e[a],...r[a]};else if("componentsProps"===a||"slotProps"===a){const o=e[a],i=t[a];if(i)if(o){r[a]={...i};for(const e in o)if(Object.prototype.hasOwnProperty.call(o,e)){const t=e;r[a][t]=n(o[t],i[t])}}else r[a]=i;else r[a]=o||{}}else void 0===r[a]&&(r[a]=e[a])}return r}r.d(t,{A:()=>n})},29424:(e,t,r)=>{"use strict";function n(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];if(!e){var a;if(void 0===t)a=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var i=0;(a=new Error(t.replace(/%s/g,(function(){return n[i++]})))).name="Invariant Violation"}throw a.framesToPop=1,a}}r.d(t,{V:()=>n})},40192:(e,t,r)=>{"use strict";function n(e,t,r,n){var o=r?r.call(n,e,t):void 0;if(void 0!==o)return!!o;if(e===t)return!0;if("object"!==typeof e||!e||"object"!==typeof t||!t)return!1;var a=Object.keys(e),i=Object.keys(t);if(a.length!==i.length)return!1;for(var s=Object.prototype.hasOwnProperty.bind(t),l=0;l<a.length;l++){var c=a[l];if(!s(c))return!1;var u=e[c],d=t[c];if(!1===(o=r?r.call(n,u,d,c):void 0)||void 0===o&&u!==d)return!1}return!0}r.d(t,{b:()=>n})},65604:function(e,t,r){!function(e,t){"use strict";function r(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function n(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e){return o="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}function s(e,t){if(null==e)return{};var r,n,o=i(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function l(e,t){return c(e)||u(e,t)||d(e,t)||p()}function c(e){if(Array.isArray(e))return e}function u(e,t){var r=e&&("undefined"!==typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null!=r){var n,o,a=[],i=!0,s=!1;try{for(r=r.call(e);!(i=(n=r.next()).done)&&(a.push(n.value),!t||a.length!==t);i=!0);}catch(l){s=!0,o=l}finally{try{i||null==r.return||r.return()}finally{if(s)throw o}}return a}}function d(e,t){if(e){if("string"===typeof e)return f(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?f(e,t):void 0}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function p(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var m,g,v,y,b={exports:{}};function w(){return g?m:(g=1,m="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}function x(){if(y)return v;y=1;var e=w();function t(){}function r(){}return r.resetWarningCache=t,v=function(){function n(t,r,n,o,a,i){if(i!==e){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function o(){return n}n.isRequired=n;var a={array:n,bool:n,func:n,number:n,object:n,string:n,symbol:n,any:n,arrayOf:o,element:n,elementType:n,instanceOf:o,node:n,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:r,resetWarningCache:t};return a.PropTypes=a,a}}b.exports=x()();var S=h(b.exports),A=function(e,r,n){var o=!!n,a=t.useRef(n);t.useEffect((function(){a.current=n}),[n]),t.useEffect((function(){if(!o||!e)return function(){};var t=function(){a.current&&a.current.apply(a,arguments)};return e.on(r,t),function(){e.off(r,t)}}),[o,r,e,a])},k=function(e){var r=t.useRef(e);return t.useEffect((function(){r.current=e}),[e]),r.current},C=function(e){return null!==e&&"object"===o(e)},I=function(e){return C(e)&&"function"===typeof e.then},E=function(e){return C(e)&&"function"===typeof e.elements&&"function"===typeof e.createToken&&"function"===typeof e.createPaymentMethod&&"function"===typeof e.confirmCardPayment},D="[object Object]",T=function e(t,r){if(!C(t)||!C(r))return t===r;var n=Array.isArray(t);if(n!==Array.isArray(r))return!1;var o=Object.prototype.toString.call(t)===D;if(o!==(Object.prototype.toString.call(r)===D))return!1;if(!o&&!n)return t===r;var a=Object.keys(t),i=Object.keys(r);if(a.length!==i.length)return!1;for(var s={},l=0;l<a.length;l+=1)s[a[l]]=!0;for(var c=0;c<i.length;c+=1)s[i[c]]=!0;var u=Object.keys(s);if(u.length!==a.length)return!1;var d=t,f=r,p=function(t){return e(d[t],f[t])};return u.every(p)},O=function(e,t,r){return C(e)?Object.keys(e).reduce((function(o,i){var s=!C(t)||!T(e[i],t[i]);return r.includes(i)?(s&&console.warn("Unsupported prop change: options.".concat(i," is not a mutable property.")),o):s?n(n({},o||{}),{},a({},i,e[i])):o}),null):null},M="Invalid prop `stripe` supplied to `Elements`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details.",P=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:M;if(null===e||E(e))return e;throw new Error(t)},j=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:M;if(I(e))return{tag:"async",stripePromise:Promise.resolve(e).then((function(e){return P(e,t)}))};var r=P(e,t);return null===r?{tag:"empty"}:{tag:"sync",stripe:r}},R=function(e){e&&e._registerWrapper&&e.registerAppInfo&&(e._registerWrapper({name:"react-stripe-js",version:"2.9.0"}),e.registerAppInfo({name:"react-stripe-js",version:"2.9.0",url:"https://stripe.com/docs/stripe-js/react"}))},_=t.createContext(null);_.displayName="ElementsContext";var N=function(e,t){if(!e)throw new Error("Could not find Elements context; You need to wrap the part of your app that ".concat(t," in an <Elements> provider."));return e},L=function(e){var r=e.stripe,n=e.options,o=e.children,a=t.useMemo((function(){return j(r)}),[r]),i=l(t.useState((function(){return{stripe:"sync"===a.tag?a.stripe:null,elements:"sync"===a.tag?a.stripe.elements(n):null}})),2),s=i[0],c=i[1];t.useEffect((function(){var e=!0,t=function(e){c((function(t){return t.stripe?t:{stripe:e,elements:e.elements(n)}}))};return"async"!==a.tag||s.stripe?"sync"!==a.tag||s.stripe||t(a.stripe):a.stripePromise.then((function(r){r&&e&&t(r)})),function(){e=!1}}),[a,s,n]);var u=k(r);t.useEffect((function(){null!==u&&u!==r&&console.warn("Unsupported prop change on Elements: You cannot change the `stripe` prop after setting it.")}),[u,r]);var d=k(n);return t.useEffect((function(){if(s.elements){var e=O(n,d,["clientSecret","fonts"]);e&&s.elements.update(e)}}),[n,d,s.elements]),t.useEffect((function(){R(s.stripe)}),[s.stripe]),t.createElement(_.Provider,{value:s},o)};L.propTypes={stripe:S.any,options:S.object};var U=function(e){var r=t.useContext(_);return N(r,e)},B=function(){return U("calls useElements()").elements},F=function(e){return(0,e.children)(U("mounts <ElementsConsumer>"))};F.propTypes={children:S.func.isRequired};var z=["on","session"],W=t.createContext(null);W.displayName="CheckoutSdkContext";var H=function(e,t){if(!e)throw new Error("Could not find CheckoutProvider context; You need to wrap the part of your app that ".concat(t," in an <CheckoutProvider> provider."));return e},Y=t.createContext(null);Y.displayName="CheckoutContext";var V=function(e,t){if(!e)return null;e.on,e.session;var r=s(e,z);return n(n({},r),t||e.session())},G="Invalid prop `stripe` supplied to `CheckoutProvider`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details.",Z=function(e){var r=e.stripe,n=e.options,o=e.children,a=t.useMemo((function(){return j(r,G)}),[r]),i=l(t.useState(null),2),s=i[0],c=i[1],u=l(t.useState((function(){return{stripe:"sync"===a.tag?a.stripe:null,checkoutSdk:null}})),2),d=u[0],f=u[1],p=function(e,t){f((function(r){return r.stripe&&r.checkoutSdk?r:{stripe:e,checkoutSdk:t}}))},h=t.useRef(!1);t.useEffect((function(){var e=!0;return"async"!==a.tag||d.stripe?"sync"===a.tag&&a.stripe&&!h.current&&(h.current=!0,a.stripe.initCheckout(n).then((function(e){e&&(p(a.stripe,e),e.on("change",c))}))):a.stripePromise.then((function(t){t&&e&&!h.current&&(h.current=!0,t.initCheckout(n).then((function(e){e&&(p(t,e),e.on("change",c))})))})),function(){e=!1}}),[a,d,n,c]);var m=k(r);t.useEffect((function(){null!==m&&m!==r&&console.warn("Unsupported prop change on CheckoutProvider: You cannot change the `stripe` prop after setting it.")}),[m,r]);var g=k(n);t.useEffect((function(){var e,t;if(d.checkoutSdk){!n.clientSecret||C(g)||T(n.clientSecret,g.clientSecret)||console.warn("Unsupported prop change: options.clientSecret is not a mutable property.");var r=null===g||void 0===g||null===(e=g.elementsOptions)||void 0===e?void 0:e.appearance,o=null===n||void 0===n||null===(t=n.elementsOptions)||void 0===t?void 0:t.appearance;o&&!T(o,r)&&d.checkoutSdk.changeAppearance(o)}}),[n,g,d.checkoutSdk]),t.useEffect((function(){R(d.stripe)}),[d.stripe]);var v=t.useMemo((function(){return V(d.checkoutSdk,s)}),[d.checkoutSdk,s]);return d.checkoutSdk?t.createElement(W.Provider,{value:d},t.createElement(Y.Provider,{value:v},o)):null};Z.propTypes={stripe:S.any,options:S.shape({clientSecret:S.string.isRequired,elementsOptions:S.object}).isRequired};var Q=function(e){var r=t.useContext(W);return H(r,e)},K=function(e){var r=t.useContext(W),n=t.useContext(_);if(r&&n)throw new Error("You cannot wrap the part of your app that ".concat(e," in both <CheckoutProvider> and <Elements> providers."));return r?H(r,e):N(n,e)},X=function(){Q("calls useCheckout()");var e=t.useContext(Y);if(!e)throw new Error("Could not find Checkout Context; You need to wrap the part of your app that calls useCheckout() in an <CheckoutProvider> provider.");return e},J=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},$=function(e,r){var n="".concat(J(e),"Element"),o=r?function(e){K("mounts <".concat(n,">"));var r=e.id,o=e.className;return t.createElement("div",{id:r,className:o})}:function(r){var o,a=r.id,i=r.className,s=r.options,c=void 0===s?{}:s,u=r.onBlur,d=r.onFocus,f=r.onReady,p=r.onChange,h=r.onEscape,m=r.onClick,g=r.onLoadError,v=r.onLoaderStart,y=r.onNetworksChange,b=r.onConfirm,w=r.onCancel,x=r.onShippingAddressChange,S=r.onShippingRateChange,C=K("mounts <".concat(n,">")),I="elements"in C?C.elements:null,E="checkoutSdk"in C?C.checkoutSdk:null,D=l(t.useState(null),2),T=D[0],M=D[1],P=t.useRef(null),j=t.useRef(null);A(T,"blur",u),A(T,"focus",d),A(T,"escape",h),A(T,"click",m),A(T,"loaderror",g),A(T,"loaderstart",v),A(T,"networkschange",y),A(T,"confirm",b),A(T,"cancel",w),A(T,"shippingaddresschange",x),A(T,"shippingratechange",S),A(T,"change",p),f&&(o="expressCheckout"===e?f:function(){f(T)}),A(T,"ready",o),t.useLayoutEffect((function(){if(null===P.current&&null!==j.current&&(I||E)){var t=null;E?t=E.createElement(e,c):I&&(t=I.create(e,c)),P.current=t,M(t),t&&t.mount(j.current)}}),[I,E,c]);var R=k(c);return t.useEffect((function(){if(P.current){var e=O(c,R,["paymentRequest"]);e&&"update"in P.current&&P.current.update(e)}}),[c,R]),t.useLayoutEffect((function(){return function(){if(P.current&&"function"===typeof P.current.destroy)try{P.current.destroy(),P.current=null}catch(e){}}}),[]),t.createElement("div",{id:a,className:i,ref:j})};return o.propTypes={id:S.string,className:S.string,onChange:S.func,onBlur:S.func,onFocus:S.func,onReady:S.func,onEscape:S.func,onClick:S.func,onLoadError:S.func,onLoaderStart:S.func,onNetworksChange:S.func,onConfirm:S.func,onCancel:S.func,onShippingAddressChange:S.func,onShippingRateChange:S.func,options:S.object},o.displayName=n,o.__elementType=e,o},q="undefined"===typeof window,ee=t.createContext(null);ee.displayName="EmbeddedCheckoutProviderContext";var te=function(){var e=t.useContext(ee);if(!e)throw new Error("<EmbeddedCheckout> must be used within <EmbeddedCheckoutProvider>");return e},re="Invalid prop `stripe` supplied to `EmbeddedCheckoutProvider`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details.",ne=function(e){var r=e.stripe,n=e.options,o=e.children,a=t.useMemo((function(){return j(r,re)}),[r]),i=t.useRef(null),s=t.useRef(null),c=l(t.useState({embeddedCheckout:null}),2),u=c[0],d=c[1];t.useEffect((function(){if(!s.current&&!i.current){var e=function(e){s.current||i.current||(s.current=e,i.current=s.current.initEmbeddedCheckout(n).then((function(e){d({embeddedCheckout:e})})))};"async"!==a.tag||s.current||!n.clientSecret&&!n.fetchClientSecret?"sync"!==a.tag||s.current||!n.clientSecret&&!n.fetchClientSecret||e(a.stripe):a.stripePromise.then((function(t){t&&e(t)}))}}),[a,n,u,s]),t.useEffect((function(){return function(){u.embeddedCheckout?(i.current=null,u.embeddedCheckout.destroy()):i.current&&i.current.then((function(){i.current=null,u.embeddedCheckout&&u.embeddedCheckout.destroy()}))}}),[u.embeddedCheckout]),t.useEffect((function(){R(s)}),[s]);var f=k(r);t.useEffect((function(){null!==f&&f!==r&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the `stripe` prop after setting it.")}),[f,r]);var p=k(n);return t.useEffect((function(){null!=p&&(null!=n?(void 0===n.clientSecret&&void 0===n.fetchClientSecret&&console.warn("Invalid props passed to EmbeddedCheckoutProvider: You must provide one of either `options.fetchClientSecret` or `options.clientSecret`."),null!=p.clientSecret&&n.clientSecret!==p.clientSecret&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the client secret after setting it. Unmount and create a new instance of EmbeddedCheckoutProvider instead."),null!=p.fetchClientSecret&&n.fetchClientSecret!==p.fetchClientSecret&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change fetchClientSecret after setting it. Unmount and create a new instance of EmbeddedCheckoutProvider instead."),null!=p.onComplete&&n.onComplete!==p.onComplete&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the onComplete option after setting it."),null!=p.onShippingDetailsChange&&n.onShippingDetailsChange!==p.onShippingDetailsChange&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the onShippingDetailsChange option after setting it."),null!=p.onLineItemsChange&&n.onLineItemsChange!==p.onLineItemsChange&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the onLineItemsChange option after setting it.")):console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot unset options after setting them."))}),[p,n]),t.createElement(ee.Provider,{value:u},o)},oe=function(e){var r=e.id,n=e.className,o=te().embeddedCheckout,a=t.useRef(!1),i=t.useRef(null);return t.useLayoutEffect((function(){return!a.current&&o&&null!==i.current&&(o.mount(i.current),a.current=!0),function(){if(a.current&&o)try{o.unmount(),a.current=!1}catch(e){}}}),[o]),t.createElement("div",{ref:i,id:r,className:n})},ae=function(e){var r=e.id,n=e.className;return te(),t.createElement("div",{id:r,className:n})},ie=q?ae:oe,se=function(){return K("calls useStripe()").stripe},le=$("auBankAccount",q),ce=$("card",q),ue=$("cardNumber",q),de=$("cardExpiry",q),fe=$("cardCvc",q),pe=$("fpxBank",q),he=$("iban",q),me=$("idealBank",q),ge=$("p24Bank",q),ve=$("epsBank",q),ye=$("payment",q),be=$("expressCheckout",q),we=$("currencySelector",q),xe=$("paymentRequestButton",q),Se=$("linkAuthentication",q),Ae=$("address",q),ke=$("shippingAddress",q),Ce=$("paymentMethodMessaging",q),Ie=$("affirmMessage",q),Ee=$("afterpayClearpayMessage",q);e.AddressElement=Ae,e.AffirmMessageElement=Ie,e.AfterpayClearpayMessageElement=Ee,e.AuBankAccountElement=le,e.CardCvcElement=fe,e.CardElement=ce,e.CardExpiryElement=de,e.CardNumberElement=ue,e.CheckoutProvider=Z,e.CurrencySelectorElement=we,e.Elements=L,e.ElementsConsumer=F,e.EmbeddedCheckout=ie,e.EmbeddedCheckoutProvider=ne,e.EpsBankElement=ve,e.ExpressCheckoutElement=be,e.FpxBankElement=pe,e.IbanElement=he,e.IdealBankElement=me,e.LinkAuthenticationElement=Se,e.P24BankElement=ge,e.PaymentElement=ye,e.PaymentMethodMessagingElement=Ce,e.PaymentRequestButtonElement=xe,e.ShippingAddressElement=ke,e.useCheckout=X,e.useElements=B,e.useStripe=se}(t,r(9950))},26380:(e,t,r)=>{"use strict";var n=r(46676),o=r(66897),a=r(52576);function i(){return l.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(i()<t)throw new RangeError("Invalid typed array length");return l.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=l.prototype:(null===e&&(e=new l(t)),e.length=t),e}function l(e,t,r){if(!l.TYPED_ARRAY_SUPPORT&&!(this instanceof l))return new l(e,t,r);if("number"===typeof e){if("string"===typeof t)throw new Error("If encoding is specified then the first argument must be a string");return d(this,e)}return c(this,e,t,r)}function c(e,t,r,n){if("number"===typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!==typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,r,n){if(t.byteLength,r<0||t.byteLength<r)throw new RangeError("'offset' is out of bounds");if(t.byteLength<r+(n||0))throw new RangeError("'length' is out of bounds");t=void 0===r&&void 0===n?new Uint8Array(t):void 0===n?new Uint8Array(t,r):new Uint8Array(t,r,n);l.TYPED_ARRAY_SUPPORT?(e=t).__proto__=l.prototype:e=f(e,t);return e}(e,t,r,n):"string"===typeof t?function(e,t,r){"string"===typeof r&&""!==r||(r="utf8");if(!l.isEncoding(r))throw new TypeError('"encoding" must be a valid string encoding');var n=0|h(t,r);e=s(e,n);var o=e.write(t,r);o!==n&&(e=e.slice(0,o));return e}(e,t,r):function(e,t){if(l.isBuffer(t)){var r=0|p(t.length);return 0===(e=s(e,r)).length||t.copy(e,0,0,r),e}if(t){if("undefined"!==typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!==typeof t.length||function(e){return e!==e}(t.length)?s(e,0):f(e,t);if("Buffer"===t.type&&a(t.data))return f(e,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function u(e){if("number"!==typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function d(e,t){if(u(t),e=s(e,t<0?0:0|p(t)),!l.TYPED_ARRAY_SUPPORT)for(var r=0;r<t;++r)e[r]=0;return e}function f(e,t){var r=t.length<0?0:0|p(t.length);e=s(e,r);for(var n=0;n<r;n+=1)e[n]=255&t[n];return e}function p(e){if(e>=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|e}function h(e,t){if(l.isBuffer(e))return e.length;if("undefined"!==typeof ArrayBuffer&&"function"===typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!==typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return z(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return W(e).length;default:if(n)return z(e).length;t=(""+t).toLowerCase(),n=!0}}function m(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,r);case"utf8":case"utf-8":return I(this,t,r);case"ascii":return D(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return C(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function g(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function v(e,t,r,n,o){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=o?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(o)return-1;r=e.length-1}else if(r<0){if(!o)return-1;r=0}if("string"===typeof t&&(t=l.from(t,n)),l.isBuffer(t))return 0===t.length?-1:y(e,t,r,n,o);if("number"===typeof t)return t&=255,l.TYPED_ARRAY_SUPPORT&&"function"===typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):y(e,[t],r,n,o);throw new TypeError("val must be string, number or Buffer")}function y(e,t,r,n,o){var a,i=1,s=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;i=2,s/=2,l/=2,r/=2}function c(e,t){return 1===i?e[t]:e.readUInt16BE(t*i)}if(o){var u=-1;for(a=r;a<s;a++)if(c(e,a)===c(t,-1===u?0:a-u)){if(-1===u&&(u=a),a-u+1===l)return u*i}else-1!==u&&(a-=a-u),u=-1}else for(r+l>s&&(r=s-l),a=r;a>=0;a--){for(var d=!0,f=0;f<l;f++)if(c(e,a+f)!==c(t,f)){d=!1;break}if(d)return a}return-1}function b(e,t,r,n){r=Number(r)||0;var o=e.length-r;n?(n=Number(n))>o&&(n=o):n=o;var a=t.length;if(a%2!==0)throw new TypeError("Invalid hex string");n>a/2&&(n=a/2);for(var i=0;i<n;++i){var s=parseInt(t.substr(2*i,2),16);if(isNaN(s))return i;e[r+i]=s}return i}function w(e,t,r,n){return H(z(t,e.length-r),e,r,n)}function x(e,t,r,n){return H(function(e){for(var t=[],r=0;r<e.length;++r)t.push(255&e.charCodeAt(r));return t}(t),e,r,n)}function S(e,t,r,n){return x(e,t,r,n)}function A(e,t,r,n){return H(W(t),e,r,n)}function k(e,t,r,n){return H(function(e,t){for(var r,n,o,a=[],i=0;i<e.length&&!((t-=2)<0);++i)n=(r=e.charCodeAt(i))>>8,o=r%256,a.push(o),a.push(n);return a}(t,e.length-r),e,r,n)}function C(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function I(e,t,r){r=Math.min(e.length,r);for(var n=[],o=t;o<r;){var a,i,s,l,c=e[o],u=null,d=c>239?4:c>223?3:c>191?2:1;if(o+d<=r)switch(d){case 1:c<128&&(u=c);break;case 2:128===(192&(a=e[o+1]))&&(l=(31&c)<<6|63&a)>127&&(u=l);break;case 3:a=e[o+1],i=e[o+2],128===(192&a)&&128===(192&i)&&(l=(15&c)<<12|(63&a)<<6|63&i)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:a=e[o+1],i=e[o+2],s=e[o+3],128===(192&a)&&128===(192&i)&&128===(192&s)&&(l=(15&c)<<18|(63&a)<<12|(63&i)<<6|63&s)>65535&&l<1114112&&(u=l)}null===u?(u=65533,d=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),o+=d}return function(e){var t=e.length;if(t<=E)return String.fromCharCode.apply(String,e);var r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=E));return r}(n)}t.hp=l,t.IS=50,l.TYPED_ARRAY_SUPPORT=void 0!==r.g.TYPED_ARRAY_SUPPORT?r.g.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"===typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(t){return!1}}(),i(),l.poolSize=8192,l._augment=function(e){return e.__proto__=l.prototype,e},l.from=function(e,t,r){return c(null,e,t,r)},l.TYPED_ARRAY_SUPPORT&&(l.prototype.__proto__=Uint8Array.prototype,l.__proto__=Uint8Array,"undefined"!==typeof Symbol&&Symbol.species&&l[Symbol.species]===l&&Object.defineProperty(l,Symbol.species,{value:null,configurable:!0})),l.alloc=function(e,t,r){return function(e,t,r,n){return u(t),t<=0?s(e,t):void 0!==r?"string"===typeof n?s(e,t).fill(r,n):s(e,t).fill(r):s(e,t)}(null,e,t,r)},l.allocUnsafe=function(e){return d(null,e)},l.allocUnsafeSlow=function(e){return d(null,e)},l.isBuffer=function(e){return!(null==e||!e._isBuffer)},l.compare=function(e,t){if(!l.isBuffer(e)||!l.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var r=e.length,n=t.length,o=0,a=Math.min(r,n);o<a;++o)if(e[o]!==t[o]){r=e[o],n=t[o];break}return r<n?-1:n<r?1:0},l.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},l.concat=function(e,t){if(!a(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return l.alloc(0);var r;if(void 0===t)for(t=0,r=0;r<e.length;++r)t+=e[r].length;var n=l.allocUnsafe(t),o=0;for(r=0;r<e.length;++r){var i=e[r];if(!l.isBuffer(i))throw new TypeError('"list" argument must be an Array of Buffers');i.copy(n,o),o+=i.length}return n},l.byteLength=h,l.prototype._isBuffer=!0,l.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)g(this,t,t+1);return this},l.prototype.swap32=function(){var e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)g(this,t,t+3),g(this,t+1,t+2);return this},l.prototype.swap64=function(){var e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)g(this,t,t+7),g(this,t+1,t+6),g(this,t+2,t+5),g(this,t+3,t+4);return this},l.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?I(this,0,e):m.apply(this,arguments)},l.prototype.equals=function(e){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===l.compare(this,e)},l.prototype.inspect=function(){var e="",r=t.IS;return this.length>0&&(e=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(e+=" ... ")),"<Buffer "+e+">"},l.prototype.compare=function(e,t,r,n,o){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),t<0||r>e.length||n<0||o>this.length)throw new RangeError("out of range index");if(n>=o&&t>=r)return 0;if(n>=o)return-1;if(t>=r)return 1;if(this===e)return 0;for(var a=(o>>>=0)-(n>>>=0),i=(r>>>=0)-(t>>>=0),s=Math.min(a,i),c=this.slice(n,o),u=e.slice(t,r),d=0;d<s;++d)if(c[d]!==u[d]){a=c[d],i=u[d];break}return a<i?-1:i<a?1:0},l.prototype.includes=function(e,t,r){return-1!==this.indexOf(e,t,r)},l.prototype.indexOf=function(e,t,r){return v(this,e,t,r,!0)},l.prototype.lastIndexOf=function(e,t,r){return v(this,e,t,r,!1)},l.prototype.write=function(e,t,r,n){if(void 0===t)n="utf8",r=this.length,t=0;else if(void 0===r&&"string"===typeof t)n=t,r=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(r)?(r|=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var o=this.length-t;if((void 0===r||r>o)&&(r=o),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return b(this,e,t,r);case"utf8":case"utf-8":return w(this,e,t,r);case"ascii":return x(this,e,t,r);case"latin1":case"binary":return S(this,e,t,r);case"base64":return A(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var E=4096;function D(e,t,r){var n="";r=Math.min(e.length,r);for(var o=t;o<r;++o)n+=String.fromCharCode(127&e[o]);return n}function T(e,t,r){var n="";r=Math.min(e.length,r);for(var o=t;o<r;++o)n+=String.fromCharCode(e[o]);return n}function O(e,t,r){var n=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>n)&&(r=n);for(var o="",a=t;a<r;++a)o+=F(e[a]);return o}function M(e,t,r){for(var n=e.slice(t,r),o="",a=0;a<n.length;a+=2)o+=String.fromCharCode(n[a]+256*n[a+1]);return o}function P(e,t,r){if(e%1!==0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}function j(e,t,r,n,o,a){if(!l.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||t<a)throw new RangeError('"value" argument is out of bounds');if(r+n>e.length)throw new RangeError("Index out of range")}function R(e,t,r,n){t<0&&(t=65535+t+1);for(var o=0,a=Math.min(e.length-r,2);o<a;++o)e[r+o]=(t&255<<8*(n?o:1-o))>>>8*(n?o:1-o)}function _(e,t,r,n){t<0&&(t=4294967295+t+1);for(var o=0,a=Math.min(e.length-r,4);o<a;++o)e[r+o]=t>>>8*(n?o:3-o)&255}function N(e,t,r,n,o,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function L(e,t,r,n,a){return a||N(e,0,r,4),o.write(e,t,r,n,23,4),r+4}function U(e,t,r,n,a){return a||N(e,0,r,8),o.write(e,t,r,n,52,8),r+8}l.prototype.slice=function(e,t){var r,n=this.length;if((e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t<e&&(t=e),l.TYPED_ARRAY_SUPPORT)(r=this.subarray(e,t)).__proto__=l.prototype;else{var o=t-e;r=new l(o,void 0);for(var a=0;a<o;++a)r[a]=this[a+e]}return r},l.prototype.readUIntLE=function(e,t,r){e|=0,t|=0,r||P(e,t,this.length);for(var n=this[e],o=1,a=0;++a<t&&(o*=256);)n+=this[e+a]*o;return n},l.prototype.readUIntBE=function(e,t,r){e|=0,t|=0,r||P(e,t,this.length);for(var n=this[e+--t],o=1;t>0&&(o*=256);)n+=this[e+--t]*o;return n},l.prototype.readUInt8=function(e,t){return t||P(e,1,this.length),this[e]},l.prototype.readUInt16LE=function(e,t){return t||P(e,2,this.length),this[e]|this[e+1]<<8},l.prototype.readUInt16BE=function(e,t){return t||P(e,2,this.length),this[e]<<8|this[e+1]},l.prototype.readUInt32LE=function(e,t){return t||P(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},l.prototype.readUInt32BE=function(e,t){return t||P(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},l.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||P(e,t,this.length);for(var n=this[e],o=1,a=0;++a<t&&(o*=256);)n+=this[e+a]*o;return n>=(o*=128)&&(n-=Math.pow(2,8*t)),n},l.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||P(e,t,this.length);for(var n=t,o=1,a=this[e+--n];n>0&&(o*=256);)a+=this[e+--n]*o;return a>=(o*=128)&&(a-=Math.pow(2,8*t)),a},l.prototype.readInt8=function(e,t){return t||P(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},l.prototype.readInt16LE=function(e,t){t||P(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},l.prototype.readInt16BE=function(e,t){t||P(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},l.prototype.readInt32LE=function(e,t){return t||P(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},l.prototype.readInt32BE=function(e,t){return t||P(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},l.prototype.readFloatLE=function(e,t){return t||P(e,4,this.length),o.read(this,e,!0,23,4)},l.prototype.readFloatBE=function(e,t){return t||P(e,4,this.length),o.read(this,e,!1,23,4)},l.prototype.readDoubleLE=function(e,t){return t||P(e,8,this.length),o.read(this,e,!0,52,8)},l.prototype.readDoubleBE=function(e,t){return t||P(e,8,this.length),o.read(this,e,!1,52,8)},l.prototype.writeUIntLE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||j(this,e,t,r,Math.pow(2,8*r)-1,0);var o=1,a=0;for(this[t]=255&e;++a<r&&(o*=256);)this[t+a]=e/o&255;return t+r},l.prototype.writeUIntBE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||j(this,e,t,r,Math.pow(2,8*r)-1,0);var o=r-1,a=1;for(this[t+o]=255&e;--o>=0&&(a*=256);)this[t+o]=e/a&255;return t+r},l.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,1,255,0),l.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},l.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):R(this,e,t,!0),t+2},l.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):R(this,e,t,!1),t+2},l.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):_(this,e,t,!0),t+4},l.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):_(this,e,t,!1),t+4},l.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t|=0,!n){var o=Math.pow(2,8*r-1);j(this,e,t,r,o-1,-o)}var a=0,i=1,s=0;for(this[t]=255&e;++a<r&&(i*=256);)e<0&&0===s&&0!==this[t+a-1]&&(s=1),this[t+a]=(e/i|0)-s&255;return t+r},l.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t|=0,!n){var o=Math.pow(2,8*r-1);j(this,e,t,r,o-1,-o)}var a=r-1,i=1,s=0;for(this[t+a]=255&e;--a>=0&&(i*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/i|0)-s&255;return t+r},l.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,1,127,-128),l.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},l.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):R(this,e,t,!0),t+2},l.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):R(this,e,t,!1),t+2},l.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,4,2147483647,-2147483648),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):_(this,e,t,!0),t+4},l.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||j(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):_(this,e,t,!1),t+4},l.prototype.writeFloatLE=function(e,t,r){return L(this,e,t,!0,r)},l.prototype.writeFloatBE=function(e,t,r){return L(this,e,t,!1,r)},l.prototype.writeDoubleLE=function(e,t,r){return U(this,e,t,!0,r)},l.prototype.writeDoubleBE=function(e,t,r){return U(this,e,t,!1,r)},l.prototype.copy=function(e,t,r,n){if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t<n-r&&(n=e.length-t+r);var o,a=n-r;if(this===e&&r<t&&t<n)for(o=a-1;o>=0;--o)e[o+t]=this[o+r];else if(a<1e3||!l.TYPED_ARRAY_SUPPORT)for(o=0;o<a;++o)e[o+t]=this[o+r];else Uint8Array.prototype.set.call(e,this.subarray(r,r+a),t);return a},l.prototype.fill=function(e,t,r,n){if("string"===typeof e){if("string"===typeof t?(n=t,t=0,r=this.length):"string"===typeof r&&(n=r,r=this.length),1===e.length){var o=e.charCodeAt(0);o<256&&(e=o)}if(void 0!==n&&"string"!==typeof n)throw new TypeError("encoding must be a string");if("string"===typeof n&&!l.isEncoding(n))throw new TypeError("Unknown encoding: "+n)}else"number"===typeof e&&(e&=255);if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;var a;if(t>>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(a=t;a<r;++a)this[a]=e;else{var i=l.isBuffer(e)?e:z(new l(e,n).toString()),s=i.length;for(a=0;a<r-t;++a)this[a+t]=i[a%s]}return this};var B=/[^+\/0-9A-Za-z-_]/g;function F(e){return e<16?"0"+e.toString(16):e.toString(16)}function z(e,t){var r;t=t||1/0;for(var n=e.length,o=null,a=[],i=0;i<n;++i){if((r=e.charCodeAt(i))>55295&&r<57344){if(!o){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(i+1===n){(t-=3)>-1&&a.push(239,191,189);continue}o=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(t-=3)>-1&&a.push(239,191,189);if(o=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function W(e){return n.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(B,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function H(e,t,r,n){for(var o=0;o<n&&!(o+r>=t.length||o>=e.length);++o)t[o+r]=e[o];return o}},97689:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateStunUrl=function(e){var t=e.useFipsEndpoints?"stuns":"stun",r=e.useFipsEndpoints?"-fips":"";if(e.useDualStackEndpoints)return"".concat(t,":stun.kinesisvideo").concat(r,".").concat(e.region,".api.aws:443");return"".concat(t,":stun.kinesisvideo").concat(r,".").concat(e.region,".amazonaws.com:443")}},40038:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.Role=void 0,function(e){e.MASTER="MASTER",e.VIEWER="VIEWER"}(r||(t.Role=r={}))},98768:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SigV4RequestSigner=void 0;var n=r(48046),o=n.__importDefault(r(69709)),a=r(49957),i=function(){function e(t,r,n){void 0===n&&(n=e.DEFAULT_SERVICE),this.region=t,this.credentials=r,this.service=n}return e.prototype.getSignedURL=function(t,r){return n.__awaiter(this,arguments,void 0,(function(t,r,o){var i,s,l,c,u,d,f,p,h,m,g,v,y,b,w,x,S,A,k,C,I,E,D;return void 0===o&&(o=new Date),n.__generator(this,(function(n){switch(n.label){case 0:return"function"!==typeof this.credentials.getPromise?[3,2]:[4,this.credentials.getPromise()];case 1:n.sent(),n.label=2;case 2:if((0,a.validateValueNonNil)(this.credentials.accessKeyId,"credentials.accessKeyId"),(0,a.validateValueNonNil)(this.credentials.secretAccessKey,"credentials.secretAccessKey"),i=e.getDateTimeString(o),s=e.getDateString(o),c="".concat(l="wss","://"),!t.startsWith(c))throw new Error("Endpoint '".concat(t,"' is not a secure WebSocket endpoint. It should start with '").concat(c,"'."));if(t.includes("?"))throw new Error("Endpoint '".concat(t,"' should not contain any query parameters."));return(u=t.indexOf("/",c.length))<0?(d=t.substring(c.length),f="/"):(d=t.substring(c.length,u),f=t.substring(u)),p=["host"].join(";"),h="GET",m=s+"/"+this.region+"/"+this.service+"/aws4_request",g=Object.assign({},r,{"X-Amz-Algorithm":e.DEFAULT_ALGORITHM,"X-Amz-Credential":this.credentials.accessKeyId+"/"+m,"X-Amz-Date":i,"X-Amz-Expires":"299","X-Amz-SignedHeaders":p}),this.credentials.sessionToken&&Object.assign(g,{"X-Amz-Security-Token":this.credentials.sessionToken}),v=e.createQueryString(g),y={host:d},b=e.createHeadersString(y),[4,e.sha256("")];case 3:return w=n.sent(),x=[h,f,v,b,p,w].join("\n"),[4,e.sha256(x)];case 4:return S=n.sent(),A=[e.DEFAULT_ALGORITHM,i,m,S].join("\n"),[4,this.getSignatureKey(s)];case 5:return k=n.sent(),E=(I=e).toHex,[4,e.hmac(k,A)];case 6:return[4,E.apply(I,[n.sent()])];case 7:return C=n.sent(),D=Object.assign({},g,{"X-Amz-Signature":C}),[2,l+"://"+d+f+"?"+e.createQueryString(D)]}}))}))},e.prototype.getSignatureKey=function(t){return n.__awaiter(this,void 0,void 0,(function(){var r,o,a;return n.__generator(this,(function(n){switch(n.label){case 0:return[4,e.hmac("AWS4"+this.credentials.secretAccessKey,t)];case 1:return r=n.sent(),[4,e.hmac(r,this.region)];case 2:return o=n.sent(),[4,e.hmac(o,this.service)];case 3:return a=n.sent(),[4,e.hmac(a,"aws4_request")];case 4:return[2,n.sent()]}}))}))},e.createHeadersString=function(e){return Object.keys(e).map((function(t){return"".concat(t,":").concat(e[t],"\n")})).join()},e.createQueryString=function(e){return Object.keys(e).sort().map((function(t){return"".concat(t,"=").concat(encodeURIComponent(e[t]))})).join("&")},e.getDateTimeString=function(e){return e.toISOString().replace(/\.\d{3}Z$/,"Z").replace(/[:\-]/g,"")},e.getDateString=function(e){return this.getDateTimeString(e).substring(0,8)},e.sha256=function(e){return n.__awaiter(this,void 0,void 0,(function(){var t;return n.__generator(this,(function(r){switch(r.label){case 0:return[4,o.default.subtle.digest({name:"SHA-256"},this.toUint8Array(e).buffer)];case 1:return t=r.sent(),[2,this.toHex(t)]}}))}))},e.hmac=function(e,t){return n.__awaiter(this,void 0,void 0,(function(){var r,a,i;return n.__generator(this,(function(n){switch(n.label){case 0:return r="string"===typeof e?this.toUint8Array(e).buffer:e,a=this.toUint8Array(t).buffer,[4,o.default.subtle.importKey("raw",r,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"])];case 1:return i=n.sent(),[4,o.default.subtle.sign({name:"HMAC",hash:{name:"SHA-256"}},i,a)];case 2:return[2,n.sent()]}}))}))},e.toUint8Array=function(e){for(var t=new ArrayBuffer(e.length),r=new Uint8Array(t),n=0,o=e.length;n<o;n++)r[n]=e.charCodeAt(n);return r},e.toHex=function(e){return Array.from(new Uint8Array(e)).map((function(e){return e.toString(16).padStart(2,"0")})).join("")},e.DEFAULT_ALGORITHM="AWS4-HMAC-SHA256",e.DEFAULT_SERVICE="kinesisvideo",e}();t.SigV4RequestSigner=i},89419:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SignalingClient=void 0;var n,o,a=r(48046),i=r(28981),s=r(40038),l=r(98768),c=a.__importDefault(r(62011)),u=r(49957);!function(e){e.SDP_ANSWER="SDP_ANSWER",e.SDP_OFFER="SDP_OFFER",e.ICE_CANDIDATE="ICE_CANDIDATE",e.STATUS_RESPONSE="STATUS_RESPONSE"}(n||(n={})),function(e){e[e.CONNECTING=0]="CONNECTING",e[e.OPEN=1]="OPEN",e[e.CLOSING=2]="CLOSING",e[e.CLOSED=3]="CLOSED"}(o||(o={}));var d=function(e){function t(t){var r=e.call(this)||this;return r.websocket=null,r.readyState=o.CLOSED,r.pendingIceCandidatesByClientId={},r.hasReceivedRemoteSDPByClientId={},(0,u.validateValueNonNil)(t,"SignalingClientConfig"),(0,u.validateValueNonNil)(t.role,"role"),t.role===s.Role.VIEWER?(0,u.validateValueNonNil)(t.clientId,"clientId"):(0,u.validateValueNil)(t.clientId,"clientId"),(0,u.validateValueNonNil)(t.channelARN,"channelARN"),(0,u.validateValueNonNil)(t.region,"region"),(0,u.validateValueNonNil)(t.channelEndpoint,"channelEndpoint"),r.config=a.__assign({},t),t.requestSigner?r.requestSigner=t.requestSigner:((0,u.validateValueNonNil)(t.credentials,"credentials"),r.requestSigner=new l.SigV4RequestSigner(t.region,t.credentials)),r.dateProvider=new c.default(t.systemClockOffset||0),r.logger=t.logger,r.onOpen=r.onOpen.bind(r),r.onMessage=r.onMessage.bind(r),r.onError=r.onError.bind(r),r.onClose=r.onClose.bind(r),r}return a.__extends(t,e),t.prototype.open=function(){var e=this;if(this.readyState!==o.CLOSED)throw new Error("Client is already open, opening, or closing");this.readyState=o.CONNECTING,this.asyncOpen().then().catch((function(t){return e.onError(t)}))},t.prototype.asyncOpen=function(){return a.__awaiter(this,void 0,void 0,(function(){var e,t;return a.__generator(this,(function(n){switch(n.label){case 0:return e={"X-Amz-ChannelARN":this.config.channelARN},this.config.role===s.Role.VIEWER&&(e["X-Amz-ClientId"]=this.config.clientId),[4,this.requestSigner.getSignedURL(this.config.channelEndpoint,e,this.dateProvider.getDate())];case 1:return t=n.sent(),this.readyState!==o.CONNECTING?[2]:(this.websocket=new(WebSocket||r(27162))(t),this.websocket.addEventListener("open",this.onOpen),this.websocket.addEventListener("message",this.onMessage),this.websocket.addEventListener("error",this.onError),this.websocket.addEventListener("close",this.onClose),[2])}}))}))},t.prototype.close=function(){null!==this.websocket?(this.readyState=o.CLOSING,this.websocket.close()):this.readyState!==o.CLOSED&&this.onClose()},t.prototype.sendSdpOffer=function(e,t,r){this.sendMessage(n.SDP_OFFER,e,t,r)},t.prototype.sendSdpAnswer=function(e,t,r){this.sendMessage(n.SDP_ANSWER,e,t,r)},t.prototype.sendIceCandidate=function(e,t,r){this.sendMessage(n.ICE_CANDIDATE,e,t,r)},t.prototype.drainPendingIceCandidates=function(e){this.emitPendingIceCandidates(e)},t.prototype.getPendingIceCandidates=function(e){var r=e||t.DEFAULT_CLIENT_ID;return a.__spreadArray([],this.pendingIceCandidatesByClientId[r]||[],!0)},t.prototype.isEarlyIceCandidateBufferingEnabled=function(){return!0===this.config.enableEarlyIceCandidateBuffering},t.prototype.resetIceCandidateState=function(e){var r,n=e||t.DEFAULT_CLIENT_ID;delete this.hasReceivedRemoteSDPByClientId[n],delete this.pendingIceCandidatesByClientId[n],null===(r=this.logger)||void 0===r||r.debug(t.LOG_PREFIX,"ICE candidate state reset for",n)},t.prototype.sendMessage=function(e,r,n,a){if(this.readyState!==o.OPEN)throw new Error("Could not send message because the connection to the signaling service is not open.");this.validateRecipientClientId(n),this.validateCorrelationId(a),this.websocket.send(JSON.stringify({action:e,messagePayload:t.serializeJSONObjectAsBase64String(r),recipientClientId:n||void 0,correlationId:a||void 0}))},t.prototype.cleanupWebSocket=function(){null!==this.websocket&&(this.websocket.removeEventListener("open",this.onOpen),this.websocket.removeEventListener("message",this.onMessage),this.websocket.removeEventListener("error",this.onError),this.websocket.removeEventListener("close",this.onClose),this.websocket=null)},t.prototype.onOpen=function(){this.readyState=o.OPEN,this.emit("open")},t.prototype.onMessage=function(e){var r,o,a,i;try{a=JSON.parse(e.data)}catch(u){return}try{i=t.parseJSONObjectFromBase64String(a.messagePayload)}catch(u){}var s=a.messageType,l=a.senderClientId,c=a.statusResponse;if(i||c)switch(s){case n.SDP_OFFER:return this.hasReceivedRemoteSDPByClientId[l||t.DEFAULT_CLIENT_ID]=!0,null===(r=this.logger)||void 0===r||r.debug(t.LOG_PREFIX,"SDP_OFFER received. Pending ICE candidates for",l||t.DEFAULT_CLIENT_ID,":",(this.pendingIceCandidatesByClientId[l||t.DEFAULT_CLIENT_ID]||[]).length),this.emit("sdpOffer",i,l),void(this.isEarlyIceCandidateBufferingEnabled()||this.emitPendingIceCandidates(l));case n.SDP_ANSWER:return this.hasReceivedRemoteSDPByClientId[l||t.DEFAULT_CLIENT_ID]=!0,null===(o=this.logger)||void 0===o||o.debug(t.LOG_PREFIX,"SDP_ANSWER received. Pending ICE candidates for",l||t.DEFAULT_CLIENT_ID,":",(this.pendingIceCandidatesByClientId[l||t.DEFAULT_CLIENT_ID]||[]).length),this.emit("sdpAnswer",i,l),void(this.isEarlyIceCandidateBufferingEnabled()||this.emitPendingIceCandidates(l));case n.ICE_CANDIDATE:return void this.emitOrQueueIceCandidate(i,l);case n.STATUS_RESPONSE:return void this.emit("statusResponse",c)}},t.parseJSONObjectFromBase64String=function(e){try{return JSON.parse(atob(e))}catch(t){return JSON.parse(Buffer.from(e,"base64").toString())}},t.serializeJSONObjectAsBase64String=function(e){try{return btoa(JSON.stringify(e))}catch(t){return Buffer.from(JSON.stringify(e)).toString("base64")}},t.prototype.emitOrQueueIceCandidate=function(e,r){var n,o,a=r||t.DEFAULT_CLIENT_ID;this.hasReceivedRemoteSDPByClientId[a]?(null===(n=this.logger)||void 0===n||n.debug(t.LOG_PREFIX,"ICE candidate arrived AFTER SDP for",a,"- emitting immediately"),this.emit("iceCandidate",e,r)):(this.pendingIceCandidatesByClientId[a]||(this.pendingIceCandidatesByClientId[a]=[]),this.pendingIceCandidatesByClientId[a].push(e),null===(o=this.logger)||void 0===o||o.debug(t.LOG_PREFIX,"ICE candidate arrived before SDP for",a,"- buffered. Pending count:",this.pendingIceCandidatesByClientId[a].length,"Candidate:",JSON.stringify(e)))},t.prototype.emitPendingIceCandidates=function(e){var r,n=this,o=e||t.DEFAULT_CLIENT_ID;this.hasReceivedRemoteSDPByClientId[o]=!0;var a=this.pendingIceCandidatesByClientId[o];a&&(null===(r=this.logger)||void 0===r||r.debug(t.LOG_PREFIX,"DRAINING",a.length,"pending ICE candidates for",o),delete this.pendingIceCandidatesByClientId[o],a.forEach((function(r){var o;n.emit("iceCandidate",r,e)||null===(o=n.logger)||void 0===o||o.warn(t.LOG_PREFIX,"No iceCandidate listener attached. ICE candidate was emitted but not handled.",JSON.stringify(r))})))},t.prototype.validateRecipientClientId=function(e){if(this.config.role===s.Role.VIEWER&&e)throw new Error("Unexpected recipient client id. As the VIEWER, messages must not be sent with a recipient client id.")},t.prototype.validateCorrelationId=function(e){if(e&&!/^[a-zA-Z0-9_.-]{1,256}$/.test(e))throw new Error("Correlation id does not fit the constraint!")},t.prototype.onError=function(e){this.emit("error",e)},t.prototype.onClose=function(){this.readyState=o.CLOSED,this.cleanupWebSocket(),this.emit("close")},t.DEFAULT_CLIENT_ID="MASTER",t.LOG_PREFIX="[SignalingClient]",t}(i.EventEmitter);t.SignalingClient=d},99892:(e,t,r)=>{"use strict";t.gB=t.Xh=void 0;var n=r(40038);Object.defineProperty(t,"Xh",{enumerable:!0,get:function(){return n.Role}});var o=r(89419);Object.defineProperty(t,"gB",{enumerable:!0,get:function(){return o.SignalingClient}});var a=r(98768);var i=r(97689)},62011:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e){this.clockOffsetMs=e}return e.prototype.getDate=function(){return new Date(Date.now()+this.clockOffsetMs)},e}();t.default=r},49957:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validateValueNonNil=function(e,t){if(null===e)throw new Error("".concat(t," cannot be null"));if(void 0===e)throw new Error("".concat(t," cannot be undefined"));if(""===e)throw new Error("".concat(t," cannot be empty"))},t.validateValueNil=function(e,t){if(null!==e&&void 0!==e&&""!==e)throw new Error("".concat(t," should be null"))}},27162:e=>{"use strict";e.exports=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}},46676:(e,t)=>{"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,a=s(e),i=a[0],l=a[1],c=new o(function(e,t,r){return 3*(t+r)/4-r}(0,i,l)),u=0,d=l>0?i-4:i;for(r=0;r<d;r+=4)t=n[e.charCodeAt(r)]<<18|n[e.charCodeAt(r+1)]<<12|n[e.charCodeAt(r+2)]<<6|n[e.charCodeAt(r+3)],c[u++]=t>>16&255,c[u++]=t>>8&255,c[u++]=255&t;2===l&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,c[u++]=255&t);1===l&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,c[u++]=t>>8&255,c[u++]=255&t);return c},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,a=[],i=16383,s=0,c=n-o;s<c;s+=i)a.push(l(e,s,s+i>c?c:s+i));1===o?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return a.join("")};for(var r=[],n=[],o="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0;i<64;++i)r[i]=a[i],n[a.charCodeAt(i)]=i;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function l(e,t,n){for(var o,a,i=[],s=t;s<n;s+=3)o=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(255&e[s+2]),i.push(r[(a=o)>>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return i.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},93325:(e,t,r)=>{"use strict";const n=r(46676),o=r(66897),a="function"===typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.hp=l,t.IS=50;const i=2147483647;function s(e){if(e>i)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,l.prototype),t}function l(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return d(e)}return c(e,t,r)}function c(e,t,r){if("string"===typeof e)return function(e,t){"string"===typeof t&&""!==t||(t="utf8");if(!l.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|m(e,t);let n=s(r);const o=n.write(e,t);o!==r&&(n=n.slice(0,o));return n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(K(e,Uint8Array)){const t=new Uint8Array(e);return p(t.buffer,t.byteOffset,t.byteLength)}return f(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(K(e,ArrayBuffer)||e&&K(e.buffer,ArrayBuffer))return p(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(K(e,SharedArrayBuffer)||e&&K(e.buffer,SharedArrayBuffer)))return p(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return l.from(n,t,r);const o=function(e){if(l.isBuffer(e)){const t=0|h(e.length),r=s(t);return 0===r.length||e.copy(r,0,0,t),r}if(void 0!==e.length)return"number"!==typeof e.length||X(e.length)?s(0):f(e);if("Buffer"===e.type&&Array.isArray(e.data))return f(e.data)}(e);if(o)return o;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return l.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function u(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function d(e){return u(e),s(e<0?0:0|h(e))}function f(e){const t=e.length<0?0:0|h(e.length),r=s(t);for(let n=0;n<t;n+=1)r[n]=255&e[n];return r}function p(e,t,r){if(t<0||e.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(e.byteLength<t+(r||0))throw new RangeError('"length" is outside of buffer bounds');let n;return n=void 0===t&&void 0===r?new Uint8Array(e):void 0===r?new Uint8Array(e,t):new Uint8Array(e,t,r),Object.setPrototypeOf(n,l.prototype),n}function h(e){if(e>=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return 0|e}function m(e,t){if(l.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||K(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let o=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return G(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return Z(e).length;default:if(o)return n?-1:G(e).length;t=(""+t).toLowerCase(),o=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,r);case"utf8":case"utf-8":return I(this,t,r);case"ascii":return D(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return C(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function v(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function y(e,t,r,n,o){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),X(r=+r)&&(r=o?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(o)return-1;r=e.length-1}else if(r<0){if(!o)return-1;r=0}if("string"===typeof t&&(t=l.from(t,n)),l.isBuffer(t))return 0===t.length?-1:b(e,t,r,n,o);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):b(e,[t],r,n,o);throw new TypeError("val must be string, number or Buffer")}function b(e,t,r,n,o){let a,i=1,s=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;i=2,s/=2,l/=2,r/=2}function c(e,t){return 1===i?e[t]:e.readUInt16BE(t*i)}if(o){let n=-1;for(a=r;a<s;a++)if(c(e,a)===c(t,-1===n?0:a-n)){if(-1===n&&(n=a),a-n+1===l)return n*i}else-1!==n&&(a-=a-n),n=-1}else for(r+l>s&&(r=s-l),a=r;a>=0;a--){let r=!0;for(let n=0;n<l;n++)if(c(e,a+n)!==c(t,n)){r=!1;break}if(r)return a}return-1}function w(e,t,r,n){r=Number(r)||0;const o=e.length-r;n?(n=Number(n))>o&&(n=o):n=o;const a=t.length;let i;for(n>a/2&&(n=a/2),i=0;i<n;++i){const n=parseInt(t.substr(2*i,2),16);if(X(n))return i;e[r+i]=n}return i}function x(e,t,r,n){return Q(G(t,e.length-r),e,r,n)}function S(e,t,r,n){return Q(function(e){const t=[];for(let r=0;r<e.length;++r)t.push(255&e.charCodeAt(r));return t}(t),e,r,n)}function A(e,t,r,n){return Q(Z(t),e,r,n)}function k(e,t,r,n){return Q(function(e,t){let r,n,o;const a=[];for(let i=0;i<e.length&&!((t-=2)<0);++i)r=e.charCodeAt(i),n=r>>8,o=r%256,a.push(o),a.push(n);return a}(t,e.length-r),e,r,n)}function C(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function I(e,t,r){r=Math.min(e.length,r);const n=[];let o=t;for(;o<r;){const t=e[o];let a=null,i=t>239?4:t>223?3:t>191?2:1;if(o+i<=r){let r,n,s,l;switch(i){case 1:t<128&&(a=t);break;case 2:r=e[o+1],128===(192&r)&&(l=(31&t)<<6|63&r,l>127&&(a=l));break;case 3:r=e[o+1],n=e[o+2],128===(192&r)&&128===(192&n)&&(l=(15&t)<<12|(63&r)<<6|63&n,l>2047&&(l<55296||l>57343)&&(a=l));break;case 4:r=e[o+1],n=e[o+2],s=e[o+3],128===(192&r)&&128===(192&n)&&128===(192&s)&&(l=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&s,l>65535&&l<1114112&&(a=l))}}null===a?(a=65533,i=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),o+=i}return function(e){const t=e.length;if(t<=E)return String.fromCharCode.apply(String,e);let r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=E));return r}(n)}l.TYPED_ARRAY_SUPPORT=function(){try{const e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),42===e.foo()}catch(e){return!1}}(),l.TYPED_ARRAY_SUPPORT||"undefined"===typeof console||"function"!==typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(l.prototype,"parent",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.buffer}}),Object.defineProperty(l.prototype,"offset",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.byteOffset}}),l.poolSize=8192,l.from=function(e,t,r){return c(e,t,r)},Object.setPrototypeOf(l.prototype,Uint8Array.prototype),Object.setPrototypeOf(l,Uint8Array),l.alloc=function(e,t,r){return function(e,t,r){return u(e),e<=0?s(e):void 0!==t?"string"===typeof r?s(e).fill(t,r):s(e).fill(t):s(e)}(e,t,r)},l.allocUnsafe=function(e){return d(e)},l.allocUnsafeSlow=function(e){return d(e)},l.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==l.prototype},l.compare=function(e,t){if(K(e,Uint8Array)&&(e=l.from(e,e.offset,e.byteLength)),K(t,Uint8Array)&&(t=l.from(t,t.offset,t.byteLength)),!l.isBuffer(e)||!l.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let r=e.length,n=t.length;for(let o=0,a=Math.min(r,n);o<a;++o)if(e[o]!==t[o]){r=e[o],n=t[o];break}return r<n?-1:n<r?1:0},l.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},l.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return l.alloc(0);let r;if(void 0===t)for(t=0,r=0;r<e.length;++r)t+=e[r].length;const n=l.allocUnsafe(t);let o=0;for(r=0;r<e.length;++r){let t=e[r];if(K(t,Uint8Array))o+t.length>n.length?(l.isBuffer(t)||(t=l.from(t)),t.copy(n,o)):Uint8Array.prototype.set.call(n,t,o);else{if(!l.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,o)}o+=t.length}return n},l.byteLength=m,l.prototype._isBuffer=!0,l.prototype.swap16=function(){const e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;t<e;t+=2)v(this,t,t+1);return this},l.prototype.swap32=function(){const e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let t=0;t<e;t+=4)v(this,t,t+3),v(this,t+1,t+2);return this},l.prototype.swap64=function(){const e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let t=0;t<e;t+=8)v(this,t,t+7),v(this,t+1,t+6),v(this,t+2,t+5),v(this,t+3,t+4);return this},l.prototype.toString=function(){const e=this.length;return 0===e?"":0===arguments.length?I(this,0,e):g.apply(this,arguments)},l.prototype.toLocaleString=l.prototype.toString,l.prototype.equals=function(e){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===l.compare(this,e)},l.prototype.inspect=function(){let e="";const r=t.IS;return e=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(e+=" ... "),"<Buffer "+e+">"},a&&(l.prototype[a]=l.prototype.inspect),l.prototype.compare=function(e,t,r,n,o){if(K(e,Uint8Array)&&(e=l.from(e,e.offset,e.byteLength)),!l.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),t<0||r>e.length||n<0||o>this.length)throw new RangeError("out of range index");if(n>=o&&t>=r)return 0;if(n>=o)return-1;if(t>=r)return 1;if(this===e)return 0;let a=(o>>>=0)-(n>>>=0),i=(r>>>=0)-(t>>>=0);const s=Math.min(a,i),c=this.slice(n,o),u=e.slice(t,r);for(let l=0;l<s;++l)if(c[l]!==u[l]){a=c[l],i=u[l];break}return a<i?-1:i<a?1:0},l.prototype.includes=function(e,t,r){return-1!==this.indexOf(e,t,r)},l.prototype.indexOf=function(e,t,r){return y(this,e,t,r,!0)},l.prototype.lastIndexOf=function(e,t,r){return y(this,e,t,r,!1)},l.prototype.write=function(e,t,r,n){if(void 0===t)n="utf8",r=this.length,t=0;else if(void 0===r&&"string"===typeof t)n=t,r=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t>>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const o=this.length-t;if((void 0===r||r>o)&&(r=o),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let a=!1;for(;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return x(this,e,t,r);case"ascii":case"latin1":case"binary":return S(this,e,t,r);case"base64":return A(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const E=4096;function D(e,t,r){let n="";r=Math.min(e.length,r);for(let o=t;o<r;++o)n+=String.fromCharCode(127&e[o]);return n}function T(e,t,r){let n="";r=Math.min(e.length,r);for(let o=t;o<r;++o)n+=String.fromCharCode(e[o]);return n}function O(e,t,r){const n=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>n)&&(r=n);let o="";for(let a=t;a<r;++a)o+=J[e[a]];return o}function M(e,t,r){const n=e.slice(t,r);let o="";for(let a=0;a<n.length-1;a+=2)o+=String.fromCharCode(n[a]+256*n[a+1]);return o}function P(e,t,r){if(e%1!==0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}function j(e,t,r,n,o,a){if(!l.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||t<a)throw new RangeError('"value" argument is out of bounds');if(r+n>e.length)throw new RangeError("Index out of range")}function R(e,t,r,n,o){W(t,n,o,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;let i=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=i,i>>=8,e[r++]=i,i>>=8,e[r++]=i,i>>=8,e[r++]=i,r}function _(e,t,r,n,o){W(t,n,o,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;let i=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=i,i>>=8,e[r+2]=i,i>>=8,e[r+1]=i,i>>=8,e[r]=i,r+8}function N(e,t,r,n,o,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function L(e,t,r,n,a){return t=+t,r>>>=0,a||N(e,0,r,4),o.write(e,t,r,n,23,4),r+4}function U(e,t,r,n,a){return t=+t,r>>>=0,a||N(e,0,r,8),o.write(e,t,r,n,52,8),r+8}l.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t<e&&(t=e);const n=this.subarray(e,t);return Object.setPrototypeOf(n,l.prototype),n},l.prototype.readUintLE=l.prototype.readUIntLE=function(e,t,r){e>>>=0,t>>>=0,r||P(e,t,this.length);let n=this[e],o=1,a=0;for(;++a<t&&(o*=256);)n+=this[e+a]*o;return n},l.prototype.readUintBE=l.prototype.readUIntBE=function(e,t,r){e>>>=0,t>>>=0,r||P(e,t,this.length);let n=this[e+--t],o=1;for(;t>0&&(o*=256);)n+=this[e+--t]*o;return n},l.prototype.readUint8=l.prototype.readUInt8=function(e,t){return e>>>=0,t||P(e,1,this.length),this[e]},l.prototype.readUint16LE=l.prototype.readUInt16LE=function(e,t){return e>>>=0,t||P(e,2,this.length),this[e]|this[e+1]<<8},l.prototype.readUint16BE=l.prototype.readUInt16BE=function(e,t){return e>>>=0,t||P(e,2,this.length),this[e]<<8|this[e+1]},l.prototype.readUint32LE=l.prototype.readUInt32LE=function(e,t){return e>>>=0,t||P(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},l.prototype.readUint32BE=l.prototype.readUInt32BE=function(e,t){return e>>>=0,t||P(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},l.prototype.readBigUInt64LE=$((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||Y(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,o=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(o)<<BigInt(32))})),l.prototype.readBigUInt64BE=$((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||Y(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],o=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<<BigInt(32))+BigInt(o)})),l.prototype.readIntLE=function(e,t,r){e>>>=0,t>>>=0,r||P(e,t,this.length);let n=this[e],o=1,a=0;for(;++a<t&&(o*=256);)n+=this[e+a]*o;return o*=128,n>=o&&(n-=Math.pow(2,8*t)),n},l.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||P(e,t,this.length);let n=t,o=1,a=this[e+--n];for(;n>0&&(o*=256);)a+=this[e+--n]*o;return o*=128,a>=o&&(a-=Math.pow(2,8*t)),a},l.prototype.readInt8=function(e,t){return e>>>=0,t||P(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},l.prototype.readInt16LE=function(e,t){e>>>=0,t||P(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},l.prototype.readInt16BE=function(e,t){e>>>=0,t||P(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},l.prototype.readInt32LE=function(e,t){return e>>>=0,t||P(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},l.prototype.readInt32BE=function(e,t){return e>>>=0,t||P(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},l.prototype.readBigInt64LE=$((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||Y(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<<BigInt(32))+BigInt(t+256*this[++e]+65536*this[++e]+this[++e]*2**24)})),l.prototype.readBigInt64BE=$((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||Y(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<<BigInt(32))+BigInt(this[++e]*2**24+65536*this[++e]+256*this[++e]+r)})),l.prototype.readFloatLE=function(e,t){return e>>>=0,t||P(e,4,this.length),o.read(this,e,!0,23,4)},l.prototype.readFloatBE=function(e,t){return e>>>=0,t||P(e,4,this.length),o.read(this,e,!1,23,4)},l.prototype.readDoubleLE=function(e,t){return e>>>=0,t||P(e,8,this.length),o.read(this,e,!0,52,8)},l.prototype.readDoubleBE=function(e,t){return e>>>=0,t||P(e,8,this.length),o.read(this,e,!1,52,8)},l.prototype.writeUintLE=l.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t>>>=0,r>>>=0,!n){j(this,e,t,r,Math.pow(2,8*r)-1,0)}let o=1,a=0;for(this[t]=255&e;++a<r&&(o*=256);)this[t+a]=e/o&255;return t+r},l.prototype.writeUintBE=l.prototype.writeUIntBE=function(e,t,r,n){if(e=+e,t>>>=0,r>>>=0,!n){j(this,e,t,r,Math.pow(2,8*r)-1,0)}let o=r-1,a=1;for(this[t+o]=255&e;--o>=0&&(a*=256);)this[t+o]=e/a&255;return t+r},l.prototype.writeUint8=l.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,1,255,0),this[t]=255&e,t+1},l.prototype.writeUint16LE=l.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},l.prototype.writeUint16BE=l.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},l.prototype.writeUint32LE=l.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},l.prototype.writeUint32BE=l.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},l.prototype.writeBigUInt64LE=$((function(e){return R(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),l.prototype.writeBigUInt64BE=$((function(e){return _(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),l.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);j(this,e,t,r,n-1,-n)}let o=0,a=1,i=0;for(this[t]=255&e;++o<r&&(a*=256);)e<0&&0===i&&0!==this[t+o-1]&&(i=1),this[t+o]=(e/a|0)-i&255;return t+r},l.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);j(this,e,t,r,n-1,-n)}let o=r-1,a=1,i=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)e<0&&0===i&&0!==this[t+o+1]&&(i=1),this[t+o]=(e/a|0)-i&255;return t+r},l.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},l.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},l.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},l.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},l.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},l.prototype.writeBigInt64LE=$((function(e){return R(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),l.prototype.writeBigInt64BE=$((function(e){return _(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),l.prototype.writeFloatLE=function(e,t,r){return L(this,e,t,!0,r)},l.prototype.writeFloatBE=function(e,t,r){return L(this,e,t,!1,r)},l.prototype.writeDoubleLE=function(e,t,r){return U(this,e,t,!0,r)},l.prototype.writeDoubleBE=function(e,t,r){return U(this,e,t,!1,r)},l.prototype.copy=function(e,t,r,n){if(!l.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t<n-r&&(n=e.length-t+r);const o=n-r;return this===e&&"function"===typeof Uint8Array.prototype.copyWithin?this.copyWithin(t,r,n):Uint8Array.prototype.set.call(e,this.subarray(r,n),t),o},l.prototype.fill=function(e,t,r,n){if("string"===typeof e){if("string"===typeof t?(n=t,t=0,r=this.length):"string"===typeof r&&(n=r,r=this.length),void 0!==n&&"string"!==typeof n)throw new TypeError("encoding must be a string");if("string"===typeof n&&!l.isEncoding(n))throw new TypeError("Unknown encoding: "+n);if(1===e.length){const t=e.charCodeAt(0);("utf8"===n&&t<128||"latin1"===n)&&(e=t)}}else"number"===typeof e?e&=255:"boolean"===typeof e&&(e=Number(e));if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;let o;if(t>>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(o=t;o<r;++o)this[o]=e;else{const a=l.isBuffer(e)?e:l.from(e,n),i=a.length;if(0===i)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(o=0;o<r-t;++o)this[o+t]=a[o%i]}return this};const B={};function F(e,t,r){B[e]=class extends r{constructor(){super(),Object.defineProperty(this,"message",{value:t.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${e}]`,this.stack,delete this.name}get code(){return e}set code(e){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:e,writable:!0})}toString(){return`${this.name} [${e}]: ${this.message}`}}}function z(e){let t="",r=e.length;const n="-"===e[0]?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function W(e,t,r,n,o,a){if(e>r||e<t){const n="bigint"===typeof t?"n":"";let o;throw o=a>3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(a+1)}${n}`:`>= -(2${n} ** ${8*(a+1)-1}${n}) and < 2 ** ${8*(a+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new B.ERR_OUT_OF_RANGE("value",o,e)}!function(e,t,r){H(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||Y(t,e.length-(r+1))}(n,o,a)}function H(e,t){if("number"!==typeof e)throw new B.ERR_INVALID_ARG_TYPE(t,"number",e)}function Y(e,t,r){if(Math.floor(e)!==e)throw H(e,r),new B.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new B.ERR_BUFFER_OUT_OF_BOUNDS;throw new B.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}F("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),F("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),F("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,o=r;return Number.isInteger(r)&&Math.abs(r)>2**32?o=z(String(r)):"bigint"===typeof r&&(o=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(o=z(o)),o+="n"),n+=` It must be ${t}. Received ${o}`,n}),RangeError);const V=/[^+/0-9A-Za-z-_]/g;function G(e,t){let r;t=t||1/0;const n=e.length;let o=null;const a=[];for(let i=0;i<n;++i){if(r=e.charCodeAt(i),r>55295&&r<57344){if(!o){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(i+1===n){(t-=3)>-1&&a.push(239,191,189);continue}o=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(t-=3)>-1&&a.push(239,191,189);if(o=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function Z(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(V,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function Q(e,t,r,n){let o;for(o=0;o<n&&!(o+r>=t.length||o>=e.length);++o)t[o+r]=e[o];return o}function K(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function X(e){return e!==e}const J=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let o=0;o<16;++o)t[n+o]=e[r]+e[o]}return t}();function $(e){return"undefined"===typeof BigInt?q:e}function q(){throw new Error("BigInt not supported")}},44110:e=>{function t(e){var r,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(r=0;r<a;r++)e[r]&&(n=t(e[r]))&&(o&&(o+=" "),o+=n)}else for(n in e)e[n]&&(o&&(o+=" "),o+=n);return o}function r(){for(var e,r,n=0,o="",a=arguments.length;n<a;n++)(e=arguments[n])&&(r=t(e))&&(o&&(o+=" "),o+=r);return o}e.exports=r,e.exports.clsx=r},82266:(e,t)=>{"use strict";t.addLeadingZeros=function(e,t){const r=e<0?"-":"",n=Math.abs(e).toString().padStart(t,"0");return r+n}},3451:(e,t,r)=>{"use strict";Object.defineProperty(t,"defaultLocale",{enumerable:!0,get:function(){return n.enUS}});var n=r(73980)},71531:(e,t)=>{"use strict";t.getDefaultOptions=function(){return r},t.setDefaultOptions=function(e){r=e};let r={}},27763:(e,t,r)=>{"use strict";t.formatters=void 0;var n=r(43269),o=r(44938),a=r(14807),i=r(44927),s=r(20026),l=r(82266),c=r(89829);const u="midnight",d="noon",f="morning",p="afternoon",h="evening",m="night";t.formatters={G:function(e,t,r){const n=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});case"GGGGG":return r.era(n,{width:"narrow"});default:return r.era(n,{width:"wide"})}},y:function(e,t,r){if("yo"===t){const t=e.getFullYear(),n=t>0?t:1-t;return r.ordinalNumber(n,{unit:"year"})}return c.lightFormatters.y(e,t)},Y:function(e,t,r,n){const o=(0,s.getWeekYear)(e,n),a=o>0?o:1-o;if("YY"===t){const e=a%100;return(0,l.addLeadingZeros)(e,2)}return"Yo"===t?r.ordinalNumber(a,{unit:"year"}):(0,l.addLeadingZeros)(a,t.length)},R:function(e,t){const r=(0,a.getISOWeekYear)(e);return(0,l.addLeadingZeros)(r,t.length)},u:function(e,t){const r=e.getFullYear();return(0,l.addLeadingZeros)(r,t.length)},Q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(n);case"QQ":return(0,l.addLeadingZeros)(n,2);case"Qo":return r.ordinalNumber(n,{unit:"quarter"});case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});default:return r.quarter(n,{width:"wide",context:"formatting"})}},q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(n);case"qq":return(0,l.addLeadingZeros)(n,2);case"qo":return r.ordinalNumber(n,{unit:"quarter"});case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});default:return r.quarter(n,{width:"wide",context:"standalone"})}},M:function(e,t,r){const n=e.getMonth();switch(t){case"M":case"MM":return c.lightFormatters.M(e,t);case"Mo":return r.ordinalNumber(n+1,{unit:"month"});case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});default:return r.month(n,{width:"wide",context:"formatting"})}},L:function(e,t,r){const n=e.getMonth();switch(t){case"L":return String(n+1);case"LL":return(0,l.addLeadingZeros)(n+1,2);case"Lo":return r.ordinalNumber(n+1,{unit:"month"});case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});default:return r.month(n,{width:"wide",context:"standalone"})}},w:function(e,t,r,n){const o=(0,i.getWeek)(e,n);return"wo"===t?r.ordinalNumber(o,{unit:"week"}):(0,l.addLeadingZeros)(o,t.length)},I:function(e,t,r){const n=(0,o.getISOWeek)(e);return"Io"===t?r.ordinalNumber(n,{unit:"week"}):(0,l.addLeadingZeros)(n,t.length)},d:function(e,t,r){return"do"===t?r.ordinalNumber(e.getDate(),{unit:"date"}):c.lightFormatters.d(e,t)},D:function(e,t,r){const o=(0,n.getDayOfYear)(e);return"Do"===t?r.ordinalNumber(o,{unit:"dayOfYear"}):(0,l.addLeadingZeros)(o,t.length)},E:function(e,t,r){const n=e.getDay();switch(t){case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},e:function(e,t,r,n){const o=e.getDay(),a=(o-n.weekStartsOn+8)%7||7;switch(t){case"e":return String(a);case"ee":return(0,l.addLeadingZeros)(a,2);case"eo":return r.ordinalNumber(a,{unit:"day"});case"eee":return r.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return r.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(o,{width:"short",context:"formatting"});default:return r.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,r,n){const o=e.getDay(),a=(o-n.weekStartsOn+8)%7||7;switch(t){case"c":return String(a);case"cc":return(0,l.addLeadingZeros)(a,t.length);case"co":return r.ordinalNumber(a,{unit:"day"});case"ccc":return r.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return r.day(o,{width:"narrow",context:"standalone"});case"cccccc":return r.day(o,{width:"short",context:"standalone"});default:return r.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,r){const n=e.getDay(),o=0===n?7:n;switch(t){case"i":return String(o);case"ii":return(0,l.addLeadingZeros)(o,t.length);case"io":return r.ordinalNumber(o,{unit:"day"});case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});case"iiiiii":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},a:function(e,t,r){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(n,{width:"narrow",context:"formatting"});default:return r.dayPeriod(n,{width:"wide",context:"formatting"})}},b:function(e,t,r){const n=e.getHours();let o;switch(o=12===n?d:0===n?u:n/12>=1?"pm":"am",t){case"b":case"bb":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(o,{width:"narrow",context:"formatting"});default:return r.dayPeriod(o,{width:"wide",context:"formatting"})}},B:function(e,t,r){const n=e.getHours();let o;switch(o=n>=17?h:n>=12?p:n>=4?f:m,t){case"B":case"BB":case"BBB":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(o,{width:"narrow",context:"formatting"});default:return r.dayPeriod(o,{width:"wide",context:"formatting"})}},h:function(e,t,r){if("ho"===t){let t=e.getHours()%12;return 0===t&&(t=12),r.ordinalNumber(t,{unit:"hour"})}return c.lightFormatters.h(e,t)},H:function(e,t,r){return"Ho"===t?r.ordinalNumber(e.getHours(),{unit:"hour"}):c.lightFormatters.H(e,t)},K:function(e,t,r){const n=e.getHours()%12;return"Ko"===t?r.ordinalNumber(n,{unit:"hour"}):(0,l.addLeadingZeros)(n,t.length)},k:function(e,t,r){let n=e.getHours();return 0===n&&(n=24),"ko"===t?r.ordinalNumber(n,{unit:"hour"}):(0,l.addLeadingZeros)(n,t.length)},m:function(e,t,r){return"mo"===t?r.ordinalNumber(e.getMinutes(),{unit:"minute"}):c.lightFormatters.m(e,t)},s:function(e,t,r){return"so"===t?r.ordinalNumber(e.getSeconds(),{unit:"second"}):c.lightFormatters.s(e,t)},S:function(e,t){return c.lightFormatters.S(e,t)},X:function(e,t,r){const n=e.getTimezoneOffset();if(0===n)return"Z";switch(t){case"X":return v(n);case"XXXX":case"XX":return y(n);default:return y(n,":")}},x:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"x":return v(n);case"xxxx":case"xx":return y(n);default:return y(n,":")}},O:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+g(n,":");default:return"GMT"+y(n,":")}},z:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+g(n,":");default:return"GMT"+y(n,":")}},t:function(e,t,r){const n=Math.trunc(e.getTime()/1e3);return(0,l.addLeadingZeros)(n,t.length)},T:function(e,t,r){const n=e.getTime();return(0,l.addLeadingZeros)(n,t.length)}};function g(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const r=e>0?"-":"+",n=Math.abs(e),o=Math.trunc(n/60),a=n%60;return 0===a?r+String(o):r+String(o)+t+(0,l.addLeadingZeros)(a,2)}function v(e,t){if(e%60===0){return(e>0?"-":"+")+(0,l.addLeadingZeros)(Math.abs(e)/60,2)}return y(e,t)}function y(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const r=e>0?"-":"+",n=Math.abs(e);return r+(0,l.addLeadingZeros)(Math.trunc(n/60),2)+t+(0,l.addLeadingZeros)(n%60,2)}},89829:(e,t,r)=>{"use strict";t.lightFormatters=void 0;var n=r(82266);t.lightFormatters={y(e,t){const r=e.getFullYear(),o=r>0?r:1-r;return(0,n.addLeadingZeros)("yy"===t?o%100:o,t.length)},M(e,t){const r=e.getMonth();return"M"===t?String(r+1):(0,n.addLeadingZeros)(r+1,2)},d:(e,t)=>(0,n.addLeadingZeros)(e.getDate(),t.length),a(e,t){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];default:return"am"===r?"a.m.":"p.m."}},h:(e,t)=>(0,n.addLeadingZeros)(e.getHours()%12||12,t.length),H:(e,t)=>(0,n.addLeadingZeros)(e.getHours(),t.length),m:(e,t)=>(0,n.addLeadingZeros)(e.getMinutes(),t.length),s:(e,t)=>(0,n.addLeadingZeros)(e.getSeconds(),t.length),S(e,t){const r=t.length,o=e.getMilliseconds(),a=Math.trunc(o*Math.pow(10,r-3));return(0,n.addLeadingZeros)(a,t.length)}}},51653:(e,t)=>{"use strict";t.longFormatters=void 0;const r=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},n=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}};t.longFormatters={p:n,P:(e,t)=>{const o=e.match(/(P+)(p+)?/)||[],a=o[1],i=o[2];if(!i)return r(e,t);let s;switch(a){case"P":s=t.dateTime({width:"short"});break;case"PP":s=t.dateTime({width:"medium"});break;case"PPP":s=t.dateTime({width:"long"});break;default:s=t.dateTime({width:"full"})}return s.replace("{{date}}",r(a,t)).replace("{{time}}",n(i,t))}}},29577:(e,t)=>{"use strict";t.getRoundingMethod=function(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return 0===r?0:r}}},82757:(e,t,r)=>{"use strict";t.getTimezoneOffsetInMilliseconds=function(e){const t=(0,n.toDate)(e),r=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return r.setUTCFullYear(t.getFullYear()),+e-+r};var n=r(73094)},93980:(e,t)=>{"use strict";t.isProtectedDayOfYearToken=function(e){return r.test(e)},t.isProtectedWeekYearToken=function(e){return n.test(e)},t.warnOrThrowProtectedError=function(e,t,r){const n=function(e,t,r){const n="Y"===e[0]?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${n} to the input \`${r}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(e,t,r);if(console.warn(n),o.includes(e))throw new RangeError(n)};const r=/^D+$/,n=/^Y+$/,o=["D","DD","YY","YYYY"]},63816:(e,t,r)=>{"use strict";t.add=function(e,t){const{years:r=0,months:s=0,weeks:l=0,days:c=0,hours:u=0,minutes:d=0,seconds:f=0}=t,p=(0,i.toDate)(e),h=s||r?(0,o.addMonths)(p,s+12*r):p,m=c||l?(0,n.addDays)(h,c+7*l):h,g=1e3*(f+60*(d+60*u));return(0,a.constructFrom)(e,m.getTime()+g)};var n=r(65811),o=r(27811),a=r(19078),i=r(73094)},83949:(e,t,r)=>{"use strict";t.addBusinessDays=function(e,t){const r=(0,s.toDate)(e),l=(0,i.isWeekend)(r);if(isNaN(t))return(0,n.constructFrom)(e,NaN);const c=r.getHours(),u=t<0?-1:1,d=Math.trunc(t/5);r.setDate(r.getDate()+7*d);let f=Math.abs(t%5);for(;f>0;)r.setDate(r.getDate()+u),(0,i.isWeekend)(r)||(f-=1);l&&(0,i.isWeekend)(r)&&0!==t&&((0,o.isSaturday)(r)&&r.setDate(r.getDate()+(u<0?2:-1)),(0,a.isSunday)(r)&&r.setDate(r.getDate()+(u<0?1:-2)));return r.setHours(c),r};var n=r(19078),o=r(29204),a=r(37051),i=r(64658),s=r(73094)},65811:(e,t,r)=>{"use strict";t.addDays=function(e,t){const r=(0,n.toDate)(e);if(isNaN(t))return(0,o.constructFrom)(e,NaN);if(!t)return r;return r.setDate(r.getDate()+t),r};var n=r(73094),o=r(19078)},58213:(e,t,r)=>{"use strict";t.addHours=function(e,t){return(0,n.addMilliseconds)(e,t*o.millisecondsInHour)};var n=r(64918),o=r(4702)},685:(e,t,r)=>{"use strict";t.addISOWeekYears=function(e,t){return(0,o.setISOWeekYear)(e,(0,n.getISOWeekYear)(e)+t)};var n=r(14807),o=r(44011)},64918:(e,t,r)=>{"use strict";t.addMilliseconds=function(e,t){const r=+(0,n.toDate)(e);return(0,o.constructFrom)(e,r+t)};var n=r(73094),o=r(19078)},80999:(e,t,r)=>{"use strict";t.addMinutes=function(e,t){return(0,n.addMilliseconds)(e,t*o.millisecondsInMinute)};var n=r(64918),o=r(4702)},27811:(e,t,r)=>{"use strict";t.addMonths=function(e,t){const r=(0,n.toDate)(e);if(isNaN(t))return(0,o.constructFrom)(e,NaN);if(!t)return r;const a=r.getDate(),i=(0,o.constructFrom)(e,r.getTime());i.setMonth(r.getMonth()+t+1,0);const s=i.getDate();return a>=s?i:(r.setFullYear(i.getFullYear(),i.getMonth(),a),r)};var n=r(73094),o=r(19078)},20481:(e,t,r)=>{"use strict";t.addQuarters=function(e,t){const r=3*t;return(0,n.addMonths)(e,r)};var n=r(27811)},87727:(e,t,r)=>{"use strict";t.addSeconds=function(e,t){return(0,n.addMilliseconds)(e,1e3*t)};var n=r(64918)},29023:(e,t,r)=>{"use strict";t.addWeeks=function(e,t){const r=7*t;return(0,n.addDays)(e,r)};var n=r(65811)},33116:(e,t,r)=>{"use strict";t.addYears=function(e,t){return(0,n.addMonths)(e,12*t)};var n=r(27811)},16936:(e,t,r)=>{"use strict";t.areIntervalsOverlapping=function(e,t,r){const[o,a]=[+(0,n.toDate)(e.start),+(0,n.toDate)(e.end)].sort(((e,t)=>e-t)),[i,s]=[+(0,n.toDate)(t.start),+(0,n.toDate)(t.end)].sort(((e,t)=>e-t));return r?.inclusive?o<=s&&i<=a:o<s&&i<a};var n=r(73094)},43420:(e,t,r)=>{"use strict";t.clamp=function(e,t){return(0,o.min)([(0,n.max)([e,t.start]),t.end])};var n=r(85473),o=r(62259)},31351:(e,t,r)=>{"use strict";t.closestIndexTo=function(e,t){const r=(0,n.toDate)(e);if(isNaN(Number(r)))return NaN;const o=r.getTime();let a,i;return t.forEach((function(e,t){const r=(0,n.toDate)(e);if(isNaN(Number(r)))return a=NaN,void(i=NaN);const s=Math.abs(o-r.getTime());(null==a||s<i)&&(a=t,i=s)})),a};var n=r(73094)},1193:(e,t,r)=>{"use strict";t.closestTo=function(e,t){const r=(0,o.toDate)(e);if(isNaN(Number(r)))return(0,n.constructFrom)(e,NaN);const a=r.getTime();let i,s;return t.forEach((t=>{const r=(0,o.toDate)(t);if(isNaN(Number(r)))return i=(0,n.constructFrom)(e,NaN),void(s=NaN);const l=Math.abs(a-r.getTime());(null==i||l<s)&&(i=r,s=l)})),i};var n=r(19078),o=r(73094)},39383:(e,t,r)=>{"use strict";t.compareAsc=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t),a=r.getTime()-o.getTime();return a<0?-1:a>0?1:a};var n=r(73094)},90933:(e,t,r)=>{"use strict";t.compareDesc=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t),a=r.getTime()-o.getTime();return a>0?-1:a<0?1:a};var n=r(73094)},4702:(e,t)=>{"use strict";t.secondsInYear=t.secondsInWeek=t.secondsInQuarter=t.secondsInMonth=t.secondsInMinute=t.secondsInHour=t.secondsInDay=t.quartersInYear=t.monthsInYear=t.monthsInQuarter=t.minutesInYear=t.minutesInMonth=t.minutesInHour=t.minutesInDay=t.minTime=t.millisecondsInWeek=t.millisecondsInSecond=t.millisecondsInMinute=t.millisecondsInHour=t.millisecondsInDay=t.maxTime=t.daysInYear=t.daysInWeek=void 0;t.daysInWeek=7;const r=t.daysInYear=365.2425,n=t.maxTime=24*Math.pow(10,8)*60*60*1e3,o=(t.minTime=-n,t.millisecondsInWeek=6048e5,t.millisecondsInDay=864e5,t.millisecondsInMinute=6e4,t.millisecondsInHour=36e5,t.millisecondsInSecond=1e3,t.minutesInYear=525600,t.minutesInMonth=43200,t.minutesInDay=1440,t.minutesInHour=60,t.monthsInQuarter=3,t.monthsInYear=12,t.quartersInYear=4,t.secondsInHour=3600),a=(t.secondsInMinute=60,t.secondsInDay=24*o),i=(t.secondsInWeek=7*a,t.secondsInYear=a*r),s=t.secondsInMonth=i/12;t.secondsInQuarter=3*s},19078:(e,t)=>{"use strict";t.constructFrom=function(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}},24716:(e,t,r)=>{"use strict";t.constructNow=function(e){return(0,n.constructFrom)(e,Date.now())};var n=r(19078)},32960:(e,t,r)=>{"use strict";t.daysToWeeks=function(e){const t=e/n.daysInWeek,r=Math.trunc(t);return 0===r?0:r};var n=r(4702)},52242:(e,t,r)=>{"use strict";t.differenceInBusinessDays=function(e,t){const r=(0,l.toDate)(e);let c=(0,l.toDate)(t);if(!(0,i.isValid)(r)||!(0,i.isValid)(c))return NaN;const u=(0,o.differenceInCalendarDays)(r,c),d=u<0?-1:1,f=Math.trunc(u/7);let p=5*f;c=(0,n.addDays)(c,7*f);for(;!(0,a.isSameDay)(r,c);)p+=(0,s.isWeekend)(c)?0:d,c=(0,n.addDays)(c,d);return 0===p?0:p};var n=r(65811),o=r(18982),a=r(19859),i=r(59941),s=r(64658),l=r(73094)},18982:(e,t,r)=>{"use strict";t.differenceInCalendarDays=function(e,t){const r=(0,o.startOfDay)(e),i=(0,o.startOfDay)(t),s=+r-(0,a.getTimezoneOffsetInMilliseconds)(r),l=+i-(0,a.getTimezoneOffsetInMilliseconds)(i);return Math.round((s-l)/n.millisecondsInDay)};var n=r(4702),o=r(64086),a=r(82757)},75304:(e,t,r)=>{"use strict";t.differenceInCalendarISOWeekYears=function(e,t){return(0,n.getISOWeekYear)(e)-(0,n.getISOWeekYear)(t)};var n=r(14807)},26267:(e,t,r)=>{"use strict";t.differenceInCalendarISOWeeks=function(e,t){const r=(0,o.startOfISOWeek)(e),i=(0,o.startOfISOWeek)(t),s=+r-(0,a.getTimezoneOffsetInMilliseconds)(r),l=+i-(0,a.getTimezoneOffsetInMilliseconds)(i);return Math.round((s-l)/n.millisecondsInWeek)};var n=r(4702),o=r(5813),a=r(82757)},78890:(e,t,r)=>{"use strict";t.differenceInCalendarMonths=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t),a=r.getFullYear()-o.getFullYear(),i=r.getMonth()-o.getMonth();return 12*a+i};var n=r(73094)},10812:(e,t,r)=>{"use strict";t.differenceInCalendarQuarters=function(e,t){const r=(0,o.toDate)(e),a=(0,o.toDate)(t),i=r.getFullYear()-a.getFullYear(),s=(0,n.getQuarter)(r)-(0,n.getQuarter)(a);return 4*i+s};var n=r(21063),o=r(73094)},5368:(e,t,r)=>{"use strict";t.differenceInCalendarWeeks=function(e,t,r){const i=(0,o.startOfWeek)(e,r),s=(0,o.startOfWeek)(t,r),l=+i-(0,a.getTimezoneOffsetInMilliseconds)(i),c=+s-(0,a.getTimezoneOffsetInMilliseconds)(s);return Math.round((l-c)/n.millisecondsInWeek)};var n=r(4702),o=r(85694),a=r(82757)},71823:(e,t,r)=>{"use strict";t.differenceInCalendarYears=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t);return r.getFullYear()-o.getFullYear()};var n=r(73094)},88992:(e,t,r)=>{"use strict";t.differenceInDays=function(e,t){const r=(0,o.toDate)(e),i=(0,o.toDate)(t),s=a(r,i),l=Math.abs((0,n.differenceInCalendarDays)(r,i));r.setDate(r.getDate()-s*l);const c=Number(a(r,i)===-s),u=s*(l-c);return 0===u?0:u};var n=r(18982),o=r(73094);function a(e,t){const r=e.getFullYear()-t.getFullYear()||e.getMonth()-t.getMonth()||e.getDate()-t.getDate()||e.getHours()-t.getHours()||e.getMinutes()-t.getMinutes()||e.getSeconds()-t.getSeconds()||e.getMilliseconds()-t.getMilliseconds();return r<0?-1:r>0?1:r}},94092:(e,t,r)=>{"use strict";t.differenceInHours=function(e,t,r){const i=(0,a.differenceInMilliseconds)(e,t)/o.millisecondsInHour;return(0,n.getRoundingMethod)(r?.roundingMethod)(i)};var n=r(29577),o=r(4702),a=r(36593)},44182:(e,t,r)=>{"use strict";t.differenceInISOWeekYears=function(e,t){let r=(0,i.toDate)(e);const s=(0,i.toDate)(t),l=(0,n.compareAsc)(r,s),c=Math.abs((0,o.differenceInCalendarISOWeekYears)(r,s));r=(0,a.subISOWeekYears)(r,l*c);const u=Number((0,n.compareAsc)(r,s)===-l),d=l*(c-u);return 0===d?0:d};var n=r(39383),o=r(75304),a=r(58676),i=r(73094)},36593:(e,t,r)=>{"use strict";t.differenceInMilliseconds=function(e,t){return+(0,n.toDate)(e)-+(0,n.toDate)(t)};var n=r(73094)},17106:(e,t,r)=>{"use strict";t.differenceInMinutes=function(e,t,r){const i=(0,a.differenceInMilliseconds)(e,t)/o.millisecondsInMinute;return(0,n.getRoundingMethod)(r?.roundingMethod)(i)};var n=r(29577),o=r(4702),a=r(36593)},22668:(e,t,r)=>{"use strict";t.differenceInMonths=function(e,t){const r=(0,i.toDate)(e),s=(0,i.toDate)(t),l=(0,n.compareAsc)(r,s),c=Math.abs((0,o.differenceInCalendarMonths)(r,s));let u;if(c<1)u=0;else{1===r.getMonth()&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-l*c);let t=(0,n.compareAsc)(r,s)===-l;(0,a.isLastDayOfMonth)((0,i.toDate)(e))&&1===c&&1===(0,n.compareAsc)(e,s)&&(t=!1),u=l*(c-Number(t))}return 0===u?0:u};var n=r(39383),o=r(78890),a=r(67620),i=r(73094)},21478:(e,t,r)=>{"use strict";t.differenceInQuarters=function(e,t,r){const a=(0,o.differenceInMonths)(e,t)/3;return(0,n.getRoundingMethod)(r?.roundingMethod)(a)};var n=r(29577),o=r(22668)},23454:(e,t,r)=>{"use strict";t.differenceInSeconds=function(e,t,r){const a=(0,o.differenceInMilliseconds)(e,t)/1e3;return(0,n.getRoundingMethod)(r?.roundingMethod)(a)};var n=r(29577),o=r(36593)},80070:(e,t,r)=>{"use strict";t.differenceInWeeks=function(e,t,r){const a=(0,o.differenceInDays)(e,t)/7;return(0,n.getRoundingMethod)(r?.roundingMethod)(a)};var n=r(29577),o=r(88992)},57313:(e,t,r)=>{"use strict";t.differenceInYears=function(e,t){const r=(0,a.toDate)(e),i=(0,a.toDate)(t),s=(0,n.compareAsc)(r,i),l=Math.abs((0,o.differenceInCalendarYears)(r,i));r.setFullYear(1584),i.setFullYear(1584);const c=(0,n.compareAsc)(r,i)===-s,u=s*(l-+c);return 0===u?0:u};var n=r(39383),o=r(71823),a=r(73094)},26094:(e,t,r)=>{"use strict";t.eachDayOfInterval=function(e,t){const r=(0,n.toDate)(e.start),o=(0,n.toDate)(e.end);let a=+r>+o;const i=a?+r:+o,s=a?o:r;s.setHours(0,0,0,0);let l=t?.step??1;if(!l)return[];l<0&&(l=-l,a=!a);const c=[];for(;+s<=i;)c.push((0,n.toDate)(s)),s.setDate(s.getDate()+l),s.setHours(0,0,0,0);return a?c.reverse():c};var n=r(73094)},28928:(e,t,r)=>{"use strict";t.eachHourOfInterval=function(e,t){const r=(0,o.toDate)(e.start),a=(0,o.toDate)(e.end);let i=+r>+a;const s=i?+r:+a;let l=i?a:r;l.setMinutes(0,0,0);let c=t?.step??1;if(!c)return[];c<0&&(c=-c,i=!i);const u=[];for(;+l<=s;)u.push((0,o.toDate)(l)),l=(0,n.addHours)(l,c);return i?u.reverse():u};var n=r(58213),o=r(73094)},56986:(e,t,r)=>{"use strict";t.eachMinuteOfInterval=function(e,t){const r=(0,o.startOfMinute)((0,a.toDate)(e.start)),i=(0,a.toDate)(e.end);let s=+r>+i;const l=s?+r:+i;let c=s?i:r,u=t?.step??1;if(!u)return[];u<0&&(u=-u,s=!s);const d=[];for(;+c<=l;)d.push((0,a.toDate)(c)),c=(0,n.addMinutes)(c,u);return s?d.reverse():d};var n=r(80999),o=r(22818),a=r(73094)},27382:(e,t,r)=>{"use strict";t.eachMonthOfInterval=function(e,t){const r=(0,n.toDate)(e.start),o=(0,n.toDate)(e.end);let a=+r>+o;const i=a?+r:+o,s=a?o:r;s.setHours(0,0,0,0),s.setDate(1);let l=t?.step??1;if(!l)return[];l<0&&(l=-l,a=!a);const c=[];for(;+s<=i;)c.push((0,n.toDate)(s)),s.setMonth(s.getMonth()+l);return a?c.reverse():c};var n=r(73094)},25336:(e,t,r)=>{"use strict";t.eachQuarterOfInterval=function(e,t){const r=(0,a.toDate)(e.start),i=(0,a.toDate)(e.end);let s=+r>+i;const l=s?+(0,o.startOfQuarter)(r):+(0,o.startOfQuarter)(i);let c=s?(0,o.startOfQuarter)(i):(0,o.startOfQuarter)(r),u=t?.step??1;if(!u)return[];u<0&&(u=-u,s=!s);const d=[];for(;+c<=l;)d.push((0,a.toDate)(c)),c=(0,n.addQuarters)(c,u);return s?d.reverse():d};var n=r(20481),o=r(33404),a=r(73094)},84270:(e,t,r)=>{"use strict";t.eachWeekOfInterval=function(e,t){const r=(0,a.toDate)(e.start),i=(0,a.toDate)(e.end);let s=+r>+i;const l=s?(0,o.startOfWeek)(i,t):(0,o.startOfWeek)(r,t),c=s?(0,o.startOfWeek)(r,t):(0,o.startOfWeek)(i,t);l.setHours(15),c.setHours(15);const u=+c.getTime();let d=l,f=t?.step??1;if(!f)return[];f<0&&(f=-f,s=!s);const p=[];for(;+d<=u;)d.setHours(0),p.push((0,a.toDate)(d)),d=(0,n.addWeeks)(d,f),d.setHours(15);return s?p.reverse():p};var n=r(29023),o=r(85694),a=r(73094)},8249:(e,t,r)=>{"use strict";t.eachWeekendOfInterval=function(e){const t=(0,n.eachDayOfInterval)(e),r=[];let a=0;for(;a<t.length;){const e=t[a++];(0,o.isWeekend)(e)&&r.push(e)}return r};var n=r(26094),o=r(64658)},36464:(e,t,r)=>{"use strict";t.eachWeekendOfMonth=function(e){const t=(0,a.startOfMonth)(e),r=(0,o.endOfMonth)(e);return(0,n.eachWeekendOfInterval)({start:t,end:r})};var n=r(8249),o=r(29409),a=r(57078)},85533:(e,t,r)=>{"use strict";t.eachWeekendOfYear=function(e){const t=(0,a.startOfYear)(e),r=(0,o.endOfYear)(e);return(0,n.eachWeekendOfInterval)({start:t,end:r})};var n=r(8249),o=r(81274),a=r(82771)},57243:(e,t,r)=>{"use strict";t.eachYearOfInterval=function(e,t){const r=(0,n.toDate)(e.start),o=(0,n.toDate)(e.end);let a=+r>+o;const i=a?+r:+o,s=a?o:r;s.setHours(0,0,0,0),s.setMonth(0,1);let l=t?.step??1;if(!l)return[];l<0&&(l=-l,a=!a);const c=[];for(;+s<=i;)c.push((0,n.toDate)(s)),s.setFullYear(s.getFullYear()+l);return a?c.reverse():c};var n=r(73094)},13405:(e,t,r)=>{"use strict";t.endOfDay=function(e){const t=(0,n.toDate)(e);return t.setHours(23,59,59,999),t};var n=r(73094)},28887:(e,t,r)=>{"use strict";t.endOfDecade=function(e){const t=(0,n.toDate)(e),r=t.getFullYear(),o=9+10*Math.floor(r/10);return t.setFullYear(o,11,31),t.setHours(23,59,59,999),t};var n=r(73094)},4561:(e,t,r)=>{"use strict";t.endOfHour=function(e){const t=(0,n.toDate)(e);return t.setMinutes(59,59,999),t};var n=r(73094)},6246:(e,t,r)=>{"use strict";t.endOfISOWeek=function(e){return(0,n.endOfWeek)(e,{weekStartsOn:1})};var n=r(62331)},94475:(e,t,r)=>{"use strict";t.endOfISOWeekYear=function(e){const t=(0,n.getISOWeekYear)(e),r=(0,a.constructFrom)(e,0);r.setFullYear(t+1,0,4),r.setHours(0,0,0,0);const i=(0,o.startOfISOWeek)(r);return i.setMilliseconds(i.getMilliseconds()-1),i};var n=r(14807),o=r(5813),a=r(19078)},74047:(e,t,r)=>{"use strict";t.endOfMinute=function(e){const t=(0,n.toDate)(e);return t.setSeconds(59,999),t};var n=r(73094)},29409:(e,t,r)=>{"use strict";t.endOfMonth=function(e){const t=(0,n.toDate)(e),r=t.getMonth();return t.setFullYear(t.getFullYear(),r+1,0),t.setHours(23,59,59,999),t};var n=r(73094)},59803:(e,t,r)=>{"use strict";t.endOfQuarter=function(e){const t=(0,n.toDate)(e),r=t.getMonth(),o=r-r%3+3;return t.setMonth(o,0),t.setHours(23,59,59,999),t};var n=r(73094)},11603:(e,t,r)=>{"use strict";t.endOfSecond=function(e){const t=(0,n.toDate)(e);return t.setMilliseconds(999),t};var n=r(73094)},98154:(e,t,r)=>{"use strict";t.endOfToday=function(){return(0,n.endOfDay)(Date.now())};var n=r(13405)},62460:(e,t)=>{"use strict";t.endOfTomorrow=function(){const e=new Date,t=e.getFullYear(),r=e.getMonth(),n=e.getDate(),o=new Date(0);return o.setFullYear(t,r,n+1),o.setHours(23,59,59,999),o}},62331:(e,t,r)=>{"use strict";t.endOfWeek=function(e,t){const r=(0,o.getDefaultOptions)(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=(0,n.toDate)(e),s=i.getDay(),l=6+(s<a?-7:0)-(s-a);return i.setDate(i.getDate()+l),i.setHours(23,59,59,999),i};var n=r(73094),o=r(71531)},81274:(e,t,r)=>{"use strict";t.endOfYear=function(e){const t=(0,n.toDate)(e),r=t.getFullYear();return t.setFullYear(r+1,0,0),t.setHours(23,59,59,999),t};var n=r(73094)},34427:(e,t)=>{"use strict";t.endOfYesterday=function(){const e=new Date,t=e.getFullYear(),r=e.getMonth(),n=e.getDate(),o=new Date(0);return o.setFullYear(t,r,n-1),o.setHours(23,59,59,999),o}},75904:(e,t,r)=>{"use strict";t.format=t.formatDate=function(e,t,r){const f=(0,o.getDefaultOptions)(),p=r?.locale??f.locale??n.defaultLocale,g=r?.firstWeekContainsDate??r?.locale?.options?.firstWeekContainsDate??f.firstWeekContainsDate??f.locale?.options?.firstWeekContainsDate??1,v=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??f.weekStartsOn??f.locale?.options?.weekStartsOn??0,y=(0,c.toDate)(e);if(!(0,l.isValid)(y))throw new RangeError("Invalid time value");let b=t.match(d).map((e=>{const t=e[0];if("p"===t||"P"===t){return(0,i.longFormatters[t])(e,p.formatLong)}return e})).join("").match(u).map((e=>{if("''"===e)return{isToken:!1,value:"'"};const t=e[0];if("'"===t)return{isToken:!1,value:m(e)};if(a.formatters[t])return{isToken:!0,value:e};if(t.match(h))throw new RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}}));p.localize.preprocessor&&(b=p.localize.preprocessor(y,b));const w={firstWeekContainsDate:g,weekStartsOn:v,locale:p};return b.map((n=>{if(!n.isToken)return n.value;const o=n.value;(!r?.useAdditionalWeekYearTokens&&(0,s.isProtectedWeekYearToken)(o)||!r?.useAdditionalDayOfYearTokens&&(0,s.isProtectedDayOfYearToken)(o))&&(0,s.warnOrThrowProtectedError)(o,t,String(e));return(0,a.formatters[o[0]])(y,o,p.localize,w)})).join("")},Object.defineProperty(t,"formatters",{enumerable:!0,get:function(){return a.formatters}}),Object.defineProperty(t,"longFormatters",{enumerable:!0,get:function(){return i.longFormatters}});var n=r(3451),o=r(71531),a=r(27763),i=r(51653),s=r(93980),l=r(59941),c=r(73094);const u=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,d=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,f=/^'([^]*?)'?$/,p=/''/g,h=/[a-zA-Z]/;function m(e){const t=e.match(f);return t?t[1].replace(p,"'"):e}},20171:(e,t,r)=>{"use strict";t.formatDistance=function(e,t,r){const d=(0,c.getDefaultOptions)(),f=r?.locale??d.locale??l.defaultLocale,p=(0,n.compareAsc)(e,t);if(isNaN(p))throw new RangeError("Invalid time value");const h=Object.assign({},r,{addSuffix:r?.addSuffix,comparison:p});let m,g;p>0?(m=(0,s.toDate)(t),g=(0,s.toDate)(e)):(m=(0,s.toDate)(e),g=(0,s.toDate)(t));const v=(0,i.differenceInSeconds)(g,m),y=((0,u.getTimezoneOffsetInMilliseconds)(g)-(0,u.getTimezoneOffsetInMilliseconds)(m))/1e3,b=Math.round((v-y)/60);let w;if(b<2)return r?.includeSeconds?v<5?f.formatDistance("lessThanXSeconds",5,h):v<10?f.formatDistance("lessThanXSeconds",10,h):v<20?f.formatDistance("lessThanXSeconds",20,h):v<40?f.formatDistance("halfAMinute",0,h):v<60?f.formatDistance("lessThanXMinutes",1,h):f.formatDistance("xMinutes",1,h):0===b?f.formatDistance("lessThanXMinutes",1,h):f.formatDistance("xMinutes",b,h);if(b<45)return f.formatDistance("xMinutes",b,h);if(b<90)return f.formatDistance("aboutXHours",1,h);if(b<o.minutesInDay){const e=Math.round(b/60);return f.formatDistance("aboutXHours",e,h)}if(b<2520)return f.formatDistance("xDays",1,h);if(b<o.minutesInMonth){const e=Math.round(b/o.minutesInDay);return f.formatDistance("xDays",e,h)}if(b<2*o.minutesInMonth)return w=Math.round(b/o.minutesInMonth),f.formatDistance("aboutXMonths",w,h);if(w=(0,a.differenceInMonths)(g,m),w<12){const e=Math.round(b/o.minutesInMonth);return f.formatDistance("xMonths",e,h)}{const e=w%12,t=Math.trunc(w/12);return e<3?f.formatDistance("aboutXYears",t,h):e<9?f.formatDistance("overXYears",t,h):f.formatDistance("almostXYears",t+1,h)}};var n=r(39383),o=r(4702),a=r(22668),i=r(23454),s=r(73094),l=r(3451),c=r(71531),u=r(82757)},94770:(e,t,r)=>{"use strict";t.formatDistanceStrict=function(e,t,r){const u=(0,o.getDefaultOptions)(),d=r?.locale??u.locale??n.defaultLocale,f=(0,s.compareAsc)(e,t);if(isNaN(f))throw new RangeError("Invalid time value");const p=Object.assign({},r,{addSuffix:r?.addSuffix,comparison:f});let h,m;f>0?(h=(0,c.toDate)(t),m=(0,c.toDate)(e)):(h=(0,c.toDate)(e),m=(0,c.toDate)(t));const g=(0,a.getRoundingMethod)(r?.roundingMethod??"round"),v=m.getTime()-h.getTime(),y=v/l.millisecondsInMinute,b=(0,i.getTimezoneOffsetInMilliseconds)(m)-(0,i.getTimezoneOffsetInMilliseconds)(h),w=(v-b)/l.millisecondsInMinute,x=r?.unit;let S;S=x||(y<1?"second":y<60?"minute":y<l.minutesInDay?"hour":w<l.minutesInMonth?"day":w<l.minutesInYear?"month":"year");if("second"===S){const e=g(v/1e3);return d.formatDistance("xSeconds",e,p)}if("minute"===S){const e=g(y);return d.formatDistance("xMinutes",e,p)}if("hour"===S){const e=g(y/60);return d.formatDistance("xHours",e,p)}if("day"===S){const e=g(w/l.minutesInDay);return d.formatDistance("xDays",e,p)}if("month"===S){const e=g(w/l.minutesInMonth);return 12===e&&"month"!==x?d.formatDistance("xYears",1,p):d.formatDistance("xMonths",e,p)}{const e=g(w/l.minutesInYear);return d.formatDistance("xYears",e,p)}};var n=r(3451),o=r(71531),a=r(29577),i=r(82757),s=r(39383),l=r(4702),c=r(73094)},33148:(e,t,r)=>{"use strict";t.formatDistanceToNow=function(e,t){return(0,o.formatDistance)(e,(0,n.constructNow)(e),t)};var n=r(24716),o=r(20171)},28285:(e,t,r)=>{"use strict";t.formatDistanceToNowStrict=function(e,t){return(0,n.formatDistanceStrict)(e,(0,o.constructNow)(e),t)};var n=r(94770),o=r(24716)},88772:(e,t,r)=>{"use strict";t.formatDuration=function(e,t){const r=(0,o.getDefaultOptions)(),i=t?.locale??r.locale??n.defaultLocale,s=t?.format??a,l=t?.zero??!1,c=t?.delimiter??" ";if(!i.formatDistance)return"";return s.reduce(((t,r)=>{const n=`x${r.replace(/(^.)/,(e=>e.toUpperCase()))}`,o=e[r];return void 0!==o&&(l||e[r])?t.concat(i.formatDistance(n,o)):t}),[]).join(c)};var n=r(3451),o=r(71531);const a=["years","months","weeks","days","hours","minutes","seconds"]},99903:(e,t,r)=>{"use strict";t.formatISO=function(e,t){const r=(0,n.toDate)(e);if(isNaN(r.getTime()))throw new RangeError("Invalid time value");const a=t?.format??"extended",i=t?.representation??"complete";let s="",l="";const c="extended"===a?"-":"",u="extended"===a?":":"";if("time"!==i){const e=(0,o.addLeadingZeros)(r.getDate(),2),t=(0,o.addLeadingZeros)(r.getMonth()+1,2);s=`${(0,o.addLeadingZeros)(r.getFullYear(),4)}${c}${t}${c}${e}`}if("date"!==i){const e=r.getTimezoneOffset();if(0!==e){const t=Math.abs(e);l=`${e<0?"+":"-"}${(0,o.addLeadingZeros)(Math.trunc(t/60),2)}:${(0,o.addLeadingZeros)(t%60,2)}`}else l="Z";s=`${s}${""===s?"":"T"}${[(0,o.addLeadingZeros)(r.getHours(),2),(0,o.addLeadingZeros)(r.getMinutes(),2),(0,o.addLeadingZeros)(r.getSeconds(),2)].join(u)}${l}`}return s};var n=r(73094),o=r(82266)},97766:(e,t,r)=>{"use strict";t.formatISO9075=function(e,t){const r=(0,o.toDate)(e);if(!(0,n.isValid)(r))throw new RangeError("Invalid time value");const i=t?.format??"extended",s=t?.representation??"complete";let l="";const c="extended"===i?"-":"",u="extended"===i?":":"";if("time"!==s){const e=(0,a.addLeadingZeros)(r.getDate(),2),t=(0,a.addLeadingZeros)(r.getMonth()+1,2);l=`${(0,a.addLeadingZeros)(r.getFullYear(),4)}${c}${t}${c}${e}`}if("date"!==s){l=`${l}${""===l?"":" "}${(0,a.addLeadingZeros)(r.getHours(),2)}${u}${(0,a.addLeadingZeros)(r.getMinutes(),2)}${u}${(0,a.addLeadingZeros)(r.getSeconds(),2)}`}return l};var n=r(59941),o=r(73094),a=r(82266)},77527:(e,t)=>{"use strict";t.formatISODuration=function(e){const{years:t=0,months:r=0,days:n=0,hours:o=0,minutes:a=0,seconds:i=0}=e;return`P${t}Y${r}M${n}DT${o}H${a}M${i}S`}},66945:(e,t,r)=>{"use strict";t.formatRFC3339=function(e,t){const r=(0,o.toDate)(e);if(!(0,n.isValid)(r))throw new RangeError("Invalid time value");const i=t?.fractionDigits??0,s=(0,a.addLeadingZeros)(r.getDate(),2),l=(0,a.addLeadingZeros)(r.getMonth()+1,2),c=r.getFullYear(),u=(0,a.addLeadingZeros)(r.getHours(),2),d=(0,a.addLeadingZeros)(r.getMinutes(),2),f=(0,a.addLeadingZeros)(r.getSeconds(),2);let p="";if(i>0){const e=r.getMilliseconds(),t=Math.trunc(e*Math.pow(10,i-3));p="."+(0,a.addLeadingZeros)(t,i)}let h="";const m=r.getTimezoneOffset();if(0!==m){const e=Math.abs(m);h=`${m<0?"+":"-"}${(0,a.addLeadingZeros)(Math.trunc(e/60),2)}:${(0,a.addLeadingZeros)(e%60,2)}`}else h="Z";return`${c}-${l}-${s}T${u}:${d}:${f}${p}${h}`};var n=r(59941),o=r(73094),a=r(82266)},54230:(e,t,r)=>{"use strict";t.formatRFC7231=function(e){const t=(0,o.toDate)(e);if(!(0,n.isValid)(t))throw new RangeError("Invalid time value");const r=i[t.getUTCDay()],l=(0,a.addLeadingZeros)(t.getUTCDate(),2),c=s[t.getUTCMonth()],u=t.getUTCFullYear(),d=(0,a.addLeadingZeros)(t.getUTCHours(),2),f=(0,a.addLeadingZeros)(t.getUTCMinutes(),2),p=(0,a.addLeadingZeros)(t.getUTCSeconds(),2);return`${r}, ${l} ${c} ${u} ${d}:${f}:${p} GMT`};var n=r(59941),o=r(73094),a=r(82266);const i=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],s=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]},72592:(e,t,r)=>{"use strict";t.formatRelative=function(e,t,r){const l=(0,a.toDate)(e),c=(0,a.toDate)(t),u=(0,s.getDefaultOptions)(),d=r?.locale??u.locale??i.defaultLocale,f=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??u.weekStartsOn??u.locale?.options?.weekStartsOn??0,p=(0,n.differenceInCalendarDays)(l,c);if(isNaN(p))throw new RangeError("Invalid time value");let h;h=p<-6?"other":p<-1?"lastWeek":p<0?"yesterday":p<1?"today":p<2?"tomorrow":p<7?"nextWeek":"other";const m=d.formatRelative(h,l,c,{locale:d,weekStartsOn:f});return(0,o.format)(l,m,{locale:d,weekStartsOn:f})};var n=r(18982),o=r(75904),a=r(73094),i=r(3451),s=r(71531)},95808:(e,t,r)=>{"use strict";t.fromUnixTime=function(e){return(0,n.toDate)(1e3*e)};var n=r(73094)},83271:(e,t,r)=>{"use strict";t.getDate=function(e){const t=(0,n.toDate)(e);return t.getDate()};var n=r(73094)},35833:(e,t,r)=>{"use strict";t.getDay=function(e){const t=(0,n.toDate)(e);return t.getDay()};var n=r(73094)},43269:(e,t,r)=>{"use strict";t.getDayOfYear=function(e){const t=(0,a.toDate)(e),r=(0,n.differenceInCalendarDays)(t,(0,o.startOfYear)(t));return r+1};var n=r(18982),o=r(82771),a=r(73094)},10781:(e,t,r)=>{"use strict";t.getDaysInMonth=function(e){const t=(0,n.toDate)(e),r=t.getFullYear(),a=t.getMonth(),i=(0,o.constructFrom)(e,0);return i.setFullYear(r,a+1,0),i.setHours(0,0,0,0),i.getDate()};var n=r(73094),o=r(19078)},85766:(e,t,r)=>{"use strict";t.getDaysInYear=function(e){const t=(0,o.toDate)(e);if("Invalid Date"===String(new Date(t)))return NaN;return(0,n.isLeapYear)(t)?366:365};var n=r(61492),o=r(73094)},70803:(e,t,r)=>{"use strict";t.getDecade=function(e){const t=(0,n.toDate)(e).getFullYear();return 10*Math.floor(t/10)};var n=r(73094)},29402:(e,t,r)=>{"use strict";t.getDefaultOptions=function(){return Object.assign({},(0,n.getDefaultOptions)())};var n=r(71531)},36648:(e,t,r)=>{"use strict";t.getHours=function(e){const t=(0,n.toDate)(e);return t.getHours()};var n=r(73094)},69418:(e,t,r)=>{"use strict";t.getISODay=function(e){let t=(0,n.toDate)(e).getDay();0===t&&(t=7);return t};var n=r(73094)},44938:(e,t,r)=>{"use strict";t.getISOWeek=function(e){const t=(0,i.toDate)(e),r=+(0,o.startOfISOWeek)(t)-+(0,a.startOfISOWeekYear)(t);return Math.round(r/n.millisecondsInWeek)+1};var n=r(4702),o=r(5813),a=r(58356),i=r(73094)},14807:(e,t,r)=>{"use strict";t.getISOWeekYear=function(e){const t=(0,a.toDate)(e),r=t.getFullYear(),i=(0,n.constructFrom)(e,0);i.setFullYear(r+1,0,4),i.setHours(0,0,0,0);const s=(0,o.startOfISOWeek)(i),l=(0,n.constructFrom)(e,0);l.setFullYear(r,0,4),l.setHours(0,0,0,0);const c=(0,o.startOfISOWeek)(l);return t.getTime()>=s.getTime()?r+1:t.getTime()>=c.getTime()?r:r-1};var n=r(19078),o=r(5813),a=r(73094)},94975:(e,t,r)=>{"use strict";t.getISOWeeksInYear=function(e){const t=(0,a.startOfISOWeekYear)(e),r=+(0,a.startOfISOWeekYear)((0,n.addWeeks)(t,60))-+t;return Math.round(r/o.millisecondsInWeek)};var n=r(29023),o=r(4702),a=r(58356)},83661:(e,t,r)=>{"use strict";t.getMilliseconds=function(e){const t=(0,n.toDate)(e);return t.getMilliseconds()};var n=r(73094)},8758:(e,t,r)=>{"use strict";t.getMinutes=function(e){const t=(0,n.toDate)(e);return t.getMinutes()};var n=r(73094)},89317:(e,t,r)=>{"use strict";t.getMonth=function(e){const t=(0,n.toDate)(e);return t.getMonth()};var n=r(73094)},10440:(e,t,r)=>{"use strict";t.getOverlappingDaysInIntervals=function(e,t){const[r,i]=[+(0,a.toDate)(e.start),+(0,a.toDate)(e.end)].sort(((e,t)=>e-t)),[s,l]=[+(0,a.toDate)(t.start),+(0,a.toDate)(t.end)].sort(((e,t)=>e-t));if(!(r<l&&s<i))return 0;const c=s<r?r:s,u=c-(0,n.getTimezoneOffsetInMilliseconds)(c),d=l>i?i:l,f=d-(0,n.getTimezoneOffsetInMilliseconds)(d);return Math.ceil((f-u)/o.millisecondsInDay)};var n=r(82757),o=r(4702),a=r(73094)},21063:(e,t,r)=>{"use strict";t.getQuarter=function(e){const t=(0,n.toDate)(e);return Math.trunc(t.getMonth()/3)+1};var n=r(73094)},31146:(e,t,r)=>{"use strict";t.getSeconds=function(e){const t=(0,n.toDate)(e);return t.getSeconds()};var n=r(73094)},91038:(e,t,r)=>{"use strict";t.getTime=function(e){const t=(0,n.toDate)(e);return t.getTime()};var n=r(73094)},97540:(e,t,r)=>{"use strict";t.getUnixTime=function(e){return Math.trunc(+(0,n.toDate)(e)/1e3)};var n=r(73094)},44927:(e,t,r)=>{"use strict";t.getWeek=function(e,t){const r=(0,i.toDate)(e),s=+(0,o.startOfWeek)(r,t)-+(0,a.startOfWeekYear)(r,t);return Math.round(s/n.millisecondsInWeek)+1};var n=r(4702),o=r(85694),a=r(69587),i=r(73094)},40714:(e,t,r)=>{"use strict";t.getWeekOfMonth=function(e,t){const r=(0,i.getDefaultOptions)(),s=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,l=(0,n.getDate)(e);if(isNaN(l))return NaN;const c=(0,o.getDay)((0,a.startOfMonth)(e));let u=s-c;u<=0&&(u+=7);const d=l-u;return Math.ceil(d/7)+1};var n=r(83271),o=r(35833),a=r(57078),i=r(71531)},20026:(e,t,r)=>{"use strict";t.getWeekYear=function(e,t){const r=(0,a.toDate)(e),s=r.getFullYear(),l=(0,i.getDefaultOptions)(),c=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??l.firstWeekContainsDate??l.locale?.options?.firstWeekContainsDate??1,u=(0,n.constructFrom)(e,0);u.setFullYear(s+1,0,c),u.setHours(0,0,0,0);const d=(0,o.startOfWeek)(u,t),f=(0,n.constructFrom)(e,0);f.setFullYear(s,0,c),f.setHours(0,0,0,0);const p=(0,o.startOfWeek)(f,t);return r.getTime()>=d.getTime()?s+1:r.getTime()>=p.getTime()?s:s-1};var n=r(19078),o=r(85694),a=r(73094),i=r(71531)},92299:(e,t,r)=>{"use strict";t.getWeeksInMonth=function(e,t){return(0,n.differenceInCalendarWeeks)((0,o.lastDayOfMonth)(e),(0,a.startOfMonth)(e),t)+1};var n=r(5368),o=r(28236),a=r(57078)},2414:(e,t,r)=>{"use strict";t.getYear=function(e){return(0,n.toDate)(e).getFullYear()};var n=r(73094)},81115:(e,t,r)=>{"use strict";t.hoursToMilliseconds=function(e){return Math.trunc(e*n.millisecondsInHour)};var n=r(4702)},10996:(e,t,r)=>{"use strict";t.hoursToMinutes=function(e){return Math.trunc(e*n.minutesInHour)};var n=r(4702)},26740:(e,t,r)=>{"use strict";t.hoursToSeconds=function(e){return Math.trunc(e*n.secondsInHour)};var n=r(4702)},46075:(e,t,r)=>{"use strict";var n=r(63816);Object.keys(n).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===n[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return n[e]}}))}));var o=r(83949);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===o[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return o[e]}}))}));var a=r(65811);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=r(58213);Object.keys(i).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===i[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return i[e]}}))}));var s=r(685);Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===s[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return s[e]}}))}));var l=r(64918);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var c=r(80999);Object.keys(c).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===c[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return c[e]}}))}));var u=r(27811);Object.keys(u).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===u[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return u[e]}}))}));var d=r(20481);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=r(87727);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}));var p=r(29023);Object.keys(p).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===p[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return p[e]}}))}));var h=r(33116);Object.keys(h).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===h[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return h[e]}}))}));var m=r(16936);Object.keys(m).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===m[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return m[e]}}))}));var g=r(43420);Object.keys(g).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===g[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return g[e]}}))}));var v=r(31351);Object.keys(v).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===v[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return v[e]}}))}));var y=r(1193);Object.keys(y).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===y[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return y[e]}}))}));var b=r(39383);Object.keys(b).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===b[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return b[e]}}))}));var w=r(90933);Object.keys(w).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===w[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return w[e]}}))}));var x=r(19078);Object.keys(x).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===x[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return x[e]}}))}));var S=r(24716);Object.keys(S).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===S[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return S[e]}}))}));var A=r(32960);Object.keys(A).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===A[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return A[e]}}))}));var k=r(52242);Object.keys(k).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===k[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return k[e]}}))}));var C=r(18982);Object.keys(C).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===C[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return C[e]}}))}));var I=r(75304);Object.keys(I).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===I[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return I[e]}}))}));var E=r(26267);Object.keys(E).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===E[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return E[e]}}))}));var D=r(78890);Object.keys(D).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===D[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return D[e]}}))}));var T=r(10812);Object.keys(T).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===T[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return T[e]}}))}));var O=r(5368);Object.keys(O).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===O[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return O[e]}}))}));var M=r(71823);Object.keys(M).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===M[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return M[e]}}))}));var P=r(88992);Object.keys(P).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===P[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return P[e]}}))}));var j=r(94092);Object.keys(j).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===j[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return j[e]}}))}));var R=r(44182);Object.keys(R).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===R[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return R[e]}}))}));var _=r(36593);Object.keys(_).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===_[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return _[e]}}))}));var N=r(17106);Object.keys(N).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===N[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return N[e]}}))}));var L=r(22668);Object.keys(L).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===L[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return L[e]}}))}));var U=r(21478);Object.keys(U).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===U[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return U[e]}}))}));var B=r(23454);Object.keys(B).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===B[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return B[e]}}))}));var F=r(80070);Object.keys(F).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===F[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return F[e]}}))}));var z=r(57313);Object.keys(z).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===z[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return z[e]}}))}));var W=r(26094);Object.keys(W).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===W[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return W[e]}}))}));var H=r(28928);Object.keys(H).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===H[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return H[e]}}))}));var Y=r(56986);Object.keys(Y).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Y[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Y[e]}}))}));var V=r(27382);Object.keys(V).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===V[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return V[e]}}))}));var G=r(25336);Object.keys(G).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===G[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return G[e]}}))}));var Z=r(84270);Object.keys(Z).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Z[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Z[e]}}))}));var Q=r(8249);Object.keys(Q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Q[e]}}))}));var K=r(36464);Object.keys(K).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===K[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return K[e]}}))}));var X=r(85533);Object.keys(X).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===X[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return X[e]}}))}));var J=r(57243);Object.keys(J).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===J[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return J[e]}}))}));var $=r(13405);Object.keys($).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===$[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return $[e]}}))}));var q=r(28887);Object.keys(q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return q[e]}}))}));var ee=r(4561);Object.keys(ee).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ee[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ee[e]}}))}));var te=r(6246);Object.keys(te).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===te[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return te[e]}}))}));var re=r(94475);Object.keys(re).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===re[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return re[e]}}))}));var ne=r(74047);Object.keys(ne).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ne[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ne[e]}}))}));var oe=r(29409);Object.keys(oe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===oe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return oe[e]}}))}));var ae=r(59803);Object.keys(ae).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ae[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ae[e]}}))}));var ie=r(11603);Object.keys(ie).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ie[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ie[e]}}))}));var se=r(98154);Object.keys(se).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===se[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return se[e]}}))}));var le=r(62460);Object.keys(le).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===le[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return le[e]}}))}));var ce=r(62331);Object.keys(ce).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ce[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ce[e]}}))}));var ue=r(81274);Object.keys(ue).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ue[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ue[e]}}))}));var de=r(34427);Object.keys(de).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===de[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return de[e]}}))}));var fe=r(75904);Object.keys(fe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===fe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return fe[e]}}))}));var pe=r(20171);Object.keys(pe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===pe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return pe[e]}}))}));var he=r(94770);Object.keys(he).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===he[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return he[e]}}))}));var me=r(33148);Object.keys(me).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===me[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return me[e]}}))}));var ge=r(28285);Object.keys(ge).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ge[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ge[e]}}))}));var ve=r(88772);Object.keys(ve).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ve[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ve[e]}}))}));var ye=r(99903);Object.keys(ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ye[e]}}))}));var be=r(97766);Object.keys(be).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===be[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return be[e]}}))}));var we=r(77527);Object.keys(we).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===we[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return we[e]}}))}));var xe=r(66945);Object.keys(xe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===xe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return xe[e]}}))}));var Se=r(54230);Object.keys(Se).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Se[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Se[e]}}))}));var Ae=r(72592);Object.keys(Ae).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ae[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ae[e]}}))}));var ke=r(95808);Object.keys(ke).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ke[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ke[e]}}))}));var Ce=r(83271);Object.keys(Ce).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ce[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ce[e]}}))}));var Ie=r(35833);Object.keys(Ie).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ie[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ie[e]}}))}));var Ee=r(43269);Object.keys(Ee).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ee[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ee[e]}}))}));var De=r(10781);Object.keys(De).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===De[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return De[e]}}))}));var Te=r(85766);Object.keys(Te).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Te[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Te[e]}}))}));var Oe=r(70803);Object.keys(Oe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Oe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Oe[e]}}))}));var Me=r(29402);Object.keys(Me).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Me[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Me[e]}}))}));var Pe=r(36648);Object.keys(Pe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Pe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Pe[e]}}))}));var je=r(69418);Object.keys(je).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===je[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return je[e]}}))}));var Re=r(44938);Object.keys(Re).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Re[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Re[e]}}))}));var _e=r(14807);Object.keys(_e).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===_e[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return _e[e]}}))}));var Ne=r(94975);Object.keys(Ne).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ne[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ne[e]}}))}));var Le=r(83661);Object.keys(Le).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Le[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Le[e]}}))}));var Ue=r(8758);Object.keys(Ue).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ue[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ue[e]}}))}));var Be=r(89317);Object.keys(Be).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Be[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Be[e]}}))}));var Fe=r(10440);Object.keys(Fe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Fe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Fe[e]}}))}));var ze=r(21063);Object.keys(ze).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ze[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ze[e]}}))}));var We=r(31146);Object.keys(We).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===We[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return We[e]}}))}));var He=r(91038);Object.keys(He).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===He[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return He[e]}}))}));var Ye=r(97540);Object.keys(Ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ye[e]}}))}));var Ve=r(44927);Object.keys(Ve).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ve[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ve[e]}}))}));var Ge=r(40714);Object.keys(Ge).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ge[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ge[e]}}))}));var Ze=r(20026);Object.keys(Ze).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ze[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ze[e]}}))}));var Qe=r(92299);Object.keys(Qe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Qe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Qe[e]}}))}));var Ke=r(2414);Object.keys(Ke).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ke[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ke[e]}}))}));var Xe=r(81115);Object.keys(Xe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Xe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Xe[e]}}))}));var Je=r(10996);Object.keys(Je).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Je[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Je[e]}}))}));var $e=r(26740);Object.keys($e).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===$e[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return $e[e]}}))}));var qe=r(39858);Object.keys(qe).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===qe[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return qe[e]}}))}));var et=r(11647);Object.keys(et).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===et[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return et[e]}}))}));var tt=r(14719);Object.keys(tt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===tt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return tt[e]}}))}));var rt=r(68480);Object.keys(rt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===rt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return rt[e]}}))}));var nt=r(30877);Object.keys(nt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===nt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return nt[e]}}))}));var ot=r(75296);Object.keys(ot).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ot[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ot[e]}}))}));var at=r(88707);Object.keys(at).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===at[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return at[e]}}))}));var it=r(49271);Object.keys(it).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===it[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return it[e]}}))}));var st=r(27471);Object.keys(st).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===st[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return st[e]}}))}));var lt=r(27902);Object.keys(lt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===lt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return lt[e]}}))}));var ct=r(11220);Object.keys(ct).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ct[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ct[e]}}))}));var ut=r(3700);Object.keys(ut).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ut[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ut[e]}}))}));var dt=r(67620);Object.keys(dt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===dt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return dt[e]}}))}));var ft=r(61492);Object.keys(ft).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ft[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ft[e]}}))}));var pt=r(83266);Object.keys(pt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===pt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return pt[e]}}))}));var ht=r(67407);Object.keys(ht).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ht[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ht[e]}}))}));var mt=r(86459);Object.keys(mt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===mt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return mt[e]}}))}));var gt=r(19859);Object.keys(gt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===gt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return gt[e]}}))}));var vt=r(72883);Object.keys(vt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===vt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return vt[e]}}))}));var yt=r(60228);Object.keys(yt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===yt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return yt[e]}}))}));var bt=r(31306);Object.keys(bt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===bt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return bt[e]}}))}));var wt=r(78213);Object.keys(wt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===wt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return wt[e]}}))}));var xt=r(49663);Object.keys(xt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===xt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return xt[e]}}))}));var St=r(4201);Object.keys(St).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===St[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return St[e]}}))}));var At=r(31181);Object.keys(At).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===At[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return At[e]}}))}));var kt=r(95885);Object.keys(kt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===kt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return kt[e]}}))}));var Ct=r(27776);Object.keys(Ct).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ct[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ct[e]}}))}));var It=r(29204);Object.keys(It).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===It[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return It[e]}}))}));var Et=r(37051);Object.keys(Et).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Et[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Et[e]}}))}));var Dt=r(46709);Object.keys(Dt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Dt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Dt[e]}}))}));var Tt=r(39474);Object.keys(Tt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Tt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Tt[e]}}))}));var Ot=r(4459);Object.keys(Ot).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ot[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ot[e]}}))}));var Mt=r(31229);Object.keys(Mt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Mt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Mt[e]}}))}));var Pt=r(67231);Object.keys(Pt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Pt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Pt[e]}}))}));var jt=r(88343);Object.keys(jt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===jt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return jt[e]}}))}));var Rt=r(92439);Object.keys(Rt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Rt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Rt[e]}}))}));var _t=r(19814);Object.keys(_t).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===_t[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return _t[e]}}))}));var Nt=r(73741);Object.keys(Nt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Nt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Nt[e]}}))}));var Lt=r(5354);Object.keys(Lt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Lt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Lt[e]}}))}));var Ut=r(94780);Object.keys(Ut).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ut[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ut[e]}}))}));var Bt=r(91948);Object.keys(Bt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Bt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Bt[e]}}))}));var Ft=r(59941);Object.keys(Ft).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ft[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ft[e]}}))}));var zt=r(64075);Object.keys(zt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===zt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return zt[e]}}))}));var Wt=r(64658);Object.keys(Wt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Wt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Wt[e]}}))}));var Ht=r(84769);Object.keys(Ht).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ht[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ht[e]}}))}));var Yt=r(66331);Object.keys(Yt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Yt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Yt[e]}}))}));var Vt=r(88888);Object.keys(Vt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Vt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Vt[e]}}))}));var Gt=r(46851);Object.keys(Gt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Gt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Gt[e]}}))}));var Zt=r(94182);Object.keys(Zt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Zt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Zt[e]}}))}));var Qt=r(28236);Object.keys(Qt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Qt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Qt[e]}}))}));var Kt=r(63426);Object.keys(Kt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Kt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Kt[e]}}))}));var Xt=r(23008);Object.keys(Xt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Xt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Xt[e]}}))}));var Jt=r(39961);Object.keys(Jt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Jt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Jt[e]}}))}));var $t=r(96364);Object.keys($t).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===$t[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return $t[e]}}))}));var qt=r(85473);Object.keys(qt).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===qt[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return qt[e]}}))}));var er=r(62641);Object.keys(er).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===er[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return er[e]}}))}));var tr=r(56493);Object.keys(tr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===tr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return tr[e]}}))}));var rr=r(31103);Object.keys(rr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===rr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return rr[e]}}))}));var nr=r(48023);Object.keys(nr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===nr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return nr[e]}}))}));var or=r(62259);Object.keys(or).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===or[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return or[e]}}))}));var ar=r(63084);Object.keys(ar).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ar[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ar[e]}}))}));var ir=r(61489);Object.keys(ir).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ir[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ir[e]}}))}));var sr=r(50814);Object.keys(sr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===sr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return sr[e]}}))}));var lr=r(1384);Object.keys(lr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===lr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return lr[e]}}))}));var cr=r(29091);Object.keys(cr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===cr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return cr[e]}}))}));var ur=r(56994);Object.keys(ur).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ur[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ur[e]}}))}));var dr=r(63289);Object.keys(dr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===dr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return dr[e]}}))}));var fr=r(6678);Object.keys(fr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===fr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return fr[e]}}))}));var pr=r(3093);Object.keys(pr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===pr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return pr[e]}}))}));var hr=r(96854);Object.keys(hr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===hr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return hr[e]}}))}));var mr=r(4600);Object.keys(mr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===mr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return mr[e]}}))}));var gr=r(30659);Object.keys(gr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===gr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return gr[e]}}))}));var vr=r(99752);Object.keys(vr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===vr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return vr[e]}}))}));var yr=r(86084);Object.keys(yr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===yr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return yr[e]}}))}));var br=r(33731);Object.keys(br).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===br[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return br[e]}}))}));var wr=r(48342);Object.keys(wr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===wr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return wr[e]}}))}));var xr=r(22326);Object.keys(xr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===xr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return xr[e]}}))}));var Sr=r(48989);Object.keys(Sr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Sr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Sr[e]}}))}));var Ar=r(90282);Object.keys(Ar).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ar[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ar[e]}}))}));var kr=r(36609);Object.keys(kr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===kr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return kr[e]}}))}));var Cr=r(92050);Object.keys(Cr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Cr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Cr[e]}}))}));var Ir=r(9956);Object.keys(Ir).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ir[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ir[e]}}))}));var Er=r(34239);Object.keys(Er).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Er[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Er[e]}}))}));var Dr=r(46164);Object.keys(Dr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Dr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Dr[e]}}))}));var Tr=r(18512);Object.keys(Tr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Tr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Tr[e]}}))}));var Or=r(15685);Object.keys(Or).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Or[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Or[e]}}))}));var Mr=r(89651);Object.keys(Mr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Mr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Mr[e]}}))}));var Pr=r(69433);Object.keys(Pr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Pr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Pr[e]}}))}));var jr=r(40992);Object.keys(jr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===jr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return jr[e]}}))}));var Rr=r(66469);Object.keys(Rr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Rr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Rr[e]}}))}));var _r=r(59326);Object.keys(_r).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===_r[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return _r[e]}}))}));var Nr=r(88191);Object.keys(Nr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Nr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Nr[e]}}))}));var Lr=r(90371);Object.keys(Lr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Lr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Lr[e]}}))}));var Ur=r(25469);Object.keys(Ur).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Ur[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Ur[e]}}))}));var Br=r(53569);Object.keys(Br).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Br[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Br[e]}}))}));var Fr=r(86270);Object.keys(Fr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Fr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Fr[e]}}))}));var zr=r(56964);Object.keys(zr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===zr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return zr[e]}}))}));var Wr=r(65358);Object.keys(Wr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Wr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Wr[e]}}))}));var Hr=r(53478);Object.keys(Hr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Hr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Hr[e]}}))}));var Yr=r(44011);Object.keys(Yr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Yr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Yr[e]}}))}));var Vr=r(16873);Object.keys(Vr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Vr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Vr[e]}}))}));var Gr=r(23098);Object.keys(Gr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Gr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Gr[e]}}))}));var Zr=r(34849);Object.keys(Zr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Zr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Zr[e]}}))}));var Qr=r(29416);Object.keys(Qr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Qr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Qr[e]}}))}));var Kr=r(78582);Object.keys(Kr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Kr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Kr[e]}}))}));var Xr=r(91355);Object.keys(Xr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Xr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Xr[e]}}))}));var Jr=r(32334);Object.keys(Jr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Jr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Jr[e]}}))}));var $r=r(26650);Object.keys($r).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===$r[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return $r[e]}}))}));var qr=r(64086);Object.keys(qr).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===qr[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return qr[e]}}))}));var en=r(59898);Object.keys(en).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===en[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return en[e]}}))}));var tn=r(90916);Object.keys(tn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===tn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return tn[e]}}))}));var rn=r(5813);Object.keys(rn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===rn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return rn[e]}}))}));var nn=r(58356);Object.keys(nn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===nn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return nn[e]}}))}));var on=r(22818);Object.keys(on).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===on[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return on[e]}}))}));var an=r(57078);Object.keys(an).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===an[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return an[e]}}))}));var sn=r(33404);Object.keys(sn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===sn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return sn[e]}}))}));var ln=r(60326);Object.keys(ln).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===ln[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ln[e]}}))}));var cn=r(82145);Object.keys(cn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===cn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return cn[e]}}))}));var un=r(4073);Object.keys(un).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===un[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return un[e]}}))}));var dn=r(85694);Object.keys(dn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===dn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return dn[e]}}))}));var fn=r(69587);Object.keys(fn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===fn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return fn[e]}}))}));var pn=r(82771);Object.keys(pn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===pn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return pn[e]}}))}));var hn=r(75268);Object.keys(hn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===hn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return hn[e]}}))}));var mn=r(17533);Object.keys(mn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===mn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return mn[e]}}))}));var gn=r(63968);Object.keys(gn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===gn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return gn[e]}}))}));var vn=r(72242);Object.keys(vn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===vn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return vn[e]}}))}));var yn=r(54562);Object.keys(yn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===yn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return yn[e]}}))}));var bn=r(58676);Object.keys(bn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===bn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return bn[e]}}))}));var wn=r(48187);Object.keys(wn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===wn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return wn[e]}}))}));var xn=r(48788);Object.keys(xn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===xn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return xn[e]}}))}));var Sn=r(51486);Object.keys(Sn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Sn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Sn[e]}}))}));var An=r(16744);Object.keys(An).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===An[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return An[e]}}))}));var kn=r(81972);Object.keys(kn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===kn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return kn[e]}}))}));var Cn=r(39596);Object.keys(Cn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Cn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Cn[e]}}))}));var In=r(71139);Object.keys(In).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===In[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return In[e]}}))}));var En=r(73094);Object.keys(En).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===En[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return En[e]}}))}));var Dn=r(94796);Object.keys(Dn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Dn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Dn[e]}}))}));var Tn=r(28220);Object.keys(Tn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Tn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Tn[e]}}))}));var On=r(25035);Object.keys(On).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===On[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return On[e]}}))}));var Mn=r(30155);Object.keys(Mn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Mn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Mn[e]}}))}));var Pn=r(24873);Object.keys(Pn).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===Pn[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return Pn[e]}}))}))},39858:(e,t,r)=>{"use strict";t.interval=function(e,t,r){const o=(0,n.toDate)(e);if(isNaN(+o))throw new TypeError("Start date is invalid");const a=(0,n.toDate)(t);if(isNaN(+a))throw new TypeError("End date is invalid");if(r?.assertPositive&&+o>+a)throw new TypeError("End date must be after start date");return{start:o,end:a}};var n=r(73094)},11647:(e,t,r)=>{"use strict";t.intervalToDuration=function(e){const t=(0,u.toDate)(e.start),r=(0,u.toDate)(e.end),d={},f=(0,c.differenceInYears)(r,t);f&&(d.years=f);const p=(0,n.add)(t,{years:d.years}),h=(0,s.differenceInMonths)(r,p);h&&(d.months=h);const m=(0,n.add)(p,{months:d.months}),g=(0,o.differenceInDays)(r,m);g&&(d.days=g);const v=(0,n.add)(m,{days:d.days}),y=(0,a.differenceInHours)(r,v);y&&(d.hours=y);const b=(0,n.add)(v,{hours:d.hours}),w=(0,i.differenceInMinutes)(r,b);w&&(d.minutes=w);const x=(0,n.add)(b,{minutes:d.minutes}),S=(0,l.differenceInSeconds)(r,x);S&&(d.seconds=S);return d};var n=r(63816),o=r(88992),a=r(94092),i=r(17106),s=r(22668),l=r(23454),c=r(57313),u=r(73094)},14719:(e,t,r)=>{"use strict";t.intlFormat=function(e,t,r){let o;a=t,void 0===a||"locale"in a?r=t:o=t;var a;return new Intl.DateTimeFormat(r?.locale,o).format((0,n.toDate)(e))};var n=r(73094)},68480:(e,t,r)=>{"use strict";t.intlFormatDistance=function(e,t,r){let p,h=0;const m=(0,f.toDate)(e),g=(0,f.toDate)(t);if(r?.unit)p=r?.unit,"second"===p?h=(0,d.differenceInSeconds)(m,g):"minute"===p?h=(0,u.differenceInMinutes)(m,g):"hour"===p?h=(0,c.differenceInHours)(m,g):"day"===p?h=(0,o.differenceInCalendarDays)(m,g):"week"===p?h=(0,s.differenceInCalendarWeeks)(m,g):"month"===p?h=(0,a.differenceInCalendarMonths)(m,g):"quarter"===p?h=(0,i.differenceInCalendarQuarters)(m,g):"year"===p&&(h=(0,l.differenceInCalendarYears)(m,g));else{const e=(0,d.differenceInSeconds)(m,g);Math.abs(e)<n.secondsInMinute?(h=(0,d.differenceInSeconds)(m,g),p="second"):Math.abs(e)<n.secondsInHour?(h=(0,u.differenceInMinutes)(m,g),p="minute"):Math.abs(e)<n.secondsInDay&&Math.abs((0,o.differenceInCalendarDays)(m,g))<1?(h=(0,c.differenceInHours)(m,g),p="hour"):Math.abs(e)<n.secondsInWeek&&(h=(0,o.differenceInCalendarDays)(m,g))&&Math.abs(h)<7?p="day":Math.abs(e)<n.secondsInMonth?(h=(0,s.differenceInCalendarWeeks)(m,g),p="week"):Math.abs(e)<n.secondsInQuarter?(h=(0,a.differenceInCalendarMonths)(m,g),p="month"):Math.abs(e)<n.secondsInYear&&(0,i.differenceInCalendarQuarters)(m,g)<4?(h=(0,i.differenceInCalendarQuarters)(m,g),p="quarter"):(h=(0,l.differenceInCalendarYears)(m,g),p="year")}return new Intl.RelativeTimeFormat(r?.locale,{localeMatcher:r?.localeMatcher,numeric:r?.numeric||"auto",style:r?.style}).format(h,p)};var n=r(4702),o=r(18982),a=r(78890),i=r(10812),s=r(5368),l=r(71823),c=r(94092),u=r(17106),d=r(23454),f=r(73094)},30877:(e,t,r)=>{"use strict";t.isAfter=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t);return r.getTime()>o.getTime()};var n=r(73094)},75296:(e,t,r)=>{"use strict";t.isBefore=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t);return+r<+o};var n=r(73094)},88707:(e,t)=>{"use strict";t.isDate=function(e){return e instanceof Date||"object"===typeof e&&"[object Date]"===Object.prototype.toString.call(e)}},49271:(e,t,r)=>{"use strict";t.isEqual=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t);return+r===+o};var n=r(73094)},27471:(e,t)=>{"use strict";t.isExists=function(e,t,r){const n=new Date(e,t,r);return n.getFullYear()===e&&n.getMonth()===t&&n.getDate()===r}},27902:(e,t,r)=>{"use strict";t.isFirstDayOfMonth=function(e){return 1===(0,n.toDate)(e).getDate()};var n=r(73094)},11220:(e,t,r)=>{"use strict";t.isFriday=function(e){return 5===(0,n.toDate)(e).getDay()};var n=r(73094)},3700:(e,t,r)=>{"use strict";t.isFuture=function(e){return+(0,n.toDate)(e)>Date.now()};var n=r(73094)},67620:(e,t,r)=>{"use strict";t.isLastDayOfMonth=function(e){const t=(0,a.toDate)(e);return+(0,n.endOfDay)(t)===+(0,o.endOfMonth)(t)};var n=r(13405),o=r(29409),a=r(73094)},61492:(e,t,r)=>{"use strict";t.isLeapYear=function(e){const t=(0,n.toDate)(e).getFullYear();return t%400===0||t%4===0&&t%100!==0};var n=r(73094)},83266:(e,t,r)=>{"use strict";t.isMatch=function(e,t,r){return(0,n.isValid)((0,o.parse)(e,t,new Date,r))};var n=r(59941),o=r(86084)},67407:(e,t,r)=>{"use strict";t.isMonday=function(e){return 1===(0,n.toDate)(e).getDay()};var n=r(73094)},86459:(e,t,r)=>{"use strict";t.isPast=function(e){return+(0,n.toDate)(e)<Date.now()};var n=r(73094)},19859:(e,t,r)=>{"use strict";t.isSameDay=function(e,t){const r=(0,n.startOfDay)(e),o=(0,n.startOfDay)(t);return+r===+o};var n=r(64086)},72883:(e,t,r)=>{"use strict";t.isSameHour=function(e,t){const r=(0,n.startOfHour)(e),o=(0,n.startOfHour)(t);return+r===+o};var n=r(90916)},60228:(e,t,r)=>{"use strict";t.isSameISOWeek=function(e,t){return(0,n.isSameWeek)(e,t,{weekStartsOn:1})};var n=r(95885)},31306:(e,t,r)=>{"use strict";t.isSameISOWeekYear=function(e,t){const r=(0,n.startOfISOWeekYear)(e),o=(0,n.startOfISOWeekYear)(t);return+r===+o};var n=r(58356)},78213:(e,t,r)=>{"use strict";t.isSameMinute=function(e,t){const r=(0,n.startOfMinute)(e),o=(0,n.startOfMinute)(t);return+r===+o};var n=r(22818)},49663:(e,t,r)=>{"use strict";t.isSameMonth=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t);return r.getFullYear()===o.getFullYear()&&r.getMonth()===o.getMonth()};var n=r(73094)},4201:(e,t,r)=>{"use strict";t.isSameQuarter=function(e,t){const r=(0,n.startOfQuarter)(e),o=(0,n.startOfQuarter)(t);return+r===+o};var n=r(33404)},31181:(e,t,r)=>{"use strict";t.isSameSecond=function(e,t){const r=(0,n.startOfSecond)(e),o=(0,n.startOfSecond)(t);return+r===+o};var n=r(60326)},95885:(e,t,r)=>{"use strict";t.isSameWeek=function(e,t,r){const o=(0,n.startOfWeek)(e,r),a=(0,n.startOfWeek)(t,r);return+o===+a};var n=r(85694)},27776:(e,t,r)=>{"use strict";t.isSameYear=function(e,t){const r=(0,n.toDate)(e),o=(0,n.toDate)(t);return r.getFullYear()===o.getFullYear()};var n=r(73094)},29204:(e,t,r)=>{"use strict";t.isSaturday=function(e){return 6===(0,n.toDate)(e).getDay()};var n=r(73094)},37051:(e,t,r)=>{"use strict";t.isSunday=function(e){return 0===(0,n.toDate)(e).getDay()};var n=r(73094)},46709:(e,t,r)=>{"use strict";t.isThisHour=function(e){return(0,o.isSameHour)(e,(0,n.constructNow)(e))};var n=r(24716),o=r(72883)},39474:(e,t,r)=>{"use strict";t.isThisISOWeek=function(e){return(0,o.isSameISOWeek)(e,(0,n.constructNow)(e))};var n=r(24716),o=r(60228)},4459:(e,t,r)=>{"use strict";t.isThisMinute=function(e){return(0,o.isSameMinute)(e,(0,n.constructNow)(e))};var n=r(24716),o=r(78213)},31229:(e,t,r)=>{"use strict";t.isThisMonth=function(e){return(0,o.isSameMonth)(e,(0,n.constructNow)(e))};var n=r(24716),o=r(49663)},67231:(e,t,r)=>{"use strict";t.isThisQuarter=function(e){return(0,o.isSameQuarter)(e,(0,n.constructNow)(e))};var n=r(24716),o=r(4201)},88343:(e,t,r)=>{"use strict";t.isThisSecond=function(e){return(0,o.isSameSecond)(e,(0,n.constructNow)(e))};var n=r(24716),o=r(31181)},92439:(e,t,r)=>{"use strict";t.isThisWeek=function(e,t){return(0,o.isSameWeek)(e,(0,n.constructNow)(e),t)};var n=r(24716),o=r(95885)},19814:(e,t,r)=>{"use strict";t.isThisYear=function(e){return(0,o.isSameYear)(e,(0,n.constructNow)(e))};var n=r(24716),o=r(27776)},73741:(e,t,r)=>{"use strict";t.isThursday=function(e){return 4===(0,n.toDate)(e).getDay()};var n=r(73094)},5354:(e,t,r)=>{"use strict";t.isToday=function(e){return(0,o.isSameDay)(e,(0,n.constructNow)(e))};var n=r(24716),o=r(19859)},94780:(e,t,r)=>{"use strict";t.isTomorrow=function(e){return(0,a.isSameDay)(e,(0,n.addDays)((0,o.constructNow)(e),1))};var n=r(65811),o=r(24716),a=r(19859)},91948:(e,t,r)=>{"use strict";t.isTuesday=function(e){return 2===(0,n.toDate)(e).getDay()};var n=r(73094)},59941:(e,t,r)=>{"use strict";t.isValid=function(e){if(!(0,n.isDate)(e)&&"number"!==typeof e)return!1;const t=(0,o.toDate)(e);return!isNaN(Number(t))};var n=r(88707),o=r(73094)},64075:(e,t,r)=>{"use strict";t.isWednesday=function(e){return 3===(0,n.toDate)(e).getDay()};var n=r(73094)},64658:(e,t,r)=>{"use strict";t.isWeekend=function(e){const t=(0,n.toDate)(e).getDay();return 0===t||6===t};var n=r(73094)},84769:(e,t,r)=>{"use strict";t.isWithinInterval=function(e,t){const r=+(0,n.toDate)(e),[o,a]=[+(0,n.toDate)(t.start),+(0,n.toDate)(t.end)].sort(((e,t)=>e-t));return r>=o&&r<=a};var n=r(73094)},66331:(e,t,r)=>{"use strict";t.isYesterday=function(e){return(0,o.isSameDay)(e,(0,a.subDays)((0,n.constructNow)(e),1))};var n=r(24716),o=r(19859),a=r(72242)},88888:(e,t,r)=>{"use strict";t.lastDayOfDecade=function(e){const t=(0,n.toDate)(e),r=t.getFullYear(),o=9+10*Math.floor(r/10);return t.setFullYear(o+1,0,0),t.setHours(0,0,0,0),t};var n=r(73094)},46851:(e,t,r)=>{"use strict";t.lastDayOfISOWeek=function(e){return(0,n.lastDayOfWeek)(e,{weekStartsOn:1})};var n=r(23008)},94182:(e,t,r)=>{"use strict";t.lastDayOfISOWeekYear=function(e){const t=(0,n.getISOWeekYear)(e),r=(0,a.constructFrom)(e,0);r.setFullYear(t+1,0,4),r.setHours(0,0,0,0);const i=(0,o.startOfISOWeek)(r);return i.setDate(i.getDate()-1),i};var n=r(14807),o=r(5813),a=r(19078)},28236:(e,t,r)=>{"use strict";t.lastDayOfMonth=function(e){const t=(0,n.toDate)(e),r=t.getMonth();return t.setFullYear(t.getFullYear(),r+1,0),t.setHours(0,0,0,0),t};var n=r(73094)},63426:(e,t,r)=>{"use strict";t.lastDayOfQuarter=function(e){const t=(0,n.toDate)(e),r=t.getMonth(),o=r-r%3+3;return t.setMonth(o,0),t.setHours(0,0,0,0),t};var n=r(73094)},23008:(e,t,r)=>{"use strict";t.lastDayOfWeek=function(e,t){const r=(0,o.getDefaultOptions)(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=(0,n.toDate)(e),s=i.getDay(),l=6+(s<a?-7:0)-(s-a);return i.setHours(0,0,0,0),i.setDate(i.getDate()+l),i};var n=r(73094),o=r(71531)},39961:(e,t,r)=>{"use strict";t.lastDayOfYear=function(e){const t=(0,n.toDate)(e),r=t.getFullYear();return t.setFullYear(r+1,0,0),t.setHours(0,0,0,0),t};var n=r(73094)},96364:(e,t,r)=>{"use strict";t.lightFormat=function(e,t){const r=(0,o.toDate)(e);if(!(0,n.isValid)(r))throw new RangeError("Invalid time value");const u=t.match(i);if(!u)return"";return u.map((e=>{if("''"===e)return"'";const t=e[0];if("'"===t)return function(e){const t=e.match(s);if(!t)return e;return t[1].replace(l,"'")}(e);const n=a.lightFormatters[t];if(n)return n(r,e);if(t.match(c))throw new RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return e})).join("")},Object.defineProperty(t,"lightFormatters",{enumerable:!0,get:function(){return a.lightFormatters}});var n=r(59941),o=r(73094),a=r(89829);const i=/(\w)\1*|''|'(''|[^'])+('|$)|./g,s=/^'([^]*?)'?$/,l=/''/g,c=/[a-zA-Z]/},63446:(e,t)=>{"use strict";t.buildFormatLongFn=function(e){return function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const r=t.width?String(t.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}},65152:(e,t)=>{"use strict";t.buildLocalizeFn=function(e){return(t,r)=>{let n;if("formatting"===(r?.context?String(r.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,o=r?.width?String(r.width):t;n=e.formattingValues[o]||e.formattingValues[t]}else{const t=e.defaultWidth,o=r?.width?String(r.width):e.defaultWidth;n=e.values[o]||e.values[t]}return n[e.argumentCallback?e.argumentCallback(t):t]}}},82938:(e,t)=>{"use strict";t.buildMatchFn=function(e){return function(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=r.width,o=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],a=t.match(o);if(!a)return null;const i=a[0],s=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(s)?function(e,t){for(let r=0;r<e.length;r++)if(t(e[r]))return r;return}(s,(e=>e.test(i))):function(e,t){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r]))return r;return}(s,(e=>e.test(i)));let c;c=e.valueCallback?e.valueCallback(l):l,c=r.valueCallback?r.valueCallback(c):c;return{value:c,rest:t.slice(i.length)}}}},30118:(e,t)=>{"use strict";t.buildMatchPatternFn=function(e){return function(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.match(e.matchPattern);if(!n)return null;const o=n[0],a=t.match(e.parsePattern);if(!a)return null;let i=e.valueCallback?e.valueCallback(a[0]):a[0];i=r.valueCallback?r.valueCallback(i):i;return{value:i,rest:t.slice(o.length)}}}},73980:(e,t,r)=>{"use strict";t.enUS=void 0;var n=r(99494),o=r(49031),a=r(53081),i=r(18225),s=r(96453);t.enUS={code:"en-US",formatDistance:n.formatDistance,formatLong:o.formatLong,formatRelative:a.formatRelative,localize:i.localize,match:s.match,options:{weekStartsOn:0,firstWeekContainsDate:1}}},99494:(e,t)=>{"use strict";t.formatDistance=void 0;const r={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};t.formatDistance=(e,t,n)=>{let o;const a=r[e];return o="string"===typeof a?a:1===t?a.one:a.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+o:o+" ago":o}},49031:(e,t,r)=>{"use strict";t.formatLong=void 0;var n=r(63446);t.formatLong={date:(0,n.buildFormatLongFn)({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:(0,n.buildFormatLongFn)({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:(0,n.buildFormatLongFn)({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})}},53081:(e,t)=>{"use strict";t.formatRelative=void 0;const r={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};t.formatRelative=(e,t,n,o)=>r[e]},18225:(e,t,r)=>{"use strict";t.localize=void 0;var n=r(65152);t.localize={ordinalNumber:(e,t)=>{const r=Number(e),n=r%100;if(n>20||n<10)switch(n%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}return r+"th"},era:(0,n.buildLocalizeFn)({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:(0,n.buildLocalizeFn)({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:(0,n.buildLocalizeFn)({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:(0,n.buildLocalizeFn)({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:(0,n.buildLocalizeFn)({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})}},96453:(e,t,r)=>{"use strict";t.match=void 0;var n=r(82938),o=r(30118);t.match={ordinalNumber:(0,o.buildMatchPatternFn)({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:(0,n.buildMatchFn)({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:(0,n.buildMatchFn)({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:(0,n.buildMatchFn)({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:(0,n.buildMatchFn)({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:(0,n.buildMatchFn)({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})}},85473:(e,t,r)=>{"use strict";t.max=function(e){let t;return e.forEach((function(e){const r=(0,n.toDate)(e);(void 0===t||t<r||isNaN(Number(r)))&&(t=r)})),t||new Date(NaN)};var n=r(73094)},62641:(e,t,r)=>{"use strict";t.milliseconds=function(e){let{years:t,months:r,weeks:o,days:a,hours:i,minutes:s,seconds:l}=e,c=0;t&&(c+=t*n.daysInYear);r&&(c+=r*(n.daysInYear/12));o&&(c+=7*o);a&&(c+=a);let u=24*c*60*60;i&&(u+=60*i*60);s&&(u+=60*s);l&&(u+=l);return Math.trunc(1e3*u)};var n=r(4702)},56493:(e,t,r)=>{"use strict";t.millisecondsToHours=function(e){const t=e/n.millisecondsInHour;return Math.trunc(t)};var n=r(4702)},31103:(e,t,r)=>{"use strict";t.millisecondsToMinutes=function(e){const t=e/n.millisecondsInMinute;return Math.trunc(t)};var n=r(4702)},48023:(e,t,r)=>{"use strict";t.millisecondsToSeconds=function(e){const t=e/n.millisecondsInSecond;return Math.trunc(t)};var n=r(4702)},62259:(e,t,r)=>{"use strict";t.min=function(e){let t;return e.forEach((e=>{const r=(0,n.toDate)(e);(!t||t>r||isNaN(+r))&&(t=r)})),t||new Date(NaN)};var n=r(73094)},63084:(e,t,r)=>{"use strict";t.minutesToHours=function(e){const t=e/n.minutesInHour;return Math.trunc(t)};var n=r(4702)},61489:(e,t,r)=>{"use strict";t.minutesToMilliseconds=function(e){return Math.trunc(e*n.millisecondsInMinute)};var n=r(4702)},50814:(e,t,r)=>{"use strict";t.minutesToSeconds=function(e){return Math.trunc(e*n.secondsInMinute)};var n=r(4702)},1384:(e,t,r)=>{"use strict";t.monthsToQuarters=function(e){const t=e/n.monthsInQuarter;return Math.trunc(t)};var n=r(4702)},29091:(e,t,r)=>{"use strict";t.monthsToYears=function(e){const t=e/n.monthsInYear;return Math.trunc(t)};var n=r(4702)},56994:(e,t,r)=>{"use strict";t.nextDay=function(e,t){let r=t-(0,o.getDay)(e);r<=0&&(r+=7);return(0,n.addDays)(e,r)};var n=r(65811),o=r(35833)},63289:(e,t,r)=>{"use strict";t.nextFriday=function(e){return(0,n.nextDay)(e,5)};var n=r(56994)},6678:(e,t,r)=>{"use strict";t.nextMonday=function(e){return(0,n.nextDay)(e,1)};var n=r(56994)},3093:(e,t,r)=>{"use strict";t.nextSaturday=function(e){return(0,n.nextDay)(e,6)};var n=r(56994)},96854:(e,t,r)=>{"use strict";t.nextSunday=function(e){return(0,n.nextDay)(e,0)};var n=r(56994)},4600:(e,t,r)=>{"use strict";t.nextThursday=function(e){return(0,n.nextDay)(e,4)};var n=r(56994)},30659:(e,t,r)=>{"use strict";t.nextTuesday=function(e){return(0,n.nextDay)(e,2)};var n=r(56994)},99752:(e,t,r)=>{"use strict";t.nextWednesday=function(e){return(0,n.nextDay)(e,3)};var n=r(56994)},86084:(e,t,r)=>{"use strict";Object.defineProperty(t,"longFormatters",{enumerable:!0,get:function(){return s.longFormatters}}),t.parse=function(e,t,r,v){const y=(0,o.getDefaultOptions)(),b=v?.locale??y.locale??a.defaultLocale,w=v?.firstWeekContainsDate??v?.locale?.options?.firstWeekContainsDate??y.firstWeekContainsDate??y.locale?.options?.firstWeekContainsDate??1,x=v?.weekStartsOn??v?.locale?.options?.weekStartsOn??y.weekStartsOn??y.locale?.options?.weekStartsOn??0;if(""===t)return""===e?(0,i.toDate)(r):(0,n.constructFrom)(r,NaN);const S={firstWeekContainsDate:w,weekStartsOn:x,locale:b},A=[new u.DateToSystemTimezoneSetter],k=t.match(f).map((e=>{const t=e[0];if(t in s.longFormatters){return(0,s.longFormatters[t])(e,b.formatLong)}return e})).join("").match(d),C=[];for(let o of k){!v?.useAdditionalWeekYearTokens&&(0,l.isProtectedWeekYearToken)(o)&&(0,l.warnOrThrowProtectedError)(o,t,e),!v?.useAdditionalDayOfYearTokens&&(0,l.isProtectedDayOfYearToken)(o)&&(0,l.warnOrThrowProtectedError)(o,t,e);const a=o[0],i=c.parsers[a];if(i){const{incompatibleTokens:t}=i;if(Array.isArray(t)){const e=C.find((e=>t.includes(e.token)||e.token===a));if(e)throw new RangeError(`The format string mustn't contain \`${e.fullToken}\` and \`${o}\` at the same time`)}else if("*"===i.incompatibleTokens&&C.length>0)throw new RangeError(`The format string mustn't contain \`${o}\` and any other token at the same time`);C.push({token:a,fullToken:o});const s=i.run(e,o,b.match,S);if(!s)return(0,n.constructFrom)(r,NaN);A.push(s.setter),e=s.rest}else{if(a.match(g))throw new RangeError("Format string contains an unescaped latin alphabet character `"+a+"`");if("''"===o?o="'":"'"===a&&(o=o.match(p)[1].replace(h,"'")),0!==e.indexOf(o))return(0,n.constructFrom)(r,NaN);e=e.slice(o.length)}}if(e.length>0&&m.test(e))return(0,n.constructFrom)(r,NaN);const I=A.map((e=>e.priority)).sort(((e,t)=>t-e)).filter(((e,t,r)=>r.indexOf(e)===t)).map((e=>A.filter((t=>t.priority===e)).sort(((e,t)=>t.subPriority-e.subPriority)))).map((e=>e[0]));let E=(0,i.toDate)(r);if(isNaN(E.getTime()))return(0,n.constructFrom)(r,NaN);const D={};for(const o of I){if(!o.validate(E,S))return(0,n.constructFrom)(r,NaN);const e=o.set(E,D,S);Array.isArray(e)?(E=e[0],Object.assign(D,e[1])):E=e}return(0,n.constructFrom)(r,E)},Object.defineProperty(t,"parsers",{enumerable:!0,get:function(){return c.parsers}});var n=r(19078),o=r(29402),a=r(3451),i=r(73094),s=r(51653),l=r(93980),c=r(65676),u=r(34941);const d=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,f=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,p=/^'([^]*?)'?$/,h=/''/g,m=/\S/,g=/[a-zA-Z]/},29481:(e,t,r)=>{"use strict";t.Parser=void 0;var n=r(34941);t.Parser=class{run(e,t,r,o){const a=this.parse(e,t,r,o);return a?{setter:new n.ValueSetter(a.value,this.validate,this.set,this.priority,this.subPriority),rest:a.rest}:null}validate(e,t,r){return!0}}},34941:(e,t,r)=>{"use strict";t.ValueSetter=t.Setter=t.DateToSystemTimezoneSetter=void 0;var n=r(94796),o=r(19078);class a{subPriority=0;validate(e,t){return!0}}t.Setter=a;t.ValueSetter=class extends a{constructor(e,t,r,n,o){super(),this.value=e,this.validateValue=t,this.setValue=r,this.priority=n,o&&(this.subPriority=o)}validate(e,t){return this.validateValue(e,this.value,t)}set(e,t,r){return this.setValue(e,t,this.value,r)}};t.DateToSystemTimezoneSetter=class extends a{priority=10;subPriority=-1;set(e,t){return t.timestampIsSet?e:(0,o.constructFrom)(e,(0,n.transpose)(e,Date))}}},66961:(e,t)=>{"use strict";t.timezonePatterns=t.numericPatterns=void 0;t.numericPatterns={month:/^(1[0-2]|0?\d)/,date:/^(3[0-1]|[0-2]?\d)/,dayOfYear:/^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,week:/^(5[0-3]|[0-4]?\d)/,hour23h:/^(2[0-3]|[0-1]?\d)/,hour24h:/^(2[0-4]|[0-1]?\d)/,hour11h:/^(1[0-1]|0?\d)/,hour12h:/^(1[0-2]|0?\d)/,minute:/^[0-5]?\d/,second:/^[0-5]?\d/,singleDigit:/^\d/,twoDigits:/^\d{1,2}/,threeDigits:/^\d{1,3}/,fourDigits:/^\d{1,4}/,anyDigitsSigned:/^-?\d+/,singleDigitSigned:/^-?\d/,twoDigitsSigned:/^-?\d{1,2}/,threeDigitsSigned:/^-?\d{1,3}/,fourDigitsSigned:/^-?\d{1,4}/},t.timezonePatterns={basicOptionalMinutes:/^([+-])(\d{2})(\d{2})?|Z/,basic:/^([+-])(\d{2})(\d{2})|Z/,basicOptionalSeconds:/^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,extended:/^([+-])(\d{2}):(\d{2})|Z/,extendedOptionalSeconds:/^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/}},65676:(e,t,r)=>{"use strict";t.parsers=void 0;var n=r(75774),o=r(84913),a=r(72010),i=r(24864),s=r(24092),l=r(89840),c=r(30581),u=r(86770),d=r(67371),f=r(15083),p=r(5381),h=r(98904),m=r(86066),g=r(51190),v=r(3695),y=r(90456),b=r(78637),w=r(58521),x=r(16117),S=r(41643),A=r(37175),k=r(39304),C=r(79377),I=r(51438),E=r(44812),D=r(49480),T=r(8619),O=r(32272),M=r(81614),P=r(13525),j=r(63578);t.parsers={G:new n.EraParser,y:new o.YearParser,Y:new a.LocalWeekYearParser,R:new i.ISOWeekYearParser,u:new s.ExtendedYearParser,Q:new l.QuarterParser,q:new c.StandAloneQuarterParser,M:new u.MonthParser,L:new d.StandAloneMonthParser,w:new f.LocalWeekParser,I:new p.ISOWeekParser,d:new h.DateParser,D:new m.DayOfYearParser,E:new g.DayParser,e:new v.LocalDayParser,c:new y.StandAloneLocalDayParser,i:new b.ISODayParser,a:new w.AMPMParser,b:new x.AMPMMidnightParser,B:new S.DayPeriodParser,h:new A.Hour1to12Parser,H:new k.Hour0to23Parser,K:new C.Hour0To11Parser,k:new I.Hour1To24Parser,m:new E.MinuteParser,s:new D.SecondParser,S:new T.FractionOfSecondParser,X:new O.ISOTimezoneWithZParser,x:new M.ISOTimezoneParser,t:new P.TimestampSecondsParser,T:new j.TimestampMillisecondsParser}},16117:(e,t,r)=>{"use strict";t.AMPMMidnightParser=void 0;var n=r(29481),o=r(26117);class a extends n.Parser{priority=80;parse(e,t,r){switch(t){case"b":case"bb":case"bbb":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbbb":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,t,r){return e.setHours((0,o.dayPeriodEnumToHours)(r),0,0,0),e}incompatibleTokens=["a","B","H","k","t","T"]}t.AMPMMidnightParser=a},58521:(e,t,r)=>{"use strict";t.AMPMParser=void 0;var n=r(29481),o=r(26117);class a extends n.Parser{priority=80;parse(e,t,r){switch(t){case"a":case"aa":case"aaa":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaaa":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,t,r){return e.setHours((0,o.dayPeriodEnumToHours)(r),0,0,0),e}incompatibleTokens=["b","B","H","k","t","T"]}t.AMPMParser=a},98904:(e,t,r)=>{"use strict";t.DateParser=void 0;var n=r(66961),o=r(29481),a=r(26117);const i=[31,28,31,30,31,30,31,31,30,31,30,31],s=[31,29,31,30,31,30,31,31,30,31,30,31];class l extends o.Parser{priority=90;subPriority=1;parse(e,t,r){switch(t){case"d":return(0,a.parseNumericPattern)(n.numericPatterns.date,e);case"do":return r.ordinalNumber(e,{unit:"date"});default:return(0,a.parseNDigits)(t.length,e)}}validate(e,t){const r=e.getFullYear(),n=(0,a.isLeapYearIndex)(r),o=e.getMonth();return n?t>=1&&t<=s[o]:t>=1&&t<=i[o]}set(e,t,r){return e.setDate(r),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","w","I","D","i","e","c","t","T"]}t.DateParser=l},86066:(e,t,r)=>{"use strict";t.DayOfYearParser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{priority=90;subpriority=1;parse(e,t,r){switch(t){case"D":case"DD":return(0,a.parseNumericPattern)(n.numericPatterns.dayOfYear,e);case"Do":return r.ordinalNumber(e,{unit:"date"});default:return(0,a.parseNDigits)(t.length,e)}}validate(e,t){const r=e.getFullYear();return(0,a.isLeapYearIndex)(r)?t>=1&&t<=366:t>=1&&t<=365}set(e,t,r){return e.setMonth(0,r),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","M","L","w","I","d","E","i","e","c","t","T"]}t.DayOfYearParser=i},51190:(e,t,r)=>{"use strict";t.DayParser=void 0;var n=r(25469),o=r(29481);class a extends o.Parser{priority=90;parse(e,t,r){switch(t){case"E":case"EE":case"EEE":return r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});case"EEEEE":return r.day(e,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});default:return r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"})}}validate(e,t){return t>=0&&t<=6}set(e,t,r,o){return(e=(0,n.setDay)(e,r,o)).setHours(0,0,0,0),e}incompatibleTokens=["D","i","e","c","t","T"]}t.DayParser=a},41643:(e,t,r)=>{"use strict";t.DayPeriodParser=void 0;var n=r(29481),o=r(26117);class a extends n.Parser{priority=80;parse(e,t,r){switch(t){case"B":case"BB":case"BBB":return r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBBB":return r.dayPeriod(e,{width:"narrow",context:"formatting"});default:return r.dayPeriod(e,{width:"wide",context:"formatting"})||r.dayPeriod(e,{width:"abbreviated",context:"formatting"})||r.dayPeriod(e,{width:"narrow",context:"formatting"})}}set(e,t,r){return e.setHours((0,o.dayPeriodEnumToHours)(r),0,0,0),e}incompatibleTokens=["a","b","t","T"]}t.DayPeriodParser=a},75774:(e,t,r)=>{"use strict";t.EraParser=void 0;var n=r(29481);class o extends n.Parser{priority=140;parse(e,t,r){switch(t){case"G":case"GG":case"GGG":return r.era(e,{width:"abbreviated"})||r.era(e,{width:"narrow"});case"GGGGG":return r.era(e,{width:"narrow"});default:return r.era(e,{width:"wide"})||r.era(e,{width:"abbreviated"})||r.era(e,{width:"narrow"})}}set(e,t,r){return t.era=r,e.setFullYear(r,0,1),e.setHours(0,0,0,0),e}incompatibleTokens=["R","u","t","T"]}t.EraParser=o},24092:(e,t,r)=>{"use strict";t.ExtendedYearParser=void 0;var n=r(29481),o=r(26117);class a extends n.Parser{priority=130;parse(e,t){return"u"===t?(0,o.parseNDigitsSigned)(4,e):(0,o.parseNDigitsSigned)(t.length,e)}set(e,t,r){return e.setFullYear(r,0,1),e.setHours(0,0,0,0),e}incompatibleTokens=["G","y","Y","R","w","I","i","e","c","t","T"]}t.ExtendedYearParser=a},8619:(e,t,r)=>{"use strict";t.FractionOfSecondParser=void 0;var n=r(29481),o=r(26117);class a extends n.Parser{priority=30;parse(e,t){return(0,o.mapValue)((0,o.parseNDigits)(t.length,e),(e=>Math.trunc(e*Math.pow(10,3-t.length))))}set(e,t,r){return e.setMilliseconds(r),e}incompatibleTokens=["t","T"]}t.FractionOfSecondParser=a},79377:(e,t,r)=>{"use strict";t.Hour0To11Parser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{priority=70;parse(e,t,r){switch(t){case"K":return(0,a.parseNumericPattern)(n.numericPatterns.hour11h,e);case"Ko":return r.ordinalNumber(e,{unit:"hour"});default:return(0,a.parseNDigits)(t.length,e)}}validate(e,t){return t>=0&&t<=11}set(e,t,r){return e.getHours()>=12&&r<12?e.setHours(r+12,0,0,0):e.setHours(r,0,0,0),e}incompatibleTokens=["h","H","k","t","T"]}t.Hour0To11Parser=i},39304:(e,t,r)=>{"use strict";t.Hour0to23Parser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{priority=70;parse(e,t,r){switch(t){case"H":return(0,a.parseNumericPattern)(n.numericPatterns.hour23h,e);case"Ho":return r.ordinalNumber(e,{unit:"hour"});default:return(0,a.parseNDigits)(t.length,e)}}validate(e,t){return t>=0&&t<=23}set(e,t,r){return e.setHours(r,0,0,0),e}incompatibleTokens=["a","b","h","K","k","t","T"]}t.Hour0to23Parser=i},51438:(e,t,r)=>{"use strict";t.Hour1To24Parser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{priority=70;parse(e,t,r){switch(t){case"k":return(0,a.parseNumericPattern)(n.numericPatterns.hour24h,e);case"ko":return r.ordinalNumber(e,{unit:"hour"});default:return(0,a.parseNDigits)(t.length,e)}}validate(e,t){return t>=1&&t<=24}set(e,t,r){const n=r<=24?r%24:r;return e.setHours(n,0,0,0),e}incompatibleTokens=["a","b","h","H","K","t","T"]}t.Hour1To24Parser=i},37175:(e,t,r)=>{"use strict";t.Hour1to12Parser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{priority=70;parse(e,t,r){switch(t){case"h":return(0,a.parseNumericPattern)(n.numericPatterns.hour12h,e);case"ho":return r.ordinalNumber(e,{unit:"hour"});default:return(0,a.parseNDigits)(t.length,e)}}validate(e,t){return t>=1&&t<=12}set(e,t,r){const n=e.getHours()>=12;return n&&r<12?e.setHours(r+12,0,0,0):n||12!==r?e.setHours(r,0,0,0):e.setHours(0,0,0,0),e}incompatibleTokens=["H","K","k","t","T"]}t.Hour1to12Parser=i},78637:(e,t,r)=>{"use strict";t.ISODayParser=void 0;var n=r(65358),o=r(29481),a=r(26117);class i extends o.Parser{priority=90;parse(e,t,r){const n=e=>0===e?7:e;switch(t){case"i":case"ii":return(0,a.parseNDigits)(t.length,e);case"io":return r.ordinalNumber(e,{unit:"day"});case"iii":return(0,a.mapValue)(r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),n);case"iiiii":return(0,a.mapValue)(r.day(e,{width:"narrow",context:"formatting"}),n);case"iiiiii":return(0,a.mapValue)(r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),n);default:return(0,a.mapValue)(r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"}),n)}}validate(e,t){return t>=1&&t<=7}set(e,t,r){return(e=(0,n.setISODay)(e,r)).setHours(0,0,0,0),e}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","E","e","c","t","T"]}t.ISODayParser=i},81614:(e,t,r)=>{"use strict";t.ISOTimezoneParser=void 0;var n=r(19078),o=r(82757),a=r(66961),i=r(29481),s=r(26117);class l extends i.Parser{priority=10;parse(e,t){switch(t){case"x":return(0,s.parseTimezonePattern)(a.timezonePatterns.basicOptionalMinutes,e);case"xx":return(0,s.parseTimezonePattern)(a.timezonePatterns.basic,e);case"xxxx":return(0,s.parseTimezonePattern)(a.timezonePatterns.basicOptionalSeconds,e);case"xxxxx":return(0,s.parseTimezonePattern)(a.timezonePatterns.extendedOptionalSeconds,e);default:return(0,s.parseTimezonePattern)(a.timezonePatterns.extended,e)}}set(e,t,r){return t.timestampIsSet?e:(0,n.constructFrom)(e,e.getTime()-(0,o.getTimezoneOffsetInMilliseconds)(e)-r)}incompatibleTokens=["t","T","X"]}t.ISOTimezoneParser=l},32272:(e,t,r)=>{"use strict";t.ISOTimezoneWithZParser=void 0;var n=r(19078),o=r(82757),a=r(66961),i=r(29481),s=r(26117);class l extends i.Parser{priority=10;parse(e,t){switch(t){case"X":return(0,s.parseTimezonePattern)(a.timezonePatterns.basicOptionalMinutes,e);case"XX":return(0,s.parseTimezonePattern)(a.timezonePatterns.basic,e);case"XXXX":return(0,s.parseTimezonePattern)(a.timezonePatterns.basicOptionalSeconds,e);case"XXXXX":return(0,s.parseTimezonePattern)(a.timezonePatterns.extendedOptionalSeconds,e);default:return(0,s.parseTimezonePattern)(a.timezonePatterns.extended,e)}}set(e,t,r){return t.timestampIsSet?e:(0,n.constructFrom)(e,e.getTime()-(0,o.getTimezoneOffsetInMilliseconds)(e)-r)}incompatibleTokens=["t","T","x"]}t.ISOTimezoneWithZParser=l},5381:(e,t,r)=>{"use strict";t.ISOWeekParser=void 0;var n=r(53478),o=r(5813),a=r(66961),i=r(29481),s=r(26117);class l extends i.Parser{priority=100;parse(e,t,r){switch(t){case"I":return(0,s.parseNumericPattern)(a.numericPatterns.week,e);case"Io":return r.ordinalNumber(e,{unit:"week"});default:return(0,s.parseNDigits)(t.length,e)}}validate(e,t){return t>=1&&t<=53}set(e,t,r){return(0,o.startOfISOWeek)((0,n.setISOWeek)(e,r))}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","e","c","t","T"]}t.ISOWeekParser=l},24864:(e,t,r)=>{"use strict";t.ISOWeekYearParser=void 0;var n=r(5813),o=r(19078),a=r(29481),i=r(26117);class s extends a.Parser{priority=130;parse(e,t){return"R"===t?(0,i.parseNDigitsSigned)(4,e):(0,i.parseNDigitsSigned)(t.length,e)}set(e,t,r){const a=(0,o.constructFrom)(e,0);return a.setFullYear(r,0,4),a.setHours(0,0,0,0),(0,n.startOfISOWeek)(a)}incompatibleTokens=["G","y","Y","u","Q","q","M","L","w","d","D","e","c","t","T"]}t.ISOWeekYearParser=s},3695:(e,t,r)=>{"use strict";t.LocalDayParser=void 0;var n=r(25469),o=r(29481),a=r(26117);class i extends o.Parser{priority=90;parse(e,t,r,n){const o=e=>{const t=7*Math.floor((e-1)/7);return(e+n.weekStartsOn+6)%7+t};switch(t){case"e":case"ee":return(0,a.mapValue)((0,a.parseNDigits)(t.length,e),o);case"eo":return(0,a.mapValue)(r.ordinalNumber(e,{unit:"day"}),o);case"eee":return r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});case"eeeee":return r.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"});default:return r.day(e,{width:"wide",context:"formatting"})||r.day(e,{width:"abbreviated",context:"formatting"})||r.day(e,{width:"short",context:"formatting"})||r.day(e,{width:"narrow",context:"formatting"})}}validate(e,t){return t>=0&&t<=6}set(e,t,r,o){return(e=(0,n.setDay)(e,r,o)).setHours(0,0,0,0),e}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","c","t","T"]}t.LocalDayParser=i},15083:(e,t,r)=>{"use strict";t.LocalWeekParser=void 0;var n=r(91355),o=r(85694),a=r(66961),i=r(29481),s=r(26117);class l extends i.Parser{priority=100;parse(e,t,r){switch(t){case"w":return(0,s.parseNumericPattern)(a.numericPatterns.week,e);case"wo":return r.ordinalNumber(e,{unit:"week"});default:return(0,s.parseNDigits)(t.length,e)}}validate(e,t){return t>=1&&t<=53}set(e,t,r,a){return(0,o.startOfWeek)((0,n.setWeek)(e,r,a),a)}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","i","t","T"]}t.LocalWeekParser=l},72010:(e,t,r)=>{"use strict";t.LocalWeekYearParser=void 0;var n=r(20026),o=r(85694),a=r(29481),i=r(26117);class s extends a.Parser{priority=130;parse(e,t,r){const n=e=>({year:e,isTwoDigitYear:"YY"===t});switch(t){case"Y":return(0,i.mapValue)((0,i.parseNDigits)(4,e),n);case"Yo":return(0,i.mapValue)(r.ordinalNumber(e,{unit:"year"}),n);default:return(0,i.mapValue)((0,i.parseNDigits)(t.length,e),n)}}validate(e,t){return t.isTwoDigitYear||t.year>0}set(e,t,r,a){const s=(0,n.getWeekYear)(e,a);if(r.isTwoDigitYear){const t=(0,i.normalizeTwoDigitYear)(r.year,s);return e.setFullYear(t,0,a.firstWeekContainsDate),e.setHours(0,0,0,0),(0,o.startOfWeek)(e,a)}const l="era"in t&&1!==t.era?1-r.year:r.year;return e.setFullYear(l,0,a.firstWeekContainsDate),e.setHours(0,0,0,0),(0,o.startOfWeek)(e,a)}incompatibleTokens=["y","R","u","Q","q","M","L","I","d","D","i","t","T"]}t.LocalWeekYearParser=s},44812:(e,t,r)=>{"use strict";t.MinuteParser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{priority=60;parse(e,t,r){switch(t){case"m":return(0,a.parseNumericPattern)(n.numericPatterns.minute,e);case"mo":return r.ordinalNumber(e,{unit:"minute"});default:return(0,a.parseNDigits)(t.length,e)}}validate(e,t){return t>=0&&t<=59}set(e,t,r){return e.setMinutes(r,0,0),e}incompatibleTokens=["t","T"]}t.MinuteParser=i},86770:(e,t,r)=>{"use strict";t.MonthParser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{incompatibleTokens=["Y","R","q","Q","L","w","I","D","i","e","c","t","T"];priority=110;parse(e,t,r){const o=e=>e-1;switch(t){case"M":return(0,a.mapValue)((0,a.parseNumericPattern)(n.numericPatterns.month,e),o);case"MM":return(0,a.mapValue)((0,a.parseNDigits)(2,e),o);case"Mo":return(0,a.mapValue)(r.ordinalNumber(e,{unit:"month"}),o);case"MMM":return r.month(e,{width:"abbreviated",context:"formatting"})||r.month(e,{width:"narrow",context:"formatting"});case"MMMMM":return r.month(e,{width:"narrow",context:"formatting"});default:return r.month(e,{width:"wide",context:"formatting"})||r.month(e,{width:"abbreviated",context:"formatting"})||r.month(e,{width:"narrow",context:"formatting"})}}validate(e,t){return t>=0&&t<=11}set(e,t,r){return e.setMonth(r,1),e.setHours(0,0,0,0),e}}t.MonthParser=i},89840:(e,t,r)=>{"use strict";t.QuarterParser=void 0;var n=r(29481),o=r(26117);class a extends n.Parser{priority=120;parse(e,t,r){switch(t){case"Q":case"QQ":return(0,o.parseNDigits)(t.length,e);case"Qo":return r.ordinalNumber(e,{unit:"quarter"});case"QQQ":return r.quarter(e,{width:"abbreviated",context:"formatting"})||r.quarter(e,{width:"narrow",context:"formatting"});case"QQQQQ":return r.quarter(e,{width:"narrow",context:"formatting"});default:return r.quarter(e,{width:"wide",context:"formatting"})||r.quarter(e,{width:"abbreviated",context:"formatting"})||r.quarter(e,{width:"narrow",context:"formatting"})}}validate(e,t){return t>=1&&t<=4}set(e,t,r){return e.setMonth(3*(r-1),1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","M","L","w","I","d","D","i","e","c","t","T"]}t.QuarterParser=a},49480:(e,t,r)=>{"use strict";t.SecondParser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{priority=50;parse(e,t,r){switch(t){case"s":return(0,a.parseNumericPattern)(n.numericPatterns.second,e);case"so":return r.ordinalNumber(e,{unit:"second"});default:return(0,a.parseNDigits)(t.length,e)}}validate(e,t){return t>=0&&t<=59}set(e,t,r){return e.setSeconds(r,0),e}incompatibleTokens=["t","T"]}t.SecondParser=i},90456:(e,t,r)=>{"use strict";t.StandAloneLocalDayParser=void 0;var n=r(25469),o=r(29481),a=r(26117);class i extends o.Parser{priority=90;parse(e,t,r,n){const o=e=>{const t=7*Math.floor((e-1)/7);return(e+n.weekStartsOn+6)%7+t};switch(t){case"c":case"cc":return(0,a.mapValue)((0,a.parseNDigits)(t.length,e),o);case"co":return(0,a.mapValue)(r.ordinalNumber(e,{unit:"day"}),o);case"ccc":return r.day(e,{width:"abbreviated",context:"standalone"})||r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"});case"ccccc":return r.day(e,{width:"narrow",context:"standalone"});case"cccccc":return r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"});default:return r.day(e,{width:"wide",context:"standalone"})||r.day(e,{width:"abbreviated",context:"standalone"})||r.day(e,{width:"short",context:"standalone"})||r.day(e,{width:"narrow",context:"standalone"})}}validate(e,t){return t>=0&&t<=6}set(e,t,r,o){return(e=(0,n.setDay)(e,r,o)).setHours(0,0,0,0),e}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","e","t","T"]}t.StandAloneLocalDayParser=i},67371:(e,t,r)=>{"use strict";t.StandAloneMonthParser=void 0;var n=r(66961),o=r(29481),a=r(26117);class i extends o.Parser{priority=110;parse(e,t,r){const o=e=>e-1;switch(t){case"L":return(0,a.mapValue)((0,a.parseNumericPattern)(n.numericPatterns.month,e),o);case"LL":return(0,a.mapValue)((0,a.parseNDigits)(2,e),o);case"Lo":return(0,a.mapValue)(r.ordinalNumber(e,{unit:"month"}),o);case"LLL":return r.month(e,{width:"abbreviated",context:"standalone"})||r.month(e,{width:"narrow",context:"standalone"});case"LLLLL":return r.month(e,{width:"narrow",context:"standalone"});default:return r.month(e,{width:"wide",context:"standalone"})||r.month(e,{width:"abbreviated",context:"standalone"})||r.month(e,{width:"narrow",context:"standalone"})}}validate(e,t){return t>=0&&t<=11}set(e,t,r){return e.setMonth(r,1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","q","Q","M","w","I","D","i","e","c","t","T"]}t.StandAloneMonthParser=i},30581:(e,t,r)=>{"use strict";t.StandAloneQuarterParser=void 0;var n=r(29481),o=r(26117);class a extends n.Parser{priority=120;parse(e,t,r){switch(t){case"q":case"qq":return(0,o.parseNDigits)(t.length,e);case"qo":return r.ordinalNumber(e,{unit:"quarter"});case"qqq":return r.quarter(e,{width:"abbreviated",context:"standalone"})||r.quarter(e,{width:"narrow",context:"standalone"});case"qqqqq":return r.quarter(e,{width:"narrow",context:"standalone"});default:return r.quarter(e,{width:"wide",context:"standalone"})||r.quarter(e,{width:"abbreviated",context:"standalone"})||r.quarter(e,{width:"narrow",context:"standalone"})}}validate(e,t){return t>=1&&t<=4}set(e,t,r){return e.setMonth(3*(r-1),1),e.setHours(0,0,0,0),e}incompatibleTokens=["Y","R","Q","M","L","w","I","d","D","i","e","c","t","T"]}t.StandAloneQuarterParser=a},63578:(e,t,r)=>{"use strict";t.TimestampMillisecondsParser=void 0;var n=r(19078),o=r(29481),a=r(26117);class i extends o.Parser{priority=20;parse(e){return(0,a.parseAnyDigitsSigned)(e)}set(e,t,r){return[(0,n.constructFrom)(e,r),{timestampIsSet:!0}]}incompatibleTokens="*"}t.TimestampMillisecondsParser=i},13525:(e,t,r)=>{"use strict";t.TimestampSecondsParser=void 0;var n=r(19078),o=r(29481),a=r(26117);class i extends o.Parser{priority=40;parse(e){return(0,a.parseAnyDigitsSigned)(e)}set(e,t,r){return[(0,n.constructFrom)(e,1e3*r),{timestampIsSet:!0}]}incompatibleTokens="*"}t.TimestampSecondsParser=i},84913:(e,t,r)=>{"use strict";t.YearParser=void 0;var n=r(29481),o=r(26117);class a extends n.Parser{priority=130;incompatibleTokens=["Y","R","u","w","I","i","e","c","t","T"];parse(e,t,r){const n=e=>({year:e,isTwoDigitYear:"yy"===t});switch(t){case"y":return(0,o.mapValue)((0,o.parseNDigits)(4,e),n);case"yo":return(0,o.mapValue)(r.ordinalNumber(e,{unit:"year"}),n);default:return(0,o.mapValue)((0,o.parseNDigits)(t.length,e),n)}}validate(e,t){return t.isTwoDigitYear||t.year>0}set(e,t,r){const n=e.getFullYear();if(r.isTwoDigitYear){const t=(0,o.normalizeTwoDigitYear)(r.year,n);return e.setFullYear(t,0,1),e.setHours(0,0,0,0),e}const a="era"in t&&1!==t.era?1-r.year:r.year;return e.setFullYear(a,0,1),e.setHours(0,0,0,0),e}}t.YearParser=a},26117:(e,t,r)=>{"use strict";t.dayPeriodEnumToHours=function(e){switch(e){case"morning":return 4;case"evening":return 17;case"pm":case"noon":case"afternoon":return 12;default:return 0}},t.isLeapYearIndex=function(e){return e%400===0||e%4===0&&e%100!==0},t.mapValue=function(e,t){if(!e)return e;return{value:t(e.value),rest:e.rest}},t.normalizeTwoDigitYear=function(e,t){const r=t>0,n=r?t:1-t;let o;if(n<=50)o=e||100;else{const t=n+50;o=e+100*Math.trunc(t/100)-(e>=t%100?100:0)}return r?o:1-o},t.parseAnyDigitsSigned=function(e){return a(o.numericPatterns.anyDigitsSigned,e)},t.parseNDigits=function(e,t){switch(e){case 1:return a(o.numericPatterns.singleDigit,t);case 2:return a(o.numericPatterns.twoDigits,t);case 3:return a(o.numericPatterns.threeDigits,t);case 4:return a(o.numericPatterns.fourDigits,t);default:return a(new RegExp("^\\d{1,"+e+"}"),t)}},t.parseNDigitsSigned=function(e,t){switch(e){case 1:return a(o.numericPatterns.singleDigitSigned,t);case 2:return a(o.numericPatterns.twoDigitsSigned,t);case 3:return a(o.numericPatterns.threeDigitsSigned,t);case 4:return a(o.numericPatterns.fourDigitsSigned,t);default:return a(new RegExp("^-?\\d{1,"+e+"}"),t)}},t.parseNumericPattern=a,t.parseTimezonePattern=function(e,t){const r=t.match(e);if(!r)return null;if("Z"===r[0])return{value:0,rest:t.slice(1)};const o="+"===r[1]?1:-1,a=r[2]?parseInt(r[2],10):0,i=r[3]?parseInt(r[3],10):0,s=r[5]?parseInt(r[5],10):0;return{value:o*(a*n.millisecondsInHour+i*n.millisecondsInMinute+s*n.millisecondsInSecond),rest:t.slice(r[0].length)}};var n=r(4702),o=r(66961);function a(e,t){const r=t.match(e);return r?{value:parseInt(r[0],10),rest:t.slice(r[0].length)}:null}},33731:(e,t,r)=>{"use strict";t.parseISO=function(e,t){const r=t?.additionalDigits??2,f=function(e){const t={},r=e.split(o.dateTimeDelimiter);let n;if(r.length>2)return t;/:/.test(r[0])?n=r[0]:(t.date=r[0],n=r[1],o.timeZoneDelimiter.test(t.date)&&(t.date=e.split(o.timeZoneDelimiter)[0],n=e.substr(t.date.length,e.length)));if(n){const e=o.timezone.exec(n);e?(t.time=n.replace(e[1],""),t.timezone=e[1]):t.time=n}return t}(e);let p;if(f.date){const e=function(e,t){const r=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),n=e.match(r);if(!n)return{year:NaN,restDateString:""};const o=n[1]?parseInt(n[1]):null,a=n[2]?parseInt(n[2]):null;return{year:null===a?o:100*a,restDateString:e.slice((n[1]||n[2]).length)}}(f.date,r);p=function(e,t){if(null===t)return new Date(NaN);const r=e.match(a);if(!r)return new Date(NaN);const n=!!r[4],o=l(r[1]),i=l(r[2])-1,s=l(r[3]),c=l(r[4]),f=l(r[5])-1;if(n)return function(e,t,r){return t>=1&&t<=53&&r>=0&&r<=6}(0,c,f)?function(e,t,r){const n=new Date(0);n.setUTCFullYear(e,0,4);const o=n.getUTCDay()||7,a=7*(t-1)+r+1-o;return n.setUTCDate(n.getUTCDate()+a),n}(t,c,f):new Date(NaN);{const e=new Date(0);return function(e,t,r){return t>=0&&t<=11&&r>=1&&r<=(u[t]||(d(e)?29:28))}(t,i,s)&&function(e,t){return t>=1&&t<=(d(e)?366:365)}(t,o)?(e.setUTCFullYear(t,i,Math.max(o,s)),e):new Date(NaN)}}(e.restDateString,e.year)}if(!p||isNaN(p.getTime()))return new Date(NaN);const h=p.getTime();let m,g=0;if(f.time&&(g=function(e){const t=e.match(i);if(!t)return NaN;const r=c(t[1]),o=c(t[2]),a=c(t[3]);if(!function(e,t,r){if(24===e)return 0===t&&0===r;return r>=0&&r<60&&t>=0&&t<60&&e>=0&&e<25}(r,o,a))return NaN;return r*n.millisecondsInHour+o*n.millisecondsInMinute+1e3*a}(f.time),isNaN(g)))return new Date(NaN);if(!f.timezone){const e=new Date(h+g),t=new Date(0);return t.setFullYear(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()),t.setHours(e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds()),t}if(m=function(e){if("Z"===e)return 0;const t=e.match(s);if(!t)return 0;const r="+"===t[1]?-1:1,o=parseInt(t[2]),a=t[3]&&parseInt(t[3])||0;if(!function(e,t){return t>=0&&t<=59}(0,a))return NaN;return r*(o*n.millisecondsInHour+a*n.millisecondsInMinute)}(f.timezone),isNaN(m))return new Date(NaN);return new Date(h+g+m)};var n=r(4702);const o={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},a=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,i=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,s=/^([+-])(\d{2})(?::?(\d{2}))?$/;function l(e){return e?parseInt(e):1}function c(e){return e&&parseFloat(e.replace(",","."))||0}const u=[31,null,31,30,31,30,31,31,30,31,30,31];function d(e){return e%400===0||e%4===0&&e%100!==0}},48342:(e,t)=>{"use strict";t.parseJSON=function(e){const t=e.match(/(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2}):(\d{2})(?:\.(\d{0,7}))?(?:Z|(.)(\d{2}):?(\d{2})?)?/);if(t)return new Date(Date.UTC(+t[1],+t[2]-1,+t[3],+t[4]-(+t[9]||0)*("-"==t[8]?-1:1),+t[5]-(+t[10]||0)*("-"==t[8]?-1:1),+t[6],+((t[7]||"0")+"00").substring(0,3)));return new Date(NaN)}},22326:(e,t,r)=>{"use strict";t.previousDay=function(e,t){let r=(0,n.getDay)(e)-t;r<=0&&(r+=7);return(0,o.subDays)(e,r)};var n=r(35833),o=r(72242)},48989:(e,t,r)=>{"use strict";t.previousFriday=function(e){return(0,n.previousDay)(e,5)};var n=r(22326)},90282:(e,t,r)=>{"use strict";t.previousMonday=function(e){return(0,n.previousDay)(e,1)};var n=r(22326)},36609:(e,t,r)=>{"use strict";t.previousSaturday=function(e){return(0,n.previousDay)(e,6)};var n=r(22326)},92050:(e,t,r)=>{"use strict";t.previousSunday=function(e){return(0,n.previousDay)(e,0)};var n=r(22326)},9956:(e,t,r)=>{"use strict";t.previousThursday=function(e){return(0,n.previousDay)(e,4)};var n=r(22326)},34239:(e,t,r)=>{"use strict";t.previousTuesday=function(e){return(0,n.previousDay)(e,2)};var n=r(22326)},46164:(e,t,r)=>{"use strict";t.previousWednesday=function(e){return(0,n.previousDay)(e,3)};var n=r(22326)},18512:(e,t,r)=>{"use strict";t.quartersToMonths=function(e){return Math.trunc(e*n.monthsInQuarter)};var n=r(4702)},15685:(e,t,r)=>{"use strict";t.quartersToYears=function(e){const t=e/n.quartersInYear;return Math.trunc(t)};var n=r(4702)},89651:(e,t,r)=>{"use strict";t.roundToNearestHours=function(e,t){const r=t?.nearestTo??1;if(r<1||r>12)return(0,o.constructFrom)(e,NaN);const i=(0,a.toDate)(e),s=i.getMinutes()/60,l=i.getSeconds()/60/60,c=i.getMilliseconds()/1e3/60/60,u=i.getHours()+s+l+c,d=t?.roundingMethod??"round",f=(0,n.getRoundingMethod)(d)(u/r)*r,p=(0,o.constructFrom)(e,i);return p.setHours(f,0,0,0),p};var n=r(29577),o=r(19078),a=r(73094)},69433:(e,t,r)=>{"use strict";t.roundToNearestMinutes=function(e,t){const r=t?.nearestTo??1;if(r<1||r>30)return(0,o.constructFrom)(e,NaN);const i=(0,a.toDate)(e),s=i.getSeconds()/60,l=i.getMilliseconds()/1e3/60,c=i.getMinutes()+s+l,u=t?.roundingMethod??"round",d=(0,n.getRoundingMethod)(u)(c/r)*r,f=(0,o.constructFrom)(e,i);return f.setMinutes(d,0,0),f};var n=r(29577),o=r(19078),a=r(73094)},40992:(e,t,r)=>{"use strict";t.secondsToHours=function(e){const t=e/n.secondsInHour;return Math.trunc(t)};var n=r(4702)},66469:(e,t,r)=>{"use strict";t.secondsToMilliseconds=function(e){return e*n.millisecondsInSecond};var n=r(4702)},59326:(e,t,r)=>{"use strict";t.secondsToMinutes=function(e){const t=e/n.secondsInMinute;return Math.trunc(t)};var n=r(4702)},88191:(e,t,r)=>{"use strict";t.set=function(e,t){let r=(0,a.toDate)(e);if(isNaN(+r))return(0,n.constructFrom)(e,NaN);null!=t.year&&r.setFullYear(t.year);null!=t.month&&(r=(0,o.setMonth)(r,t.month));null!=t.date&&r.setDate(t.date);null!=t.hours&&r.setHours(t.hours);null!=t.minutes&&r.setMinutes(t.minutes);null!=t.seconds&&r.setSeconds(t.seconds);null!=t.milliseconds&&r.setMilliseconds(t.milliseconds);return r};var n=r(19078),o=r(34849),a=r(73094)},90371:(e,t,r)=>{"use strict";t.setDate=function(e,t){const r=(0,n.toDate)(e);return r.setDate(t),r};var n=r(73094)},25469:(e,t,r)=>{"use strict";t.setDay=function(e,t,r){const i=(0,a.getDefaultOptions)(),s=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??i.weekStartsOn??i.locale?.options?.weekStartsOn??0,l=(0,o.toDate)(e),c=l.getDay(),u=(t%7+7)%7,d=7-s,f=t<0||t>6?t-(c+d)%7:(u+d)%7-(c+d)%7;return(0,n.addDays)(l,f)};var n=r(65811),o=r(73094),a=r(71531)},53569:(e,t,r)=>{"use strict";t.setDayOfYear=function(e,t){const r=(0,n.toDate)(e);return r.setMonth(0),r.setDate(t),r};var n=r(73094)},86270:(e,t,r)=>{"use strict";t.setDefaultOptions=function(e){const t={},r=(0,n.getDefaultOptions)();for(const n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n]);for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(void 0===e[n]?delete t[n]:t[n]=e[n]);(0,n.setDefaultOptions)(t)};var n=r(71531)},56964:(e,t,r)=>{"use strict";t.setHours=function(e,t){const r=(0,n.toDate)(e);return r.setHours(t),r};var n=r(73094)},65358:(e,t,r)=>{"use strict";t.setISODay=function(e,t){const r=(0,a.toDate)(e),i=(0,o.getISODay)(r),s=t-i;return(0,n.addDays)(r,s)};var n=r(65811),o=r(69418),a=r(73094)},53478:(e,t,r)=>{"use strict";t.setISOWeek=function(e,t){const r=(0,o.toDate)(e),a=(0,n.getISOWeek)(r)-t;return r.setDate(r.getDate()-7*a),r};var n=r(44938),o=r(73094)},44011:(e,t,r)=>{"use strict";t.setISOWeekYear=function(e,t){let r=(0,i.toDate)(e);const s=(0,o.differenceInCalendarDays)(r,(0,a.startOfISOWeekYear)(r)),l=(0,n.constructFrom)(e,0);return l.setFullYear(t,0,4),l.setHours(0,0,0,0),r=(0,a.startOfISOWeekYear)(l),r.setDate(r.getDate()+s),r};var n=r(19078),o=r(18982),a=r(58356),i=r(73094)},16873:(e,t,r)=>{"use strict";t.setMilliseconds=function(e,t){const r=(0,n.toDate)(e);return r.setMilliseconds(t),r};var n=r(73094)},23098:(e,t,r)=>{"use strict";t.setMinutes=function(e,t){const r=(0,n.toDate)(e);return r.setMinutes(t),r};var n=r(73094)},34849:(e,t,r)=>{"use strict";t.setMonth=function(e,t){const r=(0,a.toDate)(e),i=r.getFullYear(),s=r.getDate(),l=(0,n.constructFrom)(e,0);l.setFullYear(i,t,15),l.setHours(0,0,0,0);const c=(0,o.getDaysInMonth)(l);return r.setMonth(t,Math.min(s,c)),r};var n=r(19078),o=r(10781),a=r(73094)},29416:(e,t,r)=>{"use strict";t.setQuarter=function(e,t){const r=(0,o.toDate)(e),a=Math.trunc(r.getMonth()/3)+1,i=t-a;return(0,n.setMonth)(r,r.getMonth()+3*i)};var n=r(34849),o=r(73094)},78582:(e,t,r)=>{"use strict";t.setSeconds=function(e,t){const r=(0,n.toDate)(e);return r.setSeconds(t),r};var n=r(73094)},91355:(e,t,r)=>{"use strict";t.setWeek=function(e,t,r){const a=(0,o.toDate)(e),i=(0,n.getWeek)(a,r)-t;return a.setDate(a.getDate()-7*i),a};var n=r(44927),o=r(73094)},32334:(e,t,r)=>{"use strict";t.setWeekYear=function(e,t,r){const l=(0,s.getDefaultOptions)(),c=r?.firstWeekContainsDate??r?.locale?.options?.firstWeekContainsDate??l.firstWeekContainsDate??l.locale?.options?.firstWeekContainsDate??1;let u=(0,i.toDate)(e);const d=(0,o.differenceInCalendarDays)(u,(0,a.startOfWeekYear)(u,r)),f=(0,n.constructFrom)(e,0);return f.setFullYear(t,0,c),f.setHours(0,0,0,0),u=(0,a.startOfWeekYear)(f,r),u.setDate(u.getDate()+d),u};var n=r(19078),o=r(18982),a=r(69587),i=r(73094),s=r(71531)},26650:(e,t,r)=>{"use strict";t.setYear=function(e,t){const r=(0,o.toDate)(e);if(isNaN(+r))return(0,n.constructFrom)(e,NaN);return r.setFullYear(t),r};var n=r(19078),o=r(73094)},64086:(e,t,r)=>{"use strict";t.startOfDay=function(e){const t=(0,n.toDate)(e);return t.setHours(0,0,0,0),t};var n=r(73094)},59898:(e,t,r)=>{"use strict";t.startOfDecade=function(e){const t=(0,n.toDate)(e),r=t.getFullYear(),o=10*Math.floor(r/10);return t.setFullYear(o,0,1),t.setHours(0,0,0,0),t};var n=r(73094)},90916:(e,t,r)=>{"use strict";t.startOfHour=function(e){const t=(0,n.toDate)(e);return t.setMinutes(0,0,0),t};var n=r(73094)},5813:(e,t,r)=>{"use strict";t.startOfISOWeek=function(e){return(0,n.startOfWeek)(e,{weekStartsOn:1})};var n=r(85694)},58356:(e,t,r)=>{"use strict";t.startOfISOWeekYear=function(e){const t=(0,n.getISOWeekYear)(e),r=(0,a.constructFrom)(e,0);return r.setFullYear(t,0,4),r.setHours(0,0,0,0),(0,o.startOfISOWeek)(r)};var n=r(14807),o=r(5813),a=r(19078)},22818:(e,t,r)=>{"use strict";t.startOfMinute=function(e){const t=(0,n.toDate)(e);return t.setSeconds(0,0),t};var n=r(73094)},57078:(e,t,r)=>{"use strict";t.startOfMonth=function(e){const t=(0,n.toDate)(e);return t.setDate(1),t.setHours(0,0,0,0),t};var n=r(73094)},33404:(e,t,r)=>{"use strict";t.startOfQuarter=function(e){const t=(0,n.toDate)(e),r=t.getMonth(),o=r-r%3;return t.setMonth(o,1),t.setHours(0,0,0,0),t};var n=r(73094)},60326:(e,t,r)=>{"use strict";t.startOfSecond=function(e){const t=(0,n.toDate)(e);return t.setMilliseconds(0),t};var n=r(73094)},82145:(e,t,r)=>{"use strict";t.startOfToday=function(){return(0,n.startOfDay)(Date.now())};var n=r(64086)},4073:(e,t)=>{"use strict";t.startOfTomorrow=function(){const e=new Date,t=e.getFullYear(),r=e.getMonth(),n=e.getDate(),o=new Date(0);return o.setFullYear(t,r,n+1),o.setHours(0,0,0,0),o}},85694:(e,t,r)=>{"use strict";t.startOfWeek=function(e,t){const r=(0,o.getDefaultOptions)(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=(0,n.toDate)(e),s=i.getDay(),l=(s<a?7:0)+s-a;return i.setDate(i.getDate()-l),i.setHours(0,0,0,0),i};var n=r(73094),o=r(71531)},69587:(e,t,r)=>{"use strict";t.startOfWeekYear=function(e,t){const r=(0,i.getDefaultOptions)(),s=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,l=(0,o.getWeekYear)(e,t),c=(0,n.constructFrom)(e,0);c.setFullYear(l,0,s),c.setHours(0,0,0,0);return(0,a.startOfWeek)(c,t)};var n=r(19078),o=r(20026),a=r(85694),i=r(71531)},82771:(e,t,r)=>{"use strict";t.startOfYear=function(e){const t=(0,n.toDate)(e),r=(0,o.constructFrom)(e,0);return r.setFullYear(t.getFullYear(),0,1),r.setHours(0,0,0,0),r};var n=r(73094),o=r(19078)},75268:(e,t)=>{"use strict";t.startOfYesterday=function(){const e=new Date,t=e.getFullYear(),r=e.getMonth(),n=e.getDate(),o=new Date(0);return o.setFullYear(t,r,n-1),o.setHours(0,0,0,0),o}},17533:(e,t,r)=>{"use strict";t.sub=function(e,t){const{years:r=0,months:i=0,weeks:s=0,days:l=0,hours:c=0,minutes:u=0,seconds:d=0}=t,f=(0,o.subMonths)(e,i+12*r),p=(0,n.subDays)(f,l+7*s),h=1e3*(d+60*(u+60*c));return(0,a.constructFrom)(e,p.getTime()-h)};var n=r(72242),o=r(51486),a=r(19078)},63968:(e,t,r)=>{"use strict";t.subBusinessDays=function(e,t){return(0,n.addBusinessDays)(e,-t)};var n=r(83949)},72242:(e,t,r)=>{"use strict";t.subDays=function(e,t){return(0,n.addDays)(e,-t)};var n=r(65811)},54562:(e,t,r)=>{"use strict";t.subHours=function(e,t){return(0,n.addHours)(e,-t)};var n=r(58213)},58676:(e,t,r)=>{"use strict";t.subISOWeekYears=function(e,t){return(0,n.addISOWeekYears)(e,-t)};var n=r(685)},48187:(e,t,r)=>{"use strict";t.subMilliseconds=function(e,t){return(0,n.addMilliseconds)(e,-t)};var n=r(64918)},48788:(e,t,r)=>{"use strict";t.subMinutes=function(e,t){return(0,n.addMinutes)(e,-t)};var n=r(80999)},51486:(e,t,r)=>{"use strict";t.subMonths=function(e,t){return(0,n.addMonths)(e,-t)};var n=r(27811)},16744:(e,t,r)=>{"use strict";t.subQuarters=function(e,t){return(0,n.addQuarters)(e,-t)};var n=r(20481)},81972:(e,t,r)=>{"use strict";t.subSeconds=function(e,t){return(0,n.addSeconds)(e,-t)};var n=r(87727)},39596:(e,t,r)=>{"use strict";t.subWeeks=function(e,t){return(0,n.addWeeks)(e,-t)};var n=r(29023)},71139:(e,t,r)=>{"use strict";t.subYears=function(e,t){return(0,n.addYears)(e,-t)};var n=r(33116)},73094:(e,t)=>{"use strict";t.toDate=function(e){const t=Object.prototype.toString.call(e);return e instanceof Date||"object"===typeof e&&"[object Date]"===t?new e.constructor(+e):"number"===typeof e||"[object Number]"===t||"string"===typeof e||"[object String]"===t?new Date(e):new Date(NaN)}},94796:(e,t,r)=>{"use strict";t.transpose=function(e,t){const r=t instanceof Date?(0,n.constructFrom)(t,0):new t(0);return r.setFullYear(e.getFullYear(),e.getMonth(),e.getDate()),r.setHours(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()),r};var n=r(19078)},28220:(e,t,r)=>{"use strict";t.weeksToDays=function(e){return Math.trunc(e*n.daysInWeek)};var n=r(4702)},25035:(e,t,r)=>{"use strict";t.yearsToDays=function(e){return Math.trunc(e*n.daysInYear)};var n=r(4702)},30155:(e,t,r)=>{"use strict";t.yearsToMonths=function(e){return Math.trunc(e*n.monthsInYear)};var n=r(4702)},24873:(e,t,r)=>{"use strict";t.yearsToQuarters=function(e){return Math.trunc(e*n.quartersInYear)};var n=r(4702)},44441:function(e,t,r){var n;!function(){"use strict";var o,a=1e9,i={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},s=!0,l="[DecimalError] ",c=l+"Invalid argument: ",u=l+"Exponent out of range: ",d=Math.floor,f=Math.pow,p=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,h=1e7,m=9007199254740991,g=d(1286742750677284.5),v={};function y(e,t){var r,n,o,a,i,l,c,u,d=e.constructor,f=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),s?D(t,f):t;if(c=e.d,u=t.d,i=e.e,o=t.e,c=c.slice(),a=i-o){for(a<0?(n=c,a=-a,l=u.length):(n=u,o=i,l=c.length),a>(l=(i=Math.ceil(f/7))>l?i+1:l+1)&&(a=l,n.length=1),n.reverse();a--;)n.push(0);n.reverse()}for((l=c.length)-(a=u.length)<0&&(a=l,n=u,u=c,c=n),r=0;a;)r=(c[--a]=c[a]+u[a]+r)/h|0,c[a]%=h;for(r&&(c.unshift(r),++o),l=c.length;0==c[--l];)c.pop();return t.d=c,t.e=o,s?D(t,f):t}function b(e,t,r){if(e!==~~e||e<t||e>r)throw Error(c+e)}function w(e){var t,r,n,o=e.length-1,a="",i=e[0];if(o>0){for(a+=i,t=1;t<o;t++)(r=7-(n=e[t]+"").length)&&(a+=C(r)),a+=n;(r=7-(n=(i=e[t])+"").length)&&(a+=C(r))}else if(0===i)return"0";for(;i%10===0;)i/=10;return a+i}v.absoluteValue=v.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e},v.comparedTo=v.cmp=function(e){var t,r,n,o,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(t=0,r=(n=a.d.length)<(o=e.d.length)?n:o;t<r;++t)if(a.d[t]!==e.d[t])return a.d[t]>e.d[t]^a.s<0?1:-1;return n===o?0:n>o^a.s<0?1:-1},v.decimalPlaces=v.dp=function(){var e=this,t=e.d.length-1,r=7*(t-e.e);if(t=e.d[t])for(;t%10==0;t/=10)r--;return r<0?0:r},v.dividedBy=v.div=function(e){return x(this,new this.constructor(e))},v.dividedToIntegerBy=v.idiv=function(e){var t=this.constructor;return D(x(this,new t(e),0,1),t.precision)},v.equals=v.eq=function(e){return!this.cmp(e)},v.exponent=function(){return A(this)},v.greaterThan=v.gt=function(e){return this.cmp(e)>0},v.greaterThanOrEqualTo=v.gte=function(e){return this.cmp(e)>=0},v.isInteger=v.isint=function(){return this.e>this.d.length-2},v.isNegative=v.isneg=function(){return this.s<0},v.isPositive=v.ispos=function(){return this.s>0},v.isZero=function(){return 0===this.s},v.lessThan=v.lt=function(e){return this.cmp(e)<0},v.lessThanOrEqualTo=v.lte=function(e){return this.cmp(e)<1},v.logarithm=v.log=function(e){var t,r=this,n=r.constructor,a=n.precision,i=a+5;if(void 0===e)e=new n(10);else if((e=new n(e)).s<1||e.eq(o))throw Error(l+"NaN");if(r.s<1)throw Error(l+(r.s?"NaN":"-Infinity"));return r.eq(o)?new n(0):(s=!1,t=x(I(r,i),I(e,i),i),s=!0,D(t,a))},v.minus=v.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?T(t,e):y(t,(e.s=-e.s,e))},v.modulo=v.mod=function(e){var t,r=this,n=r.constructor,o=n.precision;if(!(e=new n(e)).s)throw Error(l+"NaN");return r.s?(s=!1,t=x(r,e,0,1).times(e),s=!0,r.minus(t)):D(new n(r),o)},v.naturalExponential=v.exp=function(){return S(this)},v.naturalLogarithm=v.ln=function(){return I(this)},v.negated=v.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e},v.plus=v.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?y(t,e):T(t,(e.s=-e.s,e))},v.precision=v.sd=function(e){var t,r,n,o=this;if(void 0!==e&&e!==!!e&&1!==e&&0!==e)throw Error(c+e);if(t=A(o)+1,r=7*(n=o.d.length-1)+1,n=o.d[n]){for(;n%10==0;n/=10)r--;for(n=o.d[0];n>=10;n/=10)r++}return e&&t>r?t:r},v.squareRoot=v.sqrt=function(){var e,t,r,n,o,a,i,c=this,u=c.constructor;if(c.s<1){if(!c.s)return new u(0);throw Error(l+"NaN")}for(e=A(c),s=!1,0==(o=Math.sqrt(+c))||o==1/0?(((t=w(c.d)).length+e)%2==0&&(t+="0"),o=Math.sqrt(t),e=d((e+1)/2)-(e<0||e%2),n=new u(t=o==1/0?"5e"+e:(t=o.toExponential()).slice(0,t.indexOf("e")+1)+e)):n=new u(o.toString()),o=i=(r=u.precision)+3;;)if(n=(a=n).plus(x(c,a,i+2)).times(.5),w(a.d).slice(0,i)===(t=w(n.d)).slice(0,i)){if(t=t.slice(i-3,i+1),o==i&&"4999"==t){if(D(a,r+1,0),a.times(a).eq(c)){n=a;break}}else if("9999"!=t)break;i+=4}return s=!0,D(n,r)},v.times=v.mul=function(e){var t,r,n,o,a,i,l,c,u,d=this,f=d.constructor,p=d.d,m=(e=new f(e)).d;if(!d.s||!e.s)return new f(0);for(e.s*=d.s,r=d.e+e.e,(c=p.length)<(u=m.length)&&(a=p,p=m,m=a,i=c,c=u,u=i),a=[],n=i=c+u;n--;)a.push(0);for(n=u;--n>=0;){for(t=0,o=c+n;o>n;)l=a[o]+m[n]*p[o-n-1]+t,a[o--]=l%h|0,t=l/h|0;a[o]=(a[o]+t)%h|0}for(;!a[--i];)a.pop();return t?++r:a.shift(),e.d=a,e.e=r,s?D(e,f.precision):e},v.toDecimalPlaces=v.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),void 0===e?r:(b(e,0,a),void 0===t?t=n.rounding:b(t,0,8),D(r,e+A(r)+1,t))},v.toExponential=function(e,t){var r,n=this,o=n.constructor;return void 0===e?r=O(n,!0):(b(e,0,a),void 0===t?t=o.rounding:b(t,0,8),r=O(n=D(new o(n),e+1,t),!0,e+1)),r},v.toFixed=function(e,t){var r,n,o=this,i=o.constructor;return void 0===e?O(o):(b(e,0,a),void 0===t?t=i.rounding:b(t,0,8),r=O((n=D(new i(o),e+A(o)+1,t)).abs(),!1,e+A(n)+1),o.isneg()&&!o.isZero()?"-"+r:r)},v.toInteger=v.toint=function(){var e=this,t=e.constructor;return D(new t(e),A(e)+1,t.rounding)},v.toNumber=function(){return+this},v.toPower=v.pow=function(e){var t,r,n,a,i,c,u=this,f=u.constructor,p=+(e=new f(e));if(!e.s)return new f(o);if(!(u=new f(u)).s){if(e.s<1)throw Error(l+"Infinity");return u}if(u.eq(o))return u;if(n=f.precision,e.eq(o))return D(u,n);if(c=(t=e.e)>=(r=e.d.length-1),i=u.s,c){if((r=p<0?-p:p)<=m){for(a=new f(o),t=Math.ceil(n/7+4),s=!1;r%2&&M((a=a.times(u)).d,t),0!==(r=d(r/2));)M((u=u.times(u)).d,t);return s=!0,e.s<0?new f(o).div(a):D(a,n)}}else if(i<0)throw Error(l+"NaN");return i=i<0&&1&e.d[Math.max(t,r)]?-1:1,u.s=1,s=!1,a=e.times(I(u,n+12)),s=!0,(a=S(a)).s=i,a},v.toPrecision=function(e,t){var r,n,o=this,i=o.constructor;return void 0===e?n=O(o,(r=A(o))<=i.toExpNeg||r>=i.toExpPos):(b(e,1,a),void 0===t?t=i.rounding:b(t,0,8),n=O(o=D(new i(o),e,t),e<=(r=A(o))||r<=i.toExpNeg,e)),n},v.toSignificantDigits=v.tosd=function(e,t){var r=this.constructor;return void 0===e?(e=r.precision,t=r.rounding):(b(e,1,a),void 0===t?t=r.rounding:b(t,0,8)),D(new r(this),e,t)},v.toString=v.valueOf=v.val=v.toJSON=function(){var e=this,t=A(e),r=e.constructor;return O(e,t<=r.toExpNeg||t>=r.toExpPos)};var x=function(){function e(e,t){var r,n=0,o=e.length;for(e=e.slice();o--;)r=e[o]*t+n,e[o]=r%h|0,n=r/h|0;return n&&e.unshift(n),e}function t(e,t,r,n){var o,a;if(r!=n)a=r>n?1:-1;else for(o=a=0;o<r;o++)if(e[o]!=t[o]){a=e[o]>t[o]?1:-1;break}return a}function r(e,t,r){for(var n=0;r--;)e[r]-=n,n=e[r]<t[r]?1:0,e[r]=n*h+e[r]-t[r];for(;!e[0]&&e.length>1;)e.shift()}return function(n,o,a,i){var s,c,u,d,f,p,m,g,v,y,b,w,x,S,k,C,I,E,T=n.constructor,O=n.s==o.s?1:-1,M=n.d,P=o.d;if(!n.s)return new T(n);if(!o.s)throw Error(l+"Division by zero");for(c=n.e-o.e,I=P.length,k=M.length,g=(m=new T(O)).d=[],u=0;P[u]==(M[u]||0);)++u;if(P[u]>(M[u]||0)&&--c,(w=null==a?a=T.precision:i?a+(A(n)-A(o))+1:a)<0)return new T(0);if(w=w/7+2|0,u=0,1==I)for(d=0,P=P[0],w++;(u<k||d)&&w--;u++)x=d*h+(M[u]||0),g[u]=x/P|0,d=x%P|0;else{for((d=h/(P[0]+1)|0)>1&&(P=e(P,d),M=e(M,d),I=P.length,k=M.length),S=I,y=(v=M.slice(0,I)).length;y<I;)v[y++]=0;(E=P.slice()).unshift(0),C=P[0],P[1]>=h/2&&++C;do{d=0,(s=t(P,v,I,y))<0?(b=v[0],I!=y&&(b=b*h+(v[1]||0)),(d=b/C|0)>1?(d>=h&&(d=h-1),1==(s=t(f=e(P,d),v,p=f.length,y=v.length))&&(d--,r(f,I<p?E:P,p))):(0==d&&(s=d=1),f=P.slice()),(p=f.length)<y&&f.unshift(0),r(v,f,y),-1==s&&(s=t(P,v,I,y=v.length))<1&&(d++,r(v,I<y?E:P,y)),y=v.length):0===s&&(d++,v=[0]),g[u++]=d,s&&v[0]?v[y++]=M[S]||0:(v=[M[S]],y=1)}while((S++<k||void 0!==v[0])&&w--)}return g[0]||g.shift(),m.e=c,D(m,i?a+A(m)+1:a)}}();function S(e,t){var r,n,a,i,l,c=0,d=0,p=e.constructor,h=p.precision;if(A(e)>16)throw Error(u+A(e));if(!e.s)return new p(o);for(null==t?(s=!1,l=h):l=t,i=new p(.03125);e.abs().gte(.1);)e=e.times(i),d+=5;for(l+=Math.log(f(2,d))/Math.LN10*2+5|0,r=n=a=new p(o),p.precision=l;;){if(n=D(n.times(e),l),r=r.times(++c),w((i=a.plus(x(n,r,l))).d).slice(0,l)===w(a.d).slice(0,l)){for(;d--;)a=D(a.times(a),l);return p.precision=h,null==t?(s=!0,D(a,h)):a}a=i}}function A(e){for(var t=7*e.e,r=e.d[0];r>=10;r/=10)t++;return t}function k(e,t,r){if(t>e.LN10.sd())throw s=!0,r&&(e.precision=r),Error(l+"LN10 precision limit exceeded");return D(new e(e.LN10),t)}function C(e){for(var t="";e--;)t+="0";return t}function I(e,t){var r,n,a,i,c,u,d,f,p,h=1,m=e,g=m.d,v=m.constructor,y=v.precision;if(m.s<1)throw Error(l+(m.s?"NaN":"-Infinity"));if(m.eq(o))return new v(0);if(null==t?(s=!1,f=y):f=t,m.eq(10))return null==t&&(s=!0),k(v,f);if(f+=10,v.precision=f,n=(r=w(g)).charAt(0),i=A(m),!(Math.abs(i)<15e14))return d=k(v,f+2,y).times(i+""),m=I(new v(n+"."+r.slice(1)),f-10).plus(d),v.precision=y,null==t?(s=!0,D(m,y)):m;for(;n<7&&1!=n||1==n&&r.charAt(1)>3;)n=(r=w((m=m.times(e)).d)).charAt(0),h++;for(i=A(m),n>1?(m=new v("0."+r),i++):m=new v(n+"."+r.slice(1)),u=c=m=x(m.minus(o),m.plus(o),f),p=D(m.times(m),f),a=3;;){if(c=D(c.times(p),f),w((d=u.plus(x(c,new v(a),f))).d).slice(0,f)===w(u.d).slice(0,f))return u=u.times(2),0!==i&&(u=u.plus(k(v,f+2,y).times(i+""))),u=x(u,new v(h),f),v.precision=y,null==t?(s=!0,D(u,y)):u;u=d,a+=2}}function E(e,t){var r,n,o;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;48===t.charCodeAt(n);)++n;for(o=t.length;48===t.charCodeAt(o-1);)--o;if(t=t.slice(n,o)){if(o-=n,r=r-n-1,e.e=d(r/7),e.d=[],n=(r+1)%7,r<0&&(n+=7),n<o){for(n&&e.d.push(+t.slice(0,n)),o-=7;n<o;)e.d.push(+t.slice(n,n+=7));n=7-(t=t.slice(n)).length}else n-=o;for(;n--;)t+="0";if(e.d.push(+t),s&&(e.e>g||e.e<-g))throw Error(u+r)}else e.s=0,e.e=0,e.d=[0];return e}function D(e,t,r){var n,o,a,i,l,c,p,m,v=e.d;for(i=1,a=v[0];a>=10;a/=10)i++;if((n=t-i)<0)n+=7,o=t,p=v[m=0];else{if((m=Math.ceil((n+1)/7))>=(a=v.length))return e;for(p=a=v[m],i=1;a>=10;a/=10)i++;o=(n%=7)-7+i}if(void 0!==r&&(l=p/(a=f(10,i-o-1))%10|0,c=t<0||void 0!==v[m+1]||p%a,c=r<4?(l||c)&&(0==r||r==(e.s<0?3:2)):l>5||5==l&&(4==r||c||6==r&&(n>0?o>0?p/f(10,i-o):0:v[m-1])%10&1||r==(e.s<0?8:7))),t<1||!v[0])return c?(a=A(e),v.length=1,t=t-a-1,v[0]=f(10,(7-t%7)%7),e.e=d(-t/7)||0):(v.length=1,v[0]=e.e=e.s=0),e;if(0==n?(v.length=m,a=1,m--):(v.length=m+1,a=f(10,7-n),v[m]=o>0?(p/f(10,i-o)%f(10,o)|0)*a:0),c)for(;;){if(0==m){(v[0]+=a)==h&&(v[0]=1,++e.e);break}if(v[m]+=a,v[m]!=h)break;v[m--]=0,a=1}for(n=v.length;0===v[--n];)v.pop();if(s&&(e.e>g||e.e<-g))throw Error(u+A(e));return e}function T(e,t){var r,n,o,a,i,l,c,u,d,f,p=e.constructor,m=p.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new p(e),s?D(t,m):t;if(c=e.d,f=t.d,n=t.e,u=e.e,c=c.slice(),i=u-n){for((d=i<0)?(r=c,i=-i,l=f.length):(r=f,n=u,l=c.length),i>(o=Math.max(Math.ceil(m/7),l)+2)&&(i=o,r.length=1),r.reverse(),o=i;o--;)r.push(0);r.reverse()}else{for((d=(o=c.length)<(l=f.length))&&(l=o),o=0;o<l;o++)if(c[o]!=f[o]){d=c[o]<f[o];break}i=0}for(d&&(r=c,c=f,f=r,t.s=-t.s),l=c.length,o=f.length-l;o>0;--o)c[l++]=0;for(o=f.length;o>i;){if(c[--o]<f[o]){for(a=o;a&&0===c[--a];)c[a]=h-1;--c[a],c[o]+=h}c[o]-=f[o]}for(;0===c[--l];)c.pop();for(;0===c[0];c.shift())--n;return c[0]?(t.d=c,t.e=n,s?D(t,m):t):new p(0)}function O(e,t,r){var n,o=A(e),a=w(e.d),i=a.length;return t?(r&&(n=r-i)>0?a=a.charAt(0)+"."+a.slice(1)+C(n):i>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(o<0?"e":"e+")+o):o<0?(a="0."+C(-o-1)+a,r&&(n=r-i)>0&&(a+=C(n))):o>=i?(a+=C(o+1-i),r&&(n=r-o-1)>0&&(a=a+"."+C(n))):((n=o+1)<i&&(a=a.slice(0,n)+"."+a.slice(n)),r&&(n=r-i)>0&&(o+1===i&&(a+="."),a+=C(n))),e.s<0?"-"+a:a}function M(e,t){if(e.length>t)return e.length=t,!0}function P(e){if(!e||"object"!==typeof e)throw Error(l+"Object expected");var t,r,n,o=["precision",1,a,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t<o.length;t+=3)if(void 0!==(n=e[r=o[t]])){if(!(d(n)===n&&n>=o[t+1]&&n<=o[t+2]))throw Error(c+r+": "+n);this[r]=n}if(void 0!==(n=e[r="LN10"])){if(n!=Math.LN10)throw Error(c+r+": "+n);this[r]=new this(n)}return this}i=function e(t){var r,n,o;function a(e){var t=this;if(!(t instanceof a))return new a(e);if(t.constructor=a,e instanceof a)return t.s=e.s,t.e=e.e,void(t.d=(e=e.d)?e.slice():e);if("number"===typeof e){if(0*e!==0)throw Error(c+e);if(e>0)t.s=1;else{if(!(e<0))return t.s=0,t.e=0,void(t.d=[0]);e=-e,t.s=-1}return e===~~e&&e<1e7?(t.e=0,void(t.d=[e])):E(t,e.toString())}if("string"!==typeof e)throw Error(c+e);if(45===e.charCodeAt(0)?(e=e.slice(1),t.s=-1):t.s=1,!p.test(e))throw Error(c+e);E(t,e)}if(a.prototype=v,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.clone=e,a.config=a.set=P,void 0===t&&(t={}),t)for(o=["precision","rounding","toExpNeg","toExpPos","LN10"],r=0;r<o.length;)t.hasOwnProperty(n=o[r++])||(t[n]=this[n]);return a.config(t),a}(i),i.default=i.Decimal=i,o=new i(1),void 0===(n=function(){return i}.call(t,r,t,e))||(e.exports=n)}()},74879:(e,t,r)=>{e.exports=r(88146).get},52540:(e,t,r)=>{e.exports=r(43177).isPlainObject},76667:(e,t,r)=>{e.exports=r(76928).last},98354:(e,t,r)=>{e.exports=r(77774).range},30830:(e,t,r)=>{e.exports=r(85497).sortBy},76135:(e,t,r)=>{e.exports=r(96633).throttle},52239:(e,t,r)=>{e.exports=r(27384).uniqBy},14195:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isUnsafeProperty=function(e){return"__proto__"===e}},98897:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.flatten=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;const r=[],n=Math.floor(t),o=(e,t)=>{for(let a=0;a<e.length;a++){const i=e[a];Array.isArray(i)&&t<n?o(i,t+1):r.push(i)}};return o(e,0),r}},91047:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.last=function(e){return e[e.length-1]}},70011:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.uniqBy=function(e,t){const r=new Map;for(let n=0;n<e.length;n++){const o=e[n],a=t(o);r.has(a)||r.set(a,o)}return Array.from(r.values())}},85698:(e,t)=>{"use strict";function r(e){return"symbol"===typeof e?1:null===e?2:void 0===e?3:e!==e?4:0}Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});t.compareValues=(e,t,n)=>{if(e!==t){const o=r(e),a=r(t);if(o===a&&0===o){if(e<t)return"desc"===n?1:-1;if(e>t)return"desc"===n?-1:1}return"desc"===n?a-o:o-a}return 0}},39190:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.getSymbols=function(e){return Object.getOwnPropertySymbols(e).filter((t=>Object.prototype.propertyIsEnumerable.call(e,t)))}},9223:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.getTag=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}},71098:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isDeepKey=function(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}},97431:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const r=/^(?:0|[1-9]\d*)$/;t.isIndex=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_SAFE_INTEGER;switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e<t;case"symbol":return!1;case"string":return r.test(e)}}},52718:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(97431),o=r(57740),a=r(43539),i=r(19115);t.isIterateeCall=function(e,t,r){return!!a.isObject(r)&&(!!("number"===typeof t&&o.isArrayLike(r)&&n.isIndex(t)&&t<r.length||"string"===typeof t&&t in r)&&i.eq(r[t],e))}},69696:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(97108),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;t.isKey=function(e,t){return!Array.isArray(e)&&(!("number"!==typeof e&&"boolean"!==typeof e&&null!=e&&!n.isSymbol(e))||("string"===typeof e&&(a.test(e)||!o.test(e))||null!=t&&Object.hasOwn(t,e)))}},3470:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});t.argumentsTag="[object Arguments]",t.arrayBufferTag="[object ArrayBuffer]",t.arrayTag="[object Array]",t.bigInt64ArrayTag="[object BigInt64Array]",t.bigUint64ArrayTag="[object BigUint64Array]",t.booleanTag="[object Boolean]",t.dataViewTag="[object DataView]",t.dateTag="[object Date]",t.errorTag="[object Error]",t.float32ArrayTag="[object Float32Array]",t.float64ArrayTag="[object Float64Array]",t.functionTag="[object Function]",t.int16ArrayTag="[object Int16Array]",t.int32ArrayTag="[object Int32Array]",t.int8ArrayTag="[object Int8Array]",t.mapTag="[object Map]",t.numberTag="[object Number]",t.objectTag="[object Object]",t.regexpTag="[object RegExp]",t.setTag="[object Set]",t.stringTag="[object String]",t.symbolTag="[object Symbol]",t.uint16ArrayTag="[object Uint16Array]",t.uint32ArrayTag="[object Uint32Array]",t.uint8ArrayTag="[object Uint8Array]",t.uint8ClampedArrayTag="[object Uint8ClampedArray]"},225:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.toArray=function(e){return Array.isArray(e)?e:Array.from(e)}},41083:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.toKey=function(e){return"string"===typeof e||"symbol"===typeof e?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}},76928:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(91047),o=r(225),a=r(57740);t.last=function(e){if(a.isArrayLike(e))return n.last(o.toArray(e))}},59363:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(85698),o=r(69696),a=r(35031);t.orderBy=function(e,t,r,i){if(null==e)return[];r=i?void 0:r,Array.isArray(e)||(e=Object.values(e)),Array.isArray(t)||(t=null==t?[null]:[t]),0===t.length&&(t=[null]),Array.isArray(r)||(r=null==r?[]:[r]),r=r.map((e=>String(e)));const s=(e,t)=>{let r=e;for(let n=0;n<t.length&&null!=r;++n)r=r[t[n]];return r},l=t.map((e=>(Array.isArray(e)&&1===e.length&&(e=e[0]),null==e||"function"===typeof e||Array.isArray(e)||o.isKey(e)?e:{key:e,path:a.toPath(e)})));return e.map((e=>({original:e,criteria:l.map((t=>((e,t)=>null==t||null==e?t:"object"===typeof e&&"key"in e?Object.hasOwn(t,e.key)?t[e.key]:s(t,e.path):"function"===typeof e?e(t):Array.isArray(e)?s(t,e):"object"===typeof t?t[e]:t)(t,e)))}))).slice().sort(((e,t)=>{for(let o=0;o<l.length;o++){const a=n.compareValues(e.criteria[o],t.criteria[o],r[o]);if(0!==a)return a}return 0})).map((e=>e.original))}},85497:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(59363),o=r(98897),a=r(52718);t.sortBy=function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];const s=r.length;return s>1&&a.isIterateeCall(e,r[0],r[1])?r=[]:s>2&&a.isIterateeCall(r[0],r[1],r[2])&&(r=[r[0]]),n.orderBy(e,o.flatten(r),["asc"])}},27384:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(70011),o=r(51810),a=r(13787),i=r(71640);t.uniqBy=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.identity;return a.isArrayLikeObject(e)?n.uniqBy(Array.from(e),i.iteratee(t)):[]}},2742:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(6907);t.debounce=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};"object"!==typeof r&&(r={});const{leading:o=!1,trailing:a=!0,maxWait:i}=r,s=Array(2);let l;o&&(s[0]="leading"),a&&(s[1]="trailing");let c=null;const u=n.debounce((function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];l=e.apply(this,r),c=null}),t,{edges:s}),d=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return null!=i&&(null===c&&(c=Date.now()),Date.now()-c>=i)?(l=e.apply(this,r),c=Date.now(),u.cancel(),u.schedule(),l):(u.apply(this,r),l)};return d.cancel=u.cancel,d.flush=()=>(u.flush(),l),d}},96633:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(2742);t.throttle=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{leading:o=!0,trailing:a=!0}=r;return n.debounce(e,t,{leading:o,maxWait:t,trailing:a})}},77774:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(52718),o=r(46567);t.range=function(e,t,r){r&&"number"!==typeof r&&n.isIterateeCall(e,t,r)&&(t=r=void 0),e=o.toFinite(e),void 0===t?(t=e,e=0):t=o.toFinite(t),r=void 0===r?e<t?1:-1:o.toFinite(r);const a=Math.max(Math.ceil((t-e)/(r||1)),0),i=new Array(a);for(let n=0;n<a;n++)i[n]=e,e+=r;return i}},65573:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(56537);t.cloneDeep=function(e){return n.cloneDeepWith(e)}},56537:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(69690),o=r(3470);t.cloneDeepWith=function(e,t){return n.cloneDeepWith(e,((r,a,i,s)=>{const l=t?.(r,a,i,s);if(void 0!==l)return l;if("object"===typeof e)switch(Object.prototype.toString.call(e)){case o.numberTag:case o.stringTag:case o.booleanTag:{const t=new e.constructor(e?.valueOf());return n.copyProperties(t,e),t}case o.argumentsTag:{const t={};return n.copyProperties(t,e),t.length=e.length,t[Symbol.iterator]=e[Symbol.iterator],t}default:return}}))}},88146:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(14195),o=r(71098),a=r(41083),i=r(35031);t.get=function e(t,r,s){if(null==t)return s;switch(typeof r){case"string":{if(n.isUnsafeProperty(r))return s;const a=t[r];return void 0===a?o.isDeepKey(r)?e(t,i.toPath(r),s):s:a}case"number":case"symbol":{"number"===typeof r&&(r=a.toKey(r));const e=t[r];return void 0===e?s:e}default:{if(Array.isArray(r))return function(e,t,r){if(0===t.length)return r;let o=e;for(let a=0;a<t.length;a++){if(null==o)return r;if(n.isUnsafeProperty(t[a]))return r;o=o[t[a]]}if(void 0===o)return r;return o}(t,r,s);if(r=Object.is(r?.valueOf(),-0)?"-0":String(r),n.isUnsafeProperty(r))return s;const e=t[r];return void 0===e?s:e}}}},75942:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(71098),o=r(97431),a=r(25230),i=r(35031);t.has=function(e,t){let r;if(r=Array.isArray(t)?t:"string"===typeof t&&n.isDeepKey(t)&&null==e?.[t]?i.toPath(t):[t],0===r.length)return!1;let s=e;for(let n=0;n<r.length;n++){const e=r[n];if(null==s||!Object.hasOwn(s,e)){if(!((Array.isArray(s)||a.isArguments(s))&&o.isIndex(e)&&e<s.length))return!1}s=s[e]}return!0}},85825:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(88146);t.property=function(e){return function(t){return n.get(t,e)}}},25230:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(9223);t.isArguments=function(e){return null!==e&&"object"===typeof e&&"[object Arguments]"===n.getTag(e)}},57740:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(41111);t.isArrayLike=function(e){return null!=e&&"function"!==typeof e&&n.isLength(e.length)}},13787:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(57740),o=r(58316);t.isArrayLikeObject=function(e){return o.isObjectLike(e)&&n.isArrayLike(e)}},75399:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(41311);t.isMatch=function(e,t){return n.isMatchWith(e,t,(()=>{}))}},41311:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(43539),o=r(51214),a=r(19115);function i(e,t,r,c){if(t===e)return!0;switch(typeof t){case"object":return function(e,t,r,n){if(null==t)return!0;if(Array.isArray(t))return s(e,t,r,n);if(t instanceof Map)return function(e,t,r,n){if(0===t.size)return!0;if(!(e instanceof Map))return!1;for(const[o,a]of t.entries()){if(!1===r(e.get(o),a,o,e,t,n))return!1}return!0}(e,t,r,n);if(t instanceof Set)return l(e,t,r,n);const a=Object.keys(t);if(null==e||o.isPrimitive(e))return 0===a.length;if(0===a.length)return!0;if(n?.has(t))return n.get(t)===e;n?.set(t,e);try{for(let i=0;i<a.length;i++){const s=a[i];if(!o.isPrimitive(e)&&!(s in e))return!1;if(void 0===t[s]&&void 0!==e[s])return!1;if(null===t[s]&&null!==e[s])return!1;if(!r(e[s],t[s],s,e,t,n))return!1}return!0}finally{n?.delete(t)}}(e,t,r,c);case"function":return Object.keys(t).length>0?i(e,{...t},r,c):a.eq(e,t);default:return n.isObject(e)?"string"!==typeof t||""===t:a.eq(e,t)}}function s(e,t,r,n){if(0===t.length)return!0;if(!Array.isArray(e))return!1;const o=new Set;for(let a=0;a<t.length;a++){const i=t[a];let s=!1;for(let l=0;l<e.length;l++){if(o.has(l))continue;let c=!1;if(r(e[l],i,a,e,t,n)&&(c=!0),c){o.add(l),s=!0;break}}if(!s)return!1}return!0}function l(e,t,r,n){return 0===t.size||e instanceof Set&&s([...e],[...t],r,n)}t.isMatchWith=function e(t,r,n){return"function"!==typeof n?e(t,r,(()=>{})):i(t,r,(function e(t,r,o,a,s,l){const c=n(t,r,o,a,s,l);return void 0!==c?Boolean(c):i(t,r,e,l)}),new Map)},t.isSetMatch=l},43539:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isObject=function(e){return null!==e&&("object"===typeof e||"function"===typeof e)}},58316:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isObjectLike=function(e){return"object"===typeof e&&null!==e}},43177:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isPlainObject=function(e){if("object"!==typeof e)return!1;if(null==e)return!1;if(null===Object.getPrototypeOf(e))return!0;if("[object Object]"!==Object.prototype.toString.call(e)){const t=e[Symbol.toStringTag];if(null==t)return!1;return!!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable&&e.toString()===`[object ${t}]`}let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}},97108:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isSymbol=function(e){return"symbol"===typeof e||e instanceof Symbol}},63679:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(75399),o=r(99358);t.matches=function(e){return e=o.cloneDeep(e),t=>n.isMatch(t,e)}},94090:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(75399),o=r(41083),a=r(65573),i=r(88146),s=r(75942);t.matchesProperty=function(e,t){switch(typeof e){case"object":Object.is(e?.valueOf(),-0)&&(e="-0");break;case"number":e=o.toKey(e)}return t=a.cloneDeep(t),function(r){const o=i.get(r,e);return void 0===o?s.has(r,e):void 0===t?void 0===o:n.isMatch(o,t)}}},19115:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.eq=function(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}},71640:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(51810),o=r(85825),a=r(63679),i=r(94090);t.iteratee=function(e){if(null==e)return n.identity;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&2===e.length?i.matchesProperty(e[0],e[1]):a.matches(e);case"string":case"symbol":case"number":return o.property(e)}}},46567:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(91921);t.toFinite=function(e){if(!e)return 0===e?e:0;if((e=n.toNumber(e))===1/0||e===-1/0){return(e<0?-1:1)*Number.MAX_VALUE}return e===e?e:0}},91921:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(97108);t.toNumber=function(e){return n.isSymbol(e)?NaN:Number(e)}},35031:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(46301),o=r(41083);t.toPath=function(e){if(Array.isArray(e))return e.map(o.toKey);if("symbol"===typeof e)return[e];const t=[],r=(e=n.toString(e)).length;if(0===r)return t;let a=0,i="",s="",l=!1;for(46===e.charCodeAt(0)&&(t.push(""),a++);a<r;){const n=e[a];s?"\\"===n&&a+1<r?(a++,i+=e[a]):n===s?s="":i+=n:l?'"'===n||"'"===n?s=n:"]"===n?(l=!1,t.push(i),i=""):i+=n:"["===n?(l=!0,i&&(t.push(i),i="")):"."===n?i&&(t.push(i),i=""):i+=n,a++}return i&&t.push(i),t}},46301:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.toString=function e(t){if(null==t)return"";if("string"===typeof t)return t;if(Array.isArray(t))return t.map(e).join(",");const r=String(t);return"0"===r&&Object.is(Number(t),-0)?"-0":r}},6907:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.debounce=function(e,t){let r,{signal:n,edges:o}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=null;const i=null!=o&&o.includes("leading"),s=null==o||o.includes("trailing"),l=()=>{null!==a&&(e.apply(r,a),r=void 0,a=null)};let c=null;const u=()=>{null!=c&&clearTimeout(c),c=setTimeout((()=>{c=null,s&&l(),d()}),t)},d=()=>{null!==c&&(clearTimeout(c),c=null),r=void 0,a=null},f=function(){if(n?.aborted)return;r=this;for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];a=t;const s=null==c;u(),i&&s&&l()};return f.schedule=u,f.cancel=d,f.flush=()=>{l()},n?.addEventListener("abort",d,{once:!0}),f}},51810:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.identity=function(e){return e}},99358:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(69690);t.cloneDeep=function(e){return n.cloneDeepWithImpl(e,void 0,e,new Map,void 0)}},69690:(e,t,r)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});const n=r(39190),o=r(9223),a=r(3470),i=r(51214),s=r(61558);function l(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new Map,u=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;const d=u?.(e,t,r,n);if(void 0!==d)return d;if(i.isPrimitive(e))return e;if(n.has(e))return n.get(e);if(Array.isArray(e)){const t=new Array(e.length);n.set(e,t);for(let o=0;o<e.length;o++)t[o]=l(e[o],o,r,n,u);return Object.hasOwn(e,"index")&&(t.index=e.index),Object.hasOwn(e,"input")&&(t.input=e.input),t}if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp){const t=new RegExp(e.source,e.flags);return t.lastIndex=e.lastIndex,t}if(e instanceof Map){const t=new Map;n.set(e,t);for(const[o,a]of e)t.set(o,l(a,o,r,n,u));return t}if(e instanceof Set){const t=new Set;n.set(e,t);for(const o of e)t.add(l(o,void 0,r,n,u));return t}if("undefined"!==typeof Buffer&&Buffer.isBuffer(e))return e.subarray();if(s.isTypedArray(e)){const t=new(Object.getPrototypeOf(e).constructor)(e.length);n.set(e,t);for(let o=0;o<e.length;o++)t[o]=l(e[o],o,r,n,u);return t}if(e instanceof ArrayBuffer||"undefined"!==typeof SharedArrayBuffer&&e instanceof SharedArrayBuffer)return e.slice(0);if(e instanceof DataView){const t=new DataView(e.buffer.slice(0),e.byteOffset,e.byteLength);return n.set(e,t),c(t,e,r,n,u),t}if("undefined"!==typeof File&&e instanceof File){const t=new File([e],e.name,{type:e.type});return n.set(e,t),c(t,e,r,n,u),t}if("undefined"!==typeof Blob&&e instanceof Blob){const t=new Blob([e],{type:e.type});return n.set(e,t),c(t,e,r,n,u),t}if(e instanceof Error){const t=new e.constructor;return n.set(e,t),t.message=e.message,t.name=e.name,t.stack=e.stack,t.cause=e.cause,c(t,e,r,n,u),t}if(e instanceof Boolean){const t=new Boolean(e.valueOf());return n.set(e,t),c(t,e,r,n,u),t}if(e instanceof Number){const t=new Number(e.valueOf());return n.set(e,t),c(t,e,r,n,u),t}if(e instanceof String){const t=new String(e.valueOf());return n.set(e,t),c(t,e,r,n,u),t}if("object"===typeof e&&function(e){switch(o.getTag(e)){case a.argumentsTag:case a.arrayTag:case a.arrayBufferTag:case a.dataViewTag:case a.booleanTag:case a.dateTag:case a.float32ArrayTag:case a.float64ArrayTag:case a.int8ArrayTag:case a.int16ArrayTag:case a.int32ArrayTag:case a.mapTag:case a.numberTag:case a.objectTag:case a.regexpTag:case a.setTag:case a.stringTag:case a.symbolTag:case a.uint8ArrayTag:case a.uint8ClampedArrayTag:case a.uint16ArrayTag:case a.uint32ArrayTag:return!0;default:return!1}}(e)){const t=Object.create(Object.getPrototypeOf(e));return n.set(e,t),c(t,e,r,n,u),t}return e}function c(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e,o=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;const i=[...Object.keys(t),...n.getSymbols(t)];for(let n=0;n<i.length;n++){const s=i[n],c=Object.getOwnPropertyDescriptor(e,s);(null==c||c.writable)&&(e[s]=l(t[s],s,r,o,a))}}t.cloneDeepWith=function(e,t){return l(e,void 0,e,new Map,t)},t.cloneDeepWithImpl=l,t.copyProperties=c},41111:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isLength=function(e){return Number.isSafeInteger(e)&&e>=0}},51214:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isPrimitive=function(e){return null==e||"object"!==typeof e&&"function"!==typeof e}},61558:(e,t)=>{"use strict";Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.isTypedArray=function(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}},75438:e=>{"use strict";var t=Object.prototype.hasOwnProperty,r="~";function n(){}function o(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function a(e,t,n,a,i){if("function"!==typeof n)throw new TypeError("The listener must be a function");var s=new o(n,a||e,i),l=r?r+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],s]:e._events[l].push(s):(e._events[l]=s,e._eventsCount++),e}function i(e,t){0===--e._eventsCount?e._events=new n:delete e._events[t]}function s(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(r=!1)),s.prototype.eventNames=function(){var e,n,o=[];if(0===this._eventsCount)return o;for(n in e=this._events)t.call(e,n)&&o.push(r?n.slice(1):n);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(e)):o},s.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var o=0,a=n.length,i=new Array(a);o<a;o++)i[o]=n[o].fn;return i},s.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},s.prototype.emit=function(e,t,n,o,a,i){var s=r?r+e:e;if(!this._events[s])return!1;var l,c,u=this._events[s],d=arguments.length;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),d){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,n),!0;case 4:return u.fn.call(u.context,t,n,o),!0;case 5:return u.fn.call(u.context,t,n,o,a),!0;case 6:return u.fn.call(u.context,t,n,o,a,i),!0}for(c=1,l=new Array(d-1);c<d;c++)l[c-1]=arguments[c];u.fn.apply(u.context,l)}else{var f,p=u.length;for(c=0;c<p;c++)switch(u[c].once&&this.removeListener(e,u[c].fn,void 0,!0),d){case 1:u[c].fn.call(u[c].context);break;case 2:u[c].fn.call(u[c].context,t);break;case 3:u[c].fn.call(u[c].context,t,n);break;case 4:u[c].fn.call(u[c].context,t,n,o);break;default:if(!l)for(f=1,l=new Array(d-1);f<d;f++)l[f-1]=arguments[f];u[c].fn.apply(u[c].context,l)}}return!0},s.prototype.on=function(e,t,r){return a(this,e,t,r,!1)},s.prototype.once=function(e,t,r){return a(this,e,t,r,!0)},s.prototype.removeListener=function(e,t,n,o){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return i(this,a),this;var s=this._events[a];if(s.fn)s.fn!==t||o&&!s.once||n&&s.context!==n||i(this,a);else{for(var l=0,c=[],u=s.length;l<u;l++)(s[l].fn!==t||o&&!s[l].once||n&&s[l].context!==n)&&c.push(s[l]);c.length?this._events[a]=1===c.length?c[0]:c:i(this,a)}return this},s.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&i(this,t)):(this._events=new n,this._eventsCount=0),this},s.prototype.off=s.prototype.removeListener,s.prototype.addListener=s.prototype.on,s.prefixed=r,s.EventEmitter=s,e.exports=s},28981:e=>{"use strict";var t,r="object"===typeof Reflect?Reflect:null,n=r&&"function"===typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"===typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var o=Number.isNaN||function(e){return e!==e};function a(){a.init.call(this)}e.exports=a,e.exports.once=function(e,t){return new Promise((function(r,n){function o(r){e.removeListener(t,a),n(r)}function a(){"function"===typeof e.removeListener&&e.removeListener("error",o),r([].slice.call(arguments))}m(e,t,a,{once:!0}),"error"!==t&&function(e,t,r){"function"===typeof e.on&&m(e,"error",t,r)}(e,o,{once:!0})}))},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var i=10;function s(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function l(e){return void 0===e._maxListeners?a.defaultMaxListeners:e._maxListeners}function c(e,t,r,n){var o,a,i,c;if(s(r),void 0===(a=e._events)?(a=e._events=Object.create(null),e._eventsCount=0):(void 0!==a.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),a=e._events),i=a[t]),void 0===i)i=a[t]=r,++e._eventsCount;else if("function"===typeof i?i=a[t]=n?[r,i]:[i,r]:n?i.unshift(r):i.push(r),(o=l(e))>0&&i.length>o&&!i.warned){i.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+i.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=i.length,c=u,console&&console.warn&&console.warn(c)}return e}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},o=u.bind(n);return o.listener=r,n.wrapFn=o,o}function f(e,t,r){var n=e._events;if(void 0===n)return[];var o=n[t];return void 0===o?[]:"function"===typeof o?r?[o.listener||o]:[o]:r?function(e){for(var t=new Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}(o):h(o,o.length)}function p(e){var t=this._events;if(void 0!==t){var r=t[e];if("function"===typeof r)return 1;if(void 0!==r)return r.length}return 0}function h(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e[n];return r}function m(e,t,r,n){if("function"===typeof e.on)n.once?e.once(t,r):e.on(t,r);else{if("function"!==typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function o(a){n.once&&e.removeEventListener(t,o),r(a)}))}}Object.defineProperty(a,"defaultMaxListeners",{enumerable:!0,get:function(){return i},set:function(e){if("number"!==typeof e||e<0||o(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");i=e}}),a.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},a.prototype.setMaxListeners=function(e){if("number"!==typeof e||e<0||o(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},a.prototype.getMaxListeners=function(){return l(this)},a.prototype.emit=function(e){for(var t=[],r=1;r<arguments.length;r++)t.push(arguments[r]);var o="error"===e,a=this._events;if(void 0!==a)o=o&&void 0===a.error;else if(!o)return!1;if(o){var i;if(t.length>0&&(i=t[0]),i instanceof Error)throw i;var s=new Error("Unhandled error."+(i?" ("+i.message+")":""));throw s.context=i,s}var l=a[e];if(void 0===l)return!1;if("function"===typeof l)n(l,this,t);else{var c=l.length,u=h(l,c);for(r=0;r<c;++r)n(u[r],this,t)}return!0},a.prototype.addListener=function(e,t){return c(this,e,t,!1)},a.prototype.on=a.prototype.addListener,a.prototype.prependListener=function(e,t){return c(this,e,t,!0)},a.prototype.once=function(e,t){return s(t),this.on(e,d(this,e,t)),this},a.prototype.prependOnceListener=function(e,t){return s(t),this.prependListener(e,d(this,e,t)),this},a.prototype.removeListener=function(e,t){var r,n,o,a,i;if(s(t),void 0===(n=this._events))return this;if(void 0===(r=n[e]))return this;if(r===t||r.listener===t)0===--this._eventsCount?this._events=Object.create(null):(delete n[e],n.removeListener&&this.emit("removeListener",e,r.listener||t));else if("function"!==typeof r){for(o=-1,a=r.length-1;a>=0;a--)if(r[a]===t||r[a].listener===t){i=r[a].listener,o=a;break}if(o<0)return this;0===o?r.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(r,o),1===r.length&&(n[e]=r[0]),void 0!==n.removeListener&&this.emit("removeListener",e,i||t)}return this},a.prototype.off=a.prototype.removeListener,a.prototype.removeAllListeners=function(e){var t,r,n;if(void 0===(r=this._events))return this;if(void 0===r.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==r[e]&&(0===--this._eventsCount?this._events=Object.create(null):delete r[e]),this;if(0===arguments.length){var o,a=Object.keys(r);for(n=0;n<a.length;++n)"removeListener"!==(o=a[n])&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"===typeof(t=r[e]))this.removeListener(e,t);else if(void 0!==t)for(n=t.length-1;n>=0;n--)this.removeListener(e,t[n]);return this},a.prototype.listeners=function(e){return f(this,e,!0)},a.prototype.rawListeners=function(e){return f(this,e,!1)},a.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},a.prototype.listenerCount=p,a.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},34691:function(e,t,r){var n,o,a;o=[],void 0===(a="function"===typeof(n=function(){"use strict";function t(e,t){return"undefined"==typeof t?t={autoBom:!1}:"object"!=typeof t&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\ufeff",e],{type:e.type}):e}function n(e,t,r){var n=new XMLHttpRequest;n.open("GET",e),n.responseType="blob",n.onload=function(){l(n.response,t,r)},n.onerror=function(){console.error("could not download file")},n.send()}function o(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch(e){}return 200<=t.status&&299>=t.status}function a(e){try{e.dispatchEvent(new MouseEvent("click"))}catch(n){var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var i="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof r.g&&r.g.global===r.g?r.g:void 0,s=i.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),l=i.saveAs||("object"!=typeof window||window!==i?function(){}:"download"in HTMLAnchorElement.prototype&&!s?function(e,t,r){var s=i.URL||i.webkitURL,l=document.createElement("a");t=t||e.name||"download",l.download=t,l.rel="noopener","string"==typeof e?(l.href=e,l.origin===location.origin?a(l):o(l.href)?n(e,t,r):a(l,l.target="_blank")):(l.href=s.createObjectURL(e),setTimeout((function(){s.revokeObjectURL(l.href)}),4e4),setTimeout((function(){a(l)}),0))}:"msSaveOrOpenBlob"in navigator?function(e,r,i){if(r=r||e.name||"download","string"!=typeof e)navigator.msSaveOrOpenBlob(t(e,i),r);else if(o(e))n(e,r,i);else{var s=document.createElement("a");s.href=e,s.target="_blank",setTimeout((function(){a(s)}))}}:function(e,t,r,o){if((o=o||open("","_blank"))&&(o.document.title=o.document.body.innerText="downloading..."),"string"==typeof e)return n(e,t,r);var a="application/octet-stream"===e.type,l=/constructor/i.test(i.HTMLElement)||i.safari,c=/CriOS\/[\d]+/.test(navigator.userAgent);if((c||a&&l||s)&&"undefined"!=typeof FileReader){var u=new FileReader;u.onloadend=function(){var e=u.result;e=c?e:e.replace(/^data:[^;]*;/,"data:attachment/file;"),o?o.location.href=e:location=e,o=null},u.readAsDataURL(e)}else{var d=i.URL||i.webkitURL,f=d.createObjectURL(e);o?o.location=f:location.href=f,o=null,setTimeout((function(){d.revokeObjectURL(f)}),4e4)}});i.saveAs=l.saveAs=l,e.exports=l})?n.apply(t,o):n)||(e.exports=a)},23876:(e,t,r)=>{"use strict";var n=r(50630),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return n.isMemo(e)?i:s[e.$$typeof]||o}s[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[n.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,f=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,h=Object.prototype;e.exports=function e(t,r,n){if("string"!==typeof r){if(h){var o=p(r);o&&o!==h&&e(t,o,n)}var i=u(r);d&&(i=i.concat(d(r)));for(var s=l(t),m=l(r),g=0;g<i.length;++g){var v=i[g];if(!a[v]&&(!n||!n[v])&&(!m||!m[v])&&(!s||!s[v])){var y=f(r,v);try{c(t,v,y)}catch(b){}}}}return t}},72138:(e,t)=>{"use strict";var r="function"===typeof Symbol&&Symbol.for,n=r?Symbol.for("react.element"):60103,o=r?Symbol.for("react.portal"):60106,a=r?Symbol.for("react.fragment"):60107,i=r?Symbol.for("react.strict_mode"):60108,s=r?Symbol.for("react.profiler"):60114,l=r?Symbol.for("react.provider"):60109,c=r?Symbol.for("react.context"):60110,u=r?Symbol.for("react.async_mode"):60111,d=r?Symbol.for("react.concurrent_mode"):60111,f=r?Symbol.for("react.forward_ref"):60112,p=r?Symbol.for("react.suspense"):60113,h=r?Symbol.for("react.suspense_list"):60120,m=r?Symbol.for("react.memo"):60115,g=r?Symbol.for("react.lazy"):60116,v=r?Symbol.for("react.block"):60121,y=r?Symbol.for("react.fundamental"):60117,b=r?Symbol.for("react.responder"):60118,w=r?Symbol.for("react.scope"):60119;function x(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case u:case d:case a:case s:case i:case p:return e;default:switch(e=e&&e.$$typeof){case c:case f:case g:case m:case l:return e;default:return t}}case o:return t}}}function S(e){return x(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=c,t.ContextProvider=l,t.Element=n,t.ForwardRef=f,t.Fragment=a,t.Lazy=g,t.Memo=m,t.Portal=o,t.Profiler=s,t.StrictMode=i,t.Suspense=p,t.isAsyncMode=function(e){return S(e)||x(e)===u},t.isConcurrentMode=S,t.isContextConsumer=function(e){return x(e)===c},t.isContextProvider=function(e){return x(e)===l},t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===n},t.isForwardRef=function(e){return x(e)===f},t.isFragment=function(e){return x(e)===a},t.isLazy=function(e){return x(e)===g},t.isMemo=function(e){return x(e)===m},t.isPortal=function(e){return x(e)===o},t.isProfiler=function(e){return x(e)===s},t.isStrictMode=function(e){return x(e)===i},t.isSuspense=function(e){return x(e)===p},t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===a||e===d||e===s||e===i||e===p||e===h||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===l||e.$$typeof===c||e.$$typeof===f||e.$$typeof===y||e.$$typeof===b||e.$$typeof===w||e.$$typeof===v)},t.typeOf=x},50630:(e,t,r)=>{"use strict";e.exports=r(72138)},66897:(e,t)=>{t.read=function(e,t,r,n,o){var a,i,s=8*o-n-1,l=(1<<s)-1,c=l>>1,u=-7,d=r?o-1:0,f=r?-1:1,p=e[t+d];for(d+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=256*a+e[t+d],d+=f,u-=8);for(i=a&(1<<-u)-1,a>>=-u,u+=n;u>0;i=256*i+e[t+d],d+=f,u-=8);if(0===a)a=1-c;else{if(a===l)return i?NaN:1/0*(p?-1:1);i+=Math.pow(2,n),a-=c}return(p?-1:1)*i*Math.pow(2,a-n)},t.write=function(e,t,r,n,o,a){var i,s,l,c=8*a-o-1,u=(1<<c)-1,d=u>>1,f=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,h=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,i=u):(i=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-i))<1&&(i--,l*=2),(t+=i+d>=1?f/l:f*Math.pow(2,1-d))*l>=2&&(i++,l/=2),i+d>=u?(s=0,i=u):i+d>=1?(s=(t*l-1)*Math.pow(2,o),i+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,o),i=0));o>=8;e[r+p]=255&s,p+=h,s/=256,o-=8);for(i=i<<o|s,c+=o;c>0;e[r+p]=255&i,p+=h,i/=256,c-=8);e[r+p-h]|=128*m}},52576:e=>{var t={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==t.call(e)}},62838:(e,t,r)=>{e.exports=self.fetch||(self.fetch=r(44244).default||r(44244))},63593:(e,t,r)=>{var n,o;!function(a){if(void 0===(o="function"===typeof(n=a)?n.call(t,r,t,e):n)||(e.exports=o),e.exports=a(),!!0){var i=window.Cookies,s=window.Cookies=a();s.noConflict=function(){return window.Cookies=i,s}}}((function(){function e(){for(var e=0,t={};e<arguments.length;e++){var r=arguments[e];for(var n in r)t[n]=r[n]}return t}function t(e){return e.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}return function r(n){function o(){}function a(t,r,a){if("undefined"!==typeof document){"number"===typeof(a=e({path:"/"},o.defaults,a)).expires&&(a.expires=new Date(1*new Date+864e5*a.expires)),a.expires=a.expires?a.expires.toUTCString():"";try{var i=JSON.stringify(r);/^[\{\[]/.test(i)&&(r=i)}catch(c){}r=n.write?n.write(r,t):encodeURIComponent(String(r)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),t=encodeURIComponent(String(t)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var s="";for(var l in a)a[l]&&(s+="; "+l,!0!==a[l]&&(s+="="+a[l].split(";")[0]));return document.cookie=t+"="+r+s}}function i(e,r){if("undefined"!==typeof document){for(var o={},a=document.cookie?document.cookie.split("; "):[],i=0;i<a.length;i++){var s=a[i].split("="),l=s.slice(1).join("=");r||'"'!==l.charAt(0)||(l=l.slice(1,-1));try{var c=t(s[0]);if(l=(n.read||n)(l,c)||t(l),r)try{l=JSON.parse(l)}catch(u){}if(o[c]=l,e===c)break}catch(u){}}return e?o[e]:o}}return o.set=a,o.get=function(e){return i(e,!1)},o.getJSON=function(e){return i(e,!0)},o.remove=function(t,r){a(t,"",e(r,{expires:-1}))},o.defaults={},o.withConverter=r,o}((function(){}))}))},78353:e=>{var t=9007199254740991,r="[object Arguments]",n="[object Function]",o="[object GeneratorFunction]",a=/^(?:0|[1-9]\d*)$/;var i,s,l=Object.prototype,c=l.hasOwnProperty,u=l.toString,d=l.propertyIsEnumerable,f=(i=Object.keys,s=Object,function(e){return i(s(e))}),p=Math.max;function h(e,t){var n=b(e)||function(e){return function(e){return function(e){return!!e&&"object"==typeof e}(e)&&w(e)}(e)&&c.call(e,"callee")&&(!d.call(e,"callee")||u.call(e)==r)}(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],o=n.length,a=!!o;for(var i in e)!t&&!c.call(e,i)||a&&("length"==i||v(i,o))||n.push(i);return n}function m(e,t,r){var n=e[t];c.call(e,t)&&y(n,r)&&(void 0!==r||t in e)||(e[t]=r)}function g(e){if(!function(e){var t=e&&e.constructor,r="function"==typeof t&&t.prototype||l;return e===r}(e))return f(e);var t=[];for(var r in Object(e))c.call(e,r)&&"constructor"!=r&&t.push(r);return t}function v(e,r){return!!(r=null==r?t:r)&&("number"==typeof e||a.test(e))&&e>-1&&e%1==0&&e<r}function y(e,t){return e===t||e!==e&&t!==t}var b=Array.isArray;function w(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}(e.length)&&!function(e){var t=x(e)?u.call(e):"";return t==n||t==o}(e)}function x(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}var S,A=(S=function(e,t,r,n){!function(e,t,r,n){r||(r={});for(var o=-1,a=t.length;++o<a;){var i=t[o],s=n?n(r[i],e[i],i,r,e):void 0;m(r,i,void 0===s?e[i]:s)}}(t,function(e){return w(e)?h(e):g(e)}(t),e,n)},function(e,t){return t=p(void 0===t?e.length-1:t,0),function(){for(var r=arguments,n=-1,o=p(r.length-t,0),a=Array(o);++n<o;)a[n]=r[t+n];n=-1;for(var i=Array(t+1);++n<t;)i[n]=r[n];return i[t]=a,function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(e,this,i)}}((function(e,t){var r=-1,n=t.length,o=n>1?t[n-1]:void 0,a=n>2?t[2]:void 0;for(o=S.length>3&&"function"==typeof o?(n--,o):void 0,a&&function(e,t,r){if(!x(r))return!1;var n=typeof t;return!!("number"==n?w(r)&&v(t,r.length):"string"==n&&t in r)&&y(r[t],e)}(t[0],t[1],a)&&(o=n<3?void 0:o,n=1),e=Object(e);++r<n;){var i=t[r];i&&S(e,i,r,o)}return e})));e.exports=A},73223:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",o=9007199254740991,a="[object Arguments]",i="[object Boolean]",s="[object Date]",l="[object Function]",c="[object GeneratorFunction]",u="[object Map]",d="[object Number]",f="[object Object]",p="[object Promise]",h="[object RegExp]",m="[object Set]",g="[object String]",v="[object Symbol]",y="[object WeakMap]",b="[object ArrayBuffer]",w="[object DataView]",x="[object Float32Array]",S="[object Float64Array]",A="[object Int8Array]",k="[object Int16Array]",C="[object Int32Array]",I="[object Uint8Array]",E="[object Uint8ClampedArray]",D="[object Uint16Array]",T="[object Uint32Array]",O=/\w*$/,M=/^\[object .+?Constructor\]$/,P=/^(?:0|[1-9]\d*)$/,j={};j[a]=j["[object Array]"]=j[b]=j[w]=j[i]=j[s]=j[x]=j[S]=j[A]=j[k]=j[C]=j[u]=j[d]=j[f]=j[h]=j[m]=j[g]=j[v]=j[I]=j[E]=j[D]=j[T]=!0,j["[object Error]"]=j[l]=j[y]=!1;var R="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,_="object"==typeof self&&self&&self.Object===Object&&self,N=R||_||Function("return this")(),L=t&&!t.nodeType&&t,U=L&&e&&!e.nodeType&&e,B=U&&U.exports===L;function F(e,t){return e.set(t[0],t[1]),e}function z(e,t){return e.add(t),e}function W(e,t,r,n){var o=-1,a=e?e.length:0;for(n&&a&&(r=e[++o]);++o<a;)r=t(r,e[o],o,e);return r}function H(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(r){}return t}function Y(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function V(e,t){return function(r){return e(t(r))}}function G(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var Z=Array.prototype,Q=Function.prototype,K=Object.prototype,X=N["__core-js_shared__"],J=function(){var e=/[^.]+$/.exec(X&&X.keys&&X.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),$=Q.toString,q=K.hasOwnProperty,ee=K.toString,te=RegExp("^"+$.call(q).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),re=B?N.Buffer:void 0,ne=N.Symbol,oe=N.Uint8Array,ae=V(Object.getPrototypeOf,Object),ie=Object.create,se=K.propertyIsEnumerable,le=Z.splice,ce=Object.getOwnPropertySymbols,ue=re?re.isBuffer:void 0,de=V(Object.keys,Object),fe=Le(N,"DataView"),pe=Le(N,"Map"),he=Le(N,"Promise"),me=Le(N,"Set"),ge=Le(N,"WeakMap"),ve=Le(Object,"create"),ye=We(fe),be=We(pe),we=We(he),xe=We(me),Se=We(ge),Ae=ne?ne.prototype:void 0,ke=Ae?Ae.valueOf:void 0;function Ce(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Ie(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Ee(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function De(e){this.__data__=new Ie(e)}function Te(e,t){var r=Ye(e)||function(e){return function(e){return function(e){return!!e&&"object"==typeof e}(e)&&Ve(e)}(e)&&q.call(e,"callee")&&(!se.call(e,"callee")||ee.call(e)==a)}(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,o=!!n;for(var i in e)!t&&!q.call(e,i)||o&&("length"==i||Fe(i,n))||r.push(i);return r}function Oe(e,t,r){var n=e[t];q.call(e,t)&&He(n,r)&&(void 0!==r||t in e)||(e[t]=r)}function Me(e,t){for(var r=e.length;r--;)if(He(e[r][0],t))return r;return-1}function Pe(e,t,r,n,o,p,y){var M;if(n&&(M=p?n(e,o,p,y):n(e)),void 0!==M)return M;if(!Qe(e))return e;var P=Ye(e);if(P){if(M=function(e){var t=e.length,r=e.constructor(t);t&&"string"==typeof e[0]&&q.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!t)return function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r<n;)t[r]=e[r];return t}(e,M)}else{var R=Be(e),_=R==l||R==c;if(Ge(e))return function(e,t){if(t)return e.slice();var r=new e.constructor(e.length);return e.copy(r),r}(e,t);if(R==f||R==a||_&&!p){if(H(e))return p?e:{};if(M=function(e){return"function"!=typeof e.constructor||ze(e)?{}:(t=ae(e),Qe(t)?ie(t):{});var t}(_?{}:e),!t)return function(e,t){return _e(e,Ue(e),t)}(e,function(e,t){return e&&_e(t,Ke(t),e)}(M,e))}else{if(!j[R])return p?e:{};M=function(e,t,r,n){var o=e.constructor;switch(t){case b:return Re(e);case i:case s:return new o(+e);case w:return function(e,t){var r=t?Re(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,n);case x:case S:case A:case k:case C:case I:case E:case D:case T:return function(e,t){var r=t?Re(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}(e,n);case u:return function(e,t,r){var n=t?r(Y(e),!0):Y(e);return W(n,F,new e.constructor)}(e,n,r);case d:case g:return new o(e);case h:return function(e){var t=new e.constructor(e.source,O.exec(e));return t.lastIndex=e.lastIndex,t}(e);case m:return function(e,t,r){var n=t?r(G(e),!0):G(e);return W(n,z,new e.constructor)}(e,n,r);case v:return a=e,ke?Object(ke.call(a)):{}}var a}(e,R,Pe,t)}}y||(y=new De);var N=y.get(e);if(N)return N;if(y.set(e,M),!P)var L=r?function(e){return function(e,t,r){var n=t(e);return Ye(e)?n:function(e,t){for(var r=-1,n=t.length,o=e.length;++r<n;)e[o+r]=t[r];return e}(n,r(e))}(e,Ke,Ue)}(e):Ke(e);return function(e,t){for(var r=-1,n=e?e.length:0;++r<n&&!1!==t(e[r],r,e););}(L||e,(function(o,a){L&&(o=e[a=o]),Oe(M,a,Pe(o,t,r,n,a,e,y))})),M}function je(e){return!(!Qe(e)||(t=e,J&&J in t))&&(Ze(e)||H(e)?te:M).test(We(e));var t}function Re(e){var t=new e.constructor(e.byteLength);return new oe(t).set(new oe(e)),t}function _e(e,t,r,n){r||(r={});for(var o=-1,a=t.length;++o<a;){var i=t[o],s=n?n(r[i],e[i],i,r,e):void 0;Oe(r,i,void 0===s?e[i]:s)}return r}function Ne(e,t){var r=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?r["string"==typeof t?"string":"hash"]:r.map}function Le(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return je(r)?r:void 0}Ce.prototype.clear=function(){this.__data__=ve?ve(null):{}},Ce.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},Ce.prototype.get=function(e){var t=this.__data__;if(ve){var r=t[e];return r===n?void 0:r}return q.call(t,e)?t[e]:void 0},Ce.prototype.has=function(e){var t=this.__data__;return ve?void 0!==t[e]:q.call(t,e)},Ce.prototype.set=function(e,t){return this.__data__[e]=ve&&void 0===t?n:t,this},Ie.prototype.clear=function(){this.__data__=[]},Ie.prototype.delete=function(e){var t=this.__data__,r=Me(t,e);return!(r<0)&&(r==t.length-1?t.pop():le.call(t,r,1),!0)},Ie.prototype.get=function(e){var t=this.__data__,r=Me(t,e);return r<0?void 0:t[r][1]},Ie.prototype.has=function(e){return Me(this.__data__,e)>-1},Ie.prototype.set=function(e,t){var r=this.__data__,n=Me(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},Ee.prototype.clear=function(){this.__data__={hash:new Ce,map:new(pe||Ie),string:new Ce}},Ee.prototype.delete=function(e){return Ne(this,e).delete(e)},Ee.prototype.get=function(e){return Ne(this,e).get(e)},Ee.prototype.has=function(e){return Ne(this,e).has(e)},Ee.prototype.set=function(e,t){return Ne(this,e).set(e,t),this},De.prototype.clear=function(){this.__data__=new Ie},De.prototype.delete=function(e){return this.__data__.delete(e)},De.prototype.get=function(e){return this.__data__.get(e)},De.prototype.has=function(e){return this.__data__.has(e)},De.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Ie){var n=r.__data__;if(!pe||n.length<199)return n.push([e,t]),this;r=this.__data__=new Ee(n)}return r.set(e,t),this};var Ue=ce?V(ce,Object):function(){return[]},Be=function(e){return ee.call(e)};function Fe(e,t){return!!(t=null==t?o:t)&&("number"==typeof e||P.test(e))&&e>-1&&e%1==0&&e<t}function ze(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||K)}function We(e){if(null!=e){try{return $.call(e)}catch(t){}try{return e+""}catch(t){}}return""}function He(e,t){return e===t||e!==e&&t!==t}(fe&&Be(new fe(new ArrayBuffer(1)))!=w||pe&&Be(new pe)!=u||he&&Be(he.resolve())!=p||me&&Be(new me)!=m||ge&&Be(new ge)!=y)&&(Be=function(e){var t=ee.call(e),r=t==f?e.constructor:void 0,n=r?We(r):void 0;if(n)switch(n){case ye:return w;case be:return u;case we:return p;case xe:return m;case Se:return y}return t});var Ye=Array.isArray;function Ve(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}(e.length)&&!Ze(e)}var Ge=ue||function(){return!1};function Ze(e){var t=Qe(e)?ee.call(e):"";return t==l||t==c}function Qe(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function Ke(e){return Ve(e)?Te(e):function(e){if(!ze(e))return de(e);var t=[];for(var r in Object(e))q.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}e.exports=function(e){return Pe(e,!0,!0)}},19411:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",o=1/0,a=9007199254740991,i=17976931348623157e292,s=NaN,l="[object Arguments]",c="[object Array]",u="[object Boolean]",d="[object Date]",f="[object Error]",p="[object Function]",h="[object Map]",m="[object Number]",g="[object Object]",v="[object Promise]",y="[object RegExp]",b="[object Set]",w="[object String]",x="[object Symbol]",S="[object WeakMap]",A="[object ArrayBuffer]",k="[object DataView]",C=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,I=/^\w*$/,E=/^\./,D=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,T=/^\s+|\s+$/g,O=/\\(\\)?/g,M=/^[-+]0x[0-9a-f]+$/i,P=/^0b[01]+$/i,j=/^\[object .+?Constructor\]$/,R=/^0o[0-7]+$/i,_=/^(?:0|[1-9]\d*)$/,N={};N["[object Float32Array]"]=N["[object Float64Array]"]=N["[object Int8Array]"]=N["[object Int16Array]"]=N["[object Int32Array]"]=N["[object Uint8Array]"]=N["[object Uint8ClampedArray]"]=N["[object Uint16Array]"]=N["[object Uint32Array]"]=!0,N[l]=N[c]=N[A]=N[u]=N[k]=N[d]=N[f]=N[p]=N[h]=N[m]=N[g]=N[y]=N[b]=N[w]=N[S]=!1;var L=parseInt,U="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,B="object"==typeof self&&self&&self.Object===Object&&self,F=U||B||Function("return this")(),z=t&&!t.nodeType&&t,W=z&&e&&!e.nodeType&&e,H=W&&W.exports===z&&U.process,Y=function(){try{return H&&H.binding("util")}catch(e){}}(),V=Y&&Y.isTypedArray;function G(e,t){for(var r=-1,n=e?e.length:0;++r<n;)if(t(e[r],r,e))return!0;return!1}function Z(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(r){}return t}function Q(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function K(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var X,J,$=Array.prototype,q=Function.prototype,ee=Object.prototype,te=F["__core-js_shared__"],re=function(){var e=/[^.]+$/.exec(te&&te.keys&&te.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),ne=q.toString,oe=ee.hasOwnProperty,ae=ee.toString,ie=RegExp("^"+ne.call(oe).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),se=F.Symbol,le=F.Uint8Array,ce=ee.propertyIsEnumerable,ue=$.splice,de=(X=Object.keys,J=Object,function(e){return X(J(e))}),fe=Math.max,pe=He(F,"DataView"),he=He(F,"Map"),me=He(F,"Promise"),ge=He(F,"Set"),ve=He(F,"WeakMap"),ye=He(Object,"create"),be=Je(pe),we=Je(he),xe=Je(me),Se=Je(ge),Ae=Je(ve),ke=se?se.prototype:void 0,Ce=ke?ke.valueOf:void 0,Ie=ke?ke.toString:void 0;function Ee(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function De(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Te(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Oe(e){var t=-1,r=e?e.length:0;for(this.__data__=new Te;++t<r;)this.add(e[t])}function Me(e){this.__data__=new De(e)}function Pe(e,t){var r=nt(e)||rt(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,o=!!n;for(var a in e)!t&&!oe.call(e,a)||o&&("length"==a||Ve(a,n))||r.push(a);return r}function je(e,t){for(var r=e.length;r--;)if(tt(e[r][0],t))return r;return-1}function Re(e,t){for(var r=0,n=(t=Ge(t,e)?[t]:Fe(t)).length;null!=e&&r<n;)e=e[Xe(t[r++])];return r&&r==n?e:void 0}function _e(e,t){return null!=e&&t in Object(e)}function Ne(e,t,r,n,o){return e===t||(null==e||null==t||!st(e)&&!lt(t)?e!==e&&t!==t:function(e,t,r,n,o,a){var i=nt(e),s=nt(t),p=c,v=c;i||(p=(p=Ye(e))==l?g:p);s||(v=(v=Ye(t))==l?g:v);var S=p==g&&!Z(e),C=v==g&&!Z(t),I=p==v;if(I&&!S)return a||(a=new Me),i||ut(e)?ze(e,t,r,n,o,a):function(e,t,r,n,o,a,i){switch(r){case k:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case A:return!(e.byteLength!=t.byteLength||!n(new le(e),new le(t)));case u:case d:case m:return tt(+e,+t);case f:return e.name==t.name&&e.message==t.message;case y:case w:return e==t+"";case h:var s=Q;case b:var l=2&a;if(s||(s=K),e.size!=t.size&&!l)return!1;var c=i.get(e);if(c)return c==t;a|=1,i.set(e,t);var p=ze(s(e),s(t),n,o,a,i);return i.delete(e),p;case x:if(Ce)return Ce.call(e)==Ce.call(t)}return!1}(e,t,p,r,n,o,a);if(!(2&o)){var E=S&&oe.call(e,"__wrapped__"),D=C&&oe.call(t,"__wrapped__");if(E||D){var T=E?e.value():e,O=D?t.value():t;return a||(a=new Me),r(T,O,n,o,a)}}if(!I)return!1;return a||(a=new Me),function(e,t,r,n,o,a){var i=2&o,s=dt(e),l=s.length,c=dt(t),u=c.length;if(l!=u&&!i)return!1;var d=l;for(;d--;){var f=s[d];if(!(i?f in t:oe.call(t,f)))return!1}var p=a.get(e);if(p&&a.get(t))return p==t;var h=!0;a.set(e,t),a.set(t,e);var m=i;for(;++d<l;){var g=e[f=s[d]],v=t[f];if(n)var y=i?n(v,g,f,t,e,a):n(g,v,f,e,t,a);if(!(void 0===y?g===v||r(g,v,n,o,a):y)){h=!1;break}m||(m="constructor"==f)}if(h&&!m){var b=e.constructor,w=t.constructor;b==w||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof w&&w instanceof w||(h=!1)}return a.delete(e),a.delete(t),h}(e,t,r,n,o,a)}(e,t,Ne,r,n,o))}function Le(e){return!(!st(e)||function(e){return!!re&&re in e}(e))&&(at(e)||Z(e)?ie:j).test(Je(e))}function Ue(e){return"function"==typeof e?e:null==e?ft:"object"==typeof e?nt(e)?function(e,t){if(Ge(e)&&Ze(t))return Qe(Xe(e),t);return function(r){var n=function(e,t,r){var n=null==e?void 0:Re(e,t);return void 0===n?r:n}(r,e);return void 0===n&&n===t?function(e,t){return null!=e&&function(e,t,r){t=Ge(t,e)?[t]:Fe(t);var n,o=-1,a=t.length;for(;++o<a;){var i=Xe(t[o]);if(!(n=null!=e&&r(e,i)))break;e=e[i]}if(n)return n;a=e?e.length:0;return!!a&&it(a)&&Ve(i,a)&&(nt(e)||rt(e))}(e,t,_e)}(r,e):Ne(t,n,void 0,3)}}(e[0],e[1]):function(e){var t=function(e){var t=dt(e),r=t.length;for(;r--;){var n=t[r],o=e[n];t[r]=[n,o,Ze(o)]}return t}(e);if(1==t.length&&t[0][2])return Qe(t[0][0],t[0][1]);return function(r){return r===e||function(e,t,r,n){var o=r.length,a=o,i=!n;if(null==e)return!a;for(e=Object(e);o--;){var s=r[o];if(i&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++o<a;){var l=(s=r[o])[0],c=e[l],u=s[1];if(i&&s[2]){if(void 0===c&&!(l in e))return!1}else{var d=new Me;if(n)var f=n(c,u,l,e,t,d);if(!(void 0===f?Ne(u,c,n,3,d):f))return!1}}return!0}(r,e,t)}}(e):function(e){return Ge(e)?(t=Xe(e),function(e){return null==e?void 0:e[t]}):function(e){return function(t){return Re(t,e)}}(e);var t}(e)}function Be(e){if(!function(e){var t=e&&e.constructor,r="function"==typeof t&&t.prototype||ee;return e===r}(e))return de(e);var t=[];for(var r in Object(e))oe.call(e,r)&&"constructor"!=r&&t.push(r);return t}function Fe(e){return nt(e)?e:Ke(e)}function ze(e,t,r,n,o,a){var i=2&o,s=e.length,l=t.length;if(s!=l&&!(i&&l>s))return!1;var c=a.get(e);if(c&&a.get(t))return c==t;var u=-1,d=!0,f=1&o?new Oe:void 0;for(a.set(e,t),a.set(t,e);++u<s;){var p=e[u],h=t[u];if(n)var m=i?n(h,p,u,t,e,a):n(p,h,u,e,t,a);if(void 0!==m){if(m)continue;d=!1;break}if(f){if(!G(t,(function(e,t){if(!f.has(t)&&(p===e||r(p,e,n,o,a)))return f.add(t)}))){d=!1;break}}else if(p!==h&&!r(p,h,n,o,a)){d=!1;break}}return a.delete(e),a.delete(t),d}function We(e,t){var r=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?r["string"==typeof t?"string":"hash"]:r.map}function He(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Le(r)?r:void 0}Ee.prototype.clear=function(){this.__data__=ye?ye(null):{}},Ee.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},Ee.prototype.get=function(e){var t=this.__data__;if(ye){var r=t[e];return r===n?void 0:r}return oe.call(t,e)?t[e]:void 0},Ee.prototype.has=function(e){var t=this.__data__;return ye?void 0!==t[e]:oe.call(t,e)},Ee.prototype.set=function(e,t){return this.__data__[e]=ye&&void 0===t?n:t,this},De.prototype.clear=function(){this.__data__=[]},De.prototype.delete=function(e){var t=this.__data__,r=je(t,e);return!(r<0)&&(r==t.length-1?t.pop():ue.call(t,r,1),!0)},De.prototype.get=function(e){var t=this.__data__,r=je(t,e);return r<0?void 0:t[r][1]},De.prototype.has=function(e){return je(this.__data__,e)>-1},De.prototype.set=function(e,t){var r=this.__data__,n=je(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},Te.prototype.clear=function(){this.__data__={hash:new Ee,map:new(he||De),string:new Ee}},Te.prototype.delete=function(e){return We(this,e).delete(e)},Te.prototype.get=function(e){return We(this,e).get(e)},Te.prototype.has=function(e){return We(this,e).has(e)},Te.prototype.set=function(e,t){return We(this,e).set(e,t),this},Oe.prototype.add=Oe.prototype.push=function(e){return this.__data__.set(e,n),this},Oe.prototype.has=function(e){return this.__data__.has(e)},Me.prototype.clear=function(){this.__data__=new De},Me.prototype.delete=function(e){return this.__data__.delete(e)},Me.prototype.get=function(e){return this.__data__.get(e)},Me.prototype.has=function(e){return this.__data__.has(e)},Me.prototype.set=function(e,t){var r=this.__data__;if(r instanceof De){var n=r.__data__;if(!he||n.length<199)return n.push([e,t]),this;r=this.__data__=new Te(n)}return r.set(e,t),this};var Ye=function(e){return ae.call(e)};function Ve(e,t){return!!(t=null==t?a:t)&&("number"==typeof e||_.test(e))&&e>-1&&e%1==0&&e<t}function Ge(e,t){if(nt(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!ct(e))||(I.test(e)||!C.test(e)||null!=t&&e in Object(t))}function Ze(e){return e===e&&!st(e)}function Qe(e,t){return function(r){return null!=r&&(r[e]===t&&(void 0!==t||e in Object(r)))}}(pe&&Ye(new pe(new ArrayBuffer(1)))!=k||he&&Ye(new he)!=h||me&&Ye(me.resolve())!=v||ge&&Ye(new ge)!=b||ve&&Ye(new ve)!=S)&&(Ye=function(e){var t=ae.call(e),r=t==g?e.constructor:void 0,n=r?Je(r):void 0;if(n)switch(n){case be:return k;case we:return h;case xe:return v;case Se:return b;case Ae:return S}return t});var Ke=et((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(ct(e))return Ie?Ie.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(t);var r=[];return E.test(e)&&r.push(""),e.replace(D,(function(e,t,n,o){r.push(n?o.replace(O,"$1"):t||e)})),r}));function Xe(e){if("string"==typeof e||ct(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Je(e){if(null!=e){try{return ne.call(e)}catch(t){}try{return e+""}catch(t){}}return""}var $e,qe=($e=function(e,t,r){var n=e?e.length:0;if(!n)return-1;var a=null==r?0:function(e){var t=function(e){return e?(e=function(e){if("number"==typeof e)return e;if(ct(e))return s;if(st(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=st(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(T,"");var r=P.test(e);return r||R.test(e)?L(e.slice(2),r?2:8):M.test(e)?s:+e}(e))===o||e===-1/0?(e<0?-1:1)*i:e===e?e:0:0===e?e:0}(e),r=t%1;return t===t?r?t-r:t:0}(r);return a<0&&(a=fe(n+a,0)),function(e,t,r,n){for(var o=e.length,a=r+(n?1:-1);n?a--:++a<o;)if(t(e[a],a,e))return a;return-1}(e,Ue(t),a)},function(e,t,r){var n=Object(e);if(!ot(e)){var o=Ue(t);e=dt(e),t=function(e){return o(n[e],e,n)}}var a=$e(e,t,r);return a>-1?n[o?e[a]:a]:void 0});function et(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var n=arguments,o=t?t.apply(this,n):n[0],a=r.cache;if(a.has(o))return a.get(o);var i=e.apply(this,n);return r.cache=a.set(o,i),i};return r.cache=new(et.Cache||Te),r}function tt(e,t){return e===t||e!==e&&t!==t}function rt(e){return function(e){return lt(e)&&ot(e)}(e)&&oe.call(e,"callee")&&(!ce.call(e,"callee")||ae.call(e)==l)}et.Cache=Te;var nt=Array.isArray;function ot(e){return null!=e&&it(e.length)&&!at(e)}function at(e){var t=st(e)?ae.call(e):"";return t==p||"[object GeneratorFunction]"==t}function it(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=a}function st(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function lt(e){return!!e&&"object"==typeof e}function ct(e){return"symbol"==typeof e||lt(e)&&ae.call(e)==x}var ut=V?function(e){return function(t){return e(t)}}(V):function(e){return lt(e)&&it(e.length)&&!!N[ae.call(e)]};function dt(e){return ot(e)?Pe(e):Be(e)}function ft(e){return e}e.exports=qe},51812:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",o=9007199254740991,a="[object Arguments]",i="[object Array]",s="[object Boolean]",l="[object Date]",c="[object Error]",u="[object Function]",d="[object Map]",f="[object Number]",p="[object Object]",h="[object Promise]",m="[object RegExp]",g="[object Set]",v="[object String]",y="[object Symbol]",b="[object WeakMap]",w="[object ArrayBuffer]",x="[object DataView]",S=/^\[object .+?Constructor\]$/,A=/^(?:0|[1-9]\d*)$/,k={};k["[object Float32Array]"]=k["[object Float64Array]"]=k["[object Int8Array]"]=k["[object Int16Array]"]=k["[object Int32Array]"]=k["[object Uint8Array]"]=k["[object Uint8ClampedArray]"]=k["[object Uint16Array]"]=k["[object Uint32Array]"]=!0,k[a]=k[i]=k[w]=k[s]=k[x]=k[l]=k[c]=k[u]=k[d]=k[f]=k[p]=k[m]=k[g]=k[v]=k[b]=!1;var C="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,I="object"==typeof self&&self&&self.Object===Object&&self,E=C||I||Function("return this")(),D=t&&!t.nodeType&&t,T=D&&e&&!e.nodeType&&e,O=T&&T.exports===D,M=O&&C.process,P=function(){try{return M&&M.binding&&M.binding("util")}catch(e){}}(),j=P&&P.isTypedArray;function R(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function _(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function N(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var L,U,B=Array.prototype,F=Function.prototype,z=Object.prototype,W=E["__core-js_shared__"],H=F.toString,Y=z.hasOwnProperty,V=function(){var e=/[^.]+$/.exec(W&&W.keys&&W.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),G=z.toString,Z=RegExp("^"+H.call(Y).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Q=O?E.Buffer:void 0,K=E.Symbol,X=E.Uint8Array,J=z.propertyIsEnumerable,$=B.splice,q=K?K.toStringTag:void 0,ee=Object.getOwnPropertySymbols,te=Q?Q.isBuffer:void 0,re=(L=Object.keys,U=Object,function(e){return L(U(e))}),ne=Me(E,"DataView"),oe=Me(E,"Map"),ae=Me(E,"Promise"),ie=Me(E,"Set"),se=Me(E,"WeakMap"),le=Me(Object,"create"),ce=_e(ne),ue=_e(oe),de=_e(ae),fe=_e(ie),pe=_e(se),he=K?K.prototype:void 0,me=he?he.valueOf:void 0;function ge(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function ve(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function ye(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function be(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new ye;++t<r;)this.add(e[t])}function we(e){var t=this.__data__=new ve(e);this.size=t.size}function xe(e,t){var r=Ue(e),n=!r&&Le(e),o=!r&&!n&&Be(e),a=!r&&!n&&!o&&Ye(e),i=r||n||o||a,s=i?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],l=s.length;for(var c in e)!t&&!Y.call(e,c)||i&&("length"==c||o&&("offset"==c||"parent"==c)||a&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Re(c,l))||s.push(c);return s}function Se(e,t){for(var r=e.length;r--;)if(Ne(e[r][0],t))return r;return-1}function Ae(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":q&&q in Object(e)?function(e){var t=Y.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(a){}var o=G.call(e);n&&(t?e[q]=r:delete e[q]);return o}(e):function(e){return G.call(e)}(e)}function ke(e){return He(e)&&Ae(e)==a}function Ce(e,t,r,n,o){return e===t||(null==e||null==t||!He(e)&&!He(t)?e!==e&&t!==t:function(e,t,r,n,o,u){var h=Ue(e),b=Ue(t),S=h?i:je(e),A=b?i:je(t),k=(S=S==a?p:S)==p,C=(A=A==a?p:A)==p,I=S==A;if(I&&Be(e)){if(!Be(t))return!1;h=!0,k=!1}if(I&&!k)return u||(u=new we),h||Ye(e)?De(e,t,r,n,o,u):function(e,t,r,n,o,a,i){switch(r){case x:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case w:return!(e.byteLength!=t.byteLength||!a(new X(e),new X(t)));case s:case l:case f:return Ne(+e,+t);case c:return e.name==t.name&&e.message==t.message;case m:case v:return e==t+"";case d:var u=_;case g:var p=1&n;if(u||(u=N),e.size!=t.size&&!p)return!1;var h=i.get(e);if(h)return h==t;n|=2,i.set(e,t);var b=De(u(e),u(t),n,o,a,i);return i.delete(e),b;case y:if(me)return me.call(e)==me.call(t)}return!1}(e,t,S,r,n,o,u);if(!(1&r)){var E=k&&Y.call(e,"__wrapped__"),D=C&&Y.call(t,"__wrapped__");if(E||D){var T=E?e.value():e,O=D?t.value():t;return u||(u=new we),o(T,O,r,n,u)}}if(!I)return!1;return u||(u=new we),function(e,t,r,n,o,a){var i=1&r,s=Te(e),l=s.length,c=Te(t),u=c.length;if(l!=u&&!i)return!1;var d=l;for(;d--;){var f=s[d];if(!(i?f in t:Y.call(t,f)))return!1}var p=a.get(e);if(p&&a.get(t))return p==t;var h=!0;a.set(e,t),a.set(t,e);var m=i;for(;++d<l;){var g=e[f=s[d]],v=t[f];if(n)var y=i?n(v,g,f,t,e,a):n(g,v,f,e,t,a);if(!(void 0===y?g===v||o(g,v,r,n,a):y)){h=!1;break}m||(m="constructor"==f)}if(h&&!m){var b=e.constructor,w=t.constructor;b==w||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof w&&w instanceof w||(h=!1)}return a.delete(e),a.delete(t),h}(e,t,r,n,o,u)}(e,t,r,n,Ce,o))}function Ie(e){return!(!We(e)||function(e){return!!V&&V in e}(e))&&(Fe(e)?Z:S).test(_e(e))}function Ee(e){if(!function(e){var t=e&&e.constructor,r="function"==typeof t&&t.prototype||z;return e===r}(e))return re(e);var t=[];for(var r in Object(e))Y.call(e,r)&&"constructor"!=r&&t.push(r);return t}function De(e,t,r,n,o,a){var i=1&r,s=e.length,l=t.length;if(s!=l&&!(i&&l>s))return!1;var c=a.get(e);if(c&&a.get(t))return c==t;var u=-1,d=!0,f=2&r?new be:void 0;for(a.set(e,t),a.set(t,e);++u<s;){var p=e[u],h=t[u];if(n)var m=i?n(h,p,u,t,e,a):n(p,h,u,e,t,a);if(void 0!==m){if(m)continue;d=!1;break}if(f){if(!R(t,(function(e,t){if(i=t,!f.has(i)&&(p===e||o(p,e,r,n,a)))return f.push(t);var i}))){d=!1;break}}else if(p!==h&&!o(p,h,r,n,a)){d=!1;break}}return a.delete(e),a.delete(t),d}function Te(e){return function(e,t,r){var n=t(e);return Ue(e)?n:function(e,t){for(var r=-1,n=t.length,o=e.length;++r<n;)e[o+r]=t[r];return e}(n,r(e))}(e,Ve,Pe)}function Oe(e,t){var r=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?r["string"==typeof t?"string":"hash"]:r.map}function Me(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Ie(r)?r:void 0}ge.prototype.clear=function(){this.__data__=le?le(null):{},this.size=0},ge.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},ge.prototype.get=function(e){var t=this.__data__;if(le){var r=t[e];return r===n?void 0:r}return Y.call(t,e)?t[e]:void 0},ge.prototype.has=function(e){var t=this.__data__;return le?void 0!==t[e]:Y.call(t,e)},ge.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=le&&void 0===t?n:t,this},ve.prototype.clear=function(){this.__data__=[],this.size=0},ve.prototype.delete=function(e){var t=this.__data__,r=Se(t,e);return!(r<0)&&(r==t.length-1?t.pop():$.call(t,r,1),--this.size,!0)},ve.prototype.get=function(e){var t=this.__data__,r=Se(t,e);return r<0?void 0:t[r][1]},ve.prototype.has=function(e){return Se(this.__data__,e)>-1},ve.prototype.set=function(e,t){var r=this.__data__,n=Se(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},ye.prototype.clear=function(){this.size=0,this.__data__={hash:new ge,map:new(oe||ve),string:new ge}},ye.prototype.delete=function(e){var t=Oe(this,e).delete(e);return this.size-=t?1:0,t},ye.prototype.get=function(e){return Oe(this,e).get(e)},ye.prototype.has=function(e){return Oe(this,e).has(e)},ye.prototype.set=function(e,t){var r=Oe(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},be.prototype.add=be.prototype.push=function(e){return this.__data__.set(e,n),this},be.prototype.has=function(e){return this.__data__.has(e)},we.prototype.clear=function(){this.__data__=new ve,this.size=0},we.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},we.prototype.get=function(e){return this.__data__.get(e)},we.prototype.has=function(e){return this.__data__.has(e)},we.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ve){var n=r.__data__;if(!oe||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new ye(n)}return r.set(e,t),this.size=r.size,this};var Pe=ee?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,o=0,a=[];++r<n;){var i=e[r];t(i,r,e)&&(a[o++]=i)}return a}(ee(e),(function(t){return J.call(e,t)})))}:function(){return[]},je=Ae;function Re(e,t){return!!(t=null==t?o:t)&&("number"==typeof e||A.test(e))&&e>-1&&e%1==0&&e<t}function _e(e){if(null!=e){try{return H.call(e)}catch(t){}try{return e+""}catch(t){}}return""}function Ne(e,t){return e===t||e!==e&&t!==t}(ne&&je(new ne(new ArrayBuffer(1)))!=x||oe&&je(new oe)!=d||ae&&je(ae.resolve())!=h||ie&&je(new ie)!=g||se&&je(new se)!=b)&&(je=function(e){var t=Ae(e),r=t==p?e.constructor:void 0,n=r?_e(r):"";if(n)switch(n){case ce:return x;case ue:return d;case de:return h;case fe:return g;case pe:return b}return t});var Le=ke(function(){return arguments}())?ke:function(e){return He(e)&&Y.call(e,"callee")&&!J.call(e,"callee")},Ue=Array.isArray;var Be=te||function(){return!1};function Fe(e){if(!We(e))return!1;var t=Ae(e);return t==u||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}function ze(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}function We(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function He(e){return null!=e&&"object"==typeof e}var Ye=j?function(e){return function(t){return e(t)}}(j):function(e){return He(e)&&ze(e.length)&&!!k[Ae(e)]};function Ve(e){return null!=(t=e)&&ze(t.length)&&!Fe(t)?xe(e):Ee(e);var t}e.exports=function(e,t){return Ce(e,t)}},82280:e=>{e.exports=function(e){return void 0===e}},5544:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",o=9007199254740991,a="[object Arguments]",i="[object Function]",s="[object Object]",l=/^\[object .+?Constructor\]$/,c=/^(?:0|[1-9]\d*)$/,u={};u["[object Float32Array]"]=u["[object Float64Array]"]=u["[object Int8Array]"]=u["[object Int16Array]"]=u["[object Int32Array]"]=u["[object Uint8Array]"]=u["[object Uint8ClampedArray]"]=u["[object Uint16Array]"]=u["[object Uint32Array]"]=!0,u[a]=u["[object Array]"]=u["[object ArrayBuffer]"]=u["[object Boolean]"]=u["[object DataView]"]=u["[object Date]"]=u["[object Error]"]=u[i]=u["[object Map]"]=u["[object Number]"]=u[s]=u["[object RegExp]"]=u["[object Set]"]=u["[object String]"]=u["[object WeakMap]"]=!1;var d="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,f="object"==typeof self&&self&&self.Object===Object&&self,p=d||f||Function("return this")(),h=t&&!t.nodeType&&t,m=h&&e&&!e.nodeType&&e,g=m&&m.exports===h,v=g&&d.process,y=function(){try{var e=m&&m.require&&m.require("util").types;return e||v&&v.binding&&v.binding("util")}catch(t){}}(),b=y&&y.isTypedArray;var w,x,S=Array.prototype,A=Function.prototype,k=Object.prototype,C=p["__core-js_shared__"],I=A.toString,E=k.hasOwnProperty,D=function(){var e=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),T=k.toString,O=I.call(Object),M=RegExp("^"+I.call(E).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),P=g?p.Buffer:void 0,j=p.Symbol,R=p.Uint8Array,_=P?P.allocUnsafe:void 0,N=(w=Object.getPrototypeOf,x=Object,function(e){return w(x(e))}),L=Object.create,U=k.propertyIsEnumerable,B=S.splice,F=j?j.toStringTag:void 0,z=function(){try{var e=pe(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=P?P.isBuffer:void 0,H=Math.max,Y=Date.now,V=pe(p,"Map"),G=pe(Object,"create"),Z=function(){function e(){}return function(t){if(!Ce(t))return{};if(L)return L(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function K(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function X(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function J(e){var t=this.__data__=new K(e);this.size=t.size}function $(e,t){var r=we(e),n=!r&&be(e),o=!r&&!n&&Se(e),a=!r&&!n&&!o&&Ee(e),i=r||n||o||a,s=i?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],l=s.length;for(var c in e)!t&&!E.call(e,c)||i&&("length"==c||o&&("offset"==c||"parent"==c)||a&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||he(c,l))||s.push(c);return s}function q(e,t,r){(void 0!==r&&!ye(e[t],r)||void 0===r&&!(t in e))&&re(e,t,r)}function ee(e,t,r){var n=e[t];E.call(e,t)&&ye(n,r)&&(void 0!==r||t in e)||re(e,t,r)}function te(e,t){for(var r=e.length;r--;)if(ye(e[r][0],t))return r;return-1}function re(e,t,r){"__proto__"==t&&z?z(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}Q.prototype.clear=function(){this.__data__=G?G(null):{},this.size=0},Q.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Q.prototype.get=function(e){var t=this.__data__;if(G){var r=t[e];return r===n?void 0:r}return E.call(t,e)?t[e]:void 0},Q.prototype.has=function(e){var t=this.__data__;return G?void 0!==t[e]:E.call(t,e)},Q.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=G&&void 0===t?n:t,this},K.prototype.clear=function(){this.__data__=[],this.size=0},K.prototype.delete=function(e){var t=this.__data__,r=te(t,e);return!(r<0)&&(r==t.length-1?t.pop():B.call(t,r,1),--this.size,!0)},K.prototype.get=function(e){var t=this.__data__,r=te(t,e);return r<0?void 0:t[r][1]},K.prototype.has=function(e){return te(this.__data__,e)>-1},K.prototype.set=function(e,t){var r=this.__data__,n=te(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},X.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(V||K),string:new Q}},X.prototype.delete=function(e){var t=fe(this,e).delete(e);return this.size-=t?1:0,t},X.prototype.get=function(e){return fe(this,e).get(e)},X.prototype.has=function(e){return fe(this,e).has(e)},X.prototype.set=function(e,t){var r=fe(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},J.prototype.clear=function(){this.__data__=new K,this.size=0},J.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},J.prototype.get=function(e){return this.__data__.get(e)},J.prototype.has=function(e){return this.__data__.has(e)},J.prototype.set=function(e,t){var r=this.__data__;if(r instanceof K){var n=r.__data__;if(!V||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new X(n)}return r.set(e,t),this.size=r.size,this};var ne,oe=function(e,t,r){for(var n=-1,o=Object(e),a=r(e),i=a.length;i--;){var s=a[ne?i:++n];if(!1===t(o[s],s,o))break}return e};function ae(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":F&&F in Object(e)?function(e){var t=E.call(e,F),r=e[F];try{e[F]=void 0;var n=!0}catch(a){}var o=T.call(e);n&&(t?e[F]=r:delete e[F]);return o}(e):function(e){return T.call(e)}(e)}function ie(e){return Ie(e)&&ae(e)==a}function se(e){return!(!Ce(e)||function(e){return!!D&&D in e}(e))&&(Ae(e)?M:l).test(function(e){if(null!=e){try{return I.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function le(e){if(!Ce(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=me(e),r=[];for(var n in e)("constructor"!=n||!t&&E.call(e,n))&&r.push(n);return r}function ce(e,t,r,n,o){e!==t&&oe(t,(function(a,i){if(o||(o=new J),Ce(a))!function(e,t,r,n,o,a,i){var l=ge(e,r),c=ge(t,r),u=i.get(c);if(u)return void q(e,r,u);var d=a?a(l,c,r+"",e,t,i):void 0,f=void 0===d;if(f){var p=we(c),h=!p&&Se(c),m=!p&&!h&&Ee(c);d=c,p||h||m?we(l)?d=l:Ie(g=l)&&xe(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r<n;)t[r]=e[r];return t}(l):h?(f=!1,d=function(e,t){if(t)return e.slice();var r=e.length,n=_?_(r):new e.constructor(r);return e.copy(n),n}(c,!0)):m?(f=!1,d=function(e,t){var r=t?function(e){var t=new e.constructor(e.byteLength);return new R(t).set(new R(e)),t}(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}(c,!0)):d=[]:function(e){if(!Ie(e)||ae(e)!=s)return!1;var t=N(e);if(null===t)return!0;var r=E.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&I.call(r)==O}(c)||be(c)?(d=l,be(l)?d=function(e){return function(e,t,r,n){var o=!r;r||(r={});var a=-1,i=t.length;for(;++a<i;){var s=t[a],l=n?n(r[s],e[s],s,r,e):void 0;void 0===l&&(l=e[s]),o?re(r,s,l):ee(r,s,l)}return r}(e,De(e))}(l):Ce(l)&&!Ae(l)||(d=function(e){return"function"!=typeof e.constructor||me(e)?{}:Z(N(e))}(c))):f=!1}var g;f&&(i.set(c,d),o(d,c,n,a,i),i.delete(c));q(e,r,d)}(e,t,i,r,ce,n,o);else{var l=n?n(ge(e,i),a,i+"",e,t,o):void 0;void 0===l&&(l=a),q(e,i,l)}}),De)}function ue(e,t){return ve(function(e,t,r){return t=H(void 0===t?e.length-1:t,0),function(){for(var n=arguments,o=-1,a=H(n.length-t,0),i=Array(a);++o<a;)i[o]=n[t+o];o=-1;for(var s=Array(t+1);++o<t;)s[o]=n[o];return s[t]=r(i),function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(e,this,s)}}(e,t,Me),e+"")}var de=z?function(e,t){return z(e,"toString",{configurable:!0,enumerable:!1,value:(r=t,function(){return r}),writable:!0});var r}:Me;function fe(e,t){var r=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?r["string"==typeof t?"string":"hash"]:r.map}function pe(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return se(r)?r:void 0}function he(e,t){var r=typeof e;return!!(t=null==t?o:t)&&("number"==r||"symbol"!=r&&c.test(e))&&e>-1&&e%1==0&&e<t}function me(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||k)}function ge(e,t){if(("constructor"!==t||"function"!==typeof e[t])&&"__proto__"!=t)return e[t]}var ve=function(e){var t=0,r=0;return function(){var n=Y(),o=16-(n-r);if(r=n,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(de);function ye(e,t){return e===t||e!==e&&t!==t}var be=ie(function(){return arguments}())?ie:function(e){return Ie(e)&&E.call(e,"callee")&&!U.call(e,"callee")},we=Array.isArray;function xe(e){return null!=e&&ke(e.length)&&!Ae(e)}var Se=W||function(){return!1};function Ae(e){if(!Ce(e))return!1;var t=ae(e);return t==i||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}function ke(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}function Ce(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ie(e){return null!=e&&"object"==typeof e}var Ee=b?function(e){return function(t){return e(t)}}(b):function(e){return Ie(e)&&ke(e.length)&&!!u[ae(e)]};function De(e){return xe(e)?$(e,!0):le(e)}var Te,Oe=(Te=function(e,t,r){ce(e,t,r)},ue((function(e,t){var r=-1,n=t.length,o=n>1?t[n-1]:void 0,a=n>2?t[2]:void 0;for(o=Te.length>3&&"function"==typeof o?(n--,o):void 0,a&&function(e,t,r){if(!Ce(r))return!1;var n=typeof t;return!!("number"==n?xe(r)&&he(t,r.length):"string"==n&&t in r)&&ye(r[t],e)}(t[0],t[1],a)&&(o=n<3?void 0:o,n=1),e=Object(e);++r<n;){var i=t[r];i&&Te(e,i,r,o)}return e})));function Me(e){return e}e.exports=Oe},41397:function(e,t,r){var n;e=r.nmd(e),function(){var o,a="Expected a function",i="__lodash_hash_undefined__",s="__lodash_placeholder__",l=16,c=32,u=64,d=128,f=256,p=1/0,h=9007199254740991,m=NaN,g=4294967295,v=[["ary",d],["bind",1],["bindKey",2],["curry",8],["curryRight",l],["flip",512],["partial",c],["partialRight",u],["rearg",f]],y="[object Arguments]",b="[object Array]",w="[object Boolean]",x="[object Date]",S="[object Error]",A="[object Function]",k="[object GeneratorFunction]",C="[object Map]",I="[object Number]",E="[object Object]",D="[object Promise]",T="[object RegExp]",O="[object Set]",M="[object String]",P="[object Symbol]",j="[object WeakMap]",R="[object ArrayBuffer]",_="[object DataView]",N="[object Float32Array]",L="[object Float64Array]",U="[object Int8Array]",B="[object Int16Array]",F="[object Int32Array]",z="[object Uint8Array]",W="[object Uint8ClampedArray]",H="[object Uint16Array]",Y="[object Uint32Array]",V=/\b__p \+= '';/g,G=/\b(__p \+=) '' \+/g,Z=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Q=/&(?:amp|lt|gt|quot|#39);/g,K=/[&<>"']/g,X=RegExp(Q.source),J=RegExp(K.source),$=/<%-([\s\S]+?)%>/g,q=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ne=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,oe=/[\\^$.*+?()[\]{}|]/g,ae=RegExp(oe.source),ie=/^\s+/,se=/\s/,le=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ce=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,de=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,fe=/[()=,{}\[\]\/\s]/,pe=/\\(\\)?/g,he=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,me=/\w*$/,ge=/^[-+]0x[0-9a-f]+$/i,ve=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,be=/^0o[0-7]+$/i,we=/^(?:0|[1-9]\d*)$/,xe=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Se=/($^)/,Ae=/['\n\r\u2028\u2029\\]/g,ke="\\ud800-\\udfff",Ce="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ie="\\u2700-\\u27bf",Ee="a-z\\xdf-\\xf6\\xf8-\\xff",De="A-Z\\xc0-\\xd6\\xd8-\\xde",Te="\\ufe0e\\ufe0f",Oe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Me="['\u2019]",Pe="["+ke+"]",je="["+Oe+"]",Re="["+Ce+"]",_e="\\d+",Ne="["+Ie+"]",Le="["+Ee+"]",Ue="[^"+ke+Oe+_e+Ie+Ee+De+"]",Be="\\ud83c[\\udffb-\\udfff]",Fe="[^"+ke+"]",ze="(?:\\ud83c[\\udde6-\\uddff]){2}",We="[\\ud800-\\udbff][\\udc00-\\udfff]",He="["+De+"]",Ye="\\u200d",Ve="(?:"+Le+"|"+Ue+")",Ge="(?:"+He+"|"+Ue+")",Ze="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Qe="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ke="(?:"+Re+"|"+Be+")"+"?",Xe="["+Te+"]?",Je=Xe+Ke+("(?:"+Ye+"(?:"+[Fe,ze,We].join("|")+")"+Xe+Ke+")*"),$e="(?:"+[Ne,ze,We].join("|")+")"+Je,qe="(?:"+[Fe+Re+"?",Re,ze,We,Pe].join("|")+")",et=RegExp(Me,"g"),tt=RegExp(Re,"g"),rt=RegExp(Be+"(?="+Be+")|"+qe+Je,"g"),nt=RegExp([He+"?"+Le+"+"+Ze+"(?="+[je,He,"$"].join("|")+")",Ge+"+"+Qe+"(?="+[je,He+Ve,"$"].join("|")+")",He+"?"+Ve+"+"+Ze,He+"+"+Qe,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",_e,$e].join("|"),"g"),ot=RegExp("["+Ye+ke+Ce+Te+"]"),at=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,it=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,lt={};lt[N]=lt[L]=lt[U]=lt[B]=lt[F]=lt[z]=lt[W]=lt[H]=lt[Y]=!0,lt[y]=lt[b]=lt[R]=lt[w]=lt[_]=lt[x]=lt[S]=lt[A]=lt[C]=lt[I]=lt[E]=lt[T]=lt[O]=lt[M]=lt[j]=!1;var ct={};ct[y]=ct[b]=ct[R]=ct[_]=ct[w]=ct[x]=ct[N]=ct[L]=ct[U]=ct[B]=ct[F]=ct[C]=ct[I]=ct[E]=ct[T]=ct[O]=ct[M]=ct[P]=ct[z]=ct[W]=ct[H]=ct[Y]=!0,ct[S]=ct[A]=ct[j]=!1;var ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dt=parseFloat,ft=parseInt,pt="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,ht="object"==typeof self&&self&&self.Object===Object&&self,mt=pt||ht||Function("return this")(),gt=t&&!t.nodeType&&t,vt=gt&&e&&!e.nodeType&&e,yt=vt&&vt.exports===gt,bt=yt&&pt.process,wt=function(){try{var e=vt&&vt.require&&vt.require("util").types;return e||bt&&bt.binding&&bt.binding("util")}catch(t){}}(),xt=wt&&wt.isArrayBuffer,St=wt&&wt.isDate,At=wt&&wt.isMap,kt=wt&&wt.isRegExp,Ct=wt&&wt.isSet,It=wt&&wt.isTypedArray;function Et(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Dt(e,t,r,n){for(var o=-1,a=null==e?0:e.length;++o<a;){var i=e[o];t(n,i,r(i),e)}return n}function Tt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function Ot(e,t){for(var r=null==e?0:e.length;r--&&!1!==t(e[r],r,e););return e}function Mt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0}function Pt(e,t){for(var r=-1,n=null==e?0:e.length,o=0,a=[];++r<n;){var i=e[r];t(i,r,e)&&(a[o++]=i)}return a}function jt(e,t){return!!(null==e?0:e.length)&&Ht(e,t,0)>-1}function Rt(e,t,r){for(var n=-1,o=null==e?0:e.length;++n<o;)if(r(t,e[n]))return!0;return!1}function _t(e,t){for(var r=-1,n=null==e?0:e.length,o=Array(n);++r<n;)o[r]=t(e[r],r,e);return o}function Nt(e,t){for(var r=-1,n=t.length,o=e.length;++r<n;)e[o+r]=t[r];return e}function Lt(e,t,r,n){var o=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++o]);++o<a;)r=t(r,e[o],o,e);return r}function Ut(e,t,r,n){var o=null==e?0:e.length;for(n&&o&&(r=e[--o]);o--;)r=t(r,e[o],o,e);return r}function Bt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}var Ft=Zt("length");function zt(e,t,r){var n;return r(e,(function(e,r,o){if(t(e,r,o))return n=r,!1})),n}function Wt(e,t,r,n){for(var o=e.length,a=r+(n?1:-1);n?a--:++a<o;)if(t(e[a],a,e))return a;return-1}function Ht(e,t,r){return t===t?function(e,t,r){var n=r-1,o=e.length;for(;++n<o;)if(e[n]===t)return n;return-1}(e,t,r):Wt(e,Vt,r)}function Yt(e,t,r,n){for(var o=r-1,a=e.length;++o<a;)if(n(e[o],t))return o;return-1}function Vt(e){return e!==e}function Gt(e,t){var r=null==e?0:e.length;return r?Xt(e,t)/r:m}function Zt(e){return function(t){return null==t?o:t[e]}}function Qt(e){return function(t){return null==e?o:e[t]}}function Kt(e,t,r,n,o){return o(e,(function(e,o,a){r=n?(n=!1,e):t(r,e,o,a)})),r}function Xt(e,t){for(var r,n=-1,a=e.length;++n<a;){var i=t(e[n]);i!==o&&(r=r===o?i:r+i)}return r}function Jt(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function $t(e){return e?e.slice(0,mr(e)+1).replace(ie,""):e}function qt(e){return function(t){return e(t)}}function er(e,t){return _t(t,(function(t){return e[t]}))}function tr(e,t){return e.has(t)}function rr(e,t){for(var r=-1,n=e.length;++r<n&&Ht(t,e[r],0)>-1;);return r}function nr(e,t){for(var r=e.length;r--&&Ht(t,e[r],0)>-1;);return r}var or=Qt({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),ar=Qt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function ir(e){return"\\"+ut[e]}function sr(e){return ot.test(e)}function lr(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function cr(e,t){return function(r){return e(t(r))}}function ur(e,t){for(var r=-1,n=e.length,o=0,a=[];++r<n;){var i=e[r];i!==t&&i!==s||(e[r]=s,a[o++]=r)}return a}function dr(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}function fr(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=[e,e]})),r}function pr(e){return sr(e)?function(e){var t=rt.lastIndex=0;for(;rt.test(e);)++t;return t}(e):Ft(e)}function hr(e){return sr(e)?function(e){return e.match(rt)||[]}(e):function(e){return e.split("")}(e)}function mr(e){for(var t=e.length;t--&&se.test(e.charAt(t)););return t}var gr=Qt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"});var vr=function e(t){var r=(t=null==t?mt:vr.defaults(mt.Object(),t,vr.pick(mt,it))).Array,n=t.Date,se=t.Error,ke=t.Function,Ce=t.Math,Ie=t.Object,Ee=t.RegExp,De=t.String,Te=t.TypeError,Oe=r.prototype,Me=ke.prototype,Pe=Ie.prototype,je=t["__core-js_shared__"],Re=Me.toString,_e=Pe.hasOwnProperty,Ne=0,Le=function(){var e=/[^.]+$/.exec(je&&je.keys&&je.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),Ue=Pe.toString,Be=Re.call(Ie),Fe=mt._,ze=Ee("^"+Re.call(_e).replace(oe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),We=yt?t.Buffer:o,He=t.Symbol,Ye=t.Uint8Array,Ve=We?We.allocUnsafe:o,Ge=cr(Ie.getPrototypeOf,Ie),Ze=Ie.create,Qe=Pe.propertyIsEnumerable,Ke=Oe.splice,Xe=He?He.isConcatSpreadable:o,Je=He?He.iterator:o,$e=He?He.toStringTag:o,qe=function(){try{var e=fa(Ie,"defineProperty");return e({},"",{}),e}catch(t){}}(),rt=t.clearTimeout!==mt.clearTimeout&&t.clearTimeout,ot=n&&n.now!==mt.Date.now&&n.now,ut=t.setTimeout!==mt.setTimeout&&t.setTimeout,pt=Ce.ceil,ht=Ce.floor,gt=Ie.getOwnPropertySymbols,vt=We?We.isBuffer:o,bt=t.isFinite,wt=Oe.join,Ft=cr(Ie.keys,Ie),Qt=Ce.max,yr=Ce.min,br=n.now,wr=t.parseInt,xr=Ce.random,Sr=Oe.reverse,Ar=fa(t,"DataView"),kr=fa(t,"Map"),Cr=fa(t,"Promise"),Ir=fa(t,"Set"),Er=fa(t,"WeakMap"),Dr=fa(Ie,"create"),Tr=Er&&new Er,Or={},Mr=Ua(Ar),Pr=Ua(kr),jr=Ua(Cr),Rr=Ua(Ir),_r=Ua(Er),Nr=He?He.prototype:o,Lr=Nr?Nr.valueOf:o,Ur=Nr?Nr.toString:o;function Br(e){if(ts(e)&&!Yi(e)&&!(e instanceof Hr)){if(e instanceof Wr)return e;if(_e.call(e,"__wrapped__"))return Ba(e)}return new Wr(e)}var Fr=function(){function e(){}return function(t){if(!es(t))return{};if(Ze)return Ze(t);e.prototype=t;var r=new e;return e.prototype=o,r}}();function zr(){}function Wr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=o}function Hr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=g,this.__views__=[]}function Yr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Vr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Gr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Zr(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Gr;++t<r;)this.add(e[t])}function Qr(e){var t=this.__data__=new Vr(e);this.size=t.size}function Kr(e,t){var r=Yi(e),n=!r&&Hi(e),o=!r&&!n&&Qi(e),a=!r&&!n&&!o&&cs(e),i=r||n||o||a,s=i?Jt(e.length,De):[],l=s.length;for(var c in e)!t&&!_e.call(e,c)||i&&("length"==c||o&&("offset"==c||"parent"==c)||a&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||ba(c,l))||s.push(c);return s}function Xr(e){var t=e.length;return t?e[Qn(0,t-1)]:o}function Jr(e,t){return _a(Oo(e),sn(t,0,e.length))}function $r(e){return _a(Oo(e))}function qr(e,t,r){(r!==o&&!Fi(e[t],r)||r===o&&!(t in e))&&on(e,t,r)}function en(e,t,r){var n=e[t];_e.call(e,t)&&Fi(n,r)&&(r!==o||t in e)||on(e,t,r)}function tn(e,t){for(var r=e.length;r--;)if(Fi(e[r][0],t))return r;return-1}function rn(e,t,r,n){return fn(e,(function(e,o,a){t(n,e,r(e),a)})),n}function nn(e,t){return e&&Mo(t,Ms(t),e)}function on(e,t,r){"__proto__"==t&&qe?qe(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function an(e,t){for(var n=-1,a=t.length,i=r(a),s=null==e;++n<a;)i[n]=s?o:Is(e,t[n]);return i}function sn(e,t,r){return e===e&&(r!==o&&(e=e<=r?e:r),t!==o&&(e=e>=t?e:t)),e}function ln(e,t,r,n,a,i){var s,l=1&t,c=2&t,u=4&t;if(r&&(s=a?r(e,n,a,i):r(e)),s!==o)return s;if(!es(e))return e;var d=Yi(e);if(d){if(s=function(e){var t=e.length,r=new e.constructor(t);t&&"string"==typeof e[0]&&_e.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!l)return Oo(e,s)}else{var f=ma(e),p=f==A||f==k;if(Qi(e))return ko(e,l);if(f==E||f==y||p&&!a){if(s=c||p?{}:va(e),!l)return c?function(e,t){return Mo(e,ha(e),t)}(e,function(e,t){return e&&Mo(t,Ps(t),e)}(s,e)):function(e,t){return Mo(e,pa(e),t)}(e,nn(s,e))}else{if(!ct[f])return a?e:{};s=function(e,t,r){var n=e.constructor;switch(t){case R:return Co(e);case w:case x:return new n(+e);case _:return function(e,t){var r=t?Co(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case N:case L:case U:case B:case F:case z:case W:case H:case Y:return Io(e,r);case C:return new n;case I:case M:return new n(e);case T:return function(e){var t=new e.constructor(e.source,me.exec(e));return t.lastIndex=e.lastIndex,t}(e);case O:return new n;case P:return o=e,Lr?Ie(Lr.call(o)):{}}var o}(e,f,l)}}i||(i=new Qr);var h=i.get(e);if(h)return h;i.set(e,s),is(e)?e.forEach((function(n){s.add(ln(n,t,r,n,e,i))})):rs(e)&&e.forEach((function(n,o){s.set(o,ln(n,t,r,o,e,i))}));var m=d?o:(u?c?aa:oa:c?Ps:Ms)(e);return Tt(m||e,(function(n,o){m&&(n=e[o=n]),en(s,o,ln(n,t,r,o,e,i))})),s}function cn(e,t,r){var n=r.length;if(null==e)return!n;for(e=Ie(e);n--;){var a=r[n],i=t[a],s=e[a];if(s===o&&!(a in e)||!i(s))return!1}return!0}function un(e,t,r){if("function"!=typeof e)throw new Te(a);return Ma((function(){e.apply(o,r)}),t)}function dn(e,t,r,n){var o=-1,a=jt,i=!0,s=e.length,l=[],c=t.length;if(!s)return l;r&&(t=_t(t,qt(r))),n?(a=Rt,i=!1):t.length>=200&&(a=tr,i=!1,t=new Zr(t));e:for(;++o<s;){var u=e[o],d=null==r?u:r(u);if(u=n||0!==u?u:0,i&&d===d){for(var f=c;f--;)if(t[f]===d)continue e;l.push(u)}else a(t,d,n)||l.push(u)}return l}Br.templateSettings={escape:$,evaluate:q,interpolate:ee,variable:"",imports:{_:Br}},Br.prototype=zr.prototype,Br.prototype.constructor=Br,Wr.prototype=Fr(zr.prototype),Wr.prototype.constructor=Wr,Hr.prototype=Fr(zr.prototype),Hr.prototype.constructor=Hr,Yr.prototype.clear=function(){this.__data__=Dr?Dr(null):{},this.size=0},Yr.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Yr.prototype.get=function(e){var t=this.__data__;if(Dr){var r=t[e];return r===i?o:r}return _e.call(t,e)?t[e]:o},Yr.prototype.has=function(e){var t=this.__data__;return Dr?t[e]!==o:_e.call(t,e)},Yr.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Dr&&t===o?i:t,this},Vr.prototype.clear=function(){this.__data__=[],this.size=0},Vr.prototype.delete=function(e){var t=this.__data__,r=tn(t,e);return!(r<0)&&(r==t.length-1?t.pop():Ke.call(t,r,1),--this.size,!0)},Vr.prototype.get=function(e){var t=this.__data__,r=tn(t,e);return r<0?o:t[r][1]},Vr.prototype.has=function(e){return tn(this.__data__,e)>-1},Vr.prototype.set=function(e,t){var r=this.__data__,n=tn(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Gr.prototype.clear=function(){this.size=0,this.__data__={hash:new Yr,map:new(kr||Vr),string:new Yr}},Gr.prototype.delete=function(e){var t=ua(this,e).delete(e);return this.size-=t?1:0,t},Gr.prototype.get=function(e){return ua(this,e).get(e)},Gr.prototype.has=function(e){return ua(this,e).has(e)},Gr.prototype.set=function(e,t){var r=ua(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Zr.prototype.add=Zr.prototype.push=function(e){return this.__data__.set(e,i),this},Zr.prototype.has=function(e){return this.__data__.has(e)},Qr.prototype.clear=function(){this.__data__=new Vr,this.size=0},Qr.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Qr.prototype.get=function(e){return this.__data__.get(e)},Qr.prototype.has=function(e){return this.__data__.has(e)},Qr.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Vr){var n=r.__data__;if(!kr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Gr(n)}return r.set(e,t),this.size=r.size,this};var fn=Ro(wn),pn=Ro(xn,!0);function hn(e,t){var r=!0;return fn(e,(function(e,n,o){return r=!!t(e,n,o)})),r}function mn(e,t,r){for(var n=-1,a=e.length;++n<a;){var i=e[n],s=t(i);if(null!=s&&(l===o?s===s&&!ls(s):r(s,l)))var l=s,c=i}return c}function gn(e,t){var r=[];return fn(e,(function(e,n,o){t(e,n,o)&&r.push(e)})),r}function vn(e,t,r,n,o){var a=-1,i=e.length;for(r||(r=ya),o||(o=[]);++a<i;){var s=e[a];t>0&&r(s)?t>1?vn(s,t-1,r,n,o):Nt(o,s):n||(o[o.length]=s)}return o}var yn=_o(),bn=_o(!0);function wn(e,t){return e&&yn(e,t,Ms)}function xn(e,t){return e&&bn(e,t,Ms)}function Sn(e,t){return Pt(t,(function(t){return Ji(e[t])}))}function An(e,t){for(var r=0,n=(t=wo(t,e)).length;null!=e&&r<n;)e=e[La(t[r++])];return r&&r==n?e:o}function kn(e,t,r){var n=t(e);return Yi(e)?n:Nt(n,r(e))}function Cn(e){return null==e?e===o?"[object Undefined]":"[object Null]":$e&&$e in Ie(e)?function(e){var t=_e.call(e,$e),r=e[$e];try{e[$e]=o;var n=!0}catch(i){}var a=Ue.call(e);n&&(t?e[$e]=r:delete e[$e]);return a}(e):function(e){return Ue.call(e)}(e)}function In(e,t){return e>t}function En(e,t){return null!=e&&_e.call(e,t)}function Dn(e,t){return null!=e&&t in Ie(e)}function Tn(e,t,n){for(var a=n?Rt:jt,i=e[0].length,s=e.length,l=s,c=r(s),u=1/0,d=[];l--;){var f=e[l];l&&t&&(f=_t(f,qt(t))),u=yr(f.length,u),c[l]=!n&&(t||i>=120&&f.length>=120)?new Zr(l&&f):o}f=e[0];var p=-1,h=c[0];e:for(;++p<i&&d.length<u;){var m=f[p],g=t?t(m):m;if(m=n||0!==m?m:0,!(h?tr(h,g):a(d,g,n))){for(l=s;--l;){var v=c[l];if(!(v?tr(v,g):a(e[l],g,n)))continue e}h&&h.push(g),d.push(m)}}return d}function On(e,t,r){var n=null==(e=Da(e,t=wo(t,e)))?e:e[La(Xa(t))];return null==n?o:Et(n,e,r)}function Mn(e){return ts(e)&&Cn(e)==y}function Pn(e,t,r,n,a){return e===t||(null==e||null==t||!ts(e)&&!ts(t)?e!==e&&t!==t:function(e,t,r,n,a,i){var s=Yi(e),l=Yi(t),c=s?b:ma(e),u=l?b:ma(t),d=(c=c==y?E:c)==E,f=(u=u==y?E:u)==E,p=c==u;if(p&&Qi(e)){if(!Qi(t))return!1;s=!0,d=!1}if(p&&!d)return i||(i=new Qr),s||cs(e)?ra(e,t,r,n,a,i):function(e,t,r,n,o,a,i){switch(r){case _:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case R:return!(e.byteLength!=t.byteLength||!a(new Ye(e),new Ye(t)));case w:case x:case I:return Fi(+e,+t);case S:return e.name==t.name&&e.message==t.message;case T:case M:return e==t+"";case C:var s=lr;case O:var l=1&n;if(s||(s=dr),e.size!=t.size&&!l)return!1;var c=i.get(e);if(c)return c==t;n|=2,i.set(e,t);var u=ra(s(e),s(t),n,o,a,i);return i.delete(e),u;case P:if(Lr)return Lr.call(e)==Lr.call(t)}return!1}(e,t,c,r,n,a,i);if(!(1&r)){var h=d&&_e.call(e,"__wrapped__"),m=f&&_e.call(t,"__wrapped__");if(h||m){var g=h?e.value():e,v=m?t.value():t;return i||(i=new Qr),a(g,v,r,n,i)}}if(!p)return!1;return i||(i=new Qr),function(e,t,r,n,a,i){var s=1&r,l=oa(e),c=l.length,u=oa(t),d=u.length;if(c!=d&&!s)return!1;var f=c;for(;f--;){var p=l[f];if(!(s?p in t:_e.call(t,p)))return!1}var h=i.get(e),m=i.get(t);if(h&&m)return h==t&&m==e;var g=!0;i.set(e,t),i.set(t,e);var v=s;for(;++f<c;){var y=e[p=l[f]],b=t[p];if(n)var w=s?n(b,y,p,t,e,i):n(y,b,p,e,t,i);if(!(w===o?y===b||a(y,b,r,n,i):w)){g=!1;break}v||(v="constructor"==p)}if(g&&!v){var x=e.constructor,S=t.constructor;x==S||!("constructor"in e)||!("constructor"in t)||"function"==typeof x&&x instanceof x&&"function"==typeof S&&S instanceof S||(g=!1)}return i.delete(e),i.delete(t),g}(e,t,r,n,a,i)}(e,t,r,n,Pn,a))}function jn(e,t,r,n){var a=r.length,i=a,s=!n;if(null==e)return!i;for(e=Ie(e);a--;){var l=r[a];if(s&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<i;){var c=(l=r[a])[0],u=e[c],d=l[1];if(s&&l[2]){if(u===o&&!(c in e))return!1}else{var f=new Qr;if(n)var p=n(u,d,c,e,t,f);if(!(p===o?Pn(d,u,3,n,f):p))return!1}}return!0}function Rn(e){return!(!es(e)||(t=e,Le&&Le in t))&&(Ji(e)?ze:ye).test(Ua(e));var t}function _n(e){return"function"==typeof e?e:null==e?nl:"object"==typeof e?Yi(e)?zn(e[0],e[1]):Fn(e):fl(e)}function Nn(e){if(!ka(e))return Ft(e);var t=[];for(var r in Ie(e))_e.call(e,r)&&"constructor"!=r&&t.push(r);return t}function Ln(e){if(!es(e))return function(e){var t=[];if(null!=e)for(var r in Ie(e))t.push(r);return t}(e);var t=ka(e),r=[];for(var n in e)("constructor"!=n||!t&&_e.call(e,n))&&r.push(n);return r}function Un(e,t){return e<t}function Bn(e,t){var n=-1,o=Gi(e)?r(e.length):[];return fn(e,(function(e,r,a){o[++n]=t(e,r,a)})),o}function Fn(e){var t=da(e);return 1==t.length&&t[0][2]?Ia(t[0][0],t[0][1]):function(r){return r===e||jn(r,e,t)}}function zn(e,t){return xa(e)&&Ca(t)?Ia(La(e),t):function(r){var n=Is(r,e);return n===o&&n===t?Es(r,e):Pn(t,n,3)}}function Wn(e,t,r,n,a){e!==t&&yn(t,(function(i,s){if(a||(a=new Qr),es(i))!function(e,t,r,n,a,i,s){var l=Ta(e,r),c=Ta(t,r),u=s.get(c);if(u)return void qr(e,r,u);var d=i?i(l,c,r+"",e,t,s):o,f=d===o;if(f){var p=Yi(c),h=!p&&Qi(c),m=!p&&!h&&cs(c);d=c,p||h||m?Yi(l)?d=l:Zi(l)?d=Oo(l):h?(f=!1,d=ko(c,!0)):m?(f=!1,d=Io(c,!0)):d=[]:os(c)||Hi(c)?(d=l,Hi(l)?d=vs(l):es(l)&&!Ji(l)||(d=va(c))):f=!1}f&&(s.set(c,d),a(d,c,n,i,s),s.delete(c));qr(e,r,d)}(e,t,s,r,Wn,n,a);else{var l=n?n(Ta(e,s),i,s+"",e,t,a):o;l===o&&(l=i),qr(e,s,l)}}),Ps)}function Hn(e,t){var r=e.length;if(r)return ba(t+=t<0?r:0,r)?e[t]:o}function Yn(e,t,r){t=t.length?_t(t,(function(e){return Yi(e)?function(t){return An(t,1===e.length?e[0]:e)}:e})):[nl];var n=-1;t=_t(t,qt(ca()));var o=Bn(e,(function(e,r,o){var a=_t(t,(function(t){return t(e)}));return{criteria:a,index:++n,value:e}}));return function(e,t){var r=e.length;for(e.sort(t);r--;)e[r]=e[r].value;return e}(o,(function(e,t){return function(e,t,r){var n=-1,o=e.criteria,a=t.criteria,i=o.length,s=r.length;for(;++n<i;){var l=Eo(o[n],a[n]);if(l)return n>=s?l:l*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function Vn(e,t,r){for(var n=-1,o=t.length,a={};++n<o;){var i=t[n],s=An(e,i);r(s,i)&&qn(a,wo(i,e),s)}return a}function Gn(e,t,r,n){var o=n?Yt:Ht,a=-1,i=t.length,s=e;for(e===t&&(t=Oo(t)),r&&(s=_t(e,qt(r)));++a<i;)for(var l=0,c=t[a],u=r?r(c):c;(l=o(s,u,l,n))>-1;)s!==e&&Ke.call(s,l,1),Ke.call(e,l,1);return e}function Zn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var o=t[r];if(r==n||o!==a){var a=o;ba(o)?Ke.call(e,o,1):fo(e,o)}}return e}function Qn(e,t){return e+ht(xr()*(t-e+1))}function Kn(e,t){var r="";if(!e||t<1||t>h)return r;do{t%2&&(r+=e),(t=ht(t/2))&&(e+=e)}while(t);return r}function Xn(e,t){return Pa(Ea(e,t,nl),e+"")}function Jn(e){return Xr(Fs(e))}function $n(e,t){var r=Fs(e);return _a(r,sn(t,0,r.length))}function qn(e,t,r,n){if(!es(e))return e;for(var a=-1,i=(t=wo(t,e)).length,s=i-1,l=e;null!=l&&++a<i;){var c=La(t[a]),u=r;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(a!=s){var d=l[c];(u=n?n(d,c,l):o)===o&&(u=es(d)?d:ba(t[a+1])?[]:{})}en(l,c,u),l=l[c]}return e}var eo=Tr?function(e,t){return Tr.set(e,t),e}:nl,to=qe?function(e,t){return qe(e,"toString",{configurable:!0,enumerable:!1,value:el(t),writable:!0})}:nl;function ro(e){return _a(Fs(e))}function no(e,t,n){var o=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(n=n>a?a:n)<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var i=r(a);++o<a;)i[o]=e[o+t];return i}function oo(e,t){var r;return fn(e,(function(e,n,o){return!(r=t(e,n,o))})),!!r}function ao(e,t,r){var n=0,o=null==e?n:e.length;if("number"==typeof t&&t===t&&o<=2147483647){for(;n<o;){var a=n+o>>>1,i=e[a];null!==i&&!ls(i)&&(r?i<=t:i<t)?n=a+1:o=a}return o}return io(e,t,nl,r)}function io(e,t,r,n){var a=0,i=null==e?0:e.length;if(0===i)return 0;for(var s=(t=r(t))!==t,l=null===t,c=ls(t),u=t===o;a<i;){var d=ht((a+i)/2),f=r(e[d]),p=f!==o,h=null===f,m=f===f,g=ls(f);if(s)var v=n||m;else v=u?m&&(n||p):l?m&&p&&(n||!h):c?m&&p&&!h&&(n||!g):!h&&!g&&(n?f<=t:f<t);v?a=d+1:i=d}return yr(i,4294967294)}function so(e,t){for(var r=-1,n=e.length,o=0,a=[];++r<n;){var i=e[r],s=t?t(i):i;if(!r||!Fi(s,l)){var l=s;a[o++]=0===i?0:i}}return a}function lo(e){return"number"==typeof e?e:ls(e)?m:+e}function co(e){if("string"==typeof e)return e;if(Yi(e))return _t(e,co)+"";if(ls(e))return Ur?Ur.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function uo(e,t,r){var n=-1,o=jt,a=e.length,i=!0,s=[],l=s;if(r)i=!1,o=Rt;else if(a>=200){var c=t?null:Xo(e);if(c)return dr(c);i=!1,o=tr,l=new Zr}else l=t?[]:s;e:for(;++n<a;){var u=e[n],d=t?t(u):u;if(u=r||0!==u?u:0,i&&d===d){for(var f=l.length;f--;)if(l[f]===d)continue e;t&&l.push(d),s.push(u)}else o(l,d,r)||(l!==s&&l.push(d),s.push(u))}return s}function fo(e,t){return null==(e=Da(e,t=wo(t,e)))||delete e[La(Xa(t))]}function po(e,t,r,n){return qn(e,t,r(An(e,t)),n)}function ho(e,t,r,n){for(var o=e.length,a=n?o:-1;(n?a--:++a<o)&&t(e[a],a,e););return r?no(e,n?0:a,n?a+1:o):no(e,n?a+1:0,n?o:a)}function mo(e,t){var r=e;return r instanceof Hr&&(r=r.value()),Lt(t,(function(e,t){return t.func.apply(t.thisArg,Nt([e],t.args))}),r)}function go(e,t,n){var o=e.length;if(o<2)return o?uo(e[0]):[];for(var a=-1,i=r(o);++a<o;)for(var s=e[a],l=-1;++l<o;)l!=a&&(i[a]=dn(i[a]||s,e[l],t,n));return uo(vn(i,1),t,n)}function vo(e,t,r){for(var n=-1,a=e.length,i=t.length,s={};++n<a;){var l=n<i?t[n]:o;r(s,e[n],l)}return s}function yo(e){return Zi(e)?e:[]}function bo(e){return"function"==typeof e?e:nl}function wo(e,t){return Yi(e)?e:xa(e,t)?[e]:Na(ys(e))}var xo=Xn;function So(e,t,r){var n=e.length;return r=r===o?n:r,!t&&r>=n?e:no(e,t,r)}var Ao=rt||function(e){return mt.clearTimeout(e)};function ko(e,t){if(t)return e.slice();var r=e.length,n=Ve?Ve(r):new e.constructor(r);return e.copy(n),n}function Co(e){var t=new e.constructor(e.byteLength);return new Ye(t).set(new Ye(e)),t}function Io(e,t){var r=t?Co(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Eo(e,t){if(e!==t){var r=e!==o,n=null===e,a=e===e,i=ls(e),s=t!==o,l=null===t,c=t===t,u=ls(t);if(!l&&!u&&!i&&e>t||i&&s&&c&&!l&&!u||n&&s&&c||!r&&c||!a)return 1;if(!n&&!i&&!u&&e<t||u&&r&&a&&!n&&!i||l&&r&&a||!s&&a||!c)return-1}return 0}function Do(e,t,n,o){for(var a=-1,i=e.length,s=n.length,l=-1,c=t.length,u=Qt(i-s,0),d=r(c+u),f=!o;++l<c;)d[l]=t[l];for(;++a<s;)(f||a<i)&&(d[n[a]]=e[a]);for(;u--;)d[l++]=e[a++];return d}function To(e,t,n,o){for(var a=-1,i=e.length,s=-1,l=n.length,c=-1,u=t.length,d=Qt(i-l,0),f=r(d+u),p=!o;++a<d;)f[a]=e[a];for(var h=a;++c<u;)f[h+c]=t[c];for(;++s<l;)(p||a<i)&&(f[h+n[s]]=e[a++]);return f}function Oo(e,t){var n=-1,o=e.length;for(t||(t=r(o));++n<o;)t[n]=e[n];return t}function Mo(e,t,r,n){var a=!r;r||(r={});for(var i=-1,s=t.length;++i<s;){var l=t[i],c=n?n(r[l],e[l],l,r,e):o;c===o&&(c=e[l]),a?on(r,l,c):en(r,l,c)}return r}function Po(e,t){return function(r,n){var o=Yi(r)?Dt:rn,a=t?t():{};return o(r,e,ca(n,2),a)}}function jo(e){return Xn((function(t,r){var n=-1,a=r.length,i=a>1?r[a-1]:o,s=a>2?r[2]:o;for(i=e.length>3&&"function"==typeof i?(a--,i):o,s&&wa(r[0],r[1],s)&&(i=a<3?o:i,a=1),t=Ie(t);++n<a;){var l=r[n];l&&e(t,l,n,i)}return t}))}function Ro(e,t){return function(r,n){if(null==r)return r;if(!Gi(r))return e(r,n);for(var o=r.length,a=t?o:-1,i=Ie(r);(t?a--:++a<o)&&!1!==n(i[a],a,i););return r}}function _o(e){return function(t,r,n){for(var o=-1,a=Ie(t),i=n(t),s=i.length;s--;){var l=i[e?s:++o];if(!1===r(a[l],l,a))break}return t}}function No(e){return function(t){var r=sr(t=ys(t))?hr(t):o,n=r?r[0]:t.charAt(0),a=r?So(r,1).join(""):t.slice(1);return n[e]()+a}}function Lo(e){return function(t){return Lt(Js(Hs(t).replace(et,"")),e,"")}}function Uo(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=Fr(e.prototype),n=e.apply(r,t);return es(n)?n:r}}function Bo(e){return function(t,r,n){var a=Ie(t);if(!Gi(t)){var i=ca(r,3);t=Ms(t),r=function(e){return i(a[e],e,a)}}var s=e(t,r,n);return s>-1?a[i?t[s]:s]:o}}function Fo(e){return na((function(t){var r=t.length,n=r,i=Wr.prototype.thru;for(e&&t.reverse();n--;){var s=t[n];if("function"!=typeof s)throw new Te(a);if(i&&!l&&"wrapper"==sa(s))var l=new Wr([],!0)}for(n=l?n:r;++n<r;){var c=sa(s=t[n]),u="wrapper"==c?ia(s):o;l=u&&Sa(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?l[sa(u[0])].apply(l,u[3]):1==s.length&&Sa(s)?l[c]():l.thru(s)}return function(){var e=arguments,n=e[0];if(l&&1==e.length&&Yi(n))return l.plant(n).value();for(var o=0,a=r?t[o].apply(this,e):n;++o<r;)a=t[o].call(this,a);return a}}))}function zo(e,t,n,a,i,s,l,c,u,f){var p=t&d,h=1&t,m=2&t,g=24&t,v=512&t,y=m?o:Uo(e);return function d(){for(var b=arguments.length,w=r(b),x=b;x--;)w[x]=arguments[x];if(g)var S=la(d),A=function(e,t){for(var r=e.length,n=0;r--;)e[r]===t&&++n;return n}(w,S);if(a&&(w=Do(w,a,i,g)),s&&(w=To(w,s,l,g)),b-=A,g&&b<f){var k=ur(w,S);return Qo(e,t,zo,d.placeholder,n,w,k,c,u,f-b)}var C=h?n:this,I=m?C[e]:e;return b=w.length,c?w=function(e,t){var r=e.length,n=yr(t.length,r),a=Oo(e);for(;n--;){var i=t[n];e[n]=ba(i,r)?a[i]:o}return e}(w,c):v&&b>1&&w.reverse(),p&&u<b&&(w.length=u),this&&this!==mt&&this instanceof d&&(I=y||Uo(I)),I.apply(C,w)}}function Wo(e,t){return function(r,n){return function(e,t,r,n){return wn(e,(function(e,o,a){t(n,r(e),o,a)})),n}(r,e,t(n),{})}}function Ho(e,t){return function(r,n){var a;if(r===o&&n===o)return t;if(r!==o&&(a=r),n!==o){if(a===o)return n;"string"==typeof r||"string"==typeof n?(r=co(r),n=co(n)):(r=lo(r),n=lo(n)),a=e(r,n)}return a}}function Yo(e){return na((function(t){return t=_t(t,qt(ca())),Xn((function(r){var n=this;return e(t,(function(e){return Et(e,n,r)}))}))}))}function Vo(e,t){var r=(t=t===o?" ":co(t)).length;if(r<2)return r?Kn(t,e):t;var n=Kn(t,pt(e/pr(t)));return sr(t)?So(hr(n),0,e).join(""):n.slice(0,e)}function Go(e){return function(t,n,a){return a&&"number"!=typeof a&&wa(t,n,a)&&(n=a=o),t=ps(t),n===o?(n=t,t=0):n=ps(n),function(e,t,n,o){for(var a=-1,i=Qt(pt((t-e)/(n||1)),0),s=r(i);i--;)s[o?i:++a]=e,e+=n;return s}(t,n,a=a===o?t<n?1:-1:ps(a),e)}}function Zo(e){return function(t,r){return"string"==typeof t&&"string"==typeof r||(t=gs(t),r=gs(r)),e(t,r)}}function Qo(e,t,r,n,a,i,s,l,d,f){var p=8&t;t|=p?c:u,4&(t&=~(p?u:c))||(t&=-4);var h=[e,t,a,p?i:o,p?s:o,p?o:i,p?o:s,l,d,f],m=r.apply(o,h);return Sa(e)&&Oa(m,h),m.placeholder=n,ja(m,e,t)}function Ko(e){var t=Ce[e];return function(e,r){if(e=gs(e),(r=null==r?0:yr(hs(r),292))&&bt(e)){var n=(ys(e)+"e").split("e");return+((n=(ys(t(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return t(e)}}var Xo=Ir&&1/dr(new Ir([,-0]))[1]==p?function(e){return new Ir(e)}:ll;function Jo(e){return function(t){var r=ma(t);return r==C?lr(t):r==O?fr(t):function(e,t){return _t(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function $o(e,t,n,i,p,h,m,g){var v=2&t;if(!v&&"function"!=typeof e)throw new Te(a);var y=i?i.length:0;if(y||(t&=-97,i=p=o),m=m===o?m:Qt(hs(m),0),g=g===o?g:hs(g),y-=p?p.length:0,t&u){var b=i,w=p;i=p=o}var x=v?o:ia(e),S=[e,t,n,i,p,b,w,h,m,g];if(x&&function(e,t){var r=e[1],n=t[1],o=r|n,a=o<131,i=n==d&&8==r||n==d&&r==f&&e[7].length<=t[8]||384==n&&t[7].length<=t[8]&&8==r;if(!a&&!i)return e;1&n&&(e[2]=t[2],o|=1&r?0:4);var l=t[3];if(l){var c=e[3];e[3]=c?Do(c,l,t[4]):l,e[4]=c?ur(e[3],s):t[4]}(l=t[5])&&(c=e[5],e[5]=c?To(c,l,t[6]):l,e[6]=c?ur(e[5],s):t[6]);(l=t[7])&&(e[7]=l);n&d&&(e[8]=null==e[8]?t[8]:yr(e[8],t[8]));null==e[9]&&(e[9]=t[9]);e[0]=t[0],e[1]=o}(S,x),e=S[0],t=S[1],n=S[2],i=S[3],p=S[4],!(g=S[9]=S[9]===o?v?0:e.length:Qt(S[9]-y,0))&&24&t&&(t&=-25),t&&1!=t)A=8==t||t==l?function(e,t,n){var a=Uo(e);return function i(){for(var s=arguments.length,l=r(s),c=s,u=la(i);c--;)l[c]=arguments[c];var d=s<3&&l[0]!==u&&l[s-1]!==u?[]:ur(l,u);return(s-=d.length)<n?Qo(e,t,zo,i.placeholder,o,l,d,o,o,n-s):Et(this&&this!==mt&&this instanceof i?a:e,this,l)}}(e,t,g):t!=c&&33!=t||p.length?zo.apply(o,S):function(e,t,n,o){var a=1&t,i=Uo(e);return function t(){for(var s=-1,l=arguments.length,c=-1,u=o.length,d=r(u+l),f=this&&this!==mt&&this instanceof t?i:e;++c<u;)d[c]=o[c];for(;l--;)d[c++]=arguments[++s];return Et(f,a?n:this,d)}}(e,t,n,i);else var A=function(e,t,r){var n=1&t,o=Uo(e);return function t(){return(this&&this!==mt&&this instanceof t?o:e).apply(n?r:this,arguments)}}(e,t,n);return ja((x?eo:Oa)(A,S),e,t)}function qo(e,t,r,n){return e===o||Fi(e,Pe[r])&&!_e.call(n,r)?t:e}function ea(e,t,r,n,a,i){return es(e)&&es(t)&&(i.set(t,e),Wn(e,t,o,ea,i),i.delete(t)),e}function ta(e){return os(e)?o:e}function ra(e,t,r,n,a,i){var s=1&r,l=e.length,c=t.length;if(l!=c&&!(s&&c>l))return!1;var u=i.get(e),d=i.get(t);if(u&&d)return u==t&&d==e;var f=-1,p=!0,h=2&r?new Zr:o;for(i.set(e,t),i.set(t,e);++f<l;){var m=e[f],g=t[f];if(n)var v=s?n(g,m,f,t,e,i):n(m,g,f,e,t,i);if(v!==o){if(v)continue;p=!1;break}if(h){if(!Bt(t,(function(e,t){if(!tr(h,t)&&(m===e||a(m,e,r,n,i)))return h.push(t)}))){p=!1;break}}else if(m!==g&&!a(m,g,r,n,i)){p=!1;break}}return i.delete(e),i.delete(t),p}function na(e){return Pa(Ea(e,o,Va),e+"")}function oa(e){return kn(e,Ms,pa)}function aa(e){return kn(e,Ps,ha)}var ia=Tr?function(e){return Tr.get(e)}:ll;function sa(e){for(var t=e.name+"",r=Or[t],n=_e.call(Or,t)?r.length:0;n--;){var o=r[n],a=o.func;if(null==a||a==e)return o.name}return t}function la(e){return(_e.call(Br,"placeholder")?Br:e).placeholder}function ca(){var e=Br.iteratee||ol;return e=e===ol?_n:e,arguments.length?e(arguments[0],arguments[1]):e}function ua(e,t){var r=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?r["string"==typeof t?"string":"hash"]:r.map}function da(e){for(var t=Ms(e),r=t.length;r--;){var n=t[r],o=e[n];t[r]=[n,o,Ca(o)]}return t}function fa(e,t){var r=function(e,t){return null==e?o:e[t]}(e,t);return Rn(r)?r:o}var pa=gt?function(e){return null==e?[]:(e=Ie(e),Pt(gt(e),(function(t){return Qe.call(e,t)})))}:ml,ha=gt?function(e){for(var t=[];e;)Nt(t,pa(e)),e=Ge(e);return t}:ml,ma=Cn;function ga(e,t,r){for(var n=-1,o=(t=wo(t,e)).length,a=!1;++n<o;){var i=La(t[n]);if(!(a=null!=e&&r(e,i)))break;e=e[i]}return a||++n!=o?a:!!(o=null==e?0:e.length)&&qi(o)&&ba(i,o)&&(Yi(e)||Hi(e))}function va(e){return"function"!=typeof e.constructor||ka(e)?{}:Fr(Ge(e))}function ya(e){return Yi(e)||Hi(e)||!!(Xe&&e&&e[Xe])}function ba(e,t){var r=typeof e;return!!(t=null==t?h:t)&&("number"==r||"symbol"!=r&&we.test(e))&&e>-1&&e%1==0&&e<t}function wa(e,t,r){if(!es(r))return!1;var n=typeof t;return!!("number"==n?Gi(r)&&ba(t,r.length):"string"==n&&t in r)&&Fi(r[t],e)}function xa(e,t){if(Yi(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!ls(e))||(re.test(e)||!te.test(e)||null!=t&&e in Ie(t))}function Sa(e){var t=sa(e),r=Br[t];if("function"!=typeof r||!(t in Hr.prototype))return!1;if(e===r)return!0;var n=ia(r);return!!n&&e===n[0]}(Ar&&ma(new Ar(new ArrayBuffer(1)))!=_||kr&&ma(new kr)!=C||Cr&&ma(Cr.resolve())!=D||Ir&&ma(new Ir)!=O||Er&&ma(new Er)!=j)&&(ma=function(e){var t=Cn(e),r=t==E?e.constructor:o,n=r?Ua(r):"";if(n)switch(n){case Mr:return _;case Pr:return C;case jr:return D;case Rr:return O;case _r:return j}return t});var Aa=je?Ji:gl;function ka(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Pe)}function Ca(e){return e===e&&!es(e)}function Ia(e,t){return function(r){return null!=r&&(r[e]===t&&(t!==o||e in Ie(r)))}}function Ea(e,t,n){return t=Qt(t===o?e.length-1:t,0),function(){for(var o=arguments,a=-1,i=Qt(o.length-t,0),s=r(i);++a<i;)s[a]=o[t+a];a=-1;for(var l=r(t+1);++a<t;)l[a]=o[a];return l[t]=n(s),Et(e,this,l)}}function Da(e,t){return t.length<2?e:An(e,no(t,0,-1))}function Ta(e,t){if(("constructor"!==t||"function"!==typeof e[t])&&"__proto__"!=t)return e[t]}var Oa=Ra(eo),Ma=ut||function(e,t){return mt.setTimeout(e,t)},Pa=Ra(to);function ja(e,t,r){var n=t+"";return Pa(e,function(e,t){var r=t.length;if(!r)return e;var n=r-1;return t[n]=(r>1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(le,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Tt(v,(function(r){var n="_."+r[0];t&r[1]&&!jt(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(ce);return t?t[1].split(ue):[]}(n),r)))}function Ra(e){var t=0,r=0;return function(){var n=br(),a=16-(n-r);if(r=n,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(o,arguments)}}function _a(e,t){var r=-1,n=e.length,a=n-1;for(t=t===o?n:t;++r<t;){var i=Qn(r,a),s=e[i];e[i]=e[r],e[r]=s}return e.length=t,e}var Na=function(e){var t=Ri(e,(function(e){return 500===r.size&&r.clear(),e})),r=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ne,(function(e,r,n,o){t.push(n?o.replace(pe,"$1"):r||e)})),t}));function La(e){if("string"==typeof e||ls(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Ua(e){if(null!=e){try{return Re.call(e)}catch(t){}try{return e+""}catch(t){}}return""}function Ba(e){if(e instanceof Hr)return e.clone();var t=new Wr(e.__wrapped__,e.__chain__);return t.__actions__=Oo(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Fa=Xn((function(e,t){return Zi(e)?dn(e,vn(t,1,Zi,!0)):[]})),za=Xn((function(e,t){var r=Xa(t);return Zi(r)&&(r=o),Zi(e)?dn(e,vn(t,1,Zi,!0),ca(r,2)):[]})),Wa=Xn((function(e,t){var r=Xa(t);return Zi(r)&&(r=o),Zi(e)?dn(e,vn(t,1,Zi,!0),o,r):[]}));function Ha(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=null==r?0:hs(r);return o<0&&(o=Qt(n+o,0)),Wt(e,ca(t,3),o)}function Ya(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var a=n-1;return r!==o&&(a=hs(r),a=r<0?Qt(n+a,0):yr(a,n-1)),Wt(e,ca(t,3),a,!0)}function Va(e){return(null==e?0:e.length)?vn(e,1):[]}function Ga(e){return e&&e.length?e[0]:o}var Za=Xn((function(e){var t=_t(e,yo);return t.length&&t[0]===e[0]?Tn(t):[]})),Qa=Xn((function(e){var t=Xa(e),r=_t(e,yo);return t===Xa(r)?t=o:r.pop(),r.length&&r[0]===e[0]?Tn(r,ca(t,2)):[]})),Ka=Xn((function(e){var t=Xa(e),r=_t(e,yo);return(t="function"==typeof t?t:o)&&r.pop(),r.length&&r[0]===e[0]?Tn(r,o,t):[]}));function Xa(e){var t=null==e?0:e.length;return t?e[t-1]:o}var Ja=Xn($a);function $a(e,t){return e&&e.length&&t&&t.length?Gn(e,t):e}var qa=na((function(e,t){var r=null==e?0:e.length,n=an(e,t);return Zn(e,_t(t,(function(e){return ba(e,r)?+e:e})).sort(Eo)),n}));function ei(e){return null==e?e:Sr.call(e)}var ti=Xn((function(e){return uo(vn(e,1,Zi,!0))})),ri=Xn((function(e){var t=Xa(e);return Zi(t)&&(t=o),uo(vn(e,1,Zi,!0),ca(t,2))})),ni=Xn((function(e){var t=Xa(e);return t="function"==typeof t?t:o,uo(vn(e,1,Zi,!0),o,t)}));function oi(e){if(!e||!e.length)return[];var t=0;return e=Pt(e,(function(e){if(Zi(e))return t=Qt(e.length,t),!0})),Jt(t,(function(t){return _t(e,Zt(t))}))}function ai(e,t){if(!e||!e.length)return[];var r=oi(e);return null==t?r:_t(r,(function(e){return Et(t,o,e)}))}var ii=Xn((function(e,t){return Zi(e)?dn(e,t):[]})),si=Xn((function(e){return go(Pt(e,Zi))})),li=Xn((function(e){var t=Xa(e);return Zi(t)&&(t=o),go(Pt(e,Zi),ca(t,2))})),ci=Xn((function(e){var t=Xa(e);return t="function"==typeof t?t:o,go(Pt(e,Zi),o,t)})),ui=Xn(oi);var di=Xn((function(e){var t=e.length,r=t>1?e[t-1]:o;return r="function"==typeof r?(e.pop(),r):o,ai(e,r)}));function fi(e){var t=Br(e);return t.__chain__=!0,t}function pi(e,t){return t(e)}var hi=na((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,a=function(t){return an(t,e)};return!(t>1||this.__actions__.length)&&n instanceof Hr&&ba(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:pi,args:[a],thisArg:o}),new Wr(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(o),e}))):this.thru(a)}));var mi=Po((function(e,t,r){_e.call(e,r)?++e[r]:on(e,r,1)}));var gi=Bo(Ha),vi=Bo(Ya);function yi(e,t){return(Yi(e)?Tt:fn)(e,ca(t,3))}function bi(e,t){return(Yi(e)?Ot:pn)(e,ca(t,3))}var wi=Po((function(e,t,r){_e.call(e,r)?e[r].push(t):on(e,r,[t])}));var xi=Xn((function(e,t,n){var o=-1,a="function"==typeof t,i=Gi(e)?r(e.length):[];return fn(e,(function(e){i[++o]=a?Et(t,e,n):On(e,t,n)})),i})),Si=Po((function(e,t,r){on(e,r,t)}));function Ai(e,t){return(Yi(e)?_t:Bn)(e,ca(t,3))}var ki=Po((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var Ci=Xn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&wa(e,t[0],t[1])?t=[]:r>2&&wa(t[0],t[1],t[2])&&(t=[t[0]]),Yn(e,vn(t,1),[])})),Ii=ot||function(){return mt.Date.now()};function Ei(e,t,r){return t=r?o:t,t=e&&null==t?e.length:t,$o(e,d,o,o,o,o,t)}function Di(e,t){var r;if("function"!=typeof t)throw new Te(a);return e=hs(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=o),r}}var Ti=Xn((function(e,t,r){var n=1;if(r.length){var o=ur(r,la(Ti));n|=c}return $o(e,n,t,r,o)})),Oi=Xn((function(e,t,r){var n=3;if(r.length){var o=ur(r,la(Oi));n|=c}return $o(t,n,e,r,o)}));function Mi(e,t,r){var n,i,s,l,c,u,d=0,f=!1,p=!1,h=!0;if("function"!=typeof e)throw new Te(a);function m(t){var r=n,a=i;return n=i=o,d=t,l=e.apply(a,r)}function g(e){var r=e-u;return u===o||r>=t||r<0||p&&e-d>=s}function v(){var e=Ii();if(g(e))return y(e);c=Ma(v,function(e){var r=t-(e-u);return p?yr(r,s-(e-d)):r}(e))}function y(e){return c=o,h&&n?m(e):(n=i=o,l)}function b(){var e=Ii(),r=g(e);if(n=arguments,i=this,u=e,r){if(c===o)return function(e){return d=e,c=Ma(v,t),f?m(e):l}(u);if(p)return Ao(c),c=Ma(v,t),m(u)}return c===o&&(c=Ma(v,t)),l}return t=gs(t)||0,es(r)&&(f=!!r.leading,s=(p="maxWait"in r)?Qt(gs(r.maxWait)||0,t):s,h="trailing"in r?!!r.trailing:h),b.cancel=function(){c!==o&&Ao(c),d=0,n=u=i=c=o},b.flush=function(){return c===o?l:y(Ii())},b}var Pi=Xn((function(e,t){return un(e,1,t)})),ji=Xn((function(e,t,r){return un(e,gs(t)||0,r)}));function Ri(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Te(a);var r=function(){var n=arguments,o=t?t.apply(this,n):n[0],a=r.cache;if(a.has(o))return a.get(o);var i=e.apply(this,n);return r.cache=a.set(o,i)||a,i};return r.cache=new(Ri.Cache||Gr),r}function _i(e){if("function"!=typeof e)throw new Te(a);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ri.Cache=Gr;var Ni=xo((function(e,t){var r=(t=1==t.length&&Yi(t[0])?_t(t[0],qt(ca())):_t(vn(t,1),qt(ca()))).length;return Xn((function(n){for(var o=-1,a=yr(n.length,r);++o<a;)n[o]=t[o].call(this,n[o]);return Et(e,this,n)}))})),Li=Xn((function(e,t){var r=ur(t,la(Li));return $o(e,c,o,t,r)})),Ui=Xn((function(e,t){var r=ur(t,la(Ui));return $o(e,u,o,t,r)})),Bi=na((function(e,t){return $o(e,f,o,o,o,t)}));function Fi(e,t){return e===t||e!==e&&t!==t}var zi=Zo(In),Wi=Zo((function(e,t){return e>=t})),Hi=Mn(function(){return arguments}())?Mn:function(e){return ts(e)&&_e.call(e,"callee")&&!Qe.call(e,"callee")},Yi=r.isArray,Vi=xt?qt(xt):function(e){return ts(e)&&Cn(e)==R};function Gi(e){return null!=e&&qi(e.length)&&!Ji(e)}function Zi(e){return ts(e)&&Gi(e)}var Qi=vt||gl,Ki=St?qt(St):function(e){return ts(e)&&Cn(e)==x};function Xi(e){if(!ts(e))return!1;var t=Cn(e);return t==S||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!os(e)}function Ji(e){if(!es(e))return!1;var t=Cn(e);return t==A||t==k||"[object AsyncFunction]"==t||"[object Proxy]"==t}function $i(e){return"number"==typeof e&&e==hs(e)}function qi(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=h}function es(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ts(e){return null!=e&&"object"==typeof e}var rs=At?qt(At):function(e){return ts(e)&&ma(e)==C};function ns(e){return"number"==typeof e||ts(e)&&Cn(e)==I}function os(e){if(!ts(e)||Cn(e)!=E)return!1;var t=Ge(e);if(null===t)return!0;var r=_e.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Re.call(r)==Be}var as=kt?qt(kt):function(e){return ts(e)&&Cn(e)==T};var is=Ct?qt(Ct):function(e){return ts(e)&&ma(e)==O};function ss(e){return"string"==typeof e||!Yi(e)&&ts(e)&&Cn(e)==M}function ls(e){return"symbol"==typeof e||ts(e)&&Cn(e)==P}var cs=It?qt(It):function(e){return ts(e)&&qi(e.length)&&!!lt[Cn(e)]};var us=Zo(Un),ds=Zo((function(e,t){return e<=t}));function fs(e){if(!e)return[];if(Gi(e))return ss(e)?hr(e):Oo(e);if(Je&&e[Je])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Je]());var t=ma(e);return(t==C?lr:t==O?dr:Fs)(e)}function ps(e){return e?(e=gs(e))===p||e===-1/0?17976931348623157e292*(e<0?-1:1):e===e?e:0:0===e?e:0}function hs(e){var t=ps(e),r=t%1;return t===t?r?t-r:t:0}function ms(e){return e?sn(hs(e),0,g):0}function gs(e){if("number"==typeof e)return e;if(ls(e))return m;if(es(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=es(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=$t(e);var r=ve.test(e);return r||be.test(e)?ft(e.slice(2),r?2:8):ge.test(e)?m:+e}function vs(e){return Mo(e,Ps(e))}function ys(e){return null==e?"":co(e)}var bs=jo((function(e,t){if(ka(t)||Gi(t))Mo(t,Ms(t),e);else for(var r in t)_e.call(t,r)&&en(e,r,t[r])})),ws=jo((function(e,t){Mo(t,Ps(t),e)})),xs=jo((function(e,t,r,n){Mo(t,Ps(t),e,n)})),Ss=jo((function(e,t,r,n){Mo(t,Ms(t),e,n)})),As=na(an);var ks=Xn((function(e,t){e=Ie(e);var r=-1,n=t.length,a=n>2?t[2]:o;for(a&&wa(t[0],t[1],a)&&(n=1);++r<n;)for(var i=t[r],s=Ps(i),l=-1,c=s.length;++l<c;){var u=s[l],d=e[u];(d===o||Fi(d,Pe[u])&&!_e.call(e,u))&&(e[u]=i[u])}return e})),Cs=Xn((function(e){return e.push(o,ea),Et(Rs,o,e)}));function Is(e,t,r){var n=null==e?o:An(e,t);return n===o?r:n}function Es(e,t){return null!=e&&ga(e,t,Dn)}var Ds=Wo((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Ue.call(t)),e[t]=r}),el(nl)),Ts=Wo((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Ue.call(t)),_e.call(e,t)?e[t].push(r):e[t]=[r]}),ca),Os=Xn(On);function Ms(e){return Gi(e)?Kr(e):Nn(e)}function Ps(e){return Gi(e)?Kr(e,!0):Ln(e)}var js=jo((function(e,t,r){Wn(e,t,r)})),Rs=jo((function(e,t,r,n){Wn(e,t,r,n)})),_s=na((function(e,t){var r={};if(null==e)return r;var n=!1;t=_t(t,(function(t){return t=wo(t,e),n||(n=t.length>1),t})),Mo(e,aa(e),r),n&&(r=ln(r,7,ta));for(var o=t.length;o--;)fo(r,t[o]);return r}));var Ns=na((function(e,t){return null==e?{}:function(e,t){return Vn(e,t,(function(t,r){return Es(e,r)}))}(e,t)}));function Ls(e,t){if(null==e)return{};var r=_t(aa(e),(function(e){return[e]}));return t=ca(t),Vn(e,r,(function(e,r){return t(e,r[0])}))}var Us=Jo(Ms),Bs=Jo(Ps);function Fs(e){return null==e?[]:er(e,Ms(e))}var zs=Lo((function(e,t,r){return t=t.toLowerCase(),e+(r?Ws(t):t)}));function Ws(e){return Xs(ys(e).toLowerCase())}function Hs(e){return(e=ys(e))&&e.replace(xe,or).replace(tt,"")}var Ys=Lo((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),Vs=Lo((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Gs=No("toLowerCase");var Zs=Lo((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var Qs=Lo((function(e,t,r){return e+(r?" ":"")+Xs(t)}));var Ks=Lo((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Xs=No("toUpperCase");function Js(e,t,r){return e=ys(e),(t=r?o:t)===o?function(e){return at.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(de)||[]}(e):e.match(t)||[]}var $s=Xn((function(e,t){try{return Et(e,o,t)}catch(r){return Xi(r)?r:new se(r)}})),qs=na((function(e,t){return Tt(t,(function(t){t=La(t),on(e,t,Ti(e[t],e))})),e}));function el(e){return function(){return e}}var tl=Fo(),rl=Fo(!0);function nl(e){return e}function ol(e){return _n("function"==typeof e?e:ln(e,1))}var al=Xn((function(e,t){return function(r){return On(r,e,t)}})),il=Xn((function(e,t){return function(r){return On(e,r,t)}}));function sl(e,t,r){var n=Ms(t),o=Sn(t,n);null!=r||es(t)&&(o.length||!n.length)||(r=t,t=e,e=this,o=Sn(t,Ms(t)));var a=!(es(r)&&"chain"in r)||!!r.chain,i=Ji(e);return Tt(o,(function(r){var n=t[r];e[r]=n,i&&(e.prototype[r]=function(){var t=this.__chain__;if(a||t){var r=e(this.__wrapped__);return(r.__actions__=Oo(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Nt([this.value()],arguments))})})),e}function ll(){}var cl=Yo(_t),ul=Yo(Mt),dl=Yo(Bt);function fl(e){return xa(e)?Zt(La(e)):function(e){return function(t){return An(t,e)}}(e)}var pl=Go(),hl=Go(!0);function ml(){return[]}function gl(){return!1}var vl=Ho((function(e,t){return e+t}),0),yl=Ko("ceil"),bl=Ho((function(e,t){return e/t}),1),wl=Ko("floor");var xl=Ho((function(e,t){return e*t}),1),Sl=Ko("round"),Al=Ho((function(e,t){return e-t}),0);return Br.after=function(e,t){if("function"!=typeof t)throw new Te(a);return e=hs(e),function(){if(--e<1)return t.apply(this,arguments)}},Br.ary=Ei,Br.assign=bs,Br.assignIn=ws,Br.assignInWith=xs,Br.assignWith=Ss,Br.at=As,Br.before=Di,Br.bind=Ti,Br.bindAll=qs,Br.bindKey=Oi,Br.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Yi(e)?e:[e]},Br.chain=fi,Br.chunk=function(e,t,n){t=(n?wa(e,t,n):t===o)?1:Qt(hs(t),0);var a=null==e?0:e.length;if(!a||t<1)return[];for(var i=0,s=0,l=r(pt(a/t));i<a;)l[s++]=no(e,i,i+=t);return l},Br.compact=function(e){for(var t=-1,r=null==e?0:e.length,n=0,o=[];++t<r;){var a=e[t];a&&(o[n++]=a)}return o},Br.concat=function(){var e=arguments.length;if(!e)return[];for(var t=r(e-1),n=arguments[0],o=e;o--;)t[o-1]=arguments[o];return Nt(Yi(n)?Oo(n):[n],vn(t,1))},Br.cond=function(e){var t=null==e?0:e.length,r=ca();return e=t?_t(e,(function(e){if("function"!=typeof e[1])throw new Te(a);return[r(e[0]),e[1]]})):[],Xn((function(r){for(var n=-1;++n<t;){var o=e[n];if(Et(o[0],this,r))return Et(o[1],this,r)}}))},Br.conforms=function(e){return function(e){var t=Ms(e);return function(r){return cn(r,e,t)}}(ln(e,1))},Br.constant=el,Br.countBy=mi,Br.create=function(e,t){var r=Fr(e);return null==t?r:nn(r,t)},Br.curry=function e(t,r,n){var a=$o(t,8,o,o,o,o,o,r=n?o:r);return a.placeholder=e.placeholder,a},Br.curryRight=function e(t,r,n){var a=$o(t,l,o,o,o,o,o,r=n?o:r);return a.placeholder=e.placeholder,a},Br.debounce=Mi,Br.defaults=ks,Br.defaultsDeep=Cs,Br.defer=Pi,Br.delay=ji,Br.difference=Fa,Br.differenceBy=za,Br.differenceWith=Wa,Br.drop=function(e,t,r){var n=null==e?0:e.length;return n?no(e,(t=r||t===o?1:hs(t))<0?0:t,n):[]},Br.dropRight=function(e,t,r){var n=null==e?0:e.length;return n?no(e,0,(t=n-(t=r||t===o?1:hs(t)))<0?0:t):[]},Br.dropRightWhile=function(e,t){return e&&e.length?ho(e,ca(t,3),!0,!0):[]},Br.dropWhile=function(e,t){return e&&e.length?ho(e,ca(t,3),!0):[]},Br.fill=function(e,t,r,n){var a=null==e?0:e.length;return a?(r&&"number"!=typeof r&&wa(e,t,r)&&(r=0,n=a),function(e,t,r,n){var a=e.length;for((r=hs(r))<0&&(r=-r>a?0:a+r),(n=n===o||n>a?a:hs(n))<0&&(n+=a),n=r>n?0:ms(n);r<n;)e[r++]=t;return e}(e,t,r,n)):[]},Br.filter=function(e,t){return(Yi(e)?Pt:gn)(e,ca(t,3))},Br.flatMap=function(e,t){return vn(Ai(e,t),1)},Br.flatMapDeep=function(e,t){return vn(Ai(e,t),p)},Br.flatMapDepth=function(e,t,r){return r=r===o?1:hs(r),vn(Ai(e,t),r)},Br.flatten=Va,Br.flattenDeep=function(e){return(null==e?0:e.length)?vn(e,p):[]},Br.flattenDepth=function(e,t){return(null==e?0:e.length)?vn(e,t=t===o?1:hs(t)):[]},Br.flip=function(e){return $o(e,512)},Br.flow=tl,Br.flowRight=rl,Br.fromPairs=function(e){for(var t=-1,r=null==e?0:e.length,n={};++t<r;){var o=e[t];n[o[0]]=o[1]}return n},Br.functions=function(e){return null==e?[]:Sn(e,Ms(e))},Br.functionsIn=function(e){return null==e?[]:Sn(e,Ps(e))},Br.groupBy=wi,Br.initial=function(e){return(null==e?0:e.length)?no(e,0,-1):[]},Br.intersection=Za,Br.intersectionBy=Qa,Br.intersectionWith=Ka,Br.invert=Ds,Br.invertBy=Ts,Br.invokeMap=xi,Br.iteratee=ol,Br.keyBy=Si,Br.keys=Ms,Br.keysIn=Ps,Br.map=Ai,Br.mapKeys=function(e,t){var r={};return t=ca(t,3),wn(e,(function(e,n,o){on(r,t(e,n,o),e)})),r},Br.mapValues=function(e,t){var r={};return t=ca(t,3),wn(e,(function(e,n,o){on(r,n,t(e,n,o))})),r},Br.matches=function(e){return Fn(ln(e,1))},Br.matchesProperty=function(e,t){return zn(e,ln(t,1))},Br.memoize=Ri,Br.merge=js,Br.mergeWith=Rs,Br.method=al,Br.methodOf=il,Br.mixin=sl,Br.negate=_i,Br.nthArg=function(e){return e=hs(e),Xn((function(t){return Hn(t,e)}))},Br.omit=_s,Br.omitBy=function(e,t){return Ls(e,_i(ca(t)))},Br.once=function(e){return Di(2,e)},Br.orderBy=function(e,t,r,n){return null==e?[]:(Yi(t)||(t=null==t?[]:[t]),Yi(r=n?o:r)||(r=null==r?[]:[r]),Yn(e,t,r))},Br.over=cl,Br.overArgs=Ni,Br.overEvery=ul,Br.overSome=dl,Br.partial=Li,Br.partialRight=Ui,Br.partition=ki,Br.pick=Ns,Br.pickBy=Ls,Br.property=fl,Br.propertyOf=function(e){return function(t){return null==e?o:An(e,t)}},Br.pull=Ja,Br.pullAll=$a,Br.pullAllBy=function(e,t,r){return e&&e.length&&t&&t.length?Gn(e,t,ca(r,2)):e},Br.pullAllWith=function(e,t,r){return e&&e.length&&t&&t.length?Gn(e,t,o,r):e},Br.pullAt=qa,Br.range=pl,Br.rangeRight=hl,Br.rearg=Bi,Br.reject=function(e,t){return(Yi(e)?Pt:gn)(e,_i(ca(t,3)))},Br.remove=function(e,t){var r=[];if(!e||!e.length)return r;var n=-1,o=[],a=e.length;for(t=ca(t,3);++n<a;){var i=e[n];t(i,n,e)&&(r.push(i),o.push(n))}return Zn(e,o),r},Br.rest=function(e,t){if("function"!=typeof e)throw new Te(a);return Xn(e,t=t===o?t:hs(t))},Br.reverse=ei,Br.sampleSize=function(e,t,r){return t=(r?wa(e,t,r):t===o)?1:hs(t),(Yi(e)?Jr:$n)(e,t)},Br.set=function(e,t,r){return null==e?e:qn(e,t,r)},Br.setWith=function(e,t,r,n){return n="function"==typeof n?n:o,null==e?e:qn(e,t,r,n)},Br.shuffle=function(e){return(Yi(e)?$r:ro)(e)},Br.slice=function(e,t,r){var n=null==e?0:e.length;return n?(r&&"number"!=typeof r&&wa(e,t,r)?(t=0,r=n):(t=null==t?0:hs(t),r=r===o?n:hs(r)),no(e,t,r)):[]},Br.sortBy=Ci,Br.sortedUniq=function(e){return e&&e.length?so(e):[]},Br.sortedUniqBy=function(e,t){return e&&e.length?so(e,ca(t,2)):[]},Br.split=function(e,t,r){return r&&"number"!=typeof r&&wa(e,t,r)&&(t=r=o),(r=r===o?g:r>>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!as(t))&&!(t=co(t))&&sr(e)?So(hr(e),0,r):e.split(t,r):[]},Br.spread=function(e,t){if("function"!=typeof e)throw new Te(a);return t=null==t?0:Qt(hs(t),0),Xn((function(r){var n=r[t],o=So(r,0,t);return n&&Nt(o,n),Et(e,this,o)}))},Br.tail=function(e){var t=null==e?0:e.length;return t?no(e,1,t):[]},Br.take=function(e,t,r){return e&&e.length?no(e,0,(t=r||t===o?1:hs(t))<0?0:t):[]},Br.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?no(e,(t=n-(t=r||t===o?1:hs(t)))<0?0:t,n):[]},Br.takeRightWhile=function(e,t){return e&&e.length?ho(e,ca(t,3),!1,!0):[]},Br.takeWhile=function(e,t){return e&&e.length?ho(e,ca(t,3)):[]},Br.tap=function(e,t){return t(e),e},Br.throttle=function(e,t,r){var n=!0,o=!0;if("function"!=typeof e)throw new Te(a);return es(r)&&(n="leading"in r?!!r.leading:n,o="trailing"in r?!!r.trailing:o),Mi(e,t,{leading:n,maxWait:t,trailing:o})},Br.thru=pi,Br.toArray=fs,Br.toPairs=Us,Br.toPairsIn=Bs,Br.toPath=function(e){return Yi(e)?_t(e,La):ls(e)?[e]:Oo(Na(ys(e)))},Br.toPlainObject=vs,Br.transform=function(e,t,r){var n=Yi(e),o=n||Qi(e)||cs(e);if(t=ca(t,4),null==r){var a=e&&e.constructor;r=o?n?new a:[]:es(e)&&Ji(a)?Fr(Ge(e)):{}}return(o?Tt:wn)(e,(function(e,n,o){return t(r,e,n,o)})),r},Br.unary=function(e){return Ei(e,1)},Br.union=ti,Br.unionBy=ri,Br.unionWith=ni,Br.uniq=function(e){return e&&e.length?uo(e):[]},Br.uniqBy=function(e,t){return e&&e.length?uo(e,ca(t,2)):[]},Br.uniqWith=function(e,t){return t="function"==typeof t?t:o,e&&e.length?uo(e,o,t):[]},Br.unset=function(e,t){return null==e||fo(e,t)},Br.unzip=oi,Br.unzipWith=ai,Br.update=function(e,t,r){return null==e?e:po(e,t,bo(r))},Br.updateWith=function(e,t,r,n){return n="function"==typeof n?n:o,null==e?e:po(e,t,bo(r),n)},Br.values=Fs,Br.valuesIn=function(e){return null==e?[]:er(e,Ps(e))},Br.without=ii,Br.words=Js,Br.wrap=function(e,t){return Li(bo(t),e)},Br.xor=si,Br.xorBy=li,Br.xorWith=ci,Br.zip=ui,Br.zipObject=function(e,t){return vo(e||[],t||[],en)},Br.zipObjectDeep=function(e,t){return vo(e||[],t||[],qn)},Br.zipWith=di,Br.entries=Us,Br.entriesIn=Bs,Br.extend=ws,Br.extendWith=xs,sl(Br,Br),Br.add=vl,Br.attempt=$s,Br.camelCase=zs,Br.capitalize=Ws,Br.ceil=yl,Br.clamp=function(e,t,r){return r===o&&(r=t,t=o),r!==o&&(r=(r=gs(r))===r?r:0),t!==o&&(t=(t=gs(t))===t?t:0),sn(gs(e),t,r)},Br.clone=function(e){return ln(e,4)},Br.cloneDeep=function(e){return ln(e,5)},Br.cloneDeepWith=function(e,t){return ln(e,5,t="function"==typeof t?t:o)},Br.cloneWith=function(e,t){return ln(e,4,t="function"==typeof t?t:o)},Br.conformsTo=function(e,t){return null==t||cn(e,t,Ms(t))},Br.deburr=Hs,Br.defaultTo=function(e,t){return null==e||e!==e?t:e},Br.divide=bl,Br.endsWith=function(e,t,r){e=ys(e),t=co(t);var n=e.length,a=r=r===o?n:sn(hs(r),0,n);return(r-=t.length)>=0&&e.slice(r,a)==t},Br.eq=Fi,Br.escape=function(e){return(e=ys(e))&&J.test(e)?e.replace(K,ar):e},Br.escapeRegExp=function(e){return(e=ys(e))&&ae.test(e)?e.replace(oe,"\\$&"):e},Br.every=function(e,t,r){var n=Yi(e)?Mt:hn;return r&&wa(e,t,r)&&(t=o),n(e,ca(t,3))},Br.find=gi,Br.findIndex=Ha,Br.findKey=function(e,t){return zt(e,ca(t,3),wn)},Br.findLast=vi,Br.findLastIndex=Ya,Br.findLastKey=function(e,t){return zt(e,ca(t,3),xn)},Br.floor=wl,Br.forEach=yi,Br.forEachRight=bi,Br.forIn=function(e,t){return null==e?e:yn(e,ca(t,3),Ps)},Br.forInRight=function(e,t){return null==e?e:bn(e,ca(t,3),Ps)},Br.forOwn=function(e,t){return e&&wn(e,ca(t,3))},Br.forOwnRight=function(e,t){return e&&xn(e,ca(t,3))},Br.get=Is,Br.gt=zi,Br.gte=Wi,Br.has=function(e,t){return null!=e&&ga(e,t,En)},Br.hasIn=Es,Br.head=Ga,Br.identity=nl,Br.includes=function(e,t,r,n){e=Gi(e)?e:Fs(e),r=r&&!n?hs(r):0;var o=e.length;return r<0&&(r=Qt(o+r,0)),ss(e)?r<=o&&e.indexOf(t,r)>-1:!!o&&Ht(e,t,r)>-1},Br.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=null==r?0:hs(r);return o<0&&(o=Qt(n+o,0)),Ht(e,t,o)},Br.inRange=function(e,t,r){return t=ps(t),r===o?(r=t,t=0):r=ps(r),function(e,t,r){return e>=yr(t,r)&&e<Qt(t,r)}(e=gs(e),t,r)},Br.invoke=Os,Br.isArguments=Hi,Br.isArray=Yi,Br.isArrayBuffer=Vi,Br.isArrayLike=Gi,Br.isArrayLikeObject=Zi,Br.isBoolean=function(e){return!0===e||!1===e||ts(e)&&Cn(e)==w},Br.isBuffer=Qi,Br.isDate=Ki,Br.isElement=function(e){return ts(e)&&1===e.nodeType&&!os(e)},Br.isEmpty=function(e){if(null==e)return!0;if(Gi(e)&&(Yi(e)||"string"==typeof e||"function"==typeof e.splice||Qi(e)||cs(e)||Hi(e)))return!e.length;var t=ma(e);if(t==C||t==O)return!e.size;if(ka(e))return!Nn(e).length;for(var r in e)if(_e.call(e,r))return!1;return!0},Br.isEqual=function(e,t){return Pn(e,t)},Br.isEqualWith=function(e,t,r){var n=(r="function"==typeof r?r:o)?r(e,t):o;return n===o?Pn(e,t,o,r):!!n},Br.isError=Xi,Br.isFinite=function(e){return"number"==typeof e&&bt(e)},Br.isFunction=Ji,Br.isInteger=$i,Br.isLength=qi,Br.isMap=rs,Br.isMatch=function(e,t){return e===t||jn(e,t,da(t))},Br.isMatchWith=function(e,t,r){return r="function"==typeof r?r:o,jn(e,t,da(t),r)},Br.isNaN=function(e){return ns(e)&&e!=+e},Br.isNative=function(e){if(Aa(e))throw new se("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Rn(e)},Br.isNil=function(e){return null==e},Br.isNull=function(e){return null===e},Br.isNumber=ns,Br.isObject=es,Br.isObjectLike=ts,Br.isPlainObject=os,Br.isRegExp=as,Br.isSafeInteger=function(e){return $i(e)&&e>=-9007199254740991&&e<=h},Br.isSet=is,Br.isString=ss,Br.isSymbol=ls,Br.isTypedArray=cs,Br.isUndefined=function(e){return e===o},Br.isWeakMap=function(e){return ts(e)&&ma(e)==j},Br.isWeakSet=function(e){return ts(e)&&"[object WeakSet]"==Cn(e)},Br.join=function(e,t){return null==e?"":wt.call(e,t)},Br.kebabCase=Ys,Br.last=Xa,Br.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var a=n;return r!==o&&(a=(a=hs(r))<0?Qt(n+a,0):yr(a,n-1)),t===t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,a):Wt(e,Vt,a,!0)},Br.lowerCase=Vs,Br.lowerFirst=Gs,Br.lt=us,Br.lte=ds,Br.max=function(e){return e&&e.length?mn(e,nl,In):o},Br.maxBy=function(e,t){return e&&e.length?mn(e,ca(t,2),In):o},Br.mean=function(e){return Gt(e,nl)},Br.meanBy=function(e,t){return Gt(e,ca(t,2))},Br.min=function(e){return e&&e.length?mn(e,nl,Un):o},Br.minBy=function(e,t){return e&&e.length?mn(e,ca(t,2),Un):o},Br.stubArray=ml,Br.stubFalse=gl,Br.stubObject=function(){return{}},Br.stubString=function(){return""},Br.stubTrue=function(){return!0},Br.multiply=xl,Br.nth=function(e,t){return e&&e.length?Hn(e,hs(t)):o},Br.noConflict=function(){return mt._===this&&(mt._=Fe),this},Br.noop=ll,Br.now=Ii,Br.pad=function(e,t,r){e=ys(e);var n=(t=hs(t))?pr(e):0;if(!t||n>=t)return e;var o=(t-n)/2;return Vo(ht(o),r)+e+Vo(pt(o),r)},Br.padEnd=function(e,t,r){e=ys(e);var n=(t=hs(t))?pr(e):0;return t&&n<t?e+Vo(t-n,r):e},Br.padStart=function(e,t,r){e=ys(e);var n=(t=hs(t))?pr(e):0;return t&&n<t?Vo(t-n,r)+e:e},Br.parseInt=function(e,t,r){return r||null==t?t=0:t&&(t=+t),wr(ys(e).replace(ie,""),t||0)},Br.random=function(e,t,r){if(r&&"boolean"!=typeof r&&wa(e,t,r)&&(t=r=o),r===o&&("boolean"==typeof t?(r=t,t=o):"boolean"==typeof e&&(r=e,e=o)),e===o&&t===o?(e=0,t=1):(e=ps(e),t===o?(t=e,e=0):t=ps(t)),e>t){var n=e;e=t,t=n}if(r||e%1||t%1){var a=xr();return yr(e+a*(t-e+dt("1e-"+((a+"").length-1))),t)}return Qn(e,t)},Br.reduce=function(e,t,r){var n=Yi(e)?Lt:Kt,o=arguments.length<3;return n(e,ca(t,4),r,o,fn)},Br.reduceRight=function(e,t,r){var n=Yi(e)?Ut:Kt,o=arguments.length<3;return n(e,ca(t,4),r,o,pn)},Br.repeat=function(e,t,r){return t=(r?wa(e,t,r):t===o)?1:hs(t),Kn(ys(e),t)},Br.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Br.result=function(e,t,r){var n=-1,a=(t=wo(t,e)).length;for(a||(a=1,e=o);++n<a;){var i=null==e?o:e[La(t[n])];i===o&&(n=a,i=r),e=Ji(i)?i.call(e):i}return e},Br.round=Sl,Br.runInContext=e,Br.sample=function(e){return(Yi(e)?Xr:Jn)(e)},Br.size=function(e){if(null==e)return 0;if(Gi(e))return ss(e)?pr(e):e.length;var t=ma(e);return t==C||t==O?e.size:Nn(e).length},Br.snakeCase=Zs,Br.some=function(e,t,r){var n=Yi(e)?Bt:oo;return r&&wa(e,t,r)&&(t=o),n(e,ca(t,3))},Br.sortedIndex=function(e,t){return ao(e,t)},Br.sortedIndexBy=function(e,t,r){return io(e,t,ca(r,2))},Br.sortedIndexOf=function(e,t){var r=null==e?0:e.length;if(r){var n=ao(e,t);if(n<r&&Fi(e[n],t))return n}return-1},Br.sortedLastIndex=function(e,t){return ao(e,t,!0)},Br.sortedLastIndexBy=function(e,t,r){return io(e,t,ca(r,2),!0)},Br.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var r=ao(e,t,!0)-1;if(Fi(e[r],t))return r}return-1},Br.startCase=Qs,Br.startsWith=function(e,t,r){return e=ys(e),r=null==r?0:sn(hs(r),0,e.length),t=co(t),e.slice(r,r+t.length)==t},Br.subtract=Al,Br.sum=function(e){return e&&e.length?Xt(e,nl):0},Br.sumBy=function(e,t){return e&&e.length?Xt(e,ca(t,2)):0},Br.template=function(e,t,r){var n=Br.templateSettings;r&&wa(e,t,r)&&(t=o),e=ys(e),t=xs({},t,n,qo);var a,i,s=xs({},t.imports,n.imports,qo),l=Ms(s),c=er(s,l),u=0,d=t.interpolate||Se,f="__p += '",p=Ee((t.escape||Se).source+"|"+d.source+"|"+(d===ee?he:Se).source+"|"+(t.evaluate||Se).source+"|$","g"),h="//# sourceURL="+(_e.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++st+"]")+"\n";e.replace(p,(function(t,r,n,o,s,l){return n||(n=o),f+=e.slice(u,l).replace(Ae,ir),r&&(a=!0,f+="' +\n__e("+r+") +\n'"),s&&(i=!0,f+="';\n"+s+";\n__p += '"),n&&(f+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),u=l+t.length,t})),f+="';\n";var m=_e.call(t,"variable")&&t.variable;if(m){if(fe.test(m))throw new se("Invalid `variable` option passed into `_.template`")}else f="with (obj) {\n"+f+"\n}\n";f=(i?f.replace(V,""):f).replace(G,"$1").replace(Z,"$1;"),f="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(i?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var g=$s((function(){return ke(l,h+"return "+f).apply(o,c)}));if(g.source=f,Xi(g))throw g;return g},Br.times=function(e,t){if((e=hs(e))<1||e>h)return[];var r=g,n=yr(e,g);t=ca(t),e-=g;for(var o=Jt(n,t);++r<e;)t(r);return o},Br.toFinite=ps,Br.toInteger=hs,Br.toLength=ms,Br.toLower=function(e){return ys(e).toLowerCase()},Br.toNumber=gs,Br.toSafeInteger=function(e){return e?sn(hs(e),-9007199254740991,h):0===e?e:0},Br.toString=ys,Br.toUpper=function(e){return ys(e).toUpperCase()},Br.trim=function(e,t,r){if((e=ys(e))&&(r||t===o))return $t(e);if(!e||!(t=co(t)))return e;var n=hr(e),a=hr(t);return So(n,rr(n,a),nr(n,a)+1).join("")},Br.trimEnd=function(e,t,r){if((e=ys(e))&&(r||t===o))return e.slice(0,mr(e)+1);if(!e||!(t=co(t)))return e;var n=hr(e);return So(n,0,nr(n,hr(t))+1).join("")},Br.trimStart=function(e,t,r){if((e=ys(e))&&(r||t===o))return e.replace(ie,"");if(!e||!(t=co(t)))return e;var n=hr(e);return So(n,rr(n,hr(t))).join("")},Br.truncate=function(e,t){var r=30,n="...";if(es(t)){var a="separator"in t?t.separator:a;r="length"in t?hs(t.length):r,n="omission"in t?co(t.omission):n}var i=(e=ys(e)).length;if(sr(e)){var s=hr(e);i=s.length}if(r>=i)return e;var l=r-pr(n);if(l<1)return n;var c=s?So(s,0,l).join(""):e.slice(0,l);if(a===o)return c+n;if(s&&(l+=c.length-l),as(a)){if(e.slice(l).search(a)){var u,d=c;for(a.global||(a=Ee(a.source,ys(me.exec(a))+"g")),a.lastIndex=0;u=a.exec(d);)var f=u.index;c=c.slice(0,f===o?l:f)}}else if(e.indexOf(co(a),l)!=l){var p=c.lastIndexOf(a);p>-1&&(c=c.slice(0,p))}return c+n},Br.unescape=function(e){return(e=ys(e))&&X.test(e)?e.replace(Q,gr):e},Br.uniqueId=function(e){var t=++Ne;return ys(e)+t},Br.upperCase=Ks,Br.upperFirst=Xs,Br.each=yi,Br.eachRight=bi,Br.first=Ga,sl(Br,function(){var e={};return wn(Br,(function(t,r){_e.call(Br.prototype,r)||(e[r]=t)})),e}(),{chain:!1}),Br.VERSION="4.17.21",Tt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Br[e].placeholder=Br})),Tt(["drop","take"],(function(e,t){Hr.prototype[e]=function(r){r=r===o?1:Qt(hs(r),0);var n=this.__filtered__&&!t?new Hr(this):this.clone();return n.__filtered__?n.__takeCount__=yr(r,n.__takeCount__):n.__views__.push({size:yr(r,g),type:e+(n.__dir__<0?"Right":"")}),n},Hr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Tt(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Hr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:ca(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),Tt(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Hr.prototype[e]=function(){return this[r](1).value()[0]}})),Tt(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Hr.prototype[e]=function(){return this.__filtered__?new Hr(this):this[r](1)}})),Hr.prototype.compact=function(){return this.filter(nl)},Hr.prototype.find=function(e){return this.filter(e).head()},Hr.prototype.findLast=function(e){return this.reverse().find(e)},Hr.prototype.invokeMap=Xn((function(e,t){return"function"==typeof e?new Hr(this):this.map((function(r){return On(r,e,t)}))})),Hr.prototype.reject=function(e){return this.filter(_i(ca(e)))},Hr.prototype.slice=function(e,t){e=hs(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Hr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==o&&(r=(t=hs(t))<0?r.dropRight(-t):r.take(t-e)),r)},Hr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Hr.prototype.toArray=function(){return this.take(g)},wn(Hr.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),a=Br[n?"take"+("last"==t?"Right":""):t],i=n||/^find/.test(t);a&&(Br.prototype[t]=function(){var t=this.__wrapped__,s=n?[1]:arguments,l=t instanceof Hr,c=s[0],u=l||Yi(t),d=function(e){var t=a.apply(Br,Nt([e],s));return n&&f?t[0]:t};u&&r&&"function"==typeof c&&1!=c.length&&(l=u=!1);var f=this.__chain__,p=!!this.__actions__.length,h=i&&!f,m=l&&!p;if(!i&&u){t=m?t:new Hr(this);var g=e.apply(t,s);return g.__actions__.push({func:pi,args:[d],thisArg:o}),new Wr(g,f)}return h&&m?e.apply(this,s):(g=this.thru(d),h?n?g.value()[0]:g.value():g)})})),Tt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Oe[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);Br.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var o=this.value();return t.apply(Yi(o)?o:[],e)}return this[r]((function(r){return t.apply(Yi(r)?r:[],e)}))}})),wn(Hr.prototype,(function(e,t){var r=Br[t];if(r){var n=r.name+"";_e.call(Or,n)||(Or[n]=[]),Or[n].push({name:t,func:r})}})),Or[zo(o,2).name]=[{name:"wrapper",func:o}],Hr.prototype.clone=function(){var e=new Hr(this.__wrapped__);return e.__actions__=Oo(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Oo(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Oo(this.__views__),e},Hr.prototype.reverse=function(){if(this.__filtered__){var e=new Hr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Hr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Yi(e),n=t<0,o=r?e.length:0,a=function(e,t,r){var n=-1,o=r.length;for(;++n<o;){var a=r[n],i=a.size;switch(a.type){case"drop":e+=i;break;case"dropRight":t-=i;break;case"take":t=yr(t,e+i);break;case"takeRight":e=Qt(e,t-i)}}return{start:e,end:t}}(0,o,this.__views__),i=a.start,s=a.end,l=s-i,c=n?s:i-1,u=this.__iteratees__,d=u.length,f=0,p=yr(l,this.__takeCount__);if(!r||!n&&o==l&&p==l)return mo(e,this.__actions__);var h=[];e:for(;l--&&f<p;){for(var m=-1,g=e[c+=t];++m<d;){var v=u[m],y=v.iteratee,b=v.type,w=y(g);if(2==b)g=w;else if(!w){if(1==b)continue e;break e}}h[f++]=g}return h},Br.prototype.at=hi,Br.prototype.chain=function(){return fi(this)},Br.prototype.commit=function(){return new Wr(this.value(),this.__chain__)},Br.prototype.next=function(){this.__values__===o&&(this.__values__=fs(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?o:this.__values__[this.__index__++]}},Br.prototype.plant=function(e){for(var t,r=this;r instanceof zr;){var n=Ba(r);n.__index__=0,n.__values__=o,t?a.__wrapped__=n:t=n;var a=n;r=r.__wrapped__}return a.__wrapped__=e,t},Br.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Hr){var t=e;return this.__actions__.length&&(t=new Hr(this)),(t=t.reverse()).__actions__.push({func:pi,args:[ei],thisArg:o}),new Wr(t,this.__chain__)}return this.thru(ei)},Br.prototype.toJSON=Br.prototype.valueOf=Br.prototype.value=function(){return mo(this.__wrapped__,this.__actions__)},Br.prototype.first=Br.prototype.head,Je&&(Br.prototype[Je]=function(){return this}),Br}();mt._=vr,(n=function(){return vr}.call(t,r,t,e))===o||(e.exports=n)}.call(this)},70367:(e,t,r)=>{"use strict";var n=r(92574),o=r(50697),a=r(26100),i=r(78928),s=r(36751),l=r(25110),c=r(53930),u=r(7666),d=r(47284),f=r(48447),p=r(91234),h=r(20271),m=r(43563),g=r(6803),v=r(60319),y=r(45180),b=r(11832),w=r(70533),x=r(64007),S=r(48079),A=r(57119),k=r(86226),C=r(66615),I=r(73363),E=r(385),D=r(129),T=r(11393),O=r(26327),M=r(96319),P=r(29544),j=r(94870),R=r(31721),_=r(14166),N=r(61227),L=r(39245),U=r(19126),B=r(48576),F=r(28130),z=r(78353),W=r(73223),H=r(19411),Y=r(51812),V=r(82280),G=r(5544),Z=r(11942),Q=r(9950),K=r(165),X=r(36410),J=r(83325),$=r(18979),q=r(92101),ee=r(93591),te=r(92678),re=r(74438),ne=r(3199),oe=r(98523),ae=r(11265),ie=r(96984),se=r(82807),le=r(6998),ce=r(65544),ue=r(44320),de=r(20643),fe=r(34289),pe=r(51081),he=r(74287),me=r(50663),ge=r(63303),ve=r(21560),ye=r(10793),be=r(10937),we=r(77761),xe=r(36586),Se=r(58332),Ae=r(47710),ke=r(34875),Ce=r(53687),Ie=r(56255),Ee=r(13260),De=r(55369),Te=r(38573),Oe=r(89326),Me=r(41820),Pe=r(18700),je=r(58864),Re=r(19223),_e=r(7762),Ne=r(95122),Le=r(16632),Ue=r(18116),Be=r(51069),Fe=r(45418),ze=r(57988),We=r(66325),He=r(85569);function Ye(e){return e&&"object"===typeof e&&"default"in e?e:{default:e}}var Ve=Ye(n),Ge=Ye(o),Ze=Ye(a),Qe=Ye(i),Ke=Ye(s),Xe=Ye(l),Je=Ye(c),$e=Ye(u),qe=Ye(d),et=Ye(f),tt=Ye(p),rt=Ye(h),nt=Ye(m),ot=Ye(g),at=Ye(v),it=Ye(y),st=Ye(b),lt=Ye(w),ct=Ye(x),ut=Ye(S),dt=Ye(A),ft=Ye(k),pt=Ye(C),ht=Ye(I),mt=Ye(E),gt=Ye(D),vt=Ye(T),yt=Ye(O),bt=Ye(M),wt=Ye(P),xt=Ye(j),St=Ye(R),At=Ye(_),kt=Ye(N),Ct=Ye(L),It=Ye(U),Et=Ye(F),Dt=Ye(z),Tt=Ye(W),Ot=Ye(H),Mt=Ye(Y),Pt=Ye(V),jt=Ye(G),Rt=Ye(Z),_t=Ye(Q),Nt=Ye(K),Lt=Ye(X),Ut=Ye(J),Bt=Ye($),Ft=Ye(q),zt=Ye(ee),Wt=Ye(te),Ht=Ye(re),Yt=Ye(ne),Vt=Ye(oe),Gt=Ye(ae),Zt=Ye(ie),Qt=Ye(se),Kt=Ye(le),Xt=Ye(ce),Jt=Ye(ue),$t=Ye(de),qt=Ye(fe),er=Ye(pe),tr=Ye(he),rr=Ye(me),nr=Ye(ge),or=Ye(ve),ar=Ye(ye),ir=Ye(be),sr=Ye(we),lr=Ye(xe),cr=Ye(Se),ur=Ye(Ae),dr=Ye(ke),fr=Ye(Ce),pr=Ye(Ie),hr=Ye(Ee),mr=Ye(De),gr=Ye(Te),vr=Ye(Me),yr=Ye(Pe),br=Ye(je),wr=Ye(Re),xr=Ye(_e),Sr=Ye(Ne),Ar=Ye(Le),kr=Ye(Ue),Cr=Ye(Be),Ir=Ye(Fe),Er=Ye(ze),Dr=Ye(He),Tr=["children","colIndex","columnHeader","options","dataIndex","rowIndex","className","print","tableId"],Or=B.makeStyles({name:"MUIDataTableBodyCell"})((function(e){return{root:{},cellHide:{display:"none"},simpleHeader:lt.default({},e.breakpoints.down("sm"),{display:"inline-block",fontWeight:"bold",width:"100%",boxSizing:"border-box"}),simpleCell:lt.default({},e.breakpoints.down("sm"),{display:"inline-block",width:"100%",boxSizing:"border-box"}),stackedHeader:{verticalAlign:"top"},stackedCommon:lt.default({},e.breakpoints.down("md"),{display:"inline-block",fontSize:"16px",height:"auto",width:"calc(50%)",boxSizing:"border-box","&:last-child":{borderBottom:"none"},"&:nth-last-of-type(2)":{borderBottom:"none"}}),stackedCommonAlways:{display:"inline-block",fontSize:"16px",height:"auto",width:"calc(50%)",boxSizing:"border-box","&:last-child":{borderBottom:"none"},"&:nth-last-of-type(2)":{borderBottom:"none"}},stackedParent:lt.default({},e.breakpoints.down("md"),{display:"inline-block",fontSize:"16px",height:"auto",width:"calc(100%)",boxSizing:"border-box"}),stackedParentAlways:{display:"inline-block",fontSize:"16px",height:"auto",width:"calc(100%)",boxSizing:"border-box"},cellStackedSmall:lt.default({},e.breakpoints.down("md"),{width:"50%",boxSizing:"border-box"}),responsiveStackedSmall:lt.default({},e.breakpoints.down("md"),{width:"50%",boxSizing:"border-box"}),responsiveStackedSmallParent:lt.default({},e.breakpoints.down("md"),{width:"100%",boxSizing:"border-box"})}}));function Mr(e){var t,r,n,o,a=Or().classes,i=e.children,s=e.colIndex,l=e.columnHeader,c=e.options,u=e.dataIndex,d=e.rowIndex,f=e.className,p=e.print,h=e.tableId,m=et.default(e,Tr),g=c.onCellClick,v=Q.useCallback((function(e){g(i,{colIndex:s,rowIndex:d,dataIndex:u,event:e})}),[g,i,s,d,u]),y={};g&&(y.onClick=v);var b,w=[_t.default.createElement("div",{key:1,className:Et.default((t={lastColumn:2===s},lt.default(t,a.root,!0),lt.default(t,a.cellHide,!0),lt.default(t,a.stackedHeader,!0),lt.default(t,a.stackedCommon,"vertical"===c.responsive||"stacked"===c.responsive||"stackedFullWidth"===c.responsive),lt.default(t,a.stackedCommonAlways,"verticalAlways"===c.responsive),lt.default(t,a.cellStackedSmall,"stacked"===c.responsive||"stackedFullWidth"===c.responsive&&("none"===c.setTableProps().padding||"small"===c.setTableProps().size)),lt.default(t,a.simpleHeader,"simple"===c.responsive),lt.default(t,"datatables-noprint",!p),t),f)},l),_t.default.createElement("div",{key:2,className:Et.default((r={},lt.default(r,a.root,!0),lt.default(r,a.stackedCommon,"vertical"===c.responsive||"stacked"===c.responsive||"stackedFullWidth"===c.responsive),lt.default(r,a.stackedCommonAlways,"verticalAlways"===c.responsive),lt.default(r,a.responsiveStackedSmall,"stacked"===c.responsive||"stackedFullWidth"===c.responsive&&("none"===c.setTableProps().padding||"small"===c.setTableProps().size)),lt.default(r,a.simpleCell,"simple"===c.responsive),lt.default(r,"datatables-noprint",!p),r),f)},"function"==typeof i?i(u,d):i)];return b=-1!==ct.default(n=["standard","scrollMaxHeight","scrollFullHeight","scrollFullHeightFullWidth"]).call(n,c.responsive)?Bt.default(w).call(w,1,2):w,_t.default.createElement(Ft.default,$e.default({},y,{"data-colindex":s,"data-tableid":h,className:Et.default((o={},lt.default(o,a.root,!0),lt.default(o,a.stackedParent,"vertical"===c.responsive||"stacked"===c.responsive||"stackedFullWidth"===c.responsive),lt.default(o,a.stackedParentAlways,"verticalAlways"===c.responsive),lt.default(o,a.responsiveStackedSmallParent,"vertical"===c.responsive||"stacked"===c.responsive||"stackedFullWidth"===c.responsive&&("none"===c.setTableProps().padding||"small"===c.setTableProps().size)),lt.default(o,a.simpleCell,"simple"===c.responsive),lt.default(o,"datatables-noprint",!p),o),f)},m),b)}var Pr=["classes","options","rowSelected","onClick","className","isRowSelectable"];function jr(e){var t=function(){if("undefined"==typeof Reflect||!Ve.default)return!1;if(Ve.default.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Ve.default(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=st.default(e);if(t){var o=st.default(this).constructor;r=Ve.default(n,arguments,o)}else r=n.apply(this,arguments);return it.default(this,r)}}var Rr=function(e){at.default(r,e);var t=jr(r);function r(){return rt.default(this,r),t.apply(this,arguments)}return nt.default(r,[{key:"render",value:function(){var e,t=this.props,r=t.classes,n=t.options,o=t.rowSelected,a=t.onClick,i=t.className,s=t.isRowSelectable,l=et.default(t,Pr),c={};return a&&(c.onClick=a),_t.default.createElement(zt.default,$e.default({hover:!!n.rowHover},c,{className:Et.default((e={},lt.default(e,r.root,!0),lt.default(e,r.hover,n.rowHover),lt.default(e,r.hoverCursor,n.selectableRowsOnClick&&s||n.expandableRowsOnClick),lt.default(e,r.responsiveSimple,"simple"===n.responsive),lt.default(e,r.responsiveStacked,"vertical"===n.responsive||"stacked"===n.responsive||"stackedFullWidth"===n.responsive),lt.default(e,"mui-row-selected",o),e),i),selected:o},l),this.props.children)}}]),r}(_t.default.Component);lt.default(Rr,"propTypes",{options:Rt.default.object.isRequired,onClick:Rt.default.func,rowSelected:Rt.default.bool,classes:Rt.default.object});var _r=B.withStyles(Rr,(function(e){return{root:{"&.Mui-selected":{backgroundColor:e.palette.action.selected},"&.mui-row-selected":{backgroundColor:e.palette.action.selected}},hoverCursor:{cursor:"pointer"},responsiveStacked:lt.default({},e.breakpoints.down("md"),{borderTop:"solid 2px rgba(0, 0, 0, 0.15)",borderBottom:"solid 2px rgba(0, 0, 0, 0.15)",padding:0,margin:0}),responsiveSimple:lt.default({},e.breakpoints.down("sm"),{borderTop:"solid 2px rgba(0, 0, 0, 0.15)",borderBottom:"solid 2px rgba(0, 0, 0, 0.15)",padding:0,margin:0})}}),{name:"MUIDataTableBodyRow"}),Nr=function(e){var t=e.areAllRowsExpanded,r=e.buttonClass,n=e.expandableRowsHeader,o=e.expandedRows,a=e.iconClass,i=e.iconIndeterminateClass,s=e.isHeaderCell,l=e.onExpand;return _t.default.createElement(_t.default.Fragment,null,s&&!t()&&t&&o.data.length>0?_t.default.createElement(Ht.default,{onClick:l,style:{padding:0},disabled:!1===n,className:r},_t.default.createElement(Vt.default,{id:"expandable-button",className:i})):_t.default.createElement(Ht.default,{onClick:l,style:{padding:0},disabled:!1===n,className:r},_t.default.createElement(Yt.default,{id:"expandable-button",className:a})))},Lr=["fixedHeader","fixedSelectColumn","isHeaderCell","expandableOn","selectableOn","isRowExpanded","onExpand","isRowSelectable","selectableRowsHeader","hideExpandButton","expandableRowsHeader","expandedRows","areAllRowsExpanded","selectableRowsHideCheckboxes","setHeadCellRef","dataIndex","components"],Ur=B.makeStyles({name:"MUIDataTableSelectCell"})((function(e){return{root:{"@media print":{display:"none"}},fixedHeader:{position:"sticky",top:"0px",zIndex:100},fixedLeft:{position:"sticky",left:"0px",zIndex:100},icon:{cursor:"pointer",transition:"transform 0.25s"},expanded:{transform:"rotate(90deg)"},hide:{visibility:"hidden"},headerCell:{zIndex:110,backgroundColor:e.palette.background.paper},expandDisabled:{},checkboxRoot:{},checked:{},disabled:{}}})),Br=function(e){var t,r,n,o=e.fixedHeader,a=e.fixedSelectColumn,i=e.isHeaderCell,s=void 0!==i&&i,l=e.expandableOn,c=void 0!==l&&l,u=e.selectableOn,d=void 0===u?"none":u,f=e.isRowExpanded,p=void 0!==f&&f,h=e.onExpand,m=e.isRowSelectable,g=e.selectableRowsHeader,v=e.hideExpandButton,y=e.expandableRowsHeader,b=e.expandedRows,w=e.areAllRowsExpanded,x=void 0===w?function(){return!1}:w,S=e.selectableRowsHideCheckboxes,A=e.setHeadCellRef,k=e.dataIndex,C=e.components,I=void 0===C?{}:C,E=et.default(e,Lr),D=Ur().classes,T=I.Checkbox||Wt.default,O=I.ExpandButton||Nr;if(!1===c&&("none"===d||!0===S))return null;var M=Et.default((lt.default(t={},D.root,!0),lt.default(t,D.fixedHeader,o&&s),lt.default(t,D.fixedLeft,a),lt.default(t,D.headerCell,s),t)),P=Et.default(lt.default({},D.expandDisabled,v)),j=Et.default((lt.default(r={},D.icon,!0),lt.default(r,D.hide,s&&!y),lt.default(r,D.expanded,p||s&&x()),r)),R=Et.default((lt.default(n={},D.icon,!0),lt.default(n,D.hide,s&&!y),n)),_={};return A&&(_.ref=function(e){A(0,0,e)}),_t.default.createElement(Ft.default,$e.default({className:M,padding:"checkbox"},_),_t.default.createElement("div",{style:{display:"flex",alignItems:"center"}},c&&_t.default.createElement(O,{isHeaderCell:s,areAllRowsExpanded:x,expandedRows:b,onExpand:h,expandableRowsHeader:y,buttonClass:P,iconIndeterminateClass:R,iconClass:j,dataIndex:k}),"none"!==d&&!0!==S&&(!s||"multiple"===d&&!1!==g?_t.default.createElement(T,$e.default({classes:{root:D.checkboxRoot,checked:D.checked,disabled:D.disabled},"data-description":s?"row-select-header":"row-select","data-index":k||null,color:"primary",disabled:!m},E)):null)))};function Fr(e){return ht.default(e).call(e,(function(e,t){return e[t.dataIndex]=!0,e}),{})}function zr(e){return"string"==typeof e?e.replace(/^\+|^\-|^\=|^\@/g,"'$&"):e}function Wr(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r="function"==typeof t?t:console.warn;t&&r("".concat(e))}function Hr(e,t,r){var n=e<=t?1:Math.ceil(e/t);return r>=n?n-1:r}function Yr(){return Intl?new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}).compare:function(e,t){return e.localeCompare(t)}}function Vr(e){return function(t,r){var n=null===t.data||void 0===t.data?"":t.data,o=null===r.data||void 0===r.data?"":r.data;return("function"==typeof n.localeCompare?n.localeCompare(o):n-o)*("asc"===e?1:-1)}}function Gr(e,t){var r=new Blob([e],{type:"text/csv"});if(navigator&&navigator.msSaveOrOpenBlob)navigator.msSaveOrOpenBlob(r,t);else{var n="data:text/csv;charset=utf-8,".concat(e),o=Zt.default||window.webkitURL,a=void 0===o.createObjectURL?n:o.createObjectURL(r),i=document.createElement("a");i.setAttribute("href",a),i.setAttribute("download",t),document.body.appendChild(i),i.click(),document.body.removeChild(i)}}function Zr(e,t,r,n){var o=function(e,t,r){var n,o,a=function(e){return"string"==typeof e?e.replace(/\"/g,'""'):e},i=function(e){var t;return Bt.default(t=ht.default(e).call(e,(function(e,t){return t.download?e+'"'+zr(a(t.label||t.name))+'"'+r.downloadOptions.separator:e}),"")).call(t,0,-1)+"\r\n"},s=i(e),l=function(t){var n;return t.length?Gt.default(n=ht.default(t).call(t,(function(t,n){var o,i;return t+'"'+ut.default(o=bt.default(i=n.data).call(i,(function(t,r){return e[r].download}))).call(o,(function(e){return zr(a(e))})).join('"'+r.downloadOptions.separator+'"')+'"\r\n'}),"")).call(n):""},c=l(t);return r.onDownload?r.onDownload(i,l,e,t):Gt.default(n=vt.default(o="".concat(s)).call(o,c)).call(n)}(e,t,r);r.onDownload&&!1===o||n(o,r.downloadOptions.filename)}function Qr(e){var t=function(){if("undefined"==typeof Reflect||!Ve.default)return!1;if(Ve.default.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Ve.default(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=st.default(e);if(t){var o=st.default(this).constructor;r=Ve.default(n,arguments,o)}else r=n.apply(this,arguments);return it.default(this,r)}}Br.propTypes={checked:Rt.default.bool.isRequired,fixedHeader:Rt.default.bool,onChange:Rt.default.func,classes:Rt.default.object,expandableOn:Rt.default.bool,hideExpandButton:Rt.default.bool,selectableOn:Rt.default.string,isRowSelectable:Rt.default.bool};var Kr=function(e){at.default(r,e);var t=Qr(r);function r(){var e,n;rt.default(this,r);for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=t.call.apply(t,vt.default(e=[this]).call(e,a)),lt.default(ot.default(n),"handleRowSelect",(function(e,t){var r=!(!t||!t.nativeEvent)&&t.nativeEvent.shiftKey,o=[],a=n.props.previousSelectedRow;if(r&&a&&a.index<n.props.data.length){var i,s=a.index,l=Tt.default(n.props.selectedRows),c=n.props.data[e.index].dataIndex;0===bt.default(i=l.data).call(i,(function(e){return e.dataIndex===c})).length&&(l.data.push({index:e.index,dataIndex:c}),l.lookup[c]=!0);for(var u=function(){var t=n.props.data[s].dataIndex;if(n.isRowSelectable(t,l)){var r,a={index:s,dataIndex:t};0===bt.default(r=l.data).call(r,(function(e){return e.dataIndex===t})).length&&(l.data.push(a),l.lookup[t]=!0),o.push(a)}s=e.index>s?s+1:s-1};s!==e.index;)u()}n.props.selectRowUpdate("cell",e,o)})),lt.default(ot.default(n),"handleRowClick",(function(e,t,r){var o;if(!("expandable-button"===r.target.id||"path"===r.target.nodeName&&"expandable-button"===r.target.parentNode.id||r.target.id&&Nt.default(o=r.target.id).call(o,"MUIDataTableSelectCell"))){if(n.props.options.selectableRowsOnClick&&"none"!==n.props.options.selectableRows&&n.isRowSelectable(t.dataIndex,n.props.selectedRows)){var a={index:t.rowIndex,dataIndex:t.dataIndex};n.handleRowSelect(a,r)}if(n.props.options.expandableRowsOnClick&&n.props.options.expandableRows&&n.isRowExpandable(t.dataIndex,n.props.expandedRows)){var i={index:t.rowIndex,dataIndex:t.dataIndex};n.props.toggleExpandRow(i)}n.props.options.selectableRowsOnClick||n.props.options.onRowClick&&n.props.options.onRowClick(e,t,r)}})),lt.default(ot.default(n),"processRow",(function(e,t){for(var r=[],n=0;n<e.length;n++)r.push({value:e[t[n]],index:t[n]});return r})),n}return nt.default(r,[{key:"buildRows",value:function(){var e=this.props,t=e.data,r=e.page,n=e.rowsPerPage,o=e.count;if(this.props.options.serverSide)return t.length?t:null;var a=[],i=Hr(o,n,r),s=0===i?0:i*n,l=Math.min(o,(i+1)*n);r>i&&console.warn("Current page is out of range, using the highest page that is in range instead.");for(var c=s;c<o&&c<l;c++)void 0!==t[c]&&a.push(t[c]);return a.length?a:null}},{key:"getRowIndex",value:function(e){var t=this.props,r=t.page,n=t.rowsPerPage;return t.options.serverSide?e:(0===r?0:r*n)+e}},{key:"isRowSelected",value:function(e){var t=this.props.selectedRows;return!(!t.lookup||!t.lookup[e])}},{key:"isRowExpanded",value:function(e){var t=this.props.expandedRows;return!(!t.lookup||!t.lookup[e])}},{key:"isRowSelectable",value:function(e,t){var r=this.props.options;return t=t||this.props.selectedRows,!r.isRowSelectable||r.isRowSelectable(e,t)}},{key:"isRowExpandable",value:function(e){var t=this.props,r=t.options,n=t.expandedRows;return!r.isRowExpandable||r.isRowExpandable(e,n)}},{key:"render",value:function(){var e,t=this,r=this.props,n=r.classes,o=r.columns,a=r.toggleExpandRow,i=r.options,s=r.columnOrder,l=void 0===s?ut.default(e=this.props.columns).call(e,(function(e,t){return t})):s,c=r.components,u=void 0===c?{}:c,d=r.tableId,f=this.buildRows(),p=bt.default(o).call(o,(function(e){return"true"===e.display})).length;return _t.default.createElement(Ut.default,null,f&&f.length>0?ut.default(f).call(f,(function(e,r){var s,c,f,p,h,m=e.data,g=e.dataIndex;if(i.customRowRender)return i.customRowRender(m,g,r);var v="none"!==i.selectableRows&&t.isRowSelected(g),y=t.isRowSelectable(g),b=i.setRowProps&&i.setRowProps(m,g,r)||{},w=t.processRow(m,l);return _t.default.createElement(_t.default.Fragment,{key:r},_t.default.createElement(_r,$e.default({},b,{options:i,rowSelected:v,isRowSelectable:y,onClick:xt.default(s=t.handleRowClick).call(s,null,m,{rowIndex:r,dataIndex:g}),className:Et.default((c={},lt.default(c,n.lastStackedCell,"vertical"===i.responsive||"stacked"===i.responsive||"stackedFullWidth"===i.responsive),lt.default(c,n.lastSimpleCell,"simple"===i.responsive),lt.default(c,b.className,b.className),c)),"data-testid":"MUIDataTableBodyRow-"+g,id:vt.default(f="MUIDataTableBodyRow-".concat(d,"-")).call(f,g)}),_t.default.createElement(Br,{onChange:xt.default(p=t.handleRowSelect).call(p,null,{index:t.getRowIndex(r),dataIndex:g}),onExpand:xt.default(a).call(a,null,{index:t.getRowIndex(r),dataIndex:g}),fixedHeader:i.fixedHeader,fixedSelectColumn:i.fixedSelectColumn,checked:v,expandableOn:i.expandableRows,hideExpandButton:!t.isRowExpandable(g)&&i.expandableRows,selectableOn:i.selectableRows,selectableRowsHideCheckboxes:i.selectableRowsHideCheckboxes,isRowExpanded:t.isRowExpanded(g),isRowSelectable:y,dataIndex:g,id:vt.default(h="MUIDataTableSelectCell-".concat(d,"-")).call(h,g),components:u}),ut.default(w).call(w,(function(e){var t;return"true"===o[e.index].display&&_t.default.createElement(Mr,$e.default({},o[e.index].setCellProps&&o[e.index].setCellProps(e.value,g,e.index)||{},{"data-testid":vt.default(t="MuiDataTableBodyCell-".concat(e.index,"-")).call(t,r),dataIndex:g,rowIndex:r,colIndex:e.index,columnHeader:o[e.index].label,print:o[e.index].print,options:i,tableId:d,key:e.index}),e.value)}))),t.isRowExpanded(g)&&i.renderExpandableRow(m,{rowIndex:r,dataIndex:g}))})):_t.default.createElement(_r,{options:i},_t.default.createElement(Mr,{colSpan:"none"!==i.selectableRows||i.expandableRows?p+1:p,options:i,colIndex:0,rowIndex:0},_t.default.createElement(Lt.default,{variant:"body1",className:n.emptyTitle,component:"div"},i.textLabels.body.noMatch))))}}]),r}(_t.default.Component);lt.default(Kr,"propTypes",{data:Rt.default.array.isRequired,count:Rt.default.number.isRequired,columns:Rt.default.array.isRequired,options:Rt.default.object.isRequired,filterList:Rt.default.array,onRowClick:Rt.default.func,expandedRows:Rt.default.object,selectedRows:Rt.default.object,selectRowUpdate:Rt.default.func,previousSelectedRow:Rt.default.object,searchText:Rt.default.string,toggleExpandRow:Rt.default.func,classes:Rt.default.object}),lt.default(Kr,"defaultProps",{toggleExpandRow:function(){}});var Xr=B.withStyles(Kr,(function(e){return{root:{},emptyTitle:{textAlign:"center"},lastStackedCell:lt.default({},e.breakpoints.down("md"),{"& td:last-child":{borderBottom:"none"}}),lastSimpleCell:lt.default({},e.breakpoints.down("sm"),{"& td:last-child":{borderBottom:"none"}})}}),{name:"MUIDataTableBody"});function Jr(e){var t=function(){if("undefined"==typeof Reflect||!Ve.default)return!1;if(Ve.default.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Ve.default(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=st.default(e);if(t){var o=st.default(this).constructor;r=Ve.default(n,arguments,o)}else r=n.apply(this,arguments);return it.default(this,r)}}var $r=function(e){at.default(r,e);var t=Jr(r);function r(e){var n;return rt.default(this,r),n=t.call(this,e),lt.default(ot.default(n),"filterUpdate",(function(e,t,r,o,a){var i,s=Bt.default(i=n.state.filterList).call(i,0);n.props.updateFilterByType(s,e,t,o,a),n.setState({filterList:s})})),lt.default(ot.default(n),"handleCheckboxChange",(function(e,t,r){n.filterUpdate(e,t,r,"checkbox"),!0!==n.props.options.confirmFilters&&n.props.onFilterUpdate(e,t,r,"checkbox")})),lt.default(ot.default(n),"handleDropdownChange",(function(e,t,r){var o=bt.default(n.props.options.textLabels).all,a=e.target.value===o?[]:[e.target.value];n.filterUpdate(t,a,r,"dropdown"),!0!==n.props.options.confirmFilters&&n.props.onFilterUpdate(t,a,r,"dropdown")})),lt.default(ot.default(n),"handleMultiselectChange",(function(e,t,r){n.filterUpdate(e,t,r,"multiselect"),!0!==n.props.options.confirmFilters&&n.props.onFilterUpdate(e,t,r,"multiselect")})),lt.default(ot.default(n),"handleTextFieldChange",(function(e,t,r){n.filterUpdate(t,e.target.value,r,"textField"),!0!==n.props.options.confirmFilters&&n.props.onFilterUpdate(t,e.target.value,r,"textField")})),lt.default(ot.default(n),"handleCustomChange",(function(e,t,r){n.filterUpdate(t,e,r.name,r.filterType),!0!==n.props.options.confirmFilters&&n.props.onFilterUpdate(t,e,r.name,r.filterType)})),lt.default(ot.default(n),"applyFilters",(function(){var e;return ft.default(e=n.state.filterList).call(e,(function(e,t){n.props.onFilterUpdate(t,e,n.props.columns[t],"custom")})),n.props.handleClose(),n.props.options.onFilterConfirm&&n.props.options.onFilterConfirm(n.state.filterList),n.state.filterList})),lt.default(ot.default(n),"resetFilters",(function(){var e;n.setState({filterList:ut.default(e=n.props.columns).call(e,(function(){return[]}))}),!0!==n.props.options.confirmFilters&&n.props.onFilterReset()})),n.state={filterList:Tt.default(e.filterList)},n}return nt.default(r,[{key:"renderCheckbox",value:function(e,t){var r,n=this,o=(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).Checkbox||Wt.default,a=this.props,i=a.classes,s=a.filterData,l=this.state.filterList,c=e.filterOptions&&e.filterOptions.renderValue?e.filterOptions.renderValue:function(e){return e};return _t.default.createElement($t.default,{item:!0,key:t,xs:6},_t.default.createElement(Jt.default,null,_t.default.createElement($t.default,{item:!0,xs:12},_t.default.createElement(Lt.default,{variant:"body2",className:i.checkboxListTitle},e.label)),_t.default.createElement($t.default,{container:!0},ut.default(r=s[t]).call(r,(function(r,a){var s,u;return _t.default.createElement($t.default,{item:!0,key:a},_t.default.createElement(Xt.default,{key:a,classes:{root:i.checkboxFormControl,label:i.checkboxFormControlLabel},control:_t.default.createElement(o,{"data-description":"table-filter",color:"primary",className:i.checkboxIcon,onChange:xt.default(s=n.handleCheckboxChange).call(s,null,t,r,e.name),checked:ct.default(u=l[t]).call(u,r)>=0,classes:{root:i.checkbox,checked:i.checked},value:null!=r?r.toString():""}),label:c(r)}))})))))}},{key:"renderSelect",value:function(e,t){var r,n=this,o=this.props,a=o.classes,i=o.filterData,s=o.options,l=this.state.filterList,c=bt.default(s.textLabels),u=e.filterOptions&&e.filterOptions.renderValue?e.filterOptions.renderValue:function(e){return null!=e?e.toString():""},d=!0===(e.filterOptions&&e.filterOptions.fullWidth)?12:6;return _t.default.createElement($t.default,{item:!0,key:t,xs:d,classes:{"grid-xs-12":a.gridListTile,"grid-xs-6":a.gridListTile}},_t.default.createElement(Kt.default,{key:t,variant:"standard",fullWidth:!0},_t.default.createElement(er.default,{htmlFor:e.name},e.label),_t.default.createElement(nr.default,{fullWidth:!0,value:l[t].length?l[t].toString():c.all,name:e.name,onChange:function(r){return n.handleDropdownChange(r,t,e.name)},input:_t.default.createElement(qt.default,{name:e.name,id:e.name})},_t.default.createElement(rr.default,{value:c.all,key:0},c.all),ut.default(r=i[t]).call(r,(function(e,t){return _t.default.createElement(rr.default,{value:e,key:t+1},u(e))})))))}},{key:"renderTextField",value:function(e,t){var r=this,n=this.props.classes,o=this.state.filterList;e.filterOptions&&e.filterOptions.renderValue&&console.warn("Custom renderValue not supported for textField filters");var a=!0===(e.filterOptions&&e.filterOptions.fullWidth)?12:6;return _t.default.createElement($t.default,{item:!0,key:t,xs:a,classes:{"grid-xs-12":n.gridListTile,"grid-xs-6":n.gridListTile}},_t.default.createElement(Kt.default,{key:t,fullWidth:!0},_t.default.createElement(or.default,{fullWidth:!0,variant:"standard",label:e.label,value:o[t].toString()||"","data-testid":"filtertextfield-"+e.name,onChange:function(n){return r.handleTextFieldChange(n,t,e.name)}})))}},{key:"renderMultiselect",value:function(e,t){var r,n=this,o=(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).Checkbox||Wt.default,a=this.props,i=a.classes,s=a.filterData,l=this.state.filterList,c=e.filterOptions&&e.filterOptions.renderValue?e.filterOptions.renderValue:function(e){return e},u=!0===(e.filterOptions&&e.filterOptions.fullWidth)?12:6;return _t.default.createElement($t.default,{item:!0,key:t,xs:u,classes:{"grid-xs-12":i.gridListTile,"grid-xs-6":i.gridListTile}},_t.default.createElement(Kt.default,{key:t,variant:"standard",fullWidth:!0},_t.default.createElement(er.default,{htmlFor:e.name},e.label),_t.default.createElement(nr.default,{multiple:!0,fullWidth:!0,value:l[t]||[],renderValue:function(e){return ut.default(e).call(e,c).join(", ")},name:e.name,onChange:function(r){return n.handleMultiselectChange(t,r.target.value,e.name)},input:_t.default.createElement(qt.default,{name:e.name,id:e.name})},ut.default(r=s[t]).call(r,(function(e,r){var n;return _t.default.createElement(rr.default,{value:e,key:r+1},_t.default.createElement(o,{"data-description":"table-filter",color:"primary",checked:ct.default(n=l[t]).call(n,e)>=0,value:null!=e?e.toString():"",className:i.checkboxIcon,classes:{root:i.checkbox,checked:i.checked}}),_t.default.createElement(tr.default,{primary:c(e)}))})))))}},{key:"renderCustomField",value:function(e,t){var r=this.props,n=r.classes,o=r.filterData,a=r.options,i=this.state.filterList,s=!0===(e.filterOptions&&e.filterOptions.fullWidth)?12:6,l=e.filterOptions&&e.filterOptions.display||a.filterOptions&&a.filterOptions.display;if(l)return e.filterListOptions&&e.filterListOptions.renderValue&&console.warning('"renderValue" is ignored for custom filter fields'),_t.default.createElement($t.default,{item:!0,key:t,xs:s,classes:{"grid-xs-12":n.gridListTile,"grid-xs-6":n.gridListTile}},_t.default.createElement(Kt.default,{key:t,fullWidth:!0},l(i,this.handleCustomChange,t,e,o)));console.error('Property "display" is required when using custom filter type.')}},{key:"render",value:function(){var e=this,t=this.props,r=t.classes,n=t.columns,o=t.options,a=t.customFooter,i=t.filterList,s=t.components,l=void 0===s?{}:s,c=bt.default(o.textLabels);return _t.default.createElement("div",{className:r.root},_t.default.createElement("div",{className:r.header},_t.default.createElement("div",{className:r.reset},_t.default.createElement(Lt.default,{variant:"body2",className:Et.default(lt.default({},r.title,!0))},c.title),_t.default.createElement(Qt.default,{color:"primary",className:r.resetLink,tabIndex:0,"aria-label":c.reset,"data-testid":"filterReset-button",onClick:this.resetFilters},c.reset)),_t.default.createElement("div",{className:r.filtersSelected})),_t.default.createElement($t.default,{container:!0,direction:"row",justifyContent:"flex-start",alignItems:"center",spacing:4},ut.default(n).call(n,(function(t,r){if(bt.default(t)){var n=t.filterType||o.filterType;return"checkbox"===n?e.renderCheckbox(t,r,l):"multiselect"===n?e.renderMultiselect(t,r,l):"textField"===n?e.renderTextField(t,r):"custom"===n?e.renderCustomField(t,r):e.renderSelect(t,r)}}))),a?a(i,this.applyFilters):"")}}]),r}(_t.default.Component);lt.default($r,"propTypes",{filterData:Rt.default.array.isRequired,filterList:Rt.default.array.isRequired,options:Rt.default.object.isRequired,onFilterUpdate:Rt.default.func,onFilterReset:Rt.default.func,classes:Rt.default.object});var qr=B.withStyles($r,(function(e){return{root:{backgroundColor:e.palette.background.default,padding:"24px 24px 36px 24px",fontFamily:"Roboto"},header:{flex:"0 0 auto",marginBottom:"16px",width:"100%",display:"flex",justifyContent:"space-between"},title:{display:"inline-block",marginLeft:"7px",color:e.palette.text.primary,fontSize:"14px",fontWeight:500},noMargin:{marginLeft:"0px"},reset:{alignSelf:"left"},resetLink:{marginLeft:"16px",fontSize:"12px",cursor:"pointer"},filtersSelected:{alignSelf:"right"},checkboxListTitle:{marginLeft:"7px",marginBottom:"8px",fontSize:"14px",color:e.palette.text.secondary,textAlign:"left",fontWeight:500},checkboxFormGroup:{marginTop:"8px"},checkboxFormControl:{margin:"0px"},checkboxFormControlLabel:{fontSize:"15px",marginLeft:"8px",color:e.palette.text.primary},checkboxIcon:{width:"32px",height:"32px"},checkbox:{},checked:{},gridListTile:{marginTop:"16px"}}}),{name:"MUIDataTableFilter"}),en=function(e){var t=e.label,r=e.onDelete,n=e.className,o=e.filterProps;return(o=o||{}).className&&(n=Et.default(n,o.className)),_t.default.createElement(ar.default,$e.default({label:t,onDelete:r,className:n},o))};en.propTypes={label:Rt.default.node,onDelete:Rt.default.func.isRequired,className:Rt.default.string.isRequired};var tn=B.makeStyles({name:"MUIDataTableFilterList"})((function(){return{root:{display:"flex",justifyContent:"left",flexWrap:"wrap",margin:"0px 16px 0px 16px"},chip:{margin:"8px 8px 0px 0px"}}})),rn=function(e){var t=e.options,r=e.filterList,n=e.filterUpdate,o=e.filterListRenderers,a=e.columnNames,i=e.serverSideFilterList,s=e.customFilterListUpdate,l=e.ItemComponent,c=void 0===l?en:l,u=tn().classes,d=t.serverSide,f=function(e,o,a,i){var s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,l=o;pt.default(l)&&0===l.length&&(l=r[e]),n(e,o,a,i,s,(function(r){t.onFilterChipClose&&t.onFilterChipClose(e,l,r)}))},p=function(e,r,n,o,i){var l;return l=i?s[r]?"custom":"chip":a[r].filterType,_t.default.createElement(c,{label:e,key:n,onDelete:function(){return f(r,o[n]||[],a[r].name,l,s[r])},className:u.chip,itemKey:n,index:r,data:o,columnNames:a,filterProps:t.setFilterChipProps?t.setFilterChipProps(r,a[r].name,o[n]||[]):{}})};return _t.default.createElement("div",{className:u.root},function(e){return ut.default(e).call(e,(function(r,n){if("custom"===a[n].filterType&&e[n].length){var i=o[n](r);return pt.default(i)?ut.default(i).call(i,(function(e,t){return p(e,n,t,r,!0)})):p(i,n,n,r,!1)}return ut.default(r).call(r,(function(e,r){return function(e,r,n){return _t.default.createElement(c,{label:o[e](r),key:n,onDelete:function(){return f(e,r,a[e].name,"chip")},className:u.chip,itemKey:n,index:e,data:r,columnNames:a,filterProps:t.setFilterChipProps?t.setFilterChipProps(e,a[e].name,r):{}})}(n,e,r)}))}))}(d&&i?i:r))};rn.propTypes={filterList:Rt.default.array.isRequired,filterListRenderers:Rt.default.array.isRequired,columnNames:Rt.default.arrayOf(Rt.default.oneOfType([Rt.default.string,Rt.default.shape({name:Rt.default.string.isRequired,filterType:Rt.default.string})])).isRequired,onFilterUpdate:Rt.default.func,ItemComponent:Rt.default.any};var nn=B.makeStyles({name:"MUIDataTableJumpToPage"})((function(e){return{root:{color:e.palette.text.primary},caption:{flexShrink:0},selectRoot:{marginRight:32,marginLeft:8},select:{paddingTop:6,paddingBottom:7,paddingLeft:8,paddingRight:24,textAlign:"right",textAlignLast:"right",fontSize:e.typography.pxToRem(14)},selectIcon:{},input:{color:"inhert",fontSize:"inhert",flexShrink:0}}}));function on(e){for(var t=nn().classes,r=e.count,n=e.textLabels,o=e.rowsPerPage,a=e.page,i=(e.changePage,n.pagination.jumpToPage),s=[],l=Math.min(1e3,Hr(r,o,1e6)),c=0;c<=l;c++)s.push(c);var u=rr.default;return _t.default.createElement(ur.default,{style:{display:"flex",minHeight:"52px",alignItems:"center"},className:t.root},_t.default.createElement(Lt.default,{color:"inherit",variant:"body2",className:t.caption},i),_t.default.createElement(nr.default,{classes:{select:t.select,icon:t.selectIcon},input:_t.default.createElement(cr.default,{className:Et.default(t.input,t.selectRoot)}),value:Hr(r,o,a),onChange:function(t){e.changePage(lr.default(t.target.value,10))},style:{marginRight:0}},ut.default(s).call(s,(function(e){return _t.default.createElement(u,{className:t.menuItem,key:e,value:e},e+1)}))))}on.propTypes={count:Rt.default.number.isRequired,page:Rt.default.number.isRequired,rowsPerPage:Rt.default.number.isRequired,textLabels:Rt.default.object.isRequired};var an=B.makeStyles({name:"MUIDataTablePagination"})((function(e){return{root:{},tableCellContainer:{padding:"0px 24px 0px 24px"},navContainer:{display:"flex",justifyContent:"flex-end"},toolbar:{},selectRoot:{},"@media screen and (max-width: 400px)":{toolbar:{"& span:nth-of-type(2)":{display:"none"}},selectRoot:{marginRight:"8px"}}}}));function sn(e){var t=an().classes,r=e.count,n=e.options,o=e.rowsPerPage,a=e.page,i=n.textLabels.pagination;return _t.default.createElement(ir.default,null,_t.default.createElement(zt.default,null,_t.default.createElement(Ft.default,{colSpan:"1000",className:t.tableCellContainer},_t.default.createElement("div",{className:t.navContainer},n.jumpToPage?_t.default.createElement(on,{count:r,page:a,rowsPerPage:o,textLabels:n.textLabels,changePage:e.changePage,changeRowsPerPage:e.changeRowsPerPage}):null,_t.default.createElement(sr.default,{component:"div",className:t.root,classes:{caption:t.caption,toolbar:t.toolbar,selectRoot:t.selectRoot},count:r,rowsPerPage:o,page:Hr(r,o,a),labelRowsPerPage:i.rowsPerPage,labelDisplayedRows:function(e){var t,r,n,o=e.from,a=e.to,s=e.count;return vt.default(t=vt.default(r=vt.default(n="".concat(o,"-")).call(n,a," ")).call(r,i.displayRows," ")).call(t,s)},backIconButtonProps:{id:"pagination-back","data-testid":"pagination-back","aria-label":i.previous,title:i.previous||""},nextIconButtonProps:{id:"pagination-next","data-testid":"pagination-next","aria-label":i.next,title:i.next||""},SelectProps:{id:"pagination-input",SelectDisplayProps:{id:"pagination-rows","data-testid":"pagination-rows"},MenuProps:{id:"pagination-menu","data-testid":"pagination-menu",MenuListProps:{id:"pagination-menu-list","data-testid":"pagination-menu-list"}}},rowsPerPageOptions:n.rowsPerPageOptions,onPageChange:function(t,r){e.changePage(r)},onRowsPerPageChange:function(t){e.changeRowsPerPage(t.target.value)}})))))}sn.propTypes={count:Rt.default.number.isRequired,options:Rt.default.object.isRequired,page:Rt.default.number.isRequired,rowsPerPage:Rt.default.number.isRequired,changeRowsPerPage:Rt.default.func.isRequired};var ln=B.makeStyles({name:"MUIDataTableFooter"})((function(){return{root:{"@media print":{display:"none"}}}})),cn=function(e){var t=e.options,r=e.rowCount,n=e.page,o=e.rowsPerPage,a=e.changeRowsPerPage,i=e.changePage,s=ln().classes,l=t.customFooter,c=t.pagination,u=void 0===c||c;return l?_t.default.createElement(Ct.default,{className:s.root},t.customFooter(r,n,o,a,i,t.textLabels.pagination)):u?_t.default.createElement(Ct.default,{className:s.root},_t.default.createElement(sn,{count:r,page:n,rowsPerPage:o,changeRowsPerPage:a,changePage:i,component:"div",options:t})):null};cn.propTypes={rowCount:Rt.default.number.isRequired,options:Rt.default.shape({customFooter:Rt.default.func,pagination:Rt.default.bool,textLabels:Rt.default.shape({pagination:Rt.default.object})}),page:Rt.default.number.isRequired,rowsPerPage:Rt.default.number.isRequired,changeRowsPerPage:Rt.default.func.isRequired,changePage:Rt.default.func.isRequired};var un=function(e,t,r){var n=[],o=e[0]?e[0]:null;if(null===o){o={offsetLeft:1/0};var a=gr.default(e);ft.default(a).call(a,(function(e,t){var r=dr.default(e,2),n=(r[0],r[1]);n&&n.offsetLeft<o.offsetLeft&&(o=n)})),o.offsetLeft===1/0&&(o={offsetParent:0,offsetWidth:0,offsetLeft:0})}for(var i=0,s=0,l=o.offsetParent;l&&(s=s+(l.offsetLeft||0)-(l.scrollLeft||0),l=l.offsetParent,!(++i>1e3)););return e[0]&&(n[0]={left:s+o.offsetLeft,width:o.offsetWidth,columnIndex:null,ref:o}),ft.default(t).call(t,(function(t,a){var i=e[t+1],l=n.length-1;if(!r[t]||"true"===r[t].display){var c=-1!==l?n[l].left+n[l].width:s+o.offsetLeft;n.push({left:c,width:i.offsetWidth,columnIndex:t,ref:i})}})),n},dn=function(e){e.item;var t=e.mon,r=e.index,n=e.headCellRefs,o=e.updateColumnOrder,a=e.columnOrder,i=e.transitionTime,s=void 0===i?300:i,l=e.tableRef,c=e.tableId,u=e.timers,d=e.columns,f=t.getItem().colIndex;if(n===t.getItem().headCellRefs&&f!==r){for(var p=function(e,t,r){var n=Bt.default(e).call(e),o=ct.default(n).call(n,t),a=ct.default(n).call(n,r);if(-1!==o&&-1!==a){var i,s,l=n[o];n=vt.default(i=[]).call(i,qe.default(Bt.default(n).call(n,0,o)),qe.default(Bt.default(n).call(n,o+1))),n=vt.default(s=[]).call(s,qe.default(Bt.default(n).call(n,0,a)),[l],qe.default(Bt.default(n).call(n,a)))}return n}(a,t.getItem().colIndex,r),h=un(n,p,d),m=t.getClientOffset().x,g=-1,v=0;v<h.length;v++)if(m>h[v].left&&m<h[v].left+h[v].width){g=h[v].columnIndex;break}if(g===t.getItem().colIndex){clearTimeout(u.columnShift);var y=un(n,a,d),b=[];ft.default(h).call(h,(function(e){b[e.columnIndex]=e.left})),ft.default(y).call(y,(function(e){b[e.columnIndex]=b[e.columnIndex]-e.left}));for(var w=1;w<a.length;w++){var x=a[w];d[x]&&"true"!==d[x].display||(n[w]&&(n[w].style.transition="280ms"),n[w]&&(n[w].style.transform="translateX("+b[w-1]+"px)"))}for(var S=[],A=[],k=0;k<a.length;k++){for(var C=l?l.querySelectorAll('[data-colindex="'+k+'"][data-tableid="'+c+'"]'):[],I=0;I<C.length;I++)C[I].style.transition=s+"ms",C[I].style.transform="translateX("+b[k]+"px)",S.push(C[I]);for(var E=l?l.querySelectorAll('[data-divider-index="'+(k+1)+'"][data-tableid="'+c+'"]'):[],D=0;D<E.length;D++)E[D].style.transition=s+"ms",E[D].style.transform="translateX("+b[a[k]]+"px)",A.push(E[D])}var T=t.getItem().colIndex;u.columnShift=pr.default((function(){ft.default(S).call(S,(function(e){e.style.transition="0s",e.style.transform="translateX(0)"})),ft.default(A).call(A,(function(e){e.style.transition="0s",e.style.transform="translateX(0)"})),o(p,T,r)}),s)}}},fn=["className"];function pn(e,t){var r=Ge.default(e);if(Ze.default){var n=Ze.default(e);t&&(n=bt.default(n).call(n,(function(t){return Qe.default(e,t).enumerable}))),r.push.apply(r,n)}return r}var hn=B.makeStyles({name:"MUIDataTableHeadCell"})((function(e){return{root:{},fixedHeader:{position:"sticky",top:"0px",zIndex:100,backgroundColor:e.palette.background.paper},tooltip:{cursor:"pointer"},mypopper:{"&[data-x-out-of-boundaries]":{display:"none"}},data:{display:"inline-block"},sortAction:{display:"flex",cursor:"pointer"},dragCursor:{cursor:"grab"},sortLabelRoot:{height:"20px"},sortActive:{color:e.palette.text.primary},toolButton:{textTransform:"none",marginLeft:"-8px",minWidth:0,marginRight:"8px",paddingLeft:"8px",paddingRight:"8px"},contentWrapper:{display:"flex",alignItems:"center"},hintIconAlone:{marginTop:"-3px",marginLeft:"3px"},hintIconWithSortIcon:{marginTop:"-3px"}}})),mn=function(e){var t,r,n=e.cellHeaderProps,o=void 0===n?{}:n,a=e.children,i=e.colPosition,s=e.column,l=e.columns,c=e.columnOrder,u=void 0===c?[]:c,d=e.components,f=void 0===d?{}:d,p=e.draggableHeadCellRefs,h=e.draggingHook,m=e.hint,g=e.index,v=e.options,y=e.print,b=e.setCellRef,w=gt.default(e),x=e.sortDirection,S=e.tableRef,A=e.tableId,k=e.timers,C=e.toggleSort,I=e.updateColumnOrder,E=Q.useState(!1),D=dr.default(E,2),T=D[0],O=D[1],M=Q.useState(!1),P=dr.default(M,2),j=P[0],R=P[1],_=hn().classes,N=dr.default(h||[],2),L=N[0],U=N[1],B=o.className,F=et.default(o,fn),z=f.Tooltip||It.default,W="none"!==x&&void 0!==x,H="none"!==x&&x,Y=function(){return!!h&&v.draggableColumns&&v.draggableColumns.enabled&&!1!==s.draggable},V=function(e){for(var t=1;t<arguments.length;t++){var r,n,o=null!=arguments[t]?arguments[t]:{};t%2?ft.default(r=pn(Object(o),!0)).call(r,(function(t){lt.default(e,t,o[t])})):Ke.default?Xe.default(e,Ke.default(o)):ft.default(n=pn(Object(o))).call(n,(function(t){Je.default(e,t,Qe.default(o,t))}))}return e}({classes:{root:_.sortLabelRoot},tabIndex:-1,active:W,hideSortIcon:!0},H?{direction:x}:{}),G=Oe.useDrag({item:{type:"HEADER",colIndex:g,headCellRefs:p},begin:function(e){return pr.default((function(){R(!1),O(!1),U(!0)}),0),null},end:function(e,t){U(!1)},collect:function(e){return{opacity:e.isDragging()?1:0}}}),Z=dr.default(G,3),K=(Z[0].opacity,Z[1]),X=(Z[2],function(e){var t=Oe.useDrop({accept:"HEADER",drop:o,hover:function(t,r){return dn(wt.default({},e,{item:t,mon:r}))},collect:function(e){return{isOver:!!e.isOver(),canDrop:!!e.canDrop()}}}),r=dr.default(t,2),n=r[0],o=(n.isOver,n.canDrop,r[1]);return[o]}({drop:function(e,t){O(!1),R(!1),U(!1)},index:g,headCellRefs:p,updateColumnOrder:I,columnOrder:u,columns:l,transitionTime:v.draggableColumns?v.draggableColumns.transitionTime:300,tableRef:S?S():null,tableId:A||"none",timers:k})),J=dr.default(X,1)[0],$=Et.default((lt.default(t={},_.root,!0),lt.default(t,_.fixedHeader,v.fixedHeader),lt.default(t,"datatables-noprint",!y),lt.default(t,B,B),t));return _t.default.createElement(Ft.default,$e.default({ref:function(e){J&&J(e),b&&b(g+1,i+1,e)},className:$,scope:"col",sortDirection:H,"data-colindex":g,"data-tableid":A,onMouseDown:function(){O(!1)}},F),gt.default(v)&&w?_t.default.createElement("span",{className:_.contentWrapper},_t.default.createElement(z,{title:L?"":v.textLabels?v.textLabels.body.columnHeaderTooltip?v.textLabels.body.columnHeaderTooltip(s):v.textLabels.body.toolTip:"",placement:"bottom",open:T,onOpen:function(){return O(!L)},onClose:function(){return O(!1)},classes:{tooltip:_.tooltip,popper:_.mypopper}},_t.default.createElement(Qt.default,{variant:"",onKeyUp:function(e){return"Enter"===e.key&&C(g),!1},onClick:function(){C(g)},className:_.toolButton,"data-testid":"headcol-".concat(g),ref:Y()?K:null},_t.default.createElement("div",{className:_.sortAction},_t.default.createElement("div",{className:Et.default((r={},lt.default(r,_.data,!0),lt.default(r,_.sortActive,W),lt.default(r,_.dragCursor,Y()),r))},a),_t.default.createElement("div",{className:_.sortAction},_t.default.createElement(mr.default,V))))),m&&_t.default.createElement(z,{title:m},_t.default.createElement(hr.default,{className:W?_.hintIconWithSortIcon:_.hintIconAlone,fontSize:"small"}))):_t.default.createElement("div",{className:m?_.sortAction:null,ref:Y()?K:null},a,m&&_t.default.createElement(z,{title:m,placement:"bottom-end",open:j,onOpen:function(){return O(!1),void R(!0)},onClose:function(){return R(!1)},classes:{tooltip:_.tooltip,popper:_.mypopper},enterDelay:300},_t.default.createElement(hr.default,{className:_.hintIconAlone,fontSize:"small"}))))};mn.propTypes={options:Rt.default.object.isRequired,sortDirection:Rt.default.oneOf(["asc","desc","none"]),toggleSort:Rt.default.func.isRequired,sort:Rt.default.bool.isRequired,hint:Rt.default.string,print:Rt.default.bool.isRequired,column:Rt.default.object,components:Rt.default.object};var gn=B.makeStyles({name:"MUIDataTableHeadRow"})((function(){return{root:{}}})),vn=function(e){var t=e.children,r=gn().classes;return _t.default.createElement(zt.default,{className:Et.default(lt.default({},r.root,!0))},t)};function yn(e,t){var r=Ge.default(e);if(Ze.default){var n=Ze.default(e);t&&(n=bt.default(n).call(n,(function(t){return Qe.default(e,t).enumerable}))),r.push.apply(r,n)}return r}function bn(e){for(var t=1;t<arguments.length;t++){var r,n,o=null!=arguments[t]?arguments[t]:{};t%2?ft.default(r=yn(Object(o),!0)).call(r,(function(t){lt.default(e,t,o[t])})):Ke.default?Xe.default(e,Ke.default(o)):ft.default(n=yn(Object(o))).call(n,(function(t){Je.default(e,t,Qe.default(o,t))}))}return e}vn.propTypes={children:Rt.default.node};var wn=B.makeStyles({name:"MUIDataTableHead"})((function(e){return{main:{},responsiveStacked:lt.default({},e.breakpoints.down("md"),{display:"none"}),responsiveStackedAlways:{display:"none"},responsiveSimple:lt.default({},e.breakpoints.down("sm"),{display:"none"})}})),xn=function(e){var t,r=e.columnOrder,n=void 0===r?null:r,o=e.columns,a=e.components,i=void 0===a?{}:a,s=e.count,l=e.data,c=e.draggableHeadCellRefs,u=e.expandedRows,d=e.options,f=e.selectedRows,p=e.selectRowUpdate,h=e.setCellRef,m=e.sortOrder,g=void 0===m?{}:m,v=e.tableRef,y=e.tableId,b=e.timers,w=e.toggleAllExpandableRows,x=e.toggleSort,S=e.updateColumnOrder,A=wn().classes;null===n&&(n=o?ut.default(o).call(o,(function(e,t){return t})):[]);var k=Q.useState(!1),C=dr.default(k,2),I=C[0],E=C[1],D=function(e){x(e)},T=function(){p("head",null)},O=f&&f.data.length||0,M=O>0&&O<s,P=O>0&&O>=s;if(!0===d.disableToolbarSelect||"none"===d.selectToolbarPlacement||"above"===d.selectToolbarPlacement)if(P){for(var j=0;j<l.length;j++)if(!f.lookup[l[j].dataIndex]){P=!1,M=!0;break}}else O>s&&(M=!0);var R=ut.default(n).call(n,(function(e,t){return{column:o[e],index:e,colPos:t}}));return _t.default.createElement(fr.default,{className:Et.default((t={},lt.default(t,A.responsiveStacked,"vertical"===d.responsive||"stacked"===d.responsive||"stackedFullWidth"===d.responsive),lt.default(t,A.responsiveStackedAlways,"verticalAlways"===d.responsive),lt.default(t,A.responsiveSimple,"simple"===d.responsive),lt.default(t,A.main,!0),t))},_t.default.createElement(vn,null,_t.default.createElement(Br,{setHeadCellRef:h,onChange:xt.default(T).call(T,null),indeterminate:M,checked:P,isHeaderCell:!0,expandedRows:u,expandableRowsHeader:d.expandableRowsHeader,expandableOn:d.expandableRows,selectableOn:d.selectableRows,fixedHeader:d.fixedHeader,fixedSelectColumn:d.fixedSelectColumn,selectableRowsHeader:d.selectableRowsHeader,selectableRowsHideCheckboxes:d.selectableRowsHideCheckboxes,onExpand:w,isRowSelectable:!0,components:i}),ut.default(R).call(R,(function(e){var t=e.column,r=e.index,a=e.colPos;return"true"===t.display&&(t.customHeadRender?t.customHeadRender(bn({index:r},t),D,g):_t.default.createElement(mn,{cellHeaderProps:o[r].setCellHeaderProps&&o[r].setCellHeaderProps(bn({index:r},t))||{},key:r,index:r,colPosition:a,type:"cell",setCellRef:h,sort:gt.default(t),sortDirection:t.name===g.name?g.direction:"none",toggleSort:D,hint:t.hint,print:t.print,options:d,column:t,columns:o,updateColumnOrder:S,columnOrder:n,timers:b,draggingHook:[I,E],draggableHeadCellRefs:c,tableRef:v,tableId:y,components:i},t.customHeadLabelRender?t.customHeadLabelRender(bn({index:r,colPos:a},t)):t.label))}))))};function Sn(e,t){var r=Ge.default(e);if(Ze.default){var n=Ze.default(e);t&&(n=bt.default(n).call(n,(function(t){return Qe.default(e,t).enumerable}))),r.push.apply(r,n)}return r}function An(e){for(var t=1;t<arguments.length;t++){var r,n,o=null!=arguments[t]?arguments[t]:{};t%2?ft.default(r=Sn(Object(o),!0)).call(r,(function(t){lt.default(e,t,o[t])})):Ke.default?Xe.default(e,Ke.default(o)):ft.default(n=Sn(Object(o))).call(n,(function(t){Je.default(e,t,Qe.default(o,t))}))}return e}function kn(e){var t=function(){if("undefined"==typeof Reflect||!Ve.default)return!1;if(Ve.default.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Ve.default(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=st.default(e);if(t){var o=st.default(this).constructor;r=Ve.default(n,arguments,o)}else r=n.apply(this,arguments);return it.default(this,r)}}function Cn(e){for(var t=0,r=0,n=e.offsetParent;n&&(r=r+(n.offsetLeft||0)-(n.scrollLeft||0),n=n.offsetParent,!(++t>1e3)););return r}var In=function(e){at.default(r,e);var t=kn(r);function r(){var e,n;rt.default(this,r);for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=t.call.apply(t,vt.default(e=[this]).call(e,a)),lt.default(ot.default(n),"state",{resizeCoords:{},priorPosition:{},tableWidth:"100%",tableHeight:"100%"}),lt.default(ot.default(n),"handleResize",(function(){window.innerWidth!==n.windowWidth&&(n.windowWidth=window.innerWidth,n.setDividers())})),lt.default(ot.default(n),"setCellRefs",(function(e,t){n.cellsRef=e,n.tableRef=t,n.setDividers()})),lt.default(ot.default(n),"setDividers",(function(){var e=n.tableRef,t=e.getBoundingClientRect(),r=t.width,o=t.height,a=n.state.resizeCoords;for(var i in a)delete a[i];var s=Cn(e),l=gr.default(n.cellsRef),c=bt.default(l).call(l,(function(e,t){return t+1<l.length}));ft.default(c).call(c,(function(e,t){var r=dr.default(e,2),n=r[0],o=r[1];if(o){var i=o.getBoundingClientRect().left;i=(i||0)-s,window.getComputedStyle(o,null),a[n]={left:i+o.offsetWidth}}})),n.setState({tableWidth:r,tableHeight:o,resizeCoords:a},n.updateWidths)})),lt.default(ot.default(n),"updateWidths",(function(){var e,t=0,r=n.state,o=r.resizeCoords,a=r.tableWidth;ft.default(e=gr.default(o)).call(e,(function(e){var r=dr.default(e,2),o=r[0],i=r[1],s=Number((i.left-t)/a*100);"object"===tt.default(n.props.resizableColumns)&&n.props.resizableColumns.roundWidthPercentages&&(s=s.toFixed(2)),t=i.left;var l=n.cellsRef[o];l&&(l.style.width=s+"%")}))})),lt.default(ot.default(n),"onResizeStart",(function(e,t){var r=n.tableRef,o=r.style.width,a=0;r.style.width="1px";var i=gr.default(n.cellsRef);ft.default(i).call(i,(function(e,t){var r=dr.default(e,2),o=r[0],i=r[1],s=i?i.getBoundingClientRect():{width:0,left:0};n.minWidths[o]=s.width,a=Math.max(o,a)})),r.style.width=o,n.setState({isResize:!0,id:e,lastColumn:a})})),lt.default(ot.default(n),"onResizeMove",(function(e,t){var r=n.state,o=r.isResize,a=r.resizeCoords,i=r.lastColumn,s=n.minWidths[e],l=n.minWidths[function(e){for(var t=e+1,r=0;void 0===a[t]&&r<20;)t++,r++;return t}(lr.default(e,10))]||n.minWidths[e],c=lr.default(e,10),u=(gr.default(n.cellsRef),n.tableRef),d=u.getBoundingClientRect(),f=d.width,p=d.height,h=n.props.options.selectableRows,m=Cn(u),g=function(e){for(var t=e+1,r=0;void 0===a[t]&&r<20;)t++,r++;return a[t]},v=function(e){for(var t=e-1;void 0===a[t]&&t>=0;)t--;return a[t]};if(o){var y=t.clientX-m,b=function(e,t,r){return e>t-r?t-r:e},w=function(e,t){return e<t?t:e},x=function(e,t,r,n){return void 0===g(r)?e:e>g(r).left-n?g(r).left-n:e},S=function(e,t,r,n){return void 0===v(r)?e:e<v(r).left+n?v(r).left+n:e},A=function(e,t){for(var r=1;!a[r]&&r<20;)r++;return"none"!==e&&0===t||"none"===e&&t===r},k=function(e,t){return e===function(e){for(var t=e-1;void 0===a[t]&&t>=0;)t--;return t}(i)};A(h,c)&&k(c)?y=b(y=w(y,s),f,l):!A(h,c)&&k(c)?y=S(y=b(y,f,l),0,c,s):A(h,c)&&!k(c)?y=x(y=w(y,s),0,c,l):A(h,c)||k(c)||(y=x(y=S(y,0,c,s),0,c,l));var C=An(An({},a[e]),{},{left:y}),I=An(An({},a),{},lt.default({},e,C));n.setState({resizeCoords:I,tableHeight:p},n.updateWidths)}})),lt.default(ot.default(n),"onResizeEnd",(function(e,t){n.setState({isResize:!1,id:null})})),n}return nt.default(r,[{key:"componentDidMount",value:function(){var e=this;this.minWidths=[],this.windowWidth=null,this.props.setResizeable(this.setCellRefs),this.props.updateDividers((function(){return e.setState({updateCoords:!0},(function(){return e.updateWidths}))})),window.addEventListener("resize",this.handleResize,!1)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this.handleResize,!1)}},{key:"render",value:function(){var e,t=this,r=this.props,n=r.classes,o=r.tableId,a=this.state,i=a.id,s=a.isResize,l=a.resizeCoords,c=a.tableWidth,u=a.tableHeight;return _t.default.createElement("div",{className:n.root,style:{width:c}},ut.default(e=gr.default(l)).call(e,(function(e){var r,a,l,d=dr.default(e,2),f=d[0],p=d[1];return _t.default.createElement("div",{"data-divider-index":f,"data-tableid":o,"aria-hidden":"true",key:f,onMouseMove:xt.default(r=t.onResizeMove).call(r,null,f),onMouseUp:xt.default(a=t.onResizeEnd).call(a,null,f),style:{width:s&&i==f?c:"auto",position:"absolute",height:u-2,cursor:"ew-resize",zIndex:1e3}},_t.default.createElement("div",{"aria-hidden":"true",onMouseDown:xt.default(l=t.onResizeStart).call(l,null,f),className:n.resizer,style:{left:p.left}}))})))}}]),r}(_t.default.Component);lt.default(In,"propTypes",{classes:Rt.default.object});var En=B.withStyles(In,{root:{position:"absolute"},resizer:{position:"absolute",width:"1px",height:"100%",left:"100px",cursor:"ew-resize",border:"0.1px solid rgba(224, 224, 224, 1)"}},{name:"MUIDataTableResize"}),Dn=["className","trigger","refExit","hide","content"],Tn=function(e){e.className;var t=e.trigger,r=e.refExit,n=e.hide,o=e.content,a=et.default(e,Dn),i=Q.useState(!1),s=dr.default(i,2),l=s[0],c=s[1],u=Q.useRef(null);Q.useEffect((function(){l&&"boolean"==typeof n&&n&&c(!1)}),[n,l,c]);var d=function(){c(!1)},f=a.classes.closeIcon;delete a.classes.closeIcon;var p={key:"content",onClick:function(e){t.props.onClick&&t.props.onClick(),function(e){u.current=e.currentTarget,c(!0)}(e)}};return _t.default.createElement(_t.default.Fragment,null,_t.default.createElement("span",p,t),_t.default.createElement(vr.default,$e.default({elevation:2,open:l,TransitionProps:{onExited:function(){r&&r()}},onClose:d,anchorEl:u.current,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"}},a),_t.default.createElement(Ht.default,{"aria-label":"Close",onClick:d,className:f,style:{position:"absolute",right:"4px",top:"4px",zIndex:"1000"}},_t.default.createElement(yr.default,null)),o))};Tn.propTypes={refExit:Rt.default.func,trigger:Rt.default.node.isRequired,content:Rt.default.node.isRequired,hide:Rt.default.bool};var On=B.makeStyles({name:"MUIDataTableViewCol"})((function(e){return{root:{padding:"16px 24px 16px 24px",fontFamily:"Roboto"},title:{marginLeft:"-7px",marginRight:"24px",fontSize:"14px",color:e.palette.text.secondary,textAlign:"left",fontWeight:500},formGroup:{marginTop:"8px"},formControl:{},checkbox:{padding:"0px",width:"32px",height:"32px"},checkboxRoot:{},checked:{},label:{fontSize:"15px",marginLeft:"8px",color:e.palette.text.primary}}})),Mn=function(e){var t=e.columns,r=e.options,n=e.components,o=void 0===n?{}:n,a=e.onColumnUpdate,i=(e.updateColumns,On().classes),s=r.textLabels.viewColumns,l=o.Checkbox||Wt.default;return _t.default.createElement(Kt.default,{component:"fieldset",className:i.root,"aria-label":s.titleAria},_t.default.createElement(Lt.default,{variant:"caption",className:i.title},s.title),_t.default.createElement(Jt.default,{className:i.formGroup},ut.default(t).call(t,(function(e,t){return"excluded"!==e.display&&!1!==e.viewColumns&&_t.default.createElement(Xt.default,{key:t,classes:{root:i.formControl,label:i.label},control:_t.default.createElement(l,{color:"primary","data-description":"table-view-col",className:i.checkbox,classes:{root:i.checkboxRoot,checked:i.checked},onChange:function(){return function(e){a(e)}(t)},checked:"true"===e.display,value:e.name}),label:e.label})}))))};Mn.propTypes={columns:Rt.default.array.isRequired,options:Rt.default.object.isRequired,onColumnUpdate:Rt.default.func,classes:Rt.default.object};var Pn=B.makeStyles({name:"MUIDataTableSearch"})((function(e){return{main:{display:"flex",flex:"1 0 auto",alignItems:"center"},searchIcon:{color:e.palette.text.secondary,marginRight:"8px"},searchText:{flex:"0.8 0"},clearIcon:{"&:hover":{color:e.palette.error.main}}}})),jn=function(e){var t=e.options,r=e.searchText,n=e.onSearch,o=e.onHide,a=Pn().classes,i=t.searchAlwaysOpen?"hidden":"visible";return _t.default.createElement(br.default,{appear:!0,in:!0,timeout:300},_t.default.createElement("div",{className:a.main},_t.default.createElement(wr.default,{className:a.searchIcon}),_t.default.createElement(or.default,$e.default({className:a.searchText,autoFocus:!0,variant:"standard",InputProps:{"data-test-id":t.textLabels.toolbar.search},inputProps:{"aria-label":t.textLabels.toolbar.search},value:r||"",onKeyDown:function(e){"Escape"===e.key&&o()},onChange:function(e){n(e.target.value)},fullWidth:!0,placeholder:t.searchPlaceholder},t.searchProps?t.searchProps:{})),_t.default.createElement(Ht.default,{className:a.clearIcon,style:{visibility:i},onClick:o},_t.default.createElement(xr.default,null))))};function Rn(e){var t=function(){if("undefined"==typeof Reflect||!Ve.default)return!1;if(Ve.default.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Ve.default(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=st.default(e);if(t){var o=st.default(this).constructor;r=Ve.default(n,arguments,o)}else r=n.apply(this,arguments);return it.default(this,r)}}var _n="scrollFullHeightFullWidth",Nn=function(e){at.default(r,e);var t=Rn(r);function r(){var e,n;rt.default(this,r);for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=t.call.apply(t,vt.default(e=[this]).call(e,a)),lt.default(ot.default(n),"state",{iconActive:null,showSearch:Boolean(n.props.searchText||n.props.options.searchText||n.props.options.searchOpen||n.props.options.searchAlwaysOpen),searchText:n.props.searchText||null}),lt.default(ot.default(n),"handleCSVDownload",(function(){var e=n.props,t=e.data,r=e.displayData,o=e.columns,a=e.options,i=e.columnOrder,s=[],l=[],c=pt.default(i)?Bt.default(i).call(i,0):[];if(0===c.length&&(c=ut.default(o).call(o,(function(e,t){return t}))),ft.default(t).call(t,(function(e){var t={index:e.index,data:[]};ft.default(c).call(c,(function(r){t.data.push(e.data[r])})),s.push(t)})),ft.default(c).call(c,(function(e){l.push(o[e])})),a.downloadOptions&&a.downloadOptions.filterOptions){if(a.downloadOptions.filterOptions.useDisplayedRowsOnly){var u=ut.default(r).call(r,(function(e,r){var n,o=-1;return e.index=r,{data:ut.default(n=e.data).call(n,(function(r){o+=1;var n="object"!==tt.default(r)||null===r||pt.default(r)?r:Ot.default(t,(function(t){return t.index===e.dataIndex})).data[o];return"function"==typeof n?Ot.default(t,(function(t){return t.index===e.dataIndex})).data[o]:n}))}}));s=[],ft.default(u).call(u,(function(e){var t={index:e.index,data:[]};ft.default(c).call(c,(function(r){t.data.push(e.data[r])})),s.push(t)}))}a.downloadOptions.filterOptions.useDisplayedColumnsOnly&&(l=bt.default(l).call(l,(function(e){return"true"===e.display})),s=ut.default(s).call(s,(function(e){var t;return e.data=bt.default(t=e.data).call(t,(function(e,t){return"true"===o[c[t]].display})),e})))}Zr(l,s,a,Gr)})),lt.default(ot.default(n),"setActiveIcon",(function(e){n.setState((function(t){return{showSearch:n.isSearchShown(e),iconActive:e,prevIconActive:t.iconActive}}),(function(){var e=n.state,t=e.iconActive,r=e.prevIconActive;"filter"===t&&(n.props.setTableAction("onFilterDialogOpen"),n.props.options.onFilterDialogOpen&&n.props.options.onFilterDialogOpen()),void 0===t&&"filter"===r&&(n.props.setTableAction("onFilterDialogClose"),n.props.options.onFilterDialogClose&&n.props.options.onFilterDialogClose())}))})),lt.default(ot.default(n),"isSearchShown",(function(e){if(n.props.options.searchAlwaysOpen)return!0;var t=!1;if(n.state.showSearch)if(n.state.searchText)t=!0;else{var r=n.props.options.onSearchClose;n.props.setTableAction("onSearchClose"),r&&r(),t=!1}else"search"===e&&(t=n.showSearch());return t})),lt.default(ot.default(n),"getActiveIcon",(function(e,t){var r=n.state.iconActive===t;if("search"===t){var o=n.state,a=o.showSearch,i=o.searchText;r=r||a||i}return r?e.iconActive:e.icon})),lt.default(ot.default(n),"showSearch",(function(){return n.props.setTableAction("onSearchOpen"),n.props.options.onSearchOpen&&n.props.options.onSearchOpen(),!0})),lt.default(ot.default(n),"hideSearch",(function(){var e=n.props.options.onSearchClose;n.props.setTableAction("onSearchClose"),e&&e(),n.props.searchClose(),n.setState((function(){return{iconActive:null,showSearch:!1,searchText:null}}))})),lt.default(ot.default(n),"handleSearch",(function(e){n.setState({searchText:e}),n.props.searchTextUpdate(e)})),lt.default(ot.default(n),"handleSearchIconClick",(function(){var e=n.state,t=e.showSearch,r=e.searchText;t&&!r?n.hideSearch():n.setActiveIcon("search")})),n}return nt.default(r,[{key:"componentDidUpdate",value:function(e){this.props.searchText!==e.searchText&&this.setState({searchText:this.props.searchText})}},{key:"render",value:function(){var e,t,r,n=this,o=this.props,a=o.data,i=o.options,s=o.classes,l=o.columns,c=o.filterData,u=o.filterList,d=o.filterUpdate,f=o.resetFilters,p=o.toggleViewColumn,h=o.updateColumns,m=o.title,g=o.components,v=void 0===g?{}:g,y=o.updateFilterByType,b=v.icons,w=void 0===b?{}:b,x=v.Tooltip||It.default,S=v.TableViewCol||Mn,A=v.TableFilter||qr,k=w.SearchIcon||wr.default,C=w.DownloadIcon||Sr.default,I=w.PrintIcon||Ar.default,E=w.ViewColumnIcon||kr.default,D=w.FilterIcon||Cr.default,T=i.textLabels.toolbar,O=T.search,M=T.downloadCsv,P=T.print,j=T.viewColumns,R=T.filterTable,_=this.state,N=_.showSearch,L=_.searchText;return _t.default.createElement(ur.default,{className:i.responsive!==_n?s.root:s.fullWidthRoot,role:"toolbar","aria-label":"Table Toolbar"},_t.default.createElement("div",{className:i.responsive!==_n?s.left:s.fullWidthLeft},!0===N?i.customSearchRender?i.customSearchRender(L,this.handleSearch,this.hideSearch,i):_t.default.createElement(jn,{searchText:L,onSearch:this.handleSearch,onHide:this.hideSearch,options:i}):"string"!=typeof m?m:_t.default.createElement("div",{className:s.titleRoot,"aria-hidden":"true"},_t.default.createElement(Lt.default,{variant:"h6",className:i.responsive!==_n?s.titleText:s.fullWidthTitleText},m))),_t.default.createElement("div",{className:i.responsive!==_n?s.actions:s.fullWidthActions},!(!1===i.search||"false"===i.search||!0===i.searchAlwaysOpen)&&_t.default.createElement(x,{title:O,disableFocusListener:!0},_t.default.createElement(Ht.default,{"aria-label":O,"data-testid":O+"-iconButton",ref:function(e){return n.searchButton=e},classes:{root:this.getActiveIcon(s,"search")},disabled:"disabled"===i.search,onClick:this.handleSearchIconClick},_t.default.createElement(k,null))),!(!1===i.download||"false"===i.download)&&_t.default.createElement(x,{title:M},_t.default.createElement(Ht.default,{"data-testid":M.replace(/\s/g,"")+"-iconButton","aria-label":M,classes:{root:s.icon},disabled:"disabled"===i.download,onClick:this.handleCSVDownload},_t.default.createElement(C,null))),!(!1===i.print||"false"===i.print)&&_t.default.createElement("span",null,_t.default.createElement(Ir.default,{content:function(){return n.props.tableRef()}},_t.default.createElement(Fe.PrintContextConsumer,null,(function(e){var t=e.handlePrint;return _t.default.createElement("span",null,_t.default.createElement(x,{title:P},_t.default.createElement(Ht.default,{"data-testid":P+"-iconButton","aria-label":P,disabled:"disabled"===i.print,onClick:t,classes:{root:s.icon}},_t.default.createElement(I,null))))})))),!(!1===i.viewColumns||"false"===i.viewColumns)&&_t.default.createElement(Tn,{refExit:xt.default(e=this.setActiveIcon).call(e,null),classes:{closeIcon:s.filterCloseIcon},hide:"disabled"===i.viewColumns,trigger:_t.default.createElement(x,{title:j,disableFocusListener:!0},_t.default.createElement(Ht.default,{"data-testid":j+"-iconButton","aria-label":j,classes:{root:this.getActiveIcon(s,"viewcolumns")},disabled:"disabled"===i.viewColumns,onClick:xt.default(t=this.setActiveIcon).call(t,null,"viewcolumns")},_t.default.createElement(E,null))),content:_t.default.createElement(S,{data:a,columns:l,options:i,onColumnUpdate:p,updateColumns:h,components:v})}),!(!1===bt.default(i)||"false"===bt.default(i))&&_t.default.createElement(Tn,{refExit:function(){n.setState({hideFilterPopover:!1}),n.setActiveIcon()},hide:this.state.hideFilterPopover||"disabled"===bt.default(i),classes:{paper:s.filterPaper,closeIcon:s.filterCloseIcon},trigger:_t.default.createElement(x,{title:R,disableFocusListener:!0},_t.default.createElement(Ht.default,{"data-testid":R+"-iconButton","aria-label":R,classes:{root:this.getActiveIcon(s,"filter")},disabled:"disabled"===bt.default(i),onClick:xt.default(r=this.setActiveIcon).call(r,null,"filter")},_t.default.createElement(D,null))),content:_t.default.createElement(A,{customFooter:i.customFilterDialogFooter,columns:l,options:i,filterList:u,filterData:c,onFilterUpdate:d,onFilterReset:f,handleClose:function(){n.setState({hideFilterPopover:!0})},updateFilterByType:y,components:v})}),i.customToolbar&&i.customToolbar({displayData:this.props.displayData})))}}]),r}(_t.default.Component),Ln=B.withStyles(Nn,(function(e){var t;return t={root:{"@media print":{display:"none"}},fullWidthRoot:{},left:{flex:"1 1 auto"},fullWidthLeft:{flex:"1 1 auto"},actions:{flex:"1 1 auto",textAlign:"right"},fullWidthActions:{flex:"1 1 auto",textAlign:"right"},titleRoot:{},titleText:{},fullWidthTitleText:{textAlign:"left"},icon:{"&:hover":{color:e.palette.primary.main}},iconActive:{color:e.palette.primary.main},filterPaper:{maxWidth:"50%"},filterCloseIcon:{position:"absolute",right:0,top:0,zIndex:100},searchIcon:{display:"inline-flex",marginTop:"10px",marginRight:"8px"}},lt.default(t,e.breakpoints.down("md"),{titleRoot:{},titleText:{fontSize:"16px"},spacer:{display:"none"},left:{padding:"8px 0px"},actions:{textAlign:"right"}}),lt.default(t,e.breakpoints.down("sm"),{root:{display:"block","@media print":{display:"none !important"}},left:{padding:"8px 0px 0px 0px"},titleText:{textAlign:"center"},actions:{textAlign:"center"}}),lt.default(t,"@media screen and (max-width: 480px)",{}),t}),{name:"MUIDataTableToolbar"});function Un(e){var t=function(){if("undefined"==typeof Reflect||!Ve.default)return!1;if(Ve.default.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Ve.default(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=st.default(e);if(t){var o=st.default(this).constructor;r=Ve.default(n,arguments,o)}else r=n.apply(this,arguments);return it.default(this,r)}}var Bn=function(e){at.default(r,e);var t=Un(r);function r(){var e,n;rt.default(this,r);for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=t.call.apply(t,vt.default(e=[this]).call(e,a)),lt.default(ot.default(n),"handleCustomSelectedRows",(function(e){if(!pt.default(e))throw new TypeError('"selectedRows" must be an "array", but it\'s "'.concat(tt.default(e),'"'));if(St.default(e).call(e,(function(e){return"number"!=typeof e})))throw new TypeError('Array "selectedRows" must contain only numbers');var t=n.props.options;if(e.length>1&&"single"===t.selectableRows)throw new Error('Can not select more than one row when "selectableRows" is "single"');n.props.selectRowUpdate("custom",e)})),n}return nt.default(r,[{key:"render",value:function(){var e=this.props,t=e.classes,r=e.onRowsDelete,n=e.selectedRows,o=e.options,a=e.displayData,i=e.components,s=void 0===i?{}:i,l=o.textLabels.selectedRows,c=s.Tooltip||It.default;return _t.default.createElement(kt.default,{className:t.root},_t.default.createElement("div",null,_t.default.createElement(Lt.default,{variant:"subtitle1",className:t.title},n.data.length," ",l.text)),o.customToolbarSelect?o.customToolbarSelect(n,a,this.handleCustomSelectedRows):_t.default.createElement(c,{title:l.delete},_t.default.createElement(Ht.default,{className:t.iconButton,onClick:r,"aria-label":l.deleteAria},_t.default.createElement(Er.default,{className:t.deleteIcon}))))}}]),r}(_t.default.Component);lt.default(Bn,"propTypes",{options:Rt.default.object.isRequired,rowSelected:Rt.default.bool,onRowsDelete:Rt.default.func,classes:Rt.default.object});var Fn=B.withStyles(Bn,(function(e){return{root:{backgroundColor:e.palette.background.default,flex:"1 1 100%",display:"flex",position:"relative",zIndex:120,justifyContent:"space-between",alignItems:"center",paddingTop:"function"==typeof e.spacing?e.spacing(1):e.spacing.unit,paddingBottom:"function"==typeof e.spacing?e.spacing(1):e.spacing.unit,"@media print":{display:"none"}},title:{paddingLeft:"26px"},iconButton:{marginRight:"24px"},deleteIcon:{}}}),{name:"MUIDataTableToolbarSelect"}),zn="undefined"!=typeof window&&void 0!==window.document,Wn=["selectedRows","data","displayData"],Hn=["columns","data","displayData","filterData"];function Yn(e,t){var r=Ge.default(e);if(Ze.default){var n=Ze.default(e);t&&(n=bt.default(n).call(n,(function(t){return Qe.default(e,t).enumerable}))),r.push.apply(r,n)}return r}function Vn(e){for(var t=1;t<arguments.length;t++){var r,n,o=null!=arguments[t]?arguments[t]:{};t%2?ft.default(r=Yn(Object(o),!0)).call(r,(function(t){lt.default(e,t,o[t])})):Ke.default?Xe.default(e,Ke.default(o)):ft.default(n=Yn(Object(o))).call(n,(function(t){Je.default(e,t,Qe.default(o,t))}))}return e}function Gn(e){var t=function(){if("undefined"==typeof Reflect||!Ve.default)return!1;if(Ve.default.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Ve.default(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=st.default(e);if(t){var o=st.default(this).constructor;r=Ve.default(n,arguments,o)}else r=n.apply(this,arguments);return it.default(this,r)}}var Zn=1,Qn=2,Kn=["title","filter","search","print","download","viewColumns","customToolbar"],Xn={REPLACE:"replace",ABOVE:"above",NONE:"none",ALWAYS:"always"},Jn=function(e){at.default(r,e);var t=Gn(r);function r(e){var n,o;rt.default(this,r),o=t.call(this,e),lt.default(ot.default(o),"getDefaultOptions",(function(){return{caseSensitive:!1,consoleWarnings:!0,disableToolbarSelect:!1,download:!0,downloadOptions:{filename:"tableDownload.csv",separator:","},draggableColumns:{enabled:!1,transitionTime:300},elevation:4,enableNestedDataAccess:"",expandableRows:!1,expandableRowsHeader:!0,expandableRowsOnClick:!1,filter:!0,filterArrayFullMatch:!0,filterType:"dropdown",fixedHeader:!0,fixedSelectColumn:!0,pagination:!0,print:!0,resizableColumns:!1,responsive:"vertical",rowHover:!0,rowsPerPageOptions:[10,15,100],search:!0,selectableRows:"multiple",selectableRowsHideCheckboxes:!1,selectableRowsOnClick:!1,selectableRowsHeader:!0,serverSide:!1,serverSideFilterList:null,setTableProps:function(){return{}},sort:!0,sortFilterList:!0,tableBodyHeight:"auto",tableBodyMaxHeight:null,sortOrder:{},textLabels:{body:{noMatch:"Sorry, no matching records found",toolTip:"Sort"},pagination:{next:"Next Page",previous:"Previous Page",rowsPerPage:"Rows per page:",displayRows:"of",jumpToPage:"Jump to Page:"},toolbar:{search:"Search",downloadCsv:"Download CSV",print:"Print",viewColumns:"View Columns",filterTable:"Filter Table"},filter:{all:"All",title:"FILTERS",reset:"RESET"},viewColumns:{title:"Show Columns",titleAria:"Show/Hide Table Columns"},selectedRows:{text:"row(s) selected",delete:"Delete",deleteAria:"Delete Selected Rows"}},viewColumns:!0,selectToolbarPlacement:Xn.REPLACE}})),lt.default(ot.default(o),"warnDep",(function(e,t){!function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r="function"==typeof t?t:console.warn;t&&r("Deprecation Notice:  ".concat(e))}(e,o.options.consoleWarnings)})),lt.default(ot.default(o),"warnInfo",(function(e,t){Wr(e,o.options.consoleWarnings)})),lt.default(ot.default(o),"handleOptionDeprecation",(function(e){var t,r,n,a;"boolean"==typeof o.options.selectableRows&&(o.warnDep("Using a boolean for selectableRows has been deprecated. Please use string option: multiple | single | none"),o.options.selectableRows=o.options.selectableRows?"multiple":"none"),-1===ct.default(t=["standard","vertical","verticalAlways","simple"]).call(t,o.options.responsive)&&(-1!==ct.default(n=["scrollMaxHeight","scrollFullHeight","stacked","stackedFullWidth","scrollFullHeightFullWidth","scroll"]).call(n,o.options.responsive)?o.warnDep(o.options.responsive+" has been deprecated, but will still work in version 3.x. Please use string option: standard | vertical | simple. More info: https://github.com/gregnb/mui-datatables/tree/master/docs/v2_to_v3_guide.md"):o.warnInfo(o.options.responsive+" is not recognized as a valid input for responsive option. Please use string option: standard | vertical | simple. More info: https://github.com/gregnb/mui-datatables/tree/master/docs/v2_to_v3_guide.md")),o.options.onRowsSelect&&o.warnDep("onRowsSelect has been renamed onRowSelectionChange. More info: https://github.com/gregnb/mui-datatables/tree/master/docs/v2_to_v3_guide.md"),o.options.onRowsExpand&&o.warnDep("onRowsExpand has been renamed onRowExpansionChange. More info: https://github.com/gregnb/mui-datatables/tree/master/docs/v2_to_v3_guide.md"),o.options.fixedHeaderOptions&&(void 0!==o.options.fixedHeaderOptions.yAxis&&void 0===o.options.fixedHeader&&(o.options.fixedHeader=o.options.fixedHeaderOptions.yAxis),void 0!==o.options.fixedHeaderOptions.xAxis&&void 0===o.options.fixedSelectColumn&&(o.options.fixedSelectColumn=o.options.fixedHeaderOptions.xAxis),o.warnDep("fixedHeaderOptions will still work but has been deprecated in favor of fixedHeader and fixedSelectColumn. More info: https://github.com/gregnb/mui-datatables/tree/master/docs/v2_to_v3_guide.md")),o.options.serverSideFilterList&&o.warnDep("serverSideFilterList will still work but has been deprecated in favor of the confirmFilters option. See this example for details: https://github.com/gregnb/mui-datatables/blob/master/examples/serverside-filters/index.js More info here: https://github.com/gregnb/mui-datatables/tree/master/docs/v2_to_v3_guide.md"),ut.default(r=e.columns).call(r,(function(e){e.options&&e.options.customFilterListRender&&o.warnDep("The customFilterListRender option has been deprecated. It is being replaced by customFilterListOptions.render (Specify customFilterListOptions: { render: Function } in column options.)")})),!0===o.options.disableToolbarSelect&&o.warnDep('disableToolbarSelect has been deprecated but will still work in version 3.x. It is being replaced by "selectToolbarPlacement"="none". More info: https://github.com/gregnb/mui-datatables/tree/master/docs/v2_to_v3_guide.md'),dt.default&&-1===ct.default(a=dt.default(Xn)).call(a,o.options.selectToolbarPlacement)&&o.warnDep("Invalid option value for selectToolbarPlacement. Please check the documentation: https://github.com/gregnb/mui-datatables#options")})),lt.default(ot.default(o),"setTableAction",(function(e){"function"==typeof o.options.onTableChange&&o.options.onTableChange(e,o.state),o.options.storageKey&&function(e,t){t.selectedRows,t.data,t.displayData;var r=et.default(t,Wn);window.localStorage.setItem(e,Dr.default(r))}(o.options.storageKey,o.state)})),lt.default(ot.default(o),"setTableInit",(function(e){"function"==typeof o.options.onTableInit&&o.options.onTableInit(e,o.state)})),lt.default(ot.default(o),"setHeadCellRef",(function(e,t,r){o.draggableHeadCellRefs[e]=r,o.resizeHeadCellRefs[t]=r})),lt.default(ot.default(o),"getTableContentRef",(function(){return o.tableContent.current})),lt.default(ot.default(o),"buildColumns",(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],a=[],i=[],s=[],l=[];return ft.default(e).call(e,(function(e,r){var n={display:"true",empty:!1,filter:!0,sort:!0,print:!0,searchable:!0,download:!0,viewColumns:!0,sortCompare:null,sortThirdClickReset:!1,sortDescFirst:!1};l.push(r);var c=Vn({},e.options);"object"===tt.default(e)?(c&&(void 0!==c.display&&(c.display=c.display.toString()),(null===c.sortDirection||c.sortDirection)&&o.warnDep("The sortDirection column field has been deprecated. Please use the sortOrder option on the options object. More info: https://github.com/gregnb/mui-datatables/tree/master/docs/v2_to_v3_guide.md")),void 0===c.display&&t[r]&&t[r].name===e.name&&t[r].display&&(c.display=t[r].display),n=Vn(Vn({name:e.name,label:e.label?e.label:e.name},n),c)):(t[r]&&t[r].display&&(c.display=t[r].display),n=Vn(Vn(Vn({},n),c),{},{name:e,label:e})),a.push(n),i[r]=[],s[r]=[]})),pt.default(r)?l=r:pt.default(n)&&pt.default(e)&&pt.default(t)&&e.length===t.length&&(l=n),{columns:a,filterData:i,filterList:s,columnOrder:l}})),lt.default(ot.default(o),"transformData",(function(e,t){var r=o.options.enableNestedDataAccess;return pt.default(t[0])?ut.default(t).call(t,(function(t){var r=-1;return ut.default(e).call(e,(function(e){return e.empty||r++,e.empty?void 0:t[r]}))})):ut.default(t).call(t,(function(t){return ut.default(e).call(e,(function(e){return n=t,o=e.name,ht.default(a=r?o.split(r):o.split()).call(a,(function(e,t){return e?e[t]:void 0}),n);var n,o,a}))}))})),lt.default(ot.default(o),"hasSearchText",(function(e,t,r){var n=e.toString(),o=t.toString();return r||(o=o.toLowerCase(),n=n.toLowerCase()),ct.default(n).call(n,o)>=0})),lt.default(ot.default(o),"updateDataCol",(function(e,t,r){o.setState((function(n){var a,i,s=Tt.default(n.data),l=Tt.default(n.filterData),c=o.getTableMeta(e,t,e,n.columns[t],n.data,n,n.data),u=n.columns[t].customBodyRender(r,c),d=_t.default.isValidElement(u)&&u.props.value?u.props.value:n.data[e][t],f=ct.default(a=l[t]).call(a,d);if(mt.default(i=l[t]).call(i,f,1,d),s[e].data[t]=r,o.options.sortFilterList){var p,h=Yr();gt.default(p=l[t]).call(p,h)}return{data:s,filterData:l,displayData:o.getDisplayData(n.columns,s,n.filterList,n.searchText,null,o.props)}}))})),lt.default(ot.default(o),"getTableMeta",(function(e,t,r,n,o,a,i){return a.columns,a.data,a.displayData,a.filterData,{rowIndex:e,columnIndex:t,columnData:n,rowData:r,tableData:o,tableState:et.default(a,Hn),currentTableData:i}})),lt.default(ot.default(o),"toggleViewColumn",(function(e){o.setState((function(t){var r=Tt.default(t.columns);return r[e].display="true"===r[e].display?"false":"true",{columns:r}}),(function(){o.setTableAction("viewColumnsChange");var t=o.options.onViewColumnsChange||o.options.onColumnViewChange;t&&t(o.state.columns[e].name,"true"===o.state.columns[e].display?"add":"remove")}))})),lt.default(ot.default(o),"updateColumns",(function(e){o.setState((function(t){return{columns:e}}),(function(){o.setTableAction("viewColumnsChange");var t=o.options.onViewColumnsChange||o.options.onColumnViewChange;t&&t(null,"update",e)}))})),lt.default(ot.default(o),"toggleSortColumn",(function(e){o.setState((function(t){var r,n=Tt.default(t.columns),a=t.data,i=n[e].sortDescFirst?"desc":"asc",s=["asc","desc"];if(n[e].sortDescFirst&&(s=["desc","asc"]),n[e].sortThirdClickReset&&s.push("none"),n[e].name===o.state.sortOrder.name){var l=ct.default(s).call(s,o.state.sortOrder.direction);-1!==l&&(++l>=s.length&&(l=0),i=s[l])}var c={name:n[e].name,direction:i},u=o.getSortDirectionLabel(c),d={columns:n,announceText:vt.default(r="Table now sorted by ".concat(n[e].name," : ")).call(r,u),activeColumn:e};if(o.options.serverSide)d=Vn(Vn({},d),{},{data:t.data,displayData:t.displayData,selectedRows:t.selectedRows,sortOrder:c});else{var f=o.sortTable(a,e,i,n[e].sortCompare);d=Vn(Vn({},d),{},{data:f.data,displayData:o.getDisplayData(n,f.data,t.filterList,t.searchText,null,o.props),selectedRows:f.selectedRows,sortOrder:c,previousSelectedRow:null})}return d}),(function(){o.setTableAction("sort"),o.options.onColumnSortChange&&o.options.onColumnSortChange(o.state.sortOrder.name,o.state.sortOrder.direction)}))})),lt.default(ot.default(o),"changeRowsPerPage",(function(e){var t=o.options.count||o.state.displayData.length;o.setState((function(){return{rowsPerPage:e,page:Hr(t,e,o.state.page)}}),(function(){o.setTableAction("changeRowsPerPage"),o.options.onChangeRowsPerPage&&o.options.onChangeRowsPerPage(o.state.rowsPerPage)}))})),lt.default(ot.default(o),"changePage",(function(e){o.setState((function(){return{page:e}}),(function(){o.setTableAction("changePage"),o.options.onChangePage&&o.options.onChangePage(o.state.page)}))})),lt.default(ot.default(o),"searchClose",(function(){o.setState((function(e){return{searchText:null,displayData:o.options.serverSide?e.displayData:o.getDisplayData(e.columns,e.data,e.filterList,null,null,o.props)}}),(function(){o.setTableAction("search"),o.options.onSearchChange&&o.options.onSearchChange(o.state.searchText)}))})),lt.default(ot.default(o),"searchTextUpdate",(function(e){o.setState((function(t){return{searchText:e&&e.length?e:null,page:0,displayData:o.options.serverSide?t.displayData:o.getDisplayData(t.columns,t.data,t.filterList,e,null,o.props)}}),(function(){o.setTableAction("search"),o.options.onSearchChange&&o.options.onSearchChange(o.state.searchText)}))})),lt.default(ot.default(o),"resetFilters",(function(){o.setState((function(e){var t,r=ut.default(t=e.columns).call(t,(function(){return[]}));return{filterList:r,displayData:o.options.serverSide?e.displayData:o.getDisplayData(e.columns,e.data,r,e.searchText,null,o.props)}}),(function(){o.setTableAction("resetFilters"),o.options.onFilterChange&&o.options.onFilterChange(null,o.state.filterList,"reset",null)}))})),lt.default(ot.default(o),"updateFilterByType",(function(e,t,r,n,o){var a,i,s,l=yt.default(a=e[t]).call(a,(function(e){return Mt.default(e,r)}));switch(n){case"checkbox":l>=0?mt.default(i=e[t]).call(i,l,1):e[t].push(r);break;case"chip":l>=0?mt.default(s=e[t]).call(s,l,1):e[t].push(r);break;case"multiselect":e[t]=""===r?[]:r;break;case"dropdown":e[t]=r;break;case"custom":o?e=o(e,l,t):e[t]=r;break;default:e[t]=l>=0||""===r?[]:[r]}})),lt.default(ot.default(o),"filterUpdate",(function(e,t,r,n,a,i){o.setState((function(r){var i=Tt.default(r.filterList);return o.updateFilterByType(i,e,t,n,a),{page:0,filterList:i,displayData:o.options.serverSide?r.displayData:o.getDisplayData(r.columns,r.data,i,r.searchText,null,o.props),previousSelectedRow:null}}),(function(){o.setTableAction("filterChange"),o.options.onFilterChange&&o.options.onFilterChange(r,o.state.filterList,n,e,o.state.displayData),i&&i(o.state.filterList)}))})),lt.default(ot.default(o),"toggleAllExpandableRows",(function(){var e=qe.default(o.state.expandedRows.data),t=o.options.isRowExpandable,r=[];if(e.length>0)for(var n=e.length-1;n>=0;n--){var a=e[n];(!t||t&&t(a.dataIndex,o.state.expandedRows))&&r.push(mt.default(e).call(e,n,1))}else for(var i=0;i<o.state.data.length;i++){var s=o.state.data[i];if((!t||t&&t(s.dataIndex,o.state.expandedRows))&&!0!==o.state.expandedRows.lookup[s.index]){var l={index:i,dataIndex:s.index};e.push(l),r.push(l)}}o.setState({expandedRows:{lookup:Fr(e),data:e}},(function(){var e;o.setTableAction("expandRow"),o.options.onRowExpansionChange&&o.options.onRowExpansionChange(r,o.state.expandedRows.data,ut.default(e=o.state.expandedRows.data).call(e,(function(e){return e.dataIndex})))}))})),lt.default(ot.default(o),"areAllRowsExpanded",(function(){return o.state.expandedRows.data.length===o.state.data.length})),lt.default(ot.default(o),"updateColumnOrder",(function(e,t,r){o.setState((function(t){return{columnOrder:e}}),(function(){o.setTableAction("columnOrderChange"),o.options.onColumnOrderChange&&o.options.onColumnOrderChange(o.state.columnOrder,t,r)}))})),lt.default(ot.default(o),"selectRowDelete",(function(){var e=o.state,t=e.selectedRows,r=e.data,n=e.filterList,a=Fr(t.data),i=bt.default(r).call(r,(function(e){var t=e.index;return!a[t]}));o.options.onRowsDelete&&!1===o.options.onRowsDelete(t,ut.default(i).call(i,(function(e){return e.data})))||o.setTableData({columns:o.props.columns,data:i,options:{filterList:n}},Qn,!0,(function(){o.setTableAction("rowDelete")}))})),lt.default(ot.default(o),"toggleExpandRow",(function(e){for(var t=e.dataIndex,r=o.options.isRowExpandable,n=o.state.expandedRows,a=qe.default(n.data),i=!1,s=!1,l=[],c=0;c<a.length;c++)if(a[c].dataIndex===t){i=!0;break}i?(r&&r(t,n)||!r)&&(l=mt.default(a).call(a,c,1),s=!0):r&&r(t,n)?a.push(e):r||a.push(e),o.setState({curExpandedRows:s?l:[e],expandedRows:{lookup:Fr(a),data:a}},(function(){o.setTableAction("rowExpansionChange"),(o.options.onRowExpansionChange||o.options.onRowsExpand)&&(o.options.onRowExpansionChange||o.options.onRowsExpand)(o.state.curExpandedRows,o.state.expandedRows.data)}))})),lt.default(ot.default(o),"selectRowUpdate",(function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],n=o.options.selectableRows;if("none"!==n)if("head"===e){var a=o.options.isRowSelectable;o.setState((function(e){var t,r=e.displayData,n=e.selectedRows,i=e.selectedRows.data.length,s=i===r.length||i<r.length&&i>0,l=ht.default(r).call(r,(function(e,t,o){return(!a||a(r[o].dataIndex,n))&&e.push({index:o,dataIndex:r[o].dataIndex}),e}),[]),c=qe.default(l),u=Fr(c);if(o.options.selectToolbarPlacement===Xn.NONE)if(i>r.length)s=!0;else for(var d=0;d<r.length;d++)u[r[d].dataIndex]||(s=!0);return s&&(c=bt.default(t=e.selectedRows.data).call(t,(function(e){var t=e.dataIndex;return!u[t]})),u=Fr(c)),{curSelectedRows:c,selectedRows:{data:c,lookup:u},previousSelectedRow:null}}),(function(){var e;if(o.setTableAction("rowSelectionChange"),o.options.onRowSelectionChange)o.options.onRowSelectionChange(o.state.curSelectedRows,o.state.selectedRows.data,ut.default(e=o.state.selectedRows.data).call(e,(function(e){return e.dataIndex})));else if(o.options.onRowsSelect){var t;o.options.onRowsSelect(o.state.curSelectedRows,o.state.selectedRows.data,ut.default(t=o.state.selectedRows.data).call(t,(function(e){return e.dataIndex})))}}))}else if("cell"===e)o.setState((function(e){for(var o=t.dataIndex,a=qe.default(e.selectedRows.data),i=-1,s=0;s<a.length;s++)if(a[s].dataIndex===o){i=s;break}if(i>=0){if(mt.default(a).call(a,i,1),r.length>0)for(var l=Fr(r),c=a.length-1;c>=0;c--)l[a[c].dataIndex]&&mt.default(a).call(a,c,1)}else if("single"===n)a=[t];else if(a.push(t),r.length>0){var u=Fr(a);ft.default(r).call(r,(function(e){u[e.dataIndex]||a.push(e)}))}return{selectedRows:{lookup:Fr(a),data:a},previousSelectedRow:t}}),(function(){var e;if(o.setTableAction("rowSelectionChange"),o.options.onRowSelectionChange)o.options.onRowSelectionChange([t],o.state.selectedRows.data,ut.default(e=o.state.selectedRows.data).call(e,(function(e){return e.dataIndex})));else if(o.options.onRowsSelect){var r;o.options.onRowsSelect([t],o.state.selectedRows.data,ut.default(r=o.state.selectedRows.data).call(r,(function(e){return e.dataIndex})))}}));else if("custom"===e){var i=o.state.displayData,s=ut.default(t).call(t,(function(e){return{index:e,dataIndex:i[e].dataIndex}})),l=Fr(s);o.setState({selectedRows:{data:s,lookup:l},previousSelectedRow:null},(function(){var e;if(o.setTableAction("rowSelectionChange"),o.options.onRowSelectionChange)o.options.onRowSelectionChange(o.state.selectedRows.data,o.state.selectedRows.data,ut.default(e=o.state.selectedRows.data).call(e,(function(e){return e.dataIndex})));else if(o.options.onRowsSelect){var t;o.options.onRowsSelect(o.state.selectedRows.data,o.state.selectedRows.data,ut.default(t=o.state.selectedRows.data).call(t,(function(e){return e.dataIndex})))}}))}})),o.tableRef=_t.default.createRef(),o.tableContent=_t.default.createRef(),o.draggableHeadCellRefs={},o.resizeHeadCellRefs={},o.timers={},o.setHeadResizeable=function(){},o.updateDividers=function(){},o.mergeDefaultOptions(e);var a=function(e){if(zn)return JSON.parse(window.localStorage.getItem(e));void 0===e||console.warn("storageKey support only on browser")}(e.options.storageKey);return o.state=wt.default({activeColumn:null,announceText:null,count:0,columns:[],expandedRows:{data:[],lookup:{}},data:[],displayData:[],filterData:[],filterList:[],page:0,previousSelectedRow:null,rowsPerPage:10,searchProps:{},searchText:null,selectedRows:{data:[],lookup:{}},showResponsive:!1,sortOrder:{}},a||o.getInitTableOptions()),o.setTableData=xt.default(n=o.setTableData).call(n,ot.default(o)),o.setTableData(e,Zn,!0,null,!0),o}return nt.default(r,[{key:"componentDidMount",value:function(){this.setHeadResizeable(this.resizeHeadCellRefs,this.tableRef),this.props.options.searchText&&!this.props.options.serverSide&&this.setState({page:0}),this.setTableInit("tableInitialized")}},{key:"componentDidUpdate",value:function(e){var t=this;if(this.props.data!==e.data||this.props.columns!==e.columns||this.props.options!==e.options){this.updateOptions(this.options,this.props);var r=this.props.data!==e.data;this.props.data&&e.data&&(r=r&&this.props.data.length===e.data.length),this.setTableData(this.props,Zn,r,(function(){t.setTableAction("propsUpdate")}))}this.props.options.searchText===e.options.searchText||this.props.options.serverSide||this.setState({page:0}),(!0===this.options.resizableColumns||this.options.resizableColumns&&this.options.resizableColumns.enabled)&&(this.setHeadResizeable(this.resizeHeadCellRefs,this.tableRef),this.updateDividers())}},{key:"updateOptions",value:function(e,t){!0===t.options.disableToolbarSelect&&void 0===t.options.selectToolbarPlacement&&(t.options.selectToolbarPlacement=Xn.NONE),t.options.tableId||(t.options.tableId=(Math.random()+"").replace(/\./,"")),this.options=Dt.default(e,t.options,(function(e,t,r){if("textLabels"===r||"downloadOptions"===r)return jt.default(e,t)})),this.handleOptionDeprecation(t)}},{key:"mergeDefaultOptions",value:function(e){var t=this.getDefaultOptions(),r=wt.default({},e);r.options=r.options||{},this.updateOptions(t,r)}},{key:"validateOptions",value:function(e){var t;if(e.serverSide&&void 0===e.onTableChange)throw Error("onTableChange callback must be provided when using serverSide option");if(e.expandableRows&&void 0===e.renderExpandableRow)throw Error("renderExpandableRow must be provided when using expandableRows option");e.rowsSelected&&pt.default(e.rowsSelected)&&St.default(t=e.rowsSelected).call(t,isNaN)&&Wr("When using the rowsSelected option, must be provided an array of numbers only.")}},{key:"getInitTableOptions",value:function(){var e=this,t=["rowsPerPage","page","rowsSelected","rowsPerPageOptions"],r=ht.default(t).call(t,(function(t,r){return void 0!==e.options[r]&&(t[r]=e.options[r]),t}),{});return this.validateOptions(r),r}},{key:"setTableData",value:function(e,t,r){var n,o,a,i=this,s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},l=arguments.length>4&&void 0!==arguments[4]&&arguments[4],c=[],u=this.buildColumns(e.columns,this.state.columns,this.options.columnOrder,this.state.columnOrder),d=u.columns,f=u.filterData,p=u.filterList,h=u.columnOrder,m=null,g="none";this.options.sortOrder&&this.options.sortOrder.direction&&this.options.sortOrder.name?o=wt.default({},this.options.sortOrder):(o=wt.default({},this.state.sortOrder)).direction||ft.default(a=e.columns).call(a,(function(e,t){!e.options||"asc"!==e.options.sortDirection&&"desc"!==e.options.sortDirection||(o.name=e.name,o.sortDirection=e.sortDirection)}));var v=t===Zn?this.transformData(d,e.data):e.data,y=t===Zn?this.options.searchText:null;void 0===this.options.searchText&&void 0!==this.state.searchText&&(y=this.state.searchText);var b=this.state.rowsPerPage;"number"==typeof this.options.rowsPerPage&&(b=this.options.rowsPerPage);var w=this.state.page;"number"==typeof this.options.page&&(w=this.options.page),ft.default(d).call(d,(function(e,r){for(var a=0;a<v.length;a++){var s=t===Zn?v[a][r]:v[a].data[r];if(void 0===c[a]&&c.push({index:t===Zn?a:v[a].index,data:t===Zn?v[a]:v[a].data}),!1!==bt.default(e)){var l;if("function"==typeof e.customBodyRender){var u=c[a].data;n=i.getTableMeta(a,r,u,e,v,i.state,c);var d=e.customBodyRender(s,n);_t.default.isValidElement(d)&&d.props.value?s=d.props.value:"string"==typeof d&&(s=d)}"object"!==tt.default(s)||pt.default(s)||null===s||(s=s.toString?s.toString():""),ct.default(l=f[r]).call(l,s)<0&&!pt.default(s)?f[r].push(s):pt.default(s)&&ft.default(s).call(s,(function(e){var t,n;n="object"===tt.default(e)&&null!==e||"function"==typeof e?e.toString?e.toString():"":e,ct.default(t=f[r]).call(t,n)<0&&f[r].push(n)}))}}if(e.filterOptions&&(pt.default(e.filterOptions)?(f[r]=Tt.default(e.filterOptions),i.warnDep("filterOptions must now be an object. see https://github.com/gregnb/mui-datatables/tree/master/examples/customize-filter example")):pt.default(e.filterOptions.names)&&(f[r]=Tt.default(e.filterOptions.names))),e.filterList?p[r]=Tt.default(e.filterList):i.state.filterList&&i.state.filterList[r]&&i.state.filterList[r].length>0&&(p[r]=Tt.default(i.state.filterList[r])),i.options.sortFilterList){var h,y=Yr();gt.default(h=f[r]).call(h,y)}e.name===o.name&&(g=o.direction,m=r)}));var x,S,A,k={data:[],lookup:{}},C={data:[],lookup:{}};if(this.options.rowsSelected&&this.options.rowsSelected.length&&"multiple"===this.options.selectableRows)ft.default(x=bt.default(S=this.options.rowsSelected).call(S,(function(e){return 0===e||Number(e)&&e>0}))).call(x,(function(e){for(var t=e,r=0;r<i.state.displayData.length;r++)if(i.state.displayData[r].dataIndex===e){t=r;break}k.data.push({index:t,dataIndex:e}),k.lookup[e]=!0}));else if(this.options.rowsSelected&&1===this.options.rowsSelected.length&&"single"===this.options.selectableRows){for(var I=this.options.rowsSelected[0],E=0;E<this.state.displayData.length;E++)if(this.state.displayData[E].dataIndex===this.options.rowsSelected[0]){I=E;break}k.data.push({index:I,dataIndex:this.options.rowsSelected[0]}),k.lookup[this.options.rowsSelected[0]]=!0}else this.options.rowsSelected&&this.options.rowsSelected.length>1&&"single"===this.options.selectableRows?console.error('Multiple values provided for selectableRows, but selectableRows set to "single". Either supply only a single value or use "multiple".'):void 0===this.options.rowsSelected&&!1===r&&this.state.selectedRows&&(k=wt.default({},this.state.selectedRows));if(this.options.rowsExpanded&&this.options.rowsExpanded.length&&this.options.expandableRows?ft.default(A=this.options.rowsExpanded).call(A,(function(e){for(var t=e,r=0;r<i.state.displayData.length;r++)if(i.state.displayData[r].dataIndex===e){t=r;break}C.data.push({index:t,dataIndex:e}),C.lookup[e]=!0})):void 0===this.options.rowsExpanded&&!1===r&&this.state.expandedRows&&(C=wt.default({},this.state.expandedRows)),!this.options.serverSide&&null!==m){var D=this.sortTable(c,m,g,d[m].sortCompare);c=D.data}var T={columns:d,filterData:f,filterList:p,searchText:y,selectedRows:k,expandedRows:C,count:this.options.count,data:c,sortOrder:o,rowsPerPage:b,page:w,displayData:this.getDisplayData(d,c,p,y,n,e),columnOrder:h};l?this.state=wt.default({},this.state,T):this.setState(T,s)}},{key:"computeDisplayRow",value:function(e,t,r,n,o,a,i,s,l){for(var c=this,u=!1,d=!1,f=[],p=function(){var s=t[h],p=t[h],m=e[h];if(m.customBodyRenderLite)f.push(m.customBodyRenderLite);else if(m.customBodyRender){var g,v=c.getTableMeta(r,h,t,m,a,Vn(Vn({},c.state),{},{filterList:n,searchText:o}),l),y=m.customBodyRender(p,v,xt.default(g=c.updateDataCol).call(g,null,r,h));s=y,p="string"!=typeof y&&y?y.props&&y.props.value?y.props.value:p:y,f.push(s)}else f.push(s);var b=null==p?"":p.toString(),w=n[h],x=i.caseSensitive,S=m.filterType||i.filterType;(w.length||"custom"===S)&&(m.filterOptions&&m.filterOptions.logic?m.filterOptions.logic(p,w,t)&&(u=!0):"textField"!==S||c.hasSearchText(b,w,x)?"textField"!==S&&!1===pt.default(p)&&ct.default(w).call(w,p)<0?u=!0:"textField"!==S&&pt.default(p)&&(i.filterArrayFullMatch?At.default(w).call(w,(function(e){return ct.default(p).call(p,e)>=0}))||(u=!0):St.default(w).call(w,(function(e){return ct.default(p).call(p,e)>=0}))||(u=!0)):u=!0),o&&"excluded"!==m.display&&c.hasSearchText(b,o,x)&&"false"!==m.display&&m.searchable&&(d=!0)},h=0;h<t.length;h++)p();var m=s.options.customSearch;if(o&&m){var g=m(o,t,e);"boolean"!=typeof g?console.error("customSearch must return a boolean"):d=g}return i.serverSide?(m&&console.warn("Server-side filtering is enabled, hence custom search will be ignored."),f):u||o&&!d?null:f}},{key:"getDisplayData",value:function(e,t,r,n,o,a){for(var i=[],s=o?o.tableData:a.data,l=0;l<t.length;l++){var c=t[l].data,u=this.computeDisplayRow(e,c,l,r,n,s,this.options,a,t);u&&i.push({data:u,dataIndex:t[l].index})}return i}},{key:"getSortDirectionLabel",value:function(e){switch(e.direction){case"asc":return"ascending";case"desc":return"descending";case"none":return"none";default:return""}}},{key:"getTableProps",value:function(){var e=this.props.classes,t=this.options.setTableProps()||{};return t.className=Et.default(e.tableRoot,t.className),t}},{key:"sortTable",value:function(e,t,r){var n,o=this,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=this.options.customSort&&!a,s={selectedRows:this.state.selectedRows},l=i?this.options.customSort(e,t,r||(this.options.sortDescFirst?"desc":"asc"),s):e;"none"===r&&(n=ht.default(e).call(e,(function(e,t){return e[t.index]=t,e}),[]));var c=ut.default(l).call(l,(function(e,r){return{data:e.data[t],rowData:e.data,position:r,rowSelected:!!o.state.selectedRows.lookup[e.index]}}));if(!i){var u=a||Vr;gt.default(c).call(c,u(r))}for(var d=[],f=[],p=0;p<c.length;p++){var h=c[p];d.push(l[h.position]),h.rowSelected&&f.push({index:p,dataIndex:l[h.position].index})}return{data:"none"===r?n:d,selectedRows:{lookup:Fr(f),data:f}}}},{key:"render",value:function(){var e,t,r,n,o,a=this,i=this.props,s=i.classes,l=i.className,c=i.title,u=i.components,d=u.TableBody,f=u.TableFilterList,p=u.TableFooter,h=u.TableHead,m=u.TableResize,g=u.TableToolbar,v=u.TableToolbarSelect,y=u.DragDropBackend,b=void 0===y?We.HTML5Backend:y,w=this.state,x=w.announceText,S=w.activeColumn,A=w.data,k=w.displayData,C=w.columns,I=w.page,E=w.filterData,D=w.filterList,T=w.selectedRows,O=w.previousSelectedRow,M=w.expandedRows,P=w.searchText,j=w.sortOrder,R=(w.serverSideFilterList,w.columnOrder),_=d||Xr,N=f||rn,L=p||cn,U=h||xn,B=m||En,F=g||Ln,z=v||Fn,W=this.state.count||k.length,H=this.options.pagination?this.state.rowsPerPage:k.length,Y=function(e,t){return e.title=t,!Pt.default(Ot.default(Kn,(function(t){return e[t]})))}(this.options,c),V=ut.default(C).call(C,(function(e){return{name:e.name,filterType:e.filterType||a.options.filterType}})),G=this.options.responsive,Z=vt.default(e="".concat(s.paper," ")).call(e,l),Q=this.options.tableBodyMaxHeight;switch(G){case"scroll":o=s.responsiveScroll,Q="499px";break;case"scrollMaxHeight":o=s.responsiveScrollMaxHeight,Q="499px";break;case"scrollFullHeight":o=s.responsiveScrollFullHeight,Q="none";break;case"scrollFullHeightFullWidth":o=s.responsiveScrollFullHeight,Z=vt.default(t="".concat(s.paperResponsiveScrollFullHeightFullWidth," ")).call(t,l);break;case"stacked":o=s.responsiveStacked,Q="none";break;case"stackedFullWidth":o=s.responsiveStackedFullWidth,Z=vt.default(r="".concat(s.paperResponsiveScrollFullHeightFullWidth," ")).call(r,l),Q="none";break;default:o=s.responsiveBase}var K={};Q&&(K.maxHeight=Q),this.options.tableBodyHeight&&(K.height=this.options.tableBodyHeight);var X=this.options.setTableProps&&this.options.setTableProps()||{},J=Et.default(s.tableRoot,X.className);delete X.className;var $,q={};return"undefined"!=typeof window&&(q.context=window),_t.default.createElement(kt.default,{elevation:this.options.elevation,ref:this.tableContent,className:Z},(this.options.selectToolbarPlacement===Xn.ALWAYS||T.data.length>0&&this.options.selectToolbarPlacement!==Xn.NONE)&&_t.default.createElement(z,{options:this.options,selectedRows:T,onRowsDelete:this.selectRowDelete,displayData:k,selectRowUpdate:this.selectRowUpdate,components:this.props.components}),(0===T.data.length||-1!==ct.default(n=[Xn.ABOVE,Xn.NONE]).call(n,this.options.selectToolbarPlacement))&&Y&&_t.default.createElement(F,{columns:C,columnOrder:R,displayData:k,data:A,filterData:E,filterList:D,filterUpdate:this.filterUpdate,updateFilterByType:this.updateFilterByType,options:this.options,resetFilters:this.resetFilters,searchText:P,searchTextUpdate:this.searchTextUpdate,searchClose:this.searchClose,tableRef:this.getTableContentRef,title:c,toggleViewColumn:this.toggleViewColumn,updateColumns:this.updateColumns,setTableAction:this.setTableAction,components:this.props.components}),_t.default.createElement(N,{options:this.options,serverSideFilterList:this.props.options.serverSideFilterList,filterListRenderers:ut.default(C).call(C,(function(e){return e.customFilterListOptions&&e.customFilterListOptions.render?e.customFilterListOptions.render:e.customFilterListRender?e.customFilterListRender:function(e){return e}})),customFilterListUpdate:ut.default(C).call(C,(function(e){return e.customFilterListOptions&&e.customFilterListOptions.update?e.customFilterListOptions.update:null})),filterList:D,filterUpdate:this.filterUpdate,columnNames:V}),_t.default.createElement("div",{style:Vn({position:"relative"},K),className:o},(!0===this.options.resizableColumns||this.options.resizableColumns&&this.options.resizableColumns.enabled)&&_t.default.createElement(B,{key:W,columnOrder:R,updateDividers:function(e){return a.updateDividers=e},setResizeable:function(e){return a.setHeadResizeable=e},options:this.props.options,tableId:this.options.tableId}),($=_t.default.createElement(Ct.default,$e.default({ref:function(e){return a.tableRef=e},tabIndex:"0",role:"grid",className:J},X),_t.default.createElement("caption",{className:s.caption},c),_t.default.createElement(U,{columns:C,activeColumn:S,data:k,count:W,page:I,rowsPerPage:H,selectedRows:T,selectRowUpdate:a.selectRowUpdate,toggleSort:a.toggleSortColumn,setCellRef:a.setHeadCellRef,expandedRows:M,areAllRowsExpanded:a.areAllRowsExpanded,toggleAllExpandableRows:a.toggleAllExpandableRows,options:a.options,sortOrder:j,columnOrder:R,updateColumnOrder:a.updateColumnOrder,draggableHeadCellRefs:a.draggableHeadCellRefs,tableRef:a.getTableContentRef,tableId:a.options.tableId,timers:a.timers,components:a.props.components}),_t.default.createElement(_,{data:k,count:W,columns:C,page:I,rowsPerPage:H,selectedRows:T,selectRowUpdate:a.selectRowUpdate,previousSelectedRow:O,expandedRows:M,toggleExpandRow:a.toggleExpandRow,options:a.options,columnOrder:R,filterList:D,components:a.props.components,tableId:a.options.tableId}),a.options.customTableBodyFooterRender?a.options.customTableBodyFooterRender({data:k,count:W,columns:C,selectedRows:T,selectableRows:a.options.selectableRows}):null),b?_t.default.createElement(Oe.DndProvider,$e.default({backend:b},q),$):$)),_t.default.createElement(L,{options:this.options,page:I,rowCount:W,rowsPerPage:H,changeRowsPerPage:this.changeRowsPerPage,changePage:this.changePage}),_t.default.createElement("div",{className:s.liveAnnounce,"aria-live":"polite"},x))}}]),r}(_t.default.Component);lt.default(Jn,"propTypes",{title:Rt.default.oneOfType([Rt.default.string,Rt.default.element]).isRequired,data:Rt.default.array.isRequired,columns:Rt.default.PropTypes.arrayOf(Rt.default.oneOfType([Rt.default.string,Rt.default.shape({label:Rt.default.string,name:Rt.default.string.isRequired,options:Rt.default.shape({display:Rt.default.oneOf(["true","false","excluded","always",!0,!1]),empty:Rt.default.bool,filter:Rt.default.bool,sort:Rt.default.bool,print:Rt.default.bool,searchable:Rt.default.bool,download:Rt.default.bool,viewColumns:Rt.default.bool,filterList:Rt.default.array,filterOptions:Rt.default.oneOfType([Rt.default.array,Rt.default.shape({names:Rt.default.array,logic:Rt.default.func,display:Rt.default.func})]),filterType:Rt.default.oneOf(["dropdown","checkbox","multiselect","textField","custom"]),customHeadRender:Rt.default.func,customBodyRender:Rt.default.func,customBodyRenderLite:Rt.default.func,customHeadLabelRender:Rt.default.func,customFilterListOptions:Rt.default.oneOfType([Rt.default.shape({render:Rt.default.func,update:Rt.default.func})]),customFilterListRender:Rt.default.func,setCellProps:Rt.default.func,setCellHeaderProps:Rt.default.func,sortThirdClickReset:Rt.default.bool,sortDescFirst:Rt.default.bool})})])).isRequired,options:Rt.default.shape({caseSensitive:Rt.default.bool,columnOrder:Rt.default.array,count:Rt.default.number,confirmFilters:Rt.default.bool,consoleWarnings:Rt.default.bool,customFilterDialogFooter:Rt.default.func,customFooter:Rt.default.oneOfType([Rt.default.func,Rt.default.element]),customRowRender:Rt.default.func,customSearch:Rt.default.func,customSearchRender:Rt.default.oneOfType([Rt.default.func,Rt.default.element]),customSort:Rt.default.func,customToolbar:Rt.default.oneOfType([Rt.default.func,Rt.default.element]),customToolbarSelect:Rt.default.oneOfType([Rt.default.func,Rt.default.element]),draggableColumns:Rt.default.object,enableNestedDataAccess:Rt.default.string,expandableRows:Rt.default.bool,expandableRowsHeader:Rt.default.bool,expandableRowsOnClick:Rt.default.bool,disableToolbarSelect:Rt.default.bool,download:Rt.default.oneOf([!0,!1,"true","false","disabled"]),downloadOptions:Rt.default.shape({filename:Rt.default.string,separator:Rt.default.string,filterOptions:Rt.default.shape({useDisplayedColumnsOnly:Rt.default.bool,useDisplayedRowsOnly:Rt.default.bool})}),filter:Rt.default.oneOf([!0,!1,"true","false","disabled"]),filterArrayFullMatch:Rt.default.bool,filterType:Rt.default.oneOf(["dropdown","checkbox","multiselect","textField","custom"]),fixedHeader:Rt.default.bool,fixedSelectColumn:Rt.default.bool,getTextLabels:Rt.default.func,isRowExpandable:Rt.default.func,isRowSelectable:Rt.default.func,jumpToPage:Rt.default.bool,onDownload:Rt.default.func,onFilterChange:Rt.default.func,onFilterChipClose:Rt.default.func,onFilterConfirm:Rt.default.func,onFilterDialogOpen:Rt.default.func,onFilterDialogClose:Rt.default.func,onRowClick:Rt.default.func,onRowsExpand:Rt.default.func,onRowExpansionChange:Rt.default.func,onRowsSelect:Rt.default.func,onRowSelectionChange:Rt.default.func,onTableChange:Rt.default.func,onTableInit:Rt.default.func,page:Rt.default.number,pagination:Rt.default.bool,print:Rt.default.oneOf([!0,!1,"true","false","disabled"]),searchProps:Rt.default.object,selectableRows:Rt.default.oneOfType([Rt.default.bool,Rt.default.oneOf(["none","single","multiple"])]),selectableRowsHeader:Rt.default.bool,selectableRowsHideCheckboxes:Rt.default.bool,selectableRowsOnClick:Rt.default.bool,serverSide:Rt.default.bool,tableId:Rt.default.string,tableBodyHeight:Rt.default.string,tableBodyMaxHeight:Rt.default.string,renderExpandableRow:Rt.default.func,resizableColumns:Rt.default.oneOfType([Rt.default.bool,Rt.default.object]),responsive:Rt.default.oneOf(["standard","vertical","verticalAlways","simple"]),rowHover:Rt.default.bool,rowsExpanded:Rt.default.array,rowsPerPage:Rt.default.number,rowsPerPageOptions:Rt.default.array,rowsSelected:Rt.default.array,search:Rt.default.oneOf([!0,!1,"true","false","disabled"]),searchOpen:Rt.default.bool,searchAlwaysOpen:Rt.default.bool,searchPlaceholder:Rt.default.string,searchText:Rt.default.string,setFilterChipProps:Rt.default.func,setRowProps:Rt.default.func,selectToolbarPlacement:Rt.default.oneOfType([Rt.default.bool,Rt.default.oneOf([Xn.REPLACE,Xn.ABOVE,Xn.NONE,Xn.ALWAYS])]),setTableProps:Rt.default.func,sort:Rt.default.bool,sortOrder:Rt.default.object,storageKey:Rt.default.string,viewColumns:Rt.default.oneOf([!0,!1,"true","false","disabled"])}),className:Rt.default.string,components:Rt.default.objectOf(Rt.default.any)}),lt.default(Jn,"defaultProps",{title:"",options:{},data:[],columns:[],components:{TableBody:Xr,TableFilter:qr,TableFilterList:rn,TableFooter:cn,TableHead:xn,TableResize:En,TableToolbar:Ln,TableToolbarSelect:Fn,Tooltip:It.default,icons:{}}});var $n=B.withStyles(Jn,(function(e){return{root:{"& .datatables-noprint":{"@media print":{display:"none"}}},paper:{isolation:"isolate"},paperResponsiveScrollFullHeightFullWidth:{position:"absolute"},tableRoot:{outline:"none"},responsiveBase:{overflow:"auto","@media print":{height:"auto !important"}},responsiveScroll:{overflow:"auto",height:"100%"},responsiveScrollMaxHeight:{overflow:"auto",height:"100%"},responsiveScrollFullHeight:{height:"100%"},responsiveStacked:lt.default({overflow:"auto"},e.breakpoints.down("md"),{overflow:"hidden"}),responsiveStackedFullWidth:{},caption:{position:"absolute",left:"-3000px"},liveAnnounce:{border:"0",clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0",position:"absolute",width:"1px"}}}),{name:"MUIDataTable"});function qn(e){var t=function(){if("undefined"==typeof Reflect||!Ve.default)return!1;if(Ve.default.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Ve.default(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=st.default(e);if(t){var o=st.default(this).constructor;r=Ve.default(n,arguments,o)}else r=n.apply(this,arguments);return it.default(this,r)}}var eo=function(e){at.default(r,e);var t=qn(r);function r(){var e,n;rt.default(this,r);for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=t.call.apply(t,vt.default(e=[this]).call(e,a)),lt.default(ot.default(n),"handleTextChangeWrapper",(function(e){return function(t){e(t.target.value)}})),lt.default(ot.default(n),"onKeyDown",(function(e){27===e.keyCode&&n.props.onHide()})),n}return nt.default(r,[{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.onKeyDown,!1)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.onKeyDown,!1)}},{key:"render",value:function(){var e=this,t=this.props,r=t.classes,n=t.options,o=t.onHide,a=t.searchText,i=function(e,t,r){var n;return function(){var o=this,a=arguments,i=r&&!n;clearTimeout(n),n=pr.default((function(){n=null,r||e.apply(o,a)}),t),i&&e.apply(o,a)}}((function(t){e.props.onSearch(t)}),t.debounceWait),s=n.searchAlwaysOpen?"hidden":"visible";return _t.default.createElement(br.default,{appear:!0,in:!0,timeout:300},_t.default.createElement("div",{className:r.main},_t.default.createElement(wr.default,{className:r.searchIcon}),_t.default.createElement(or.default,$e.default({variant:"standard",className:r.searchText,autoFocus:!0,InputProps:{"data-test-id":n.textLabels.toolbar.search,"aria-label":n.textLabels.toolbar.search},defaultValue:a,onChange:this.handleTextChangeWrapper(i),fullWidth:!0,inputRef:function(t){return e.searchField=t},placeholder:n.searchPlaceholder},n.searchProps?n.searchProps:{})),_t.default.createElement(Ht.default,{className:r.clearIcon,style:{visibility:s},onClick:o},_t.default.createElement(xr.default,null))))}}]),r}(_t.default.Component),to=B.withStyles(eo,(function(e){return{main:{display:"flex",flex:"1 0 auto",alignItems:"center"},searchIcon:{color:e.palette.text.secondary,marginRight:"8px"},searchText:{flex:"0.8 0"},clearIcon:{"&:hover":{color:e.palette.error.main}}}}),{name:"MUIDataTableSearch"});t.Ay=$n},28130:(e,t,r)=>{"use strict";function n(e){var t,r,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(r=n(e[t]))&&(o&&(o+=" "),o+=r);else for(t in e)e[t]&&(o&&(o+=" "),o+=t);return o}function o(){for(var e,t,r=0,o="";r<arguments.length;)(e=arguments[r++])&&(t=n(e))&&(o&&(o+=" "),o+=t);return o}r.r(t),r.d(t,{clsx:()=>o,default:()=>a});const a=o},50847:function(e,t){var r,n,o;n=[],r=function e(){"use strict";var t="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:{},r=!t.document&&!!t.postMessage,n=t.IS_PAPA_WORKER||!1,o={},a=0,i={parse:function(r,n){var s=(n=n||{}).dynamicTyping||!1;if(x(s)&&(n.dynamicTypingFunction=s,s={}),n.dynamicTyping=s,n.transform=!!x(n.transform)&&n.transform,n.worker&&i.WORKERS_SUPPORTED){var l=function(){if(!i.WORKERS_SUPPORTED)return!1;var r,n,s=(r=t.URL||t.webkitURL||null,n=e.toString(),i.BLOB_URL||(i.BLOB_URL=r.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ","(",n,")();"],{type:"text/javascript"})))),l=new t.Worker(s);return l.onmessage=g,l.id=a++,o[l.id]=l}();return l.userStep=n.step,l.userChunk=n.chunk,l.userComplete=n.complete,l.userError=n.error,n.step=x(n.step),n.chunk=x(n.chunk),n.complete=x(n.complete),n.error=x(n.error),delete n.worker,void l.postMessage({input:r,config:n,workerId:l.id})}var p=null;return i.NODE_STREAM_INPUT,"string"==typeof r?(r=function(e){return 65279===e.charCodeAt(0)?e.slice(1):e}(r),p=n.download?new c(n):new d(n)):!0===r.readable&&x(r.read)&&x(r.on)?p=new f(n):(t.File&&r instanceof File||r instanceof Object)&&(p=new u(n)),p.stream(r)},unparse:function(e,t){var r=!1,n=!0,o=",",a="\r\n",s='"',l=s+s,c=!1,u=null,d=!1;!function(){if("object"==typeof t){if("string"!=typeof t.delimiter||i.BAD_DELIMITERS.filter((function(e){return-1!==t.delimiter.indexOf(e)})).length||(o=t.delimiter),("boolean"==typeof t.quotes||"function"==typeof t.quotes||Array.isArray(t.quotes))&&(r=t.quotes),"boolean"!=typeof t.skipEmptyLines&&"string"!=typeof t.skipEmptyLines||(c=t.skipEmptyLines),"string"==typeof t.newline&&(a=t.newline),"string"==typeof t.quoteChar&&(s=t.quoteChar),"boolean"==typeof t.header&&(n=t.header),Array.isArray(t.columns)){if(0===t.columns.length)throw new Error("Option columns is empty");u=t.columns}void 0!==t.escapeChar&&(l=t.escapeChar+s),("boolean"==typeof t.escapeFormulae||t.escapeFormulae instanceof RegExp)&&(d=t.escapeFormulae instanceof RegExp?t.escapeFormulae:/^[=+\-@\t\r].*$/)}}();var f=new RegExp(h(s),"g");if("string"==typeof e&&(e=JSON.parse(e)),Array.isArray(e)){if(!e.length||Array.isArray(e[0]))return p(null,e,c);if("object"==typeof e[0])return p(u||Object.keys(e[0]),e,c)}else if("object"==typeof e)return"string"==typeof e.data&&(e.data=JSON.parse(e.data)),Array.isArray(e.data)&&(e.fields||(e.fields=e.meta&&e.meta.fields||u),e.fields||(e.fields=Array.isArray(e.data[0])?e.fields:"object"==typeof e.data[0]?Object.keys(e.data[0]):[]),Array.isArray(e.data[0])||"object"==typeof e.data[0]||(e.data=[e.data])),p(e.fields||[],e.data||[],c);throw new Error("Unable to serialize unrecognized input");function p(e,t,r){var i="";"string"==typeof e&&(e=JSON.parse(e)),"string"==typeof t&&(t=JSON.parse(t));var s=Array.isArray(e)&&0<e.length,l=!Array.isArray(t[0]);if(s&&n){for(var c=0;c<e.length;c++)0<c&&(i+=o),i+=m(e[c],c);0<t.length&&(i+=a)}for(var u=0;u<t.length;u++){var d=s?e.length:t[u].length,f=!1,p=s?0===Object.keys(t[u]).length:0===t[u].length;if(r&&!s&&(f="greedy"===r?""===t[u].join("").trim():1===t[u].length&&0===t[u][0].length),"greedy"===r&&s){for(var h=[],g=0;g<d;g++){var v=l?e[g]:g;h.push(t[u][v])}f=""===h.join("").trim()}if(!f){for(var y=0;y<d;y++){0<y&&!p&&(i+=o);var b=s&&l?e[y]:y;i+=m(t[u][b],y)}u<t.length-1&&(!r||0<d&&!p)&&(i+=a)}}return i}function m(e,t){if(null==e)return"";if(e.constructor===Date)return JSON.stringify(e).slice(1,25);var n=!1;d&&"string"==typeof e&&d.test(e)&&(e="'"+e,n=!0);var a=e.toString().replace(f,l);return(n=n||!0===r||"function"==typeof r&&r(e,t)||Array.isArray(r)&&r[t]||function(e,t){for(var r=0;r<t.length;r++)if(-1<e.indexOf(t[r]))return!0;return!1}(a,i.BAD_DELIMITERS)||-1<a.indexOf(o)||" "===a.charAt(0)||" "===a.charAt(a.length-1))?s+a+s:a}}};if(i.RECORD_SEP=String.fromCharCode(30),i.UNIT_SEP=String.fromCharCode(31),i.BYTE_ORDER_MARK="\ufeff",i.BAD_DELIMITERS=["\r","\n",'"',i.BYTE_ORDER_MARK],i.WORKERS_SUPPORTED=!r&&!!t.Worker,i.NODE_STREAM_INPUT=1,i.LocalChunkSize=10485760,i.RemoteChunkSize=5242880,i.DefaultDelimiter=",",i.Parser=m,i.ParserHandle=p,i.NetworkStreamer=c,i.FileStreamer=u,i.StringStreamer=d,i.ReadableStreamStreamer=f,t.jQuery){var s=t.jQuery;s.fn.parse=function(e){var r=e.config||{},n=[];return this.each((function(e){if("INPUT"!==s(this).prop("tagName").toUpperCase()||"file"!==s(this).attr("type").toLowerCase()||!t.FileReader||!this.files||0===this.files.length)return!0;for(var o=0;o<this.files.length;o++)n.push({file:this.files[o],inputElem:this,instanceConfig:s.extend({},r)})})),o(),this;function o(){if(0!==n.length){var t,r,o,l,c=n[0];if(x(e.before)){var u=e.before(c.file,c.inputElem);if("object"==typeof u){if("abort"===u.action)return t="AbortError",r=c.file,o=c.inputElem,l=u.reason,void(x(e.error)&&e.error({name:t},r,o,l));if("skip"===u.action)return void a();"object"==typeof u.config&&(c.instanceConfig=s.extend(c.instanceConfig,u.config))}else if("skip"===u)return void a()}var d=c.instanceConfig.complete;c.instanceConfig.complete=function(e){x(d)&&d(e,c.file,c.inputElem),a()},i.parse(c.file,c.instanceConfig)}else x(e.complete)&&e.complete()}function a(){n.splice(0,1),o()}}}function l(e){this._handle=null,this._finished=!1,this._completed=!1,this._halted=!1,this._input=null,this._baseIndex=0,this._partialLine="",this._rowCount=0,this._start=0,this._nextChunk=null,this.isFirstChunk=!0,this._completeResults={data:[],errors:[],meta:{}},function(e){var t=b(e);t.chunkSize=parseInt(t.chunkSize),e.step||e.chunk||(t.chunkSize=null),this._handle=new p(t),(this._handle.streamer=this)._config=t}.call(this,e),this.parseChunk=function(e,r){if(this.isFirstChunk&&x(this._config.beforeFirstChunk)){var o=this._config.beforeFirstChunk(e);void 0!==o&&(e=o)}this.isFirstChunk=!1,this._halted=!1;var a=this._partialLine+e;this._partialLine="";var s=this._handle.parse(a,this._baseIndex,!this._finished);if(!this._handle.paused()&&!this._handle.aborted()){var l=s.meta.cursor;this._finished||(this._partialLine=a.substring(l-this._baseIndex),this._baseIndex=l),s&&s.data&&(this._rowCount+=s.data.length);var c=this._finished||this._config.preview&&this._rowCount>=this._config.preview;if(n)t.postMessage({results:s,workerId:i.WORKER_ID,finished:c});else if(x(this._config.chunk)&&!r){if(this._config.chunk(s,this._handle),this._handle.paused()||this._handle.aborted())return void(this._halted=!0);s=void 0,this._completeResults=void 0}return this._config.step||this._config.chunk||(this._completeResults.data=this._completeResults.data.concat(s.data),this._completeResults.errors=this._completeResults.errors.concat(s.errors),this._completeResults.meta=s.meta),this._completed||!c||!x(this._config.complete)||s&&s.meta.aborted||(this._config.complete(this._completeResults,this._input),this._completed=!0),c||s&&s.meta.paused||this._nextChunk(),s}this._halted=!0},this._sendError=function(e){x(this._config.error)?this._config.error(e):n&&this._config.error&&t.postMessage({workerId:i.WORKER_ID,error:e,finished:!1})}}function c(e){var t;(e=e||{}).chunkSize||(e.chunkSize=i.RemoteChunkSize),l.call(this,e),this._nextChunk=r?function(){this._readChunk(),this._chunkLoaded()}:function(){this._readChunk()},this.stream=function(e){this._input=e,this._nextChunk()},this._readChunk=function(){if(this._finished)this._chunkLoaded();else{if(t=new XMLHttpRequest,this._config.withCredentials&&(t.withCredentials=this._config.withCredentials),r||(t.onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)),t.open(this._config.downloadRequestBody?"POST":"GET",this._input,!r),this._config.downloadRequestHeaders){var e=this._config.downloadRequestHeaders;for(var n in e)t.setRequestHeader(n,e[n])}if(this._config.chunkSize){var o=this._start+this._config.chunkSize-1;t.setRequestHeader("Range","bytes="+this._start+"-"+o)}try{t.send(this._config.downloadRequestBody)}catch(e){this._chunkError(e.message)}r&&0===t.status&&this._chunkError()}},this._chunkLoaded=function(){4===t.readyState&&(t.status<200||400<=t.status?this._chunkError():(this._start+=this._config.chunkSize?this._config.chunkSize:t.responseText.length,this._finished=!this._config.chunkSize||this._start>=function(e){var t=e.getResponseHeader("Content-Range");return null===t?-1:parseInt(t.substring(t.lastIndexOf("/")+1))}(t),this.parseChunk(t.responseText)))},this._chunkError=function(e){var r=t.statusText||e;this._sendError(new Error(r))}}function u(e){var t,r;(e=e||{}).chunkSize||(e.chunkSize=i.LocalChunkSize),l.call(this,e);var n="undefined"!=typeof FileReader;this.stream=function(e){this._input=e,r=e.slice||e.webkitSlice||e.mozSlice,n?((t=new FileReader).onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)):t=new FileReaderSync,this._nextChunk()},this._nextChunk=function(){this._finished||this._config.preview&&!(this._rowCount<this._config.preview)||this._readChunk()},this._readChunk=function(){var e=this._input;if(this._config.chunkSize){var o=Math.min(this._start+this._config.chunkSize,this._input.size);e=r.call(e,this._start,o)}var a=t.readAsText(e,this._config.encoding);n||this._chunkLoaded({target:{result:a}})},this._chunkLoaded=function(e){this._start+=this._config.chunkSize,this._finished=!this._config.chunkSize||this._start>=this._input.size,this.parseChunk(e.target.result)},this._chunkError=function(){this._sendError(t.error)}}function d(e){var t;l.call(this,e=e||{}),this.stream=function(e){return t=e,this._nextChunk()},this._nextChunk=function(){if(!this._finished){var e,r=this._config.chunkSize;return r?(e=t.substring(0,r),t=t.substring(r)):(e=t,t=""),this._finished=!t,this.parseChunk(e)}}}function f(e){l.call(this,e=e||{});var t=[],r=!0,n=!1;this.pause=function(){l.prototype.pause.apply(this,arguments),this._input.pause()},this.resume=function(){l.prototype.resume.apply(this,arguments),this._input.resume()},this.stream=function(e){this._input=e,this._input.on("data",this._streamData),this._input.on("end",this._streamEnd),this._input.on("error",this._streamError)},this._checkIsFinished=function(){n&&1===t.length&&(this._finished=!0)},this._nextChunk=function(){this._checkIsFinished(),t.length?this.parseChunk(t.shift()):r=!0},this._streamData=w((function(e){try{t.push("string"==typeof e?e:e.toString(this._config.encoding)),r&&(r=!1,this._checkIsFinished(),this.parseChunk(t.shift()))}catch(e){this._streamError(e)}}),this),this._streamError=w((function(e){this._streamCleanUp(),this._sendError(e)}),this),this._streamEnd=w((function(){this._streamCleanUp(),n=!0,this._streamData("")}),this),this._streamCleanUp=w((function(){this._input.removeListener("data",this._streamData),this._input.removeListener("end",this._streamEnd),this._input.removeListener("error",this._streamError)}),this)}function p(e){var t,r,n,o=Math.pow(2,53),a=-o,s=/^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/,l=/^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/,c=this,u=0,d=0,f=!1,p=!1,g=[],v={data:[],errors:[],meta:{}};if(x(e.step)){var y=e.step;e.step=function(t){if(v=t,A())S();else{if(S(),0===v.data.length)return;u+=t.data.length,e.preview&&u>e.preview?r.abort():(v.data=v.data[0],y(v,c))}}}function w(t){return"greedy"===e.skipEmptyLines?""===t.join("").trim():1===t.length&&0===t[0].length}function S(){return v&&n&&(C("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+i.DefaultDelimiter+"'"),n=!1),e.skipEmptyLines&&(v.data=v.data.filter((function(e){return!w(e)}))),A()&&function(){if(v)if(Array.isArray(v.data[0])){for(var t=0;A()&&t<v.data.length;t++)v.data[t].forEach(r);v.data.splice(0,1)}else v.data.forEach(r);function r(t,r){x(e.transformHeader)&&(t=e.transformHeader(t,r)),g.push(t)}}(),function(){if(!v||!e.header&&!e.dynamicTyping&&!e.transform)return v;function t(t,r){var n,o=e.header?{}:[];for(n=0;n<t.length;n++){var a=n,i=t[n];e.header&&(a=n>=g.length?"__parsed_extra":g[n]),e.transform&&(i=e.transform(i,a)),i=k(a,i),"__parsed_extra"===a?(o[a]=o[a]||[],o[a].push(i)):o[a]=i}return e.header&&(n>g.length?C("FieldMismatch","TooManyFields","Too many fields: expected "+g.length+" fields but parsed "+n,d+r):n<g.length&&C("FieldMismatch","TooFewFields","Too few fields: expected "+g.length+" fields but parsed "+n,d+r)),o}var r=1;return!v.data.length||Array.isArray(v.data[0])?(v.data=v.data.map(t),r=v.data.length):v.data=t(v.data,0),e.header&&v.meta&&(v.meta.fields=g),d+=r,v}()}function A(){return e.header&&0===g.length}function k(t,r){return n=t,e.dynamicTypingFunction&&void 0===e.dynamicTyping[n]&&(e.dynamicTyping[n]=e.dynamicTypingFunction(n)),!0===(e.dynamicTyping[n]||e.dynamicTyping)?"true"===r||"TRUE"===r||"false"!==r&&"FALSE"!==r&&(function(e){if(s.test(e)){var t=parseFloat(e);if(a<t&&t<o)return!0}return!1}(r)?parseFloat(r):l.test(r)?new Date(r):""===r?null:r):r;var n}function C(e,t,r,n){var o={type:e,code:t,message:r};void 0!==n&&(o.row=n),v.errors.push(o)}this.parse=function(o,a,s){var l=e.quoteChar||'"';if(e.newline||(e.newline=function(e,t){e=e.substring(0,1048576);var r=new RegExp(h(t)+"([^]*?)"+h(t),"gm"),n=(e=e.replace(r,"")).split("\r"),o=e.split("\n"),a=1<o.length&&o[0].length<n[0].length;if(1===n.length||a)return"\n";for(var i=0,s=0;s<n.length;s++)"\n"===n[s][0]&&i++;return i>=n.length/2?"\r\n":"\r"}(o,l)),n=!1,e.delimiter)x(e.delimiter)&&(e.delimiter=e.delimiter(o),v.meta.delimiter=e.delimiter);else{var c=function(t,r,n,o,a){var s,l,c,u;a=a||[",","\t","|",";",i.RECORD_SEP,i.UNIT_SEP];for(var d=0;d<a.length;d++){var f=a[d],p=0,h=0,g=0;c=void 0;for(var v=new m({comments:o,delimiter:f,newline:r,preview:10}).parse(t),y=0;y<v.data.length;y++)if(n&&w(v.data[y]))g++;else{var b=v.data[y].length;h+=b,void 0!==c?0<b&&(p+=Math.abs(b-c),c=b):c=b}0<v.data.length&&(h/=v.data.length-g),(void 0===l||p<=l)&&(void 0===u||u<h)&&1.99<h&&(l=p,s=f,u=h)}return{successful:!!(e.delimiter=s),bestDelimiter:s}}(o,e.newline,e.skipEmptyLines,e.comments,e.delimitersToGuess);c.successful?e.delimiter=c.bestDelimiter:(n=!0,e.delimiter=i.DefaultDelimiter),v.meta.delimiter=e.delimiter}var u=b(e);return e.preview&&e.header&&u.preview++,t=o,r=new m(u),v=r.parse(t,a,s),S(),f?{meta:{paused:!0}}:v||{meta:{paused:!1}}},this.paused=function(){return f},this.pause=function(){f=!0,r.abort(),t=x(e.chunk)?"":t.substring(r.getCharIndex())},this.resume=function(){c.streamer._halted?(f=!1,c.streamer.parseChunk(t,!0)):setTimeout(c.resume,3)},this.aborted=function(){return p},this.abort=function(){p=!0,r.abort(),v.meta.aborted=!0,x(e.complete)&&e.complete(v),t=""}}function h(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function m(e){var t,r=(e=e||{}).delimiter,n=e.newline,o=e.comments,a=e.step,s=e.preview,l=e.fastMode,c=t=void 0===e.quoteChar||null===e.quoteChar?'"':e.quoteChar;if(void 0!==e.escapeChar&&(c=e.escapeChar),("string"!=typeof r||-1<i.BAD_DELIMITERS.indexOf(r))&&(r=","),o===r)throw new Error("Comment character same as delimiter");!0===o?o="#":("string"!=typeof o||-1<i.BAD_DELIMITERS.indexOf(o))&&(o=!1),"\n"!==n&&"\r"!==n&&"\r\n"!==n&&(n="\n");var u=0,d=!1;this.parse=function(i,f,p){if("string"!=typeof i)throw new Error("Input must be a string");var m=i.length,g=r.length,v=n.length,y=o.length,b=x(a),w=[],S=[],A=[],k=u=0;if(!i)return G();if(e.header&&!f){var C=i.split(n)[0].split(r),I=[],E={},D=!1;for(var T in C){var O=C[T];x(e.transformHeader)&&(O=e.transformHeader(O,T));var M=O,P=E[O]||0;for(0<P&&(D=!0,M=O+"_"+P),E[O]=P+1;I.includes(M);)M=M+"_"+P;I.push(M)}if(D){var j=i.split(n);j[0]=I.join(r),i=j.join(n)}}if(l||!1!==l&&-1===i.indexOf(t)){for(var R=i.split(n),_=0;_<R.length;_++){if(A=R[_],u+=A.length,_!==R.length-1)u+=n.length;else if(p)return G();if(!o||A.substring(0,y)!==o){if(b){if(w=[],W(A.split(r)),Z(),d)return G()}else W(A.split(r));if(s&&s<=_)return w=w.slice(0,s),G(!0)}}return G()}for(var N=i.indexOf(r,u),L=i.indexOf(n,u),U=new RegExp(h(c)+h(t),"g"),B=i.indexOf(t,u);;)if(i[u]!==t)if(o&&0===A.length&&i.substring(u,u+y)===o){if(-1===L)return G();u=L+v,L=i.indexOf(n,u),N=i.indexOf(r,u)}else if(-1!==N&&(N<L||-1===L))A.push(i.substring(u,N)),u=N+g,N=i.indexOf(r,u);else{if(-1===L)break;if(A.push(i.substring(u,L)),V(L+v),b&&(Z(),d))return G();if(s&&w.length>=s)return G(!0)}else for(B=u,u++;;){if(-1===(B=i.indexOf(t,B+1)))return p||S.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:w.length,index:u}),Y();if(B===m-1)return Y(i.substring(u,B).replace(U,t));if(t!==c||i[B+1]!==c){if(t===c||0===B||i[B-1]!==c){-1!==N&&N<B+1&&(N=i.indexOf(r,B+1)),-1!==L&&L<B+1&&(L=i.indexOf(n,B+1));var F=H(-1===L?N:Math.min(N,L));if(i.substr(B+1+F,g)===r){A.push(i.substring(u,B).replace(U,t)),i[u=B+1+F+g]!==t&&(B=i.indexOf(t,u)),N=i.indexOf(r,u),L=i.indexOf(n,u);break}var z=H(L);if(i.substring(B+1+z,B+1+z+v)===n){if(A.push(i.substring(u,B).replace(U,t)),V(B+1+z+v),N=i.indexOf(r,u),B=i.indexOf(t,u),b&&(Z(),d))return G();if(s&&w.length>=s)return G(!0);break}S.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:w.length,index:u}),B++}}else B++}return Y();function W(e){w.push(e),k=u}function H(e){var t=0;if(-1!==e){var r=i.substring(B+1,e);r&&""===r.trim()&&(t=r.length)}return t}function Y(e){return p||(void 0===e&&(e=i.substring(u)),A.push(e),u=m,W(A),b&&Z()),G()}function V(e){u=e,W(A),A=[],L=i.indexOf(n,u)}function G(e){return{data:w,errors:S,meta:{delimiter:r,linebreak:n,aborted:d,truncated:!!e,cursor:k+(f||0)}}}function Z(){a(G()),w=[],S=[]}},this.abort=function(){d=!0},this.getCharIndex=function(){return u}}function g(e){var t=e.data,r=o[t.workerId],n=!1;if(t.error)r.userError(t.error,t.file);else if(t.results&&t.results.data){var a={abort:function(){n=!0,v(t.workerId,{data:[],errors:[],meta:{aborted:!0}})},pause:y,resume:y};if(x(r.userStep)){for(var i=0;i<t.results.data.length&&(r.userStep({data:t.results.data[i],errors:t.results.errors,meta:t.results.meta},a),!n);i++);delete t.results}else x(r.userChunk)&&(r.userChunk(t.results,a,t.file),delete t.results)}t.finished&&!n&&v(t.workerId,t.results)}function v(e,t){var r=o[e];x(r.userComplete)&&r.userComplete(t),r.terminate(),delete o[e]}function y(){throw new Error("Not implemented.")}function b(e){if("object"!=typeof e||null===e)return e;var t=Array.isArray(e)?[]:{};for(var r in e)t[r]=b(e[r]);return t}function w(e,t){return function(){e.apply(t,arguments)}}function x(e){return"function"==typeof e}return n&&(t.onmessage=function(e){var r=e.data;if(void 0===i.WORKER_ID&&r&&(i.WORKER_ID=r.workerId),"string"==typeof r.input)t.postMessage({workerId:i.WORKER_ID,results:i.parse(r.input,r.config),finished:!0});else if(t.File&&r.input instanceof File||r.input instanceof Object){var n=i.parse(r.input,r.config);n&&t.postMessage({workerId:i.WORKER_ID,results:n,finished:!0})}}),(c.prototype=Object.create(l.prototype)).constructor=c,(u.prototype=Object.create(l.prototype)).constructor=u,(d.prototype=Object.create(d.prototype)).constructor=d,(f.prototype=Object.create(l.prototype)).constructor=f,i},void 0===(o="function"===typeof r?r.apply(t,n):r)||(e.exports=o)},43488:(e,t,r)=>{"use strict";var n=r(93959);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,r,o,a,i){if(i!==n){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:o};return r.PropTypes=r,r}},11942:(e,t,r)=>{e.exports=r(43488)()},93959:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},47356:e=>{"use strict";function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,r,n,o){r=r||"&",n=n||"=";var a={};if("string"!==typeof e||0===e.length)return a;var i=/\+/g;e=e.split(r);var s=1e3;o&&"number"===typeof o.maxKeys&&(s=o.maxKeys);var l=e.length;s>0&&l>s&&(l=s);for(var c=0;c<l;++c){var u,d,f,p,h=e[c].replace(i,"%20"),m=h.indexOf(n);m>=0?(u=h.substr(0,m),d=h.substr(m+1)):(u=h,d=""),f=decodeURIComponent(u),p=decodeURIComponent(d),t(a,f)?Array.isArray(a[f])?a[f].push(p):a[f]=[a[f],p]:a[f]=p}return a}},75252:e=>{"use strict";var t=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,r,n,o){return r=r||"&",n=n||"=",null===e&&(e=void 0),"object"===typeof e?Object.keys(e).map((function(o){var a=encodeURIComponent(t(o))+n;return Array.isArray(e[o])?e[o].map((function(e){return a+encodeURIComponent(t(e))})).join(r):a+encodeURIComponent(t(e[o]))})).join(r):o?encodeURIComponent(t(o))+n+encodeURIComponent(t(e)):""}},42392:(e,t,r)=>{"use strict";t.decode=t.parse=r(47356),t.encode=t.stringify=r(75252)},72348:function(e,t,r){!function(e,t,r,n,o,a,i,s,l,c,u,d,f,p,h,m,g,v,y,b,w,x,S,A,k,C,I,E,D,T,O,M,P,j,R,_,N,L,U,B,F,z,W,H,Y,V,G,Z,Q,K,X,J,$,q,ee,te,re,ne,oe,ae,ie,se,le,ce,ue){"use strict";function de(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var fe=de(r),pe=de(ue),he=function(e,t){return he=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},he(e,t)};function me(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}he(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var ge=function(){return ge=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},ge.apply(this,arguments)};function ve(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o<a;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))}"function"==typeof SuppressedError&&SuppressedError;var ye,be=function(e){var t=e.showTimeSelectOnly,r=void 0!==t&&t,n=e.showTime,o=void 0!==n&&n,a=e.className,i=e.children,s=r?"Choose Time":"Choose Date".concat(o?" and Time":"");return fe.default.createElement("div",{className:a,role:"dialog","aria-label":s,"aria-modal":"true"},i)},we=function(e){var t=e.children,n=e.onClickOutside,o=e.className,a=e.containerRef,i=e.style,s=function(e,t){var n=r.useRef(null),o=r.useRef(e);o.current=e;var a=r.useCallback((function(e){var r;n.current&&!n.current.contains(e.target)&&(t&&e.target instanceof HTMLElement&&e.target.classList.contains(t)||null===(r=o.current)||void 0===r||r.call(o,e))}),[t]);return r.useEffect((function(){return document.addEventListener("mousedown",a),function(){document.removeEventListener("mousedown",a)}}),[a]),n}(n,e.ignoreClass);return fe.default.createElement("div",{className:o,style:i,ref:function(e){s.current=e,a&&(a.current=e)}},t)};function xe(){return"undefined"!=typeof window?window:globalThis}!function(e){e.ArrowUp="ArrowUp",e.ArrowDown="ArrowDown",e.ArrowLeft="ArrowLeft",e.ArrowRight="ArrowRight",e.PageUp="PageUp",e.PageDown="PageDown",e.Home="Home",e.End="End",e.Enter="Enter",e.Space=" ",e.Tab="Tab",e.Escape="Escape",e.Backspace="Backspace",e.X="x"}(ye||(ye={}));var Se=12,Ae=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;function ke(e){if(null==e)return new Date;var t="string"==typeof e?Y.parseISO(e):le.toDate(e);return Ie(t)?t:new Date}function Ce(e,t,r,n,o){var a,i=null,s=Ve(r)||Ve(Ye()),l=!0;if(Array.isArray(t))return t.forEach((function(t){var a=H.parse(e,t,new Date,{locale:s,useAdditionalWeekYearTokens:!0,useAdditionalDayOfYearTokens:!0});n&&(l=Ie(a,o)&&e===Ee(a,t,r)),Ie(a,o)&&l&&(i=a)})),i;if(i=H.parse(e,t,new Date,{locale:s,useAdditionalWeekYearTokens:!0,useAdditionalDayOfYearTokens:!0}),n)l=Ie(i)&&e===Ee(i,t,r);else if(!Ie(i)){var c=(null!==(a=t.match(Ae))&&void 0!==a?a:[]).map((function(e){var t=e[0];if("p"===t||"P"===t){var r=w.longFormatters[t];return s?r(e,s.formatLong):t}return e})).join("");e.length>0&&(i=H.parse(e,c.slice(0,e.length),new Date,{useAdditionalWeekYearTokens:!0,useAdditionalDayOfYearTokens:!0})),Ie(i)||(i=new Date(e))}return Ie(i)&&l?i:null}function Ie(e,t){return B.isValid(e)&&!P.isBefore(e,null!=t?t:new Date("1/1/1800"))}function Ee(e,t,r){if("en"===r)return w.format(e,t,{useAdditionalWeekYearTokens:!0,useAdditionalDayOfYearTokens:!0});var n=r?Ve(r):void 0;return r&&!n&&console.warn('A locale object was not found for the provided string ["'.concat(r,'"].')),!n&&Ye()&&Ve(Ye())&&(n=Ve(Ye())),w.format(e,t,{locale:n,useAdditionalWeekYearTokens:!0,useAdditionalDayOfYearTokens:!0})}function De(e,t){var r=t.dateFormat,n=t.locale,o=Array.isArray(r)&&r.length>0?r[0]:r;return e&&Ee(e,o,n)||""}function Te(e,t){var r=t.hour,n=void 0===r?0:r,o=t.minute,a=void 0===o?0:o,i=t.second,s=void 0===i?0:i;return G.setHours(Z.setMinutes(X.setSeconds(e,s),a),n)}function Oe(e){return $.startOfDay(e)}function Me(e,t,r){var n=Ve(t||Ye());return te.startOfWeek(e,{locale:n,weekStartsOn:r})}function Pe(e){return q.startOfMonth(e)}function je(e){return re.startOfYear(e)}function Re(e){return ee.startOfQuarter(e)}function _e(){return $.startOfDay(ke())}function Ne(e){return g.endOfDay(e)}function Le(e){return v.endOfMonth(e)}function Ue(e,t){return e&&t?U.isSameYear(e,t):!e&&!t}function Be(e,t){return e&&t?N.isSameMonth(e,t):!e&&!t}function Fe(e,t){return e&&t?L.isSameQuarter(e,t):!e&&!t}function ze(e,t){return e&&t?_.isSameDay(e,t):!e&&!t}function We(e,t){return e&&t?R.isEqual(e,t):!e&&!t}function He(e,t,r){var n,o=$.startOfDay(t),a=g.endOfDay(r);try{n=F.isWithinInterval(e,{start:o,end:a})}catch(e){n=!1}return n}function Ye(){return xe().__localeId__}function Ve(e){if("string"==typeof e){var t=xe();return t.__localeData__?t.__localeData__[e]:void 0}return e}function Ge(e,t){return Ee(Q.setMonth(ke(),e),"LLLL",t)}function Ze(e,t){return Ee(Q.setMonth(ke(),e),"LLL",t)}function Qe(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.maxDate,a=r.excludeDates,i=r.excludeDateIntervals,s=r.includeDates,l=r.includeDateIntervals,c=r.filterDate;return nt(e,{minDate:n,maxDate:o})||a&&a.some((function(t){return t instanceof Date?ze(e,t):ze(e,t.date)}))||i&&i.some((function(t){var r=t.start,n=t.end;return F.isWithinInterval(e,{start:r,end:n})}))||s&&!s.some((function(t){return ze(e,t)}))||l&&!l.some((function(t){var r=t.start,n=t.end;return F.isWithinInterval(e,{start:r,end:n})}))||c&&!c(ke(e))||!1}function Ke(e,t){var r=void 0===t?{}:t,n=r.excludeDates,o=r.excludeDateIntervals;return o&&o.length>0?o.some((function(t){var r=t.start,n=t.end;return F.isWithinInterval(e,{start:r,end:n})})):n&&n.some((function(t){var r;return t instanceof Date?ze(e,t):ze(e,null!==(r=t.date)&&void 0!==r?r:new Date)}))||!1}function Xe(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.maxDate,a=r.excludeDates,i=r.includeDates,s=r.filterDate;return nt(e,{minDate:n?q.startOfMonth(n):void 0,maxDate:o?v.endOfMonth(o):void 0})||(null==a?void 0:a.some((function(t){return Be(e,t instanceof Date?t:t.date)})))||i&&!i.some((function(t){return Be(e,t)}))||s&&!s(ke(e))||!1}function Je(e,t,r,n){var o=O.getYear(e),a=I.getMonth(e),i=O.getYear(t),s=I.getMonth(t),l=O.getYear(n);return o===i&&o===l?a<=r&&r<=s:o<i&&(l===o&&a<=r||l===i&&s>=r||l<i&&l>o)}function $e(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.maxDate,a=r.excludeDates,i=r.includeDates;return nt(e,{minDate:n,maxDate:o})||a&&a.some((function(t){return Be(t instanceof Date?t:t.date,e)}))||i&&!i.some((function(t){return Be(t,e)}))||!1}function qe(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.maxDate,a=r.excludeDates,i=r.includeDates,s=r.filterDate;return nt(e,{minDate:n,maxDate:o})||(null==a?void 0:a.some((function(t){return Fe(e,t instanceof Date?t:t.date)})))||i&&!i.some((function(t){return Fe(e,t)}))||s&&!s(ke(e))||!1}function et(e,t,r){if(!t||!r)return!1;if(!B.isValid(t)||!B.isValid(r))return!1;var n=O.getYear(t),o=O.getYear(r);return n<=e&&o>=e}function tt(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.maxDate,a=r.excludeDates,i=r.includeDates,s=r.filterDate,l=new Date(e,0,1);return nt(l,{minDate:n?re.startOfYear(n):void 0,maxDate:o?b.endOfYear(o):void 0})||(null==a?void 0:a.some((function(e){return Ue(l,e instanceof Date?e:e.date)})))||i&&!i.some((function(e){return Ue(l,e)}))||s&&!s(ke(l))||!1}function rt(e,t,r,n){var o=O.getYear(e),a=E.getQuarter(e),i=O.getYear(t),s=E.getQuarter(t),l=O.getYear(n);return o===i&&o===l?a<=r&&r<=s:o<i&&(l===o&&a<=r||l===i&&s>=r||l<i&&l>o)}function nt(e,t){var r,n=void 0===t?{}:t,o=n.minDate,a=n.maxDate;return null!==(r=o&&f.differenceInCalendarDays(e,o)<0||a&&f.differenceInCalendarDays(e,a)>0)&&void 0!==r&&r}function ot(e,t){return t.some((function(t){return A.getHours(t)===A.getHours(e)&&C.getMinutes(t)===C.getMinutes(e)&&D.getSeconds(t)===D.getSeconds(e)}))}function at(e,t){var r=void 0===t?{}:t,n=r.excludeTimes,o=r.includeTimes,a=r.filterTime;return n&&ot(e,n)||o&&!ot(e,o)||a&&!a(e)||!1}function it(e,t){var r=t.minTime,n=t.maxTime;if(!r||!n)throw new Error("Both minTime and maxTime props required");var o=ke();o=G.setHours(o,A.getHours(e)),o=Z.setMinutes(o,C.getMinutes(e)),o=X.setSeconds(o,D.getSeconds(e));var a=ke();a=G.setHours(a,A.getHours(r)),a=Z.setMinutes(a,C.getMinutes(r)),a=X.setSeconds(a,D.getSeconds(r));var i,s=ke();s=G.setHours(s,A.getHours(n)),s=Z.setMinutes(s,C.getMinutes(n)),s=X.setSeconds(s,D.getSeconds(n));try{i=!F.isWithinInterval(o,{start:a,end:s})}catch(e){i=!1}return i}function st(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.includeDates,a=oe.subMonths(e,1);return n&&p.differenceInCalendarMonths(n,a)>0||o&&o.every((function(e){return p.differenceInCalendarMonths(e,a)>0}))||!1}function lt(e,t){var r=void 0===t?{}:t,n=r.maxDate,o=r.includeDates,a=s.addMonths(e,1);return n&&p.differenceInCalendarMonths(a,n)>0||o&&o.every((function(e){return p.differenceInCalendarMonths(a,e)>0}))||!1}function ct(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.includeDates,a=se.subYears(e,1);return n&&m.differenceInCalendarYears(n,a)>0||o&&o.every((function(e){return m.differenceInCalendarYears(e,a)>0}))||!1}function ut(e,t){var r=void 0===t?{}:t,n=r.maxDate,o=r.includeDates,a=d.addYears(e,1);return n&&m.differenceInCalendarYears(a,n)>0||o&&o.every((function(e){return m.differenceInCalendarYears(a,e)>0}))||!1}function dt(e){var t=e.minDate,r=e.includeDates;if(r&&t){var n=r.filter((function(e){return f.differenceInCalendarDays(e,t)>=0}));return W.min(n)}return r?W.min(r):t}function ft(e){var t=e.maxDate,r=e.includeDates;if(r&&t){var n=r.filter((function(e){return f.differenceInCalendarDays(e,t)<=0}));return z.max(n)}return r?z.max(r):t}function pt(e,t){var r;void 0===e&&(e=[]),void 0===t&&(t="react-datepicker__day--highlighted");for(var n=new Map,o=0,a=e.length;o<a;o++){var i=e[o];if(j.isDate(i)){var s=Ee(i,"MM.dd.yyyy");(f=n.get(s)||[]).includes(t)||(f.push(t),n.set(s,f))}else if("object"==typeof i){var l=null!==(r=Object.keys(i)[0])&&void 0!==r?r:"",c=i[l];if("string"==typeof l&&Array.isArray(c))for(var u=0,d=c.length;u<d;u++){var f,p=c[u];p&&(s=Ee(p,"MM.dd.yyyy"),(f=n.get(s)||[]).includes(l)||(f.push(l),n.set(s,f)))}}}return n}function ht(e,t){void 0===e&&(e=[]),void 0===t&&(t="react-datepicker__day--holidays");var r=new Map;return e.forEach((function(e){var n=e.date,o=e.holidayName;if(j.isDate(n)){var a=Ee(n,"MM.dd.yyyy"),i=r.get(a)||{className:"",holidayNames:[]};if(!("className"in i)||i.className!==t||(s=i.holidayNames,l=[o],s.length!==l.length||!s.every((function(e,t){return e===l[t]})))){var s,l;i.className=t;var c=i.holidayNames;i.holidayNames=c?ve(ve([],c,!0),[o],!1):[o],r.set(a,i)}}})),r}function mt(e,t,r,n,o){for(var s=o.length,l=[],u=0;u<s;u++){var d=e,f=o[u];f&&(d=a.addHours(d,A.getHours(f)),d=i.addMinutes(d,C.getMinutes(f)),d=c.addSeconds(d,D.getSeconds(f)));var p=i.addMinutes(e,(r+1)*n);M.isAfter(d,t)&&P.isBefore(d,p)&&null!=f&&l.push(f)}return l}function gt(e){return e<10?"0".concat(e):"".concat(e)}function vt(e,t){void 0===t&&(t=Se);var r=Math.ceil(O.getYear(e)/t)*t;return{startPeriod:r-(t-1),endPeriod:r}}function yt(e){var t=e.getSeconds(),r=e.getMilliseconds();return le.toDate(e.getTime()-1e3*t-r)}function bt(e){if(!j.isDate(e))throw new Error("Invalid date");var t=new Date(e);return t.setHours(0,0,0,0),t}function wt(e,t){if(!j.isDate(e)||!j.isDate(t))throw new Error("Invalid date received");var r=bt(e),n=bt(t);return P.isBefore(r,n)}function xt(e){return e.key===ye.Space}var St,At=function(e){function t(t){var n=e.call(this,t)||this;return n.inputRef=fe.default.createRef(),n.onTimeChange=function(e){var t,r;n.setState({time:e});var o=n.props.date,a=o instanceof Date&&!isNaN(+o)?o:new Date;if(null==e?void 0:e.includes(":")){var i=e.split(":"),s=i[0],l=i[1];a.setHours(Number(s)),a.setMinutes(Number(l))}null===(r=(t=n.props).onChange)||void 0===r||r.call(t,a)},n.renderTimeInput=function(){var e=n.state.time,t=n.props,o=t.date,a=t.timeString,i=t.customTimeInput;return i?r.cloneElement(i,{date:o,value:e,onChange:n.onTimeChange}):fe.default.createElement("input",{type:"time",className:"react-datepicker-time__input",placeholder:"Time",name:"time-input",ref:n.inputRef,onClick:function(){var e;null===(e=n.inputRef.current)||void 0===e||e.focus()},required:!0,value:e,onChange:function(e){n.onTimeChange(e.target.value||a)}})},n.state={time:n.props.timeString},n}return me(t,e),t.getDerivedStateFromProps=function(e,t){return e.timeString!==t.time?{time:e.timeString}:null},t.prototype.render=function(){return fe.default.createElement("div",{className:"react-datepicker__input-time-container"},fe.default.createElement("div",{className:"react-datepicker-time__caption"},this.props.timeInputLabel),fe.default.createElement("div",{className:"react-datepicker-time__input-container"},fe.default.createElement("div",{className:"react-datepicker-time__input"},this.renderTimeInput())))},t}(r.Component),kt=function(e){function n(){var n=null!==e&&e.apply(this,arguments)||this;return n.dayEl=r.createRef(),n.handleClick=function(e){!n.isDisabled()&&n.props.onClick&&n.props.onClick(e)},n.handleMouseEnter=function(e){!n.isDisabled()&&n.props.onMouseEnter&&n.props.onMouseEnter(e)},n.handleOnKeyDown=function(e){var t,r;e.key===ye.Space&&(e.preventDefault(),e.key=ye.Enter),null===(r=(t=n.props).handleOnKeyDown)||void 0===r||r.call(t,e)},n.isSameDay=function(e){return ze(n.props.day,e)},n.isKeyboardSelected=function(){var e;if(n.props.disabledKeyboardNavigation)return!1;var t=n.props.selectsMultiple?null===(e=n.props.selectedDates)||void 0===e?void 0:e.some((function(e){return n.isSameDayOrWeek(e)})):n.isSameDayOrWeek(n.props.selected),r=n.props.preSelection&&n.isDisabled(n.props.preSelection);return!t&&n.isSameDayOrWeek(n.props.preSelection)&&!r},n.isDisabled=function(e){return void 0===e&&(e=n.props.day),Qe(e,{minDate:n.props.minDate,maxDate:n.props.maxDate,excludeDates:n.props.excludeDates,excludeDateIntervals:n.props.excludeDateIntervals,includeDateIntervals:n.props.includeDateIntervals,includeDates:n.props.includeDates,filterDate:n.props.filterDate})},n.isExcluded=function(){return Ke(n.props.day,{excludeDates:n.props.excludeDates,excludeDateIntervals:n.props.excludeDateIntervals})},n.isStartOfWeek=function(){return ze(n.props.day,Me(n.props.day,n.props.locale,n.props.calendarStartDay))},n.isSameWeek=function(e){return n.props.showWeekPicker&&ze(e,Me(n.props.day,n.props.locale,n.props.calendarStartDay))},n.isSameDayOrWeek=function(e){return n.isSameDay(e)||n.isSameWeek(e)},n.getHighLightedClass=function(){var e=n.props,t=e.day,r=e.highlightDates;if(!r)return!1;var o=Ee(t,"MM.dd.yyyy");return r.get(o)},n.getHolidaysClass=function(){var e,t=n.props,r=t.day,o=t.holidays;if(!o)return[void 0];var a=Ee(r,"MM.dd.yyyy");return o.has(a)?[null===(e=o.get(a))||void 0===e?void 0:e.className]:[void 0]},n.isInRange=function(){var e=n.props,t=e.day,r=e.startDate,o=e.endDate;return!(!r||!o)&&He(t,r,o)},n.isInSelectingRange=function(){var e,t=n.props,r=t.day,o=t.selectsStart,a=t.selectsEnd,i=t.selectsRange,s=t.selectsDisabledDaysInRange,l=t.startDate,c=t.endDate,u=null!==(e=n.props.selectingDate)&&void 0!==e?e:n.props.preSelection;return!(!(o||a||i)||!u||!s&&n.isDisabled())&&(o&&c&&(P.isBefore(u,c)||We(u,c))?He(r,u,c):(a&&l&&(M.isAfter(u,l)||We(u,l))||!(!i||!l||c||!M.isAfter(u,l)&&!We(u,l)))&&He(r,l,u))},n.isSelectingRangeStart=function(){var e;if(!n.isInSelectingRange())return!1;var t=n.props,r=t.day,o=t.startDate,a=t.selectsStart,i=null!==(e=n.props.selectingDate)&&void 0!==e?e:n.props.preSelection;return ze(r,a?i:o)},n.isSelectingRangeEnd=function(){var e;if(!n.isInSelectingRange())return!1;var t=n.props,r=t.day,o=t.endDate,a=t.selectsEnd,i=t.selectsRange,s=null!==(e=n.props.selectingDate)&&void 0!==e?e:n.props.preSelection;return ze(r,a||i?s:o)},n.isRangeStart=function(){var e=n.props,t=e.day,r=e.startDate,o=e.endDate;return!(!r||!o)&&ze(r,t)},n.isRangeEnd=function(){var e=n.props,t=e.day,r=e.startDate,o=e.endDate;return!(!r||!o)&&ze(o,t)},n.isWeekend=function(){var e=S.getDay(n.props.day);return 0===e||6===e},n.isAfterMonth=function(){return void 0!==n.props.month&&(n.props.month+1)%12===I.getMonth(n.props.day)},n.isBeforeMonth=function(){return void 0!==n.props.month&&(I.getMonth(n.props.day)+1)%12===n.props.month},n.isCurrentDay=function(){return n.isSameDay(ke())},n.isSelected=function(){var e;return n.props.selectsMultiple?null===(e=n.props.selectedDates)||void 0===e?void 0:e.some((function(e){return n.isSameDayOrWeek(e)})):n.isSameDayOrWeek(n.props.selected)},n.getClassNames=function(e){var r,o=n.props.dayClassName?n.props.dayClassName(e):void 0;return t.clsx("react-datepicker__day",o,"react-datepicker__day--"+Ee(n.props.day,"ddd",r),{"react-datepicker__day--disabled":n.isDisabled(),"react-datepicker__day--excluded":n.isExcluded(),"react-datepicker__day--selected":n.isSelected(),"react-datepicker__day--keyboard-selected":n.isKeyboardSelected(),"react-datepicker__day--range-start":n.isRangeStart(),"react-datepicker__day--range-end":n.isRangeEnd(),"react-datepicker__day--in-range":n.isInRange(),"react-datepicker__day--in-selecting-range":n.isInSelectingRange(),"react-datepicker__day--selecting-range-start":n.isSelectingRangeStart(),"react-datepicker__day--selecting-range-end":n.isSelectingRangeEnd(),"react-datepicker__day--today":n.isCurrentDay(),"react-datepicker__day--weekend":n.isWeekend(),"react-datepicker__day--outside-month":n.isAfterMonth()||n.isBeforeMonth()},n.getHighLightedClass(),n.getHolidaysClass())},n.getAriaLabel=function(){var e=n.props,t=e.day,r=e.ariaLabelPrefixWhenEnabled,o=void 0===r?"Choose":r,a=e.ariaLabelPrefixWhenDisabled,i=void 0===a?"Not available":a,s=n.isDisabled()||n.isExcluded()?i:o;return"".concat(s," ").concat(Ee(t,"PPPP",n.props.locale))},n.getTitle=function(){var e=n.props,t=e.day,r=e.holidays,o=void 0===r?new Map:r,a=e.excludeDates,i=Ee(t,"MM.dd.yyyy"),s=[];return o.has(i)&&s.push.apply(s,o.get(i).holidayNames),n.isExcluded()&&s.push(null==a?void 0:a.filter((function(e){return e instanceof Date?ze(e,t):ze(null==e?void 0:e.date,t)})).map((function(e){if(!(e instanceof Date))return null==e?void 0:e.message}))),s.join(", ")},n.getTabIndex=function(){var e=n.props.selected,t=n.props.preSelection;return(!n.props.showWeekPicker||!n.props.showWeekNumber&&n.isStartOfWeek())&&(n.isKeyboardSelected()||n.isSameDay(e)&&ze(t,e))?0:-1},n.handleFocusDay=function(){var e;n.shouldFocusDay()&&(null===(e=n.dayEl.current)||void 0===e||e.focus({preventScroll:!0}))},n.renderDayContents=function(){return n.props.monthShowsDuplicateDaysEnd&&n.isAfterMonth()||n.props.monthShowsDuplicateDaysStart&&n.isBeforeMonth()?null:n.props.renderDayContents?n.props.renderDayContents(x.getDate(n.props.day),n.props.day):x.getDate(n.props.day)},n.render=function(){return fe.default.createElement("div",{ref:n.dayEl,className:n.getClassNames(n.props.day),onKeyDown:n.handleOnKeyDown,onClick:n.handleClick,onMouseEnter:n.props.usePointerEvent?void 0:n.handleMouseEnter,onPointerEnter:n.props.usePointerEvent?n.handleMouseEnter:void 0,tabIndex:n.getTabIndex(),"aria-label":n.getAriaLabel(),role:"option",title:n.getTitle(),"aria-disabled":n.isDisabled(),"aria-current":n.isCurrentDay()?"date":void 0,"aria-selected":n.isSelected()||n.isInRange()},n.renderDayContents(),""!==n.getTitle()&&fe.default.createElement("span",{className:"overlay"},n.getTitle()))},n}return me(n,e),n.prototype.componentDidMount=function(){this.handleFocusDay()},n.prototype.componentDidUpdate=function(){this.handleFocusDay()},n.prototype.shouldFocusDay=function(){var e=!1;return 0===this.getTabIndex()&&this.isSameDay(this.props.preSelection)&&(document.activeElement&&document.activeElement!==document.body||(e=!0),this.props.inline&&!this.props.shouldFocusDayInline&&(e=!1),this.isDayActiveElement()&&(e=!0),this.isDuplicateDay()&&(e=!1)),e},n.prototype.isDayActiveElement=function(){var e,t,r;return(null===(t=null===(e=this.props.containerRef)||void 0===e?void 0:e.current)||void 0===t?void 0:t.contains(document.activeElement))&&(null===(r=document.activeElement)||void 0===r?void 0:r.classList.contains("react-datepicker__day"))},n.prototype.isDuplicateDay=function(){return this.props.monthShowsDuplicateDaysEnd&&this.isAfterMonth()||this.props.monthShowsDuplicateDaysStart&&this.isBeforeMonth()},n}(r.Component),Ct=function(e){function n(){var t=null!==e&&e.apply(this,arguments)||this;return t.weekNumberEl=r.createRef(),t.handleClick=function(e){t.props.onClick&&t.props.onClick(e)},t.handleOnKeyDown=function(e){var r,n;e.key===ye.Space&&(e.preventDefault(),e.key=ye.Enter),null===(n=(r=t.props).handleOnKeyDown)||void 0===n||n.call(r,e)},t.isKeyboardSelected=function(){return!t.props.disabledKeyboardNavigation&&!ze(t.props.date,t.props.selected)&&ze(t.props.date,t.props.preSelection)},t.getTabIndex=function(){return t.props.showWeekPicker&&t.props.showWeekNumber&&(t.isKeyboardSelected()||ze(t.props.date,t.props.selected)&&ze(t.props.preSelection,t.props.selected))?0:-1},t.handleFocusWeekNumber=function(e){var r=!1;0===t.getTabIndex()&&!(null==e?void 0:e.isInputFocused)&&ze(t.props.date,t.props.preSelection)&&(document.activeElement&&document.activeElement!==document.body||(r=!0),t.props.inline&&!t.props.shouldFocusDayInline&&(r=!1),t.props.containerRef&&t.props.containerRef.current&&t.props.containerRef.current.contains(document.activeElement)&&document.activeElement&&document.activeElement.classList.contains("react-datepicker__week-number")&&(r=!0)),r&&t.weekNumberEl.current&&t.weekNumberEl.current.focus({preventScroll:!0})},t}return me(n,e),Object.defineProperty(n,"defaultProps",{get:function(){return{ariaLabelPrefix:"week "}},enumerable:!1,configurable:!0}),n.prototype.componentDidMount=function(){this.handleFocusWeekNumber()},n.prototype.componentDidUpdate=function(e){this.handleFocusWeekNumber(e)},n.prototype.render=function(){var e=this.props,r=e.weekNumber,o=e.ariaLabelPrefix,a=void 0===o?n.defaultProps.ariaLabelPrefix:o,i=e.onClick,s={"react-datepicker__week-number":!0,"react-datepicker__week-number--clickable":!!i,"react-datepicker__week-number--selected":!!i&&ze(this.props.date,this.props.selected),"react-datepicker__week-number--keyboard-selected":this.isKeyboardSelected()};return fe.default.createElement("div",{ref:this.weekNumberEl,className:t.clsx(s),"aria-label":"".concat(a," ").concat(this.props.weekNumber),onClick:this.handleClick,onKeyDown:this.handleOnKeyDown,tabIndex:this.getTabIndex()},r)},n}(r.Component),It=function(e){function r(){var t=null!==e&&e.apply(this,arguments)||this;return t.isDisabled=function(e){return Qe(e,{minDate:t.props.minDate,maxDate:t.props.maxDate,excludeDates:t.props.excludeDates,excludeDateIntervals:t.props.excludeDateIntervals,includeDateIntervals:t.props.includeDateIntervals,includeDates:t.props.includeDates,filterDate:t.props.filterDate})},t.handleDayClick=function(e,r){t.props.onDayClick&&t.props.onDayClick(e,r)},t.handleDayMouseEnter=function(e){t.props.onDayMouseEnter&&t.props.onDayMouseEnter(e)},t.handleWeekClick=function(e,n,o){for(var a,i,s,l=new Date(e),c=0;c<7;c++){var u=new Date(e);if(u.setDate(u.getDate()+c),!t.isDisabled(u)){l=u;break}}"function"==typeof t.props.onWeekSelect&&t.props.onWeekSelect(l,n,o),t.props.showWeekPicker&&t.handleDayClick(l,o),(null!==(a=t.props.shouldCloseOnSelect)&&void 0!==a?a:r.defaultProps.shouldCloseOnSelect)&&(null===(s=(i=t.props).setOpen)||void 0===s||s.call(i,!1))},t.formatWeekNumber=function(e){return t.props.formatWeekNumber?t.props.formatWeekNumber(e):function(e){return k.getISOWeek(e)}(e)},t.renderDays=function(){var e=t.startOfWeek(),n=[],a=t.formatWeekNumber(e);if(t.props.showWeekNumber){var i=t.props.onWeekSelect||t.props.showWeekPicker?t.handleWeekClick.bind(t,e,a):void 0;n.push(fe.default.createElement(Ct,ge({key:"W"},r.defaultProps,t.props,{weekNumber:a,date:e,onClick:i})))}return n.concat([0,1,2,3,4,5,6].map((function(n){var a=o.addDays(e,n);return fe.default.createElement(kt,ge({},r.defaultProps,t.props,{ariaLabelPrefixWhenEnabled:t.props.chooseDayAriaLabelPrefix,ariaLabelPrefixWhenDisabled:t.props.disabledDayAriaLabelPrefix,key:a.valueOf(),day:a,onClick:t.handleDayClick.bind(t,a),onMouseEnter:t.handleDayMouseEnter.bind(t,a)}))})))},t.startOfWeek=function(){return Me(t.props.day,t.props.locale,t.props.calendarStartDay)},t.isKeyboardSelected=function(){return!t.props.disabledKeyboardNavigation&&!ze(t.startOfWeek(),t.props.selected)&&ze(t.startOfWeek(),t.props.preSelection)},t}return me(r,e),Object.defineProperty(r,"defaultProps",{get:function(){return{shouldCloseOnSelect:!0}},enumerable:!1,configurable:!0}),r.prototype.render=function(){var e={"react-datepicker__week":!0,"react-datepicker__week--selected":ze(this.startOfWeek(),this.props.selected),"react-datepicker__week--keyboard-selected":this.isKeyboardSelected()};return fe.default.createElement("div",{className:t.clsx(e)},this.renderDays())},r}(r.Component),Et="two_columns",Dt="three_columns",Tt="four_columns",Ot=((St={})[Et]={grid:[[0,1],[2,3],[4,5],[6,7],[8,9],[10,11]],verticalNavigationOffset:2},St[Dt]={grid:[[0,1,2],[3,4,5],[6,7,8],[9,10,11]],verticalNavigationOffset:3},St[Tt]={grid:[[0,1,2,3],[4,5,6,7],[8,9,10,11]],verticalNavigationOffset:4},St);function Mt(e,t){return e?Tt:t?Et:Dt}var Pt=function(e){function n(){var n=null!==e&&e.apply(this,arguments)||this;return n.MONTH_REFS=ve([],Array(12),!0).map((function(){return r.createRef()})),n.QUARTER_REFS=ve([],Array(4),!0).map((function(){return r.createRef()})),n.isDisabled=function(e){return Qe(e,{minDate:n.props.minDate,maxDate:n.props.maxDate,excludeDates:n.props.excludeDates,excludeDateIntervals:n.props.excludeDateIntervals,includeDateIntervals:n.props.includeDateIntervals,includeDates:n.props.includeDates,filterDate:n.props.filterDate})},n.isExcluded=function(e){return Ke(e,{excludeDates:n.props.excludeDates,excludeDateIntervals:n.props.excludeDateIntervals})},n.handleDayClick=function(e,t){var r,o;null===(o=(r=n.props).onDayClick)||void 0===o||o.call(r,e,t,n.props.orderInDisplay)},n.handleDayMouseEnter=function(e){var t,r;null===(r=(t=n.props).onDayMouseEnter)||void 0===r||r.call(t,e)},n.handleMouseLeave=function(){var e,t;null===(t=(e=n.props).onMouseLeave)||void 0===t||t.call(e)},n.isRangeStartMonth=function(e){var t=n.props,r=t.day,o=t.startDate,a=t.endDate;return!(!o||!a)&&Be(Q.setMonth(r,e),o)},n.isRangeStartQuarter=function(e){var t=n.props,r=t.day,o=t.startDate,a=t.endDate;return!(!o||!a)&&Fe(K.setQuarter(r,e),o)},n.isRangeEndMonth=function(e){var t=n.props,r=t.day,o=t.startDate,a=t.endDate;return!(!o||!a)&&Be(Q.setMonth(r,e),a)},n.isRangeEndQuarter=function(e){var t=n.props,r=t.day,o=t.startDate,a=t.endDate;return!(!o||!a)&&Fe(K.setQuarter(r,e),a)},n.isInSelectingRangeMonth=function(e){var t,r=n.props,o=r.day,a=r.selectsStart,i=r.selectsEnd,s=r.selectsRange,l=r.startDate,c=r.endDate,u=null!==(t=n.props.selectingDate)&&void 0!==t?t:n.props.preSelection;return!(!(a||i||s)||!u)&&(a&&c?Je(u,c,e,o):(i&&l||!(!s||!l||c))&&Je(l,u,e,o))},n.isSelectingMonthRangeStart=function(e){var t;if(!n.isInSelectingRangeMonth(e))return!1;var r=n.props,o=r.day,a=r.startDate,i=r.selectsStart,s=Q.setMonth(o,e),l=null!==(t=n.props.selectingDate)&&void 0!==t?t:n.props.preSelection;return Be(s,i?l:a)},n.isSelectingMonthRangeEnd=function(e){var t;if(!n.isInSelectingRangeMonth(e))return!1;var r=n.props,o=r.day,a=r.endDate,i=r.selectsEnd,s=r.selectsRange,l=Q.setMonth(o,e),c=null!==(t=n.props.selectingDate)&&void 0!==t?t:n.props.preSelection;return Be(l,i||s?c:a)},n.isInSelectingRangeQuarter=function(e){var t,r=n.props,o=r.day,a=r.selectsStart,i=r.selectsEnd,s=r.selectsRange,l=r.startDate,c=r.endDate,u=null!==(t=n.props.selectingDate)&&void 0!==t?t:n.props.preSelection;return!(!(a||i||s)||!u)&&(a&&c?rt(u,c,e,o):(i&&l||!(!s||!l||c))&&rt(l,u,e,o))},n.isWeekInMonth=function(e){var t=n.props.day,r=o.addDays(e,6);return Be(e,t)||Be(r,t)},n.isCurrentMonth=function(e,t){return O.getYear(e)===O.getYear(ke())&&t===I.getMonth(ke())},n.isCurrentQuarter=function(e,t){return O.getYear(e)===O.getYear(ke())&&t===E.getQuarter(ke())},n.isSelectedMonth=function(e,t,r){return I.getMonth(r)===t&&O.getYear(e)===O.getYear(r)},n.isSelectMonthInList=function(e,t,r){return r.some((function(r){return n.isSelectedMonth(e,t,r)}))},n.isSelectedQuarter=function(e,t,r){return E.getQuarter(e)===t&&O.getYear(e)===O.getYear(r)},n.renderWeeks=function(){for(var e=[],t=n.props.fixedHeight,r=0,o=!1,a=Me(Pe(n.props.day),n.props.locale,n.props.calendarStartDay),i=n.props.selected?function(e){return n.props.showWeekPicker?Me(e,n.props.locale,n.props.calendarStartDay):n.props.selected}(n.props.selected):void 0,s=n.props.preSelection?function(e){return n.props.showWeekPicker?Me(e,n.props.locale,n.props.calendarStartDay):n.props.preSelection}(n.props.preSelection):void 0;e.push(fe.default.createElement(It,ge({},n.props,{ariaLabelPrefix:n.props.weekAriaLabelPrefix,key:r,day:a,month:I.getMonth(n.props.day),onDayClick:n.handleDayClick,onDayMouseEnter:n.handleDayMouseEnter,selected:i,preSelection:s,showWeekNumber:n.props.showWeekNumbers}))),!o;){r++,a=u.addWeeks(a,1);var l=t&&r>=6,c=!t&&!n.isWeekInMonth(a);if(l||c){if(!n.props.peekNextMonth)break;o=!0}}return e},n.onMonthClick=function(e,t){var r=n.isMonthDisabledForLabelDate(t),o=r.isDisabled,a=r.labelDate;o||n.handleDayClick(Pe(a),e)},n.onMonthMouseEnter=function(e){var t=n.isMonthDisabledForLabelDate(e),r=t.isDisabled,o=t.labelDate;r||n.handleDayMouseEnter(Pe(o))},n.handleMonthNavigation=function(e,t){var r,o,a,i;null===(o=(r=n.props).setPreSelection)||void 0===o||o.call(r,t),null===(i=null===(a=n.MONTH_REFS[e])||void 0===a?void 0:a.current)||void 0===i||i.focus()},n.handleKeyboardNavigation=function(e,t,r){var o,a=n.props,i=a.selected,l=a.preSelection,c=a.setPreSelection,u=a.minDate,d=a.maxDate,f=a.showFourColumnMonthYearPicker,p=a.showTwoColumnMonthYearPicker;if(l){var h=Mt(f,p),m=n.getVerticalOffset(h),g=null===(o=Ot[h])||void 0===o?void 0:o.grid,v=function(e,t,r){var n,o,a=t,i=r;switch(e){case ye.ArrowRight:a=s.addMonths(t,1),i=11===r?0:r+1;break;case ye.ArrowLeft:a=oe.subMonths(t,1),i=0===r?11:r-1;break;case ye.ArrowUp:a=oe.subMonths(t,m),i=(null===(n=null==g?void 0:g[0])||void 0===n?void 0:n.includes(r))?r+12-m:r-m;break;case ye.ArrowDown:a=s.addMonths(t,m),i=(null===(o=null==g?void 0:g[g.length-1])||void 0===o?void 0:o.includes(r))?r-12+m:r+m}return{newCalculatedDate:a,newCalculatedMonth:i}};if(t!==ye.Enter){var y=function(e,t,r){for(var o=e,a=!1,i=0,s=v(o,t,r),l=s.newCalculatedDate,c=s.newCalculatedMonth;!a;){if(i>=40){l=t,c=r;break}var f;u&&l<u&&(o=ye.ArrowRight,l=(f=v(o,l,c)).newCalculatedDate,c=f.newCalculatedMonth),d&&l>d&&(o=ye.ArrowLeft,l=(f=v(o,l,c)).newCalculatedDate,c=f.newCalculatedMonth),$e(l,n.props)?(l=(f=v(o,l,c)).newCalculatedDate,c=f.newCalculatedMonth):a=!0,i++}return{newCalculatedDate:l,newCalculatedMonth:c}}(t,l,r),b=y.newCalculatedDate,w=y.newCalculatedMonth;switch(t){case ye.ArrowRight:case ye.ArrowLeft:case ye.ArrowUp:case ye.ArrowDown:n.handleMonthNavigation(w,b)}}else n.isMonthDisabled(r)||(n.onMonthClick(e,r),null==c||c(i))}},n.getVerticalOffset=function(e){var t,r;return null!==(r=null===(t=Ot[e])||void 0===t?void 0:t.verticalNavigationOffset)&&void 0!==r?r:0},n.onMonthKeyDown=function(e,t){var r=n.props,o=r.disabledKeyboardNavigation,a=r.handleOnMonthKeyDown,i=e.key;i!==ye.Tab&&e.preventDefault(),o||n.handleKeyboardNavigation(e,i,t),a&&a(e)},n.onQuarterClick=function(e,t){var r=K.setQuarter(n.props.day,t);qe(r,n.props)||n.handleDayClick(Re(r),e)},n.onQuarterMouseEnter=function(e){var t=K.setQuarter(n.props.day,e);qe(t,n.props)||n.handleDayMouseEnter(Re(t))},n.handleQuarterNavigation=function(e,t){var r,o,a,i;n.isDisabled(t)||n.isExcluded(t)||(null===(o=(r=n.props).setPreSelection)||void 0===o||o.call(r,t),null===(i=null===(a=n.QUARTER_REFS[e-1])||void 0===a?void 0:a.current)||void 0===i||i.focus())},n.onQuarterKeyDown=function(e,t){var r,o,a=e.key;if(!n.props.disabledKeyboardNavigation)switch(a){case ye.Enter:n.onQuarterClick(e,t),null===(o=(r=n.props).setPreSelection)||void 0===o||o.call(r,n.props.selected);break;case ye.ArrowRight:if(!n.props.preSelection)break;n.handleQuarterNavigation(4===t?1:t+1,l.addQuarters(n.props.preSelection,1));break;case ye.ArrowLeft:if(!n.props.preSelection)break;n.handleQuarterNavigation(1===t?4:t-1,ae.subQuarters(n.props.preSelection,1))}},n.isMonthDisabledForLabelDate=function(e){var t,r=n.props,o=r.day,a=r.minDate,i=r.maxDate,s=r.excludeDates,l=r.includeDates,c=Q.setMonth(o,e);return{isDisabled:null!==(t=(a||i||s||l)&&Xe(c,n.props))&&void 0!==t&&t,labelDate:c}},n.isMonthDisabled=function(e){return n.isMonthDisabledForLabelDate(e).isDisabled},n.getMonthClassNames=function(e){var r=n.props,o=r.day,a=r.startDate,i=r.endDate,s=r.preSelection,l=r.monthClassName,c=l?l(Q.setMonth(o,e)):void 0,u=n.getSelection();return t.clsx("react-datepicker__month-text","react-datepicker__month-".concat(e),c,{"react-datepicker__month-text--disabled":n.isMonthDisabled(e),"react-datepicker__month-text--selected":u?n.isSelectMonthInList(o,e,u):void 0,"react-datepicker__month-text--keyboard-selected":!n.props.disabledKeyboardNavigation&&s&&n.isSelectedMonth(o,e,s)&&!n.isMonthDisabled(e),"react-datepicker__month-text--in-selecting-range":n.isInSelectingRangeMonth(e),"react-datepicker__month-text--in-range":a&&i?Je(a,i,e,o):void 0,"react-datepicker__month-text--range-start":n.isRangeStartMonth(e),"react-datepicker__month-text--range-end":n.isRangeEndMonth(e),"react-datepicker__month-text--selecting-range-start":n.isSelectingMonthRangeStart(e),"react-datepicker__month-text--selecting-range-end":n.isSelectingMonthRangeEnd(e),"react-datepicker__month-text--today":n.isCurrentMonth(o,e)})},n.getTabIndex=function(e){if(null==n.props.preSelection)return"-1";var t=I.getMonth(n.props.preSelection),r=n.isMonthDisabledForLabelDate(t).isDisabled;return e!==t||r||n.props.disabledKeyboardNavigation?"-1":"0"},n.getQuarterTabIndex=function(e){if(null==n.props.preSelection)return"-1";var t=E.getQuarter(n.props.preSelection),r=qe(n.props.day,n.props);return e!==t||r||n.props.disabledKeyboardNavigation?"-1":"0"},n.getAriaLabel=function(e){var t=n.props,r=t.chooseDayAriaLabelPrefix,o=void 0===r?"Choose":r,a=t.disabledDayAriaLabelPrefix,i=void 0===a?"Not available":a,s=t.day,l=t.locale,c=Q.setMonth(s,e),u=n.isDisabled(c)||n.isExcluded(c)?i:o;return"".concat(u," ").concat(Ee(c,"MMMM yyyy",l))},n.getQuarterClassNames=function(e){var r=n.props,o=r.day,a=r.startDate,i=r.endDate,s=r.selected,l=r.minDate,c=r.maxDate,u=r.excludeDates,d=r.includeDates,f=r.filterDate,p=r.preSelection,h=r.disabledKeyboardNavigation,m=(l||c||u||d||f)&&qe(K.setQuarter(o,e),n.props);return t.clsx("react-datepicker__quarter-text","react-datepicker__quarter-".concat(e),{"react-datepicker__quarter-text--disabled":m,"react-datepicker__quarter-text--selected":s?n.isSelectedQuarter(o,e,s):void 0,"react-datepicker__quarter-text--keyboard-selected":!h&&p&&n.isSelectedQuarter(o,e,p)&&!m,"react-datepicker__quarter-text--in-selecting-range":n.isInSelectingRangeQuarter(e),"react-datepicker__quarter-text--in-range":a&&i?rt(a,i,e,o):void 0,"react-datepicker__quarter-text--range-start":n.isRangeStartQuarter(e),"react-datepicker__quarter-text--range-end":n.isRangeEndQuarter(e)})},n.getMonthContent=function(e){var t=n.props,r=t.showFullMonthYearPicker,o=t.renderMonthContent,a=t.locale,i=t.day,s=Ze(e,a),l=Ge(e,a);return o?o(e,s,l,i):r?l:s},n.getQuarterContent=function(e){var t,r=n.props,o=r.renderQuarterContent,a=function(e,t){return Ee(K.setQuarter(ke(),e),"QQQ",t)}(e,r.locale);return null!==(t=null==o?void 0:o(e,a))&&void 0!==t?t:a},n.renderMonths=function(){var e,t=n.props,r=t.showTwoColumnMonthYearPicker,o=t.showFourColumnMonthYearPicker,a=t.day,i=t.selected,s=null===(e=Ot[Mt(o,r)])||void 0===e?void 0:e.grid;return null==s?void 0:s.map((function(e,t){return fe.default.createElement("div",{className:"react-datepicker__month-wrapper",key:t},e.map((function(e,t){return fe.default.createElement("div",{ref:n.MONTH_REFS[e],key:t,onClick:function(t){n.onMonthClick(t,e)},onKeyDown:function(t){xt(t)&&(t.preventDefault(),t.key=ye.Enter),n.onMonthKeyDown(t,e)},onMouseEnter:n.props.usePointerEvent?void 0:function(){return n.onMonthMouseEnter(e)},onPointerEnter:n.props.usePointerEvent?function(){return n.onMonthMouseEnter(e)}:void 0,tabIndex:Number(n.getTabIndex(e)),className:n.getMonthClassNames(e),"aria-disabled":n.isMonthDisabled(e),role:"option","aria-label":n.getAriaLabel(e),"aria-current":n.isCurrentMonth(a,e)?"date":void 0,"aria-selected":i?n.isSelectedMonth(a,e,i):void 0},n.getMonthContent(e))})))}))},n.renderQuarters=function(){var e=n.props,t=e.day,r=e.selected;return fe.default.createElement("div",{className:"react-datepicker__quarter-wrapper"},[1,2,3,4].map((function(e,o){return fe.default.createElement("div",{key:o,ref:n.QUARTER_REFS[o],role:"option",onClick:function(t){n.onQuarterClick(t,e)},onKeyDown:function(t){n.onQuarterKeyDown(t,e)},onMouseEnter:n.props.usePointerEvent?void 0:function(){return n.onQuarterMouseEnter(e)},onPointerEnter:n.props.usePointerEvent?function(){return n.onQuarterMouseEnter(e)}:void 0,className:n.getQuarterClassNames(e),"aria-selected":r?n.isSelectedQuarter(t,e,r):void 0,tabIndex:Number(n.getQuarterTabIndex(e)),"aria-current":n.isCurrentQuarter(t,e)?"date":void 0},n.getQuarterContent(e))})))},n.getClassNames=function(){var e=n.props,r=e.selectingDate,o=e.selectsStart,a=e.selectsEnd,i=e.showMonthYearPicker,s=e.showQuarterYearPicker,l=e.showWeekPicker;return t.clsx("react-datepicker__month",{"react-datepicker__month--selecting-range":r&&(o||a)},{"react-datepicker__monthPicker":i},{"react-datepicker__quarterPicker":s},{"react-datepicker__weekPicker":l})},n}return me(n,e),n.prototype.getSelection=function(){var e=this.props,t=e.selected,r=e.selectedDates;return e.selectsMultiple?r:t?[t]:void 0},n.prototype.render=function(){var e=this.props,t=e.showMonthYearPicker,r=e.showQuarterYearPicker,n=e.day,o=e.ariaLabelPrefix,a=void 0===o?"Month ":o,i=a?a.trim()+" ":"";return fe.default.createElement("div",{className:this.getClassNames(),onMouseLeave:this.props.usePointerEvent?void 0:this.handleMouseLeave,onPointerLeave:this.props.usePointerEvent?this.handleMouseLeave:void 0,"aria-label":"".concat(i).concat(Ee(n,"MMMM, yyyy",this.props.locale)),role:"listbox"},t?this.renderMonths():r?this.renderQuarters():this.renderWeeks())},n}(r.Component),jt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.isSelectedMonth=function(e){return t.props.month===e},t.renderOptions=function(){return t.props.monthNames.map((function(e,r){return fe.default.createElement("div",{className:t.isSelectedMonth(r)?"react-datepicker__month-option react-datepicker__month-option--selected_month":"react-datepicker__month-option",key:e,onClick:t.onChange.bind(t,r),"aria-selected":t.isSelectedMonth(r)?"true":void 0},t.isSelectedMonth(r)?fe.default.createElement("span",{className:"react-datepicker__month-option--selected"},"\u2713"):"",e)}))},t.onChange=function(e){return t.props.onChange(e)},t.handleClickOutside=function(){return t.props.onCancel()},t}return me(t,e),t.prototype.render=function(){return fe.default.createElement(we,{className:"react-datepicker__month-dropdown",onClickOutside:this.handleClickOutside},this.renderOptions())},t}(r.Component),Rt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.state={dropdownVisible:!1},t.renderSelectOptions=function(e){return e.map((function(e,t){return fe.default.createElement("option",{key:e,value:t},e)}))},t.renderSelectMode=function(e){return fe.default.createElement("select",{value:t.props.month,className:"react-datepicker__month-select",onChange:function(e){return t.onChange(parseInt(e.target.value))}},t.renderSelectOptions(e))},t.renderReadView=function(e,r){return fe.default.createElement("div",{key:"read",style:{visibility:e?"visible":"hidden"},className:"react-datepicker__month-read-view",onClick:t.toggleDropdown},fe.default.createElement("span",{className:"react-datepicker__month-read-view--down-arrow"}),fe.default.createElement("span",{className:"react-datepicker__month-read-view--selected-month"},r[t.props.month]))},t.renderDropdown=function(e){return fe.default.createElement(jt,ge({key:"dropdown"},t.props,{monthNames:e,onChange:t.onChange,onCancel:t.toggleDropdown}))},t.renderScrollMode=function(e){var r=t.state.dropdownVisible,n=[t.renderReadView(!r,e)];return r&&n.unshift(t.renderDropdown(e)),n},t.onChange=function(e){t.toggleDropdown(),e!==t.props.month&&t.props.onChange(e)},t.toggleDropdown=function(){return t.setState({dropdownVisible:!t.state.dropdownVisible})},t}return me(t,e),t.prototype.render=function(){var e,t=this,r=[0,1,2,3,4,5,6,7,8,9,10,11].map(this.props.useShortMonthInDropdown?function(e){return Ze(e,t.props.locale)}:function(e){return Ge(e,t.props.locale)});switch(this.props.dropdownMode){case"scroll":e=this.renderScrollMode(r);break;case"select":e=this.renderSelectMode(r)}return fe.default.createElement("div",{className:"react-datepicker__month-dropdown-container react-datepicker__month-dropdown-container--".concat(this.props.dropdownMode)},e)},t}(r.Component);function _t(e,t){for(var r=[],n=Pe(e),o=Pe(t);!M.isAfter(n,o);)r.push(ke(n)),n=s.addMonths(n,1);return r}var Nt=function(e){function r(t){var r=e.call(this,t)||this;return r.renderOptions=function(){return r.state.monthYearsList.map((function(e){var t=T.getTime(e),n=Ue(r.props.date,e)&&Be(r.props.date,e);return fe.default.createElement("div",{className:n?"react-datepicker__month-year-option--selected_month-year":"react-datepicker__month-year-option",key:t,onClick:r.onChange.bind(r,t),"aria-selected":n?"true":void 0},n?fe.default.createElement("span",{className:"react-datepicker__month-year-option--selected"},"\u2713"):"",Ee(e,r.props.dateFormat,r.props.locale))}))},r.onChange=function(e){return r.props.onChange(e)},r.handleClickOutside=function(){r.props.onCancel()},r.state={monthYearsList:_t(r.props.minDate,r.props.maxDate)},r}return me(r,e),r.prototype.render=function(){var e=t.clsx({"react-datepicker__month-year-dropdown":!0,"react-datepicker__month-year-dropdown--scrollable":this.props.scrollableMonthYearDropdown});return fe.default.createElement(we,{className:e,onClickOutside:this.handleClickOutside},this.renderOptions())},r}(r.Component),Lt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.state={dropdownVisible:!1},t.renderSelectOptions=function(){for(var e=Pe(t.props.minDate),r=Pe(t.props.maxDate),n=[];!M.isAfter(e,r);){var o=T.getTime(e);n.push(fe.default.createElement("option",{key:o,value:o},Ee(e,t.props.dateFormat,t.props.locale))),e=s.addMonths(e,1)}return n},t.onSelectChange=function(e){t.onChange(parseInt(e.target.value))},t.renderSelectMode=function(){return fe.default.createElement("select",{value:T.getTime(Pe(t.props.date)),className:"react-datepicker__month-year-select",onChange:t.onSelectChange},t.renderSelectOptions())},t.renderReadView=function(e){var r=Ee(t.props.date,t.props.dateFormat,t.props.locale);return fe.default.createElement("div",{key:"read",style:{visibility:e?"visible":"hidden"},className:"react-datepicker__month-year-read-view",onClick:t.toggleDropdown},fe.default.createElement("span",{className:"react-datepicker__month-year-read-view--down-arrow"}),fe.default.createElement("span",{className:"react-datepicker__month-year-read-view--selected-month-year"},r))},t.renderDropdown=function(){return fe.default.createElement(Nt,ge({key:"dropdown"},t.props,{onChange:t.onChange,onCancel:t.toggleDropdown}))},t.renderScrollMode=function(){var e=t.state.dropdownVisible,r=[t.renderReadView(!e)];return e&&r.unshift(t.renderDropdown()),r},t.onChange=function(e){t.toggleDropdown();var r=ke(e);Ue(t.props.date,r)&&Be(t.props.date,r)||t.props.onChange(r)},t.toggleDropdown=function(){return t.setState({dropdownVisible:!t.state.dropdownVisible})},t}return me(t,e),t.prototype.render=function(){var e;switch(this.props.dropdownMode){case"scroll":e=this.renderScrollMode();break;case"select":e=this.renderSelectMode()}return fe.default.createElement("div",{className:"react-datepicker__month-year-dropdown-container react-datepicker__month-year-dropdown-container--".concat(this.props.dropdownMode)},e)},t}(r.Component),Ut=function(e){function t(){var r=null!==e&&e.apply(this,arguments)||this;return r.state={height:null},r.scrollToTheSelectedTime=function(){requestAnimationFrame((function(){var e,n,o;r.list&&(r.list.scrollTop=null!==(o=r.centerLi&&t.calcCenterPosition(r.props.monthRef?r.props.monthRef.clientHeight-(null!==(n=null===(e=r.header)||void 0===e?void 0:e.clientHeight)&&void 0!==n?n:0):r.list.clientHeight,r.centerLi))&&void 0!==o?o:0)}))},r.handleClick=function(e){var t,n;(r.props.minTime||r.props.maxTime)&&it(e,r.props)||(r.props.excludeTimes||r.props.includeTimes||r.props.filterTime)&&at(e,r.props)||null===(n=(t=r.props).onChange)||void 0===n||n.call(t,e)},r.isSelectedTime=function(e){return r.props.selected&&(t=e,yt(r.props.selected).getTime()===yt(t).getTime());var t},r.isDisabledTime=function(e){return(r.props.minTime||r.props.maxTime)&&it(e,r.props)||(r.props.excludeTimes||r.props.includeTimes||r.props.filterTime)&&at(e,r.props)},r.liClasses=function(e){var n,o=["react-datepicker__time-list-item",r.props.timeClassName?r.props.timeClassName(e):void 0];return r.isSelectedTime(e)&&o.push("react-datepicker__time-list-item--selected"),r.isDisabledTime(e)&&o.push("react-datepicker__time-list-item--disabled"),r.props.injectTimes&&(3600*A.getHours(e)+60*C.getMinutes(e)+D.getSeconds(e))%(60*(null!==(n=r.props.intervals)&&void 0!==n?n:t.defaultProps.intervals))!=0&&o.push("react-datepicker__time-list-item--injected"),o.join(" ")},r.handleOnKeyDown=function(e,t){var n,o;e.key===ye.Space&&(e.preventDefault(),e.key=ye.Enter),(e.key===ye.ArrowUp||e.key===ye.ArrowLeft)&&e.target instanceof HTMLElement&&e.target.previousSibling&&(e.preventDefault(),e.target.previousSibling instanceof HTMLElement&&e.target.previousSibling.focus()),(e.key===ye.ArrowDown||e.key===ye.ArrowRight)&&e.target instanceof HTMLElement&&e.target.nextSibling&&(e.preventDefault(),e.target.nextSibling instanceof HTMLElement&&e.target.nextSibling.focus()),e.key===ye.Enter&&r.handleClick(t),null===(o=(n=r.props).handleOnKeyDown)||void 0===o||o.call(n,e)},r.renderTimes=function(){for(var e,n=[],o="string"==typeof r.props.format?r.props.format:"p",a=null!==(e=r.props.intervals)&&void 0!==e?e:t.defaultProps.intervals,s=r.props.selected||r.props.openToDate||ke(),l=Oe(s),c=r.props.injectTimes&&r.props.injectTimes.sort((function(e,t){return e.getTime()-t.getTime()})),u=60*function(e){var t=new Date(e.getFullYear(),e.getMonth(),e.getDate()),r=new Date(e.getFullYear(),e.getMonth(),e.getDate(),24);return Math.round((+r-+t)/36e5)}(s),d=u/a,f=0;f<d;f++){var p=i.addMinutes(l,f*a);if(n.push(p),c){var h=mt(l,p,f,a,c);n=n.concat(h)}}var m=n.reduce((function(e,t){return t.getTime()<=s.getTime()?t:e}),n[0]);return n.map((function(e){return fe.default.createElement("li",{key:e.valueOf(),onClick:r.handleClick.bind(r,e),className:r.liClasses(e),ref:function(t){e===m&&(r.centerLi=t)},onKeyDown:function(t){r.handleOnKeyDown(t,e)},tabIndex:e===m?0:-1,role:"option","aria-selected":r.isSelectedTime(e)?"true":void 0,"aria-disabled":r.isDisabledTime(e)?"true":void 0},Ee(e,o,r.props.locale))}))},r.renderTimeCaption=function(){return!1===r.props.showTimeCaption?fe.default.createElement(fe.default.Fragment,null):fe.default.createElement("div",{className:"react-datepicker__header react-datepicker__header--time ".concat(r.props.showTimeSelectOnly?"react-datepicker__header--time--only":""),ref:function(e){r.header=e}},fe.default.createElement("div",{className:"react-datepicker-time__header"},r.props.timeCaption))},r}return me(t,e),Object.defineProperty(t,"defaultProps",{get:function(){return{intervals:30,todayButton:null,timeCaption:"Time",showTimeCaption:!0}},enumerable:!1,configurable:!0}),t.prototype.componentDidMount=function(){this.scrollToTheSelectedTime(),this.props.monthRef&&this.header&&this.setState({height:this.props.monthRef.clientHeight-this.header.clientHeight})},t.prototype.render=function(){var e,r=this,n=this.state.height;return fe.default.createElement("div",{className:"react-datepicker__time-container ".concat((null!==(e=this.props.todayButton)&&void 0!==e?e:t.defaultProps.todayButton)?"react-datepicker__time-container--with-today-button":"")},this.renderTimeCaption(),fe.default.createElement("div",{className:"react-datepicker__time"},fe.default.createElement("div",{className:"react-datepicker__time-box"},fe.default.createElement("ul",{className:"react-datepicker__time-list",ref:function(e){r.list=e},style:n?{height:n}:{},role:"listbox","aria-label":this.props.timeCaption},this.renderTimes()))))},t.calcCenterPosition=function(e,t){return t.offsetTop-(e/2-t.clientHeight/2)},t}(r.Component),Bt=function(e){function n(n){var o=e.call(this,n)||this;return o.YEAR_REFS=ve([],Array(o.props.yearItemNumber),!0).map((function(){return r.createRef()})),o.isDisabled=function(e){return Qe(e,{minDate:o.props.minDate,maxDate:o.props.maxDate,excludeDates:o.props.excludeDates,includeDates:o.props.includeDates,filterDate:o.props.filterDate})},o.isExcluded=function(e){return Ke(e,{excludeDates:o.props.excludeDates})},o.selectingDate=function(){var e;return null!==(e=o.props.selectingDate)&&void 0!==e?e:o.props.preSelection},o.updateFocusOnPaginate=function(e){window.requestAnimationFrame((function(){var t,r;null===(r=null===(t=o.YEAR_REFS[e])||void 0===t?void 0:t.current)||void 0===r||r.focus()}))},o.handleYearClick=function(e,t){o.props.onDayClick&&o.props.onDayClick(e,t)},o.handleYearNavigation=function(e,t){var r,n,a,i,s=o.props,l=s.date,c=s.yearItemNumber;if(void 0!==l&&void 0!==c){var u=vt(l,c).startPeriod;o.isDisabled(t)||o.isExcluded(t)||(null===(n=(r=o.props).setPreSelection)||void 0===n||n.call(r,t),e-u<0?o.updateFocusOnPaginate(c-(u-e)):e-u>=c?o.updateFocusOnPaginate(Math.abs(c-(e-u))):null===(i=null===(a=o.YEAR_REFS[e-u])||void 0===a?void 0:a.current)||void 0===i||i.focus())}},o.isSameDay=function(e,t){return ze(e,t)},o.isCurrentYear=function(e){return e===O.getYear(ke())},o.isRangeStart=function(e){return o.props.startDate&&o.props.endDate&&Ue(J.setYear(ke(),e),o.props.startDate)},o.isRangeEnd=function(e){return o.props.startDate&&o.props.endDate&&Ue(J.setYear(ke(),e),o.props.endDate)},o.isInRange=function(e){return et(e,o.props.startDate,o.props.endDate)},o.isInSelectingRange=function(e){var t=o.props,r=t.selectsStart,n=t.selectsEnd,a=t.selectsRange,i=t.startDate,s=t.endDate;return!(!(r||n||a)||!o.selectingDate())&&(r&&s?et(e,o.selectingDate(),s):(n&&i||!(!a||!i||s))&&et(e,i,o.selectingDate()))},o.isSelectingRangeStart=function(e){var t;if(!o.isInSelectingRange(e))return!1;var r=o.props,n=r.startDate,a=r.selectsStart;return Ue(J.setYear(ke(),e),a?null!==(t=o.selectingDate())&&void 0!==t?t:null:null!=n?n:null)},o.isSelectingRangeEnd=function(e){var t;if(!o.isInSelectingRange(e))return!1;var r=o.props,n=r.endDate,a=r.selectsEnd,i=r.selectsRange;return Ue(J.setYear(ke(),e),a||i?null!==(t=o.selectingDate())&&void 0!==t?t:null:null!=n?n:null)},o.isKeyboardSelected=function(e){if(void 0!==o.props.date&&null!=o.props.selected&&null!=o.props.preSelection){var t=o.props,r=t.minDate,n=t.maxDate,a=t.excludeDates,i=t.includeDates,s=t.filterDate,l=je(J.setYear(o.props.date,e)),c=(r||n||a||i||s)&&tt(e,o.props);return!o.props.disabledKeyboardNavigation&&!o.props.inline&&!ze(l,je(o.props.selected))&&ze(l,je(o.props.preSelection))&&!c}},o.onYearClick=function(e,t){var r=o.props.date;void 0!==r&&o.handleYearClick(je(J.setYear(r,t)),e)},o.onYearKeyDown=function(e,t){var r,n,a=e.key,i=o.props,s=i.date,l=i.yearItemNumber,c=i.handleOnKeyDown;if(a!==ye.Tab&&e.preventDefault(),!o.props.disabledKeyboardNavigation)switch(a){case ye.Enter:if(null==o.props.selected)break;o.onYearClick(e,t),null===(n=(r=o.props).setPreSelection)||void 0===n||n.call(r,o.props.selected);break;case ye.ArrowRight:if(null==o.props.preSelection)break;o.handleYearNavigation(t+1,d.addYears(o.props.preSelection,1));break;case ye.ArrowLeft:if(null==o.props.preSelection)break;o.handleYearNavigation(t-1,se.subYears(o.props.preSelection,1));break;case ye.ArrowUp:if(void 0===s||void 0===l||null==o.props.preSelection)break;var u=vt(s,l).startPeriod;if((h=t-(p=3))<u){var f=l%p;t>=u&&t<u+f?p=f:p+=f,h=t-p}o.handleYearNavigation(h,se.subYears(o.props.preSelection,p));break;case ye.ArrowDown:if(void 0===s||void 0===l||null==o.props.preSelection)break;var p,h,m=vt(s,l).endPeriod;(h=t+(p=3))>m&&(f=l%p,t<=m&&t>m-f?p=f:p+=f,h=t+p),o.handleYearNavigation(h,d.addYears(o.props.preSelection,p))}c&&c(e)},o.getYearClassNames=function(e){var r=o.props,n=r.date,a=r.minDate,i=r.maxDate,s=r.selected,l=r.excludeDates,c=r.includeDates,u=r.filterDate,d=r.yearClassName;return t.clsx("react-datepicker__year-text","react-datepicker__year-".concat(e),n?null==d?void 0:d(J.setYear(n,e)):void 0,{"react-datepicker__year-text--selected":s?e===O.getYear(s):void 0,"react-datepicker__year-text--disabled":(a||i||l||c||u)&&tt(e,o.props),"react-datepicker__year-text--keyboard-selected":o.isKeyboardSelected(e),"react-datepicker__year-text--range-start":o.isRangeStart(e),"react-datepicker__year-text--range-end":o.isRangeEnd(e),"react-datepicker__year-text--in-range":o.isInRange(e),"react-datepicker__year-text--in-selecting-range":o.isInSelectingRange(e),"react-datepicker__year-text--selecting-range-start":o.isSelectingRangeStart(e),"react-datepicker__year-text--selecting-range-end":o.isSelectingRangeEnd(e),"react-datepicker__year-text--today":o.isCurrentYear(e)})},o.getYearTabIndex=function(e){if(o.props.disabledKeyboardNavigation||null==o.props.preSelection)return"-1";var t=O.getYear(o.props.preSelection),r=tt(e,o.props);return e!==t||r?"-1":"0"},o.getYearContainerClassNames=function(){var e=o.props,r=e.selectingDate,n=e.selectsStart,a=e.selectsEnd,i=e.selectsRange;return t.clsx("react-datepicker__year",{"react-datepicker__year--selecting-range":r&&(n||a||i)})},o.getYearContent=function(e){return o.props.renderYearContent?o.props.renderYearContent(e):e},o}return me(n,e),n.prototype.render=function(){var e=this,t=[],r=this.props,n=r.date,o=r.yearItemNumber,a=r.onYearMouseEnter,i=r.onYearMouseLeave;if(void 0===n)return null;for(var s=vt(n,o),l=s.startPeriod,c=s.endPeriod,u=function(r){t.push(fe.default.createElement("div",{ref:d.YEAR_REFS[r-l],onClick:function(t){e.onYearClick(t,r)},onKeyDown:function(t){xt(t)&&(t.preventDefault(),t.key=ye.Enter),e.onYearKeyDown(t,r)},tabIndex:Number(d.getYearTabIndex(r)),className:d.getYearClassNames(r),onMouseEnter:d.props.usePointerEvent?void 0:function(e){return a(e,r)},onPointerEnter:d.props.usePointerEvent?function(e){return a(e,r)}:void 0,onMouseLeave:d.props.usePointerEvent?void 0:function(e){return i(e,r)},onPointerLeave:d.props.usePointerEvent?function(e){return i(e,r)}:void 0,key:r,"aria-current":d.isCurrentYear(r)?"date":void 0},d.getYearContent(r)))},d=this,f=l;f<=c;f++)u(f);return fe.default.createElement("div",{className:this.getYearContainerClassNames()},fe.default.createElement("div",{className:"react-datepicker__year-wrapper",onMouseLeave:this.props.usePointerEvent?void 0:this.props.clearSelectingDate,onPointerLeave:this.props.usePointerEvent?this.props.clearSelectingDate:void 0},t))},n}(r.Component);function Ft(e,t,r,n){for(var o=[],a=0;a<2*t+1;a++){var i=e+t-a,s=!0;r&&(s=O.getYear(r)<=i),n&&s&&(s=O.getYear(n)>=i),s&&o.push(i)}return o}var zt,Wt=function(e){function n(t){var n=e.call(this,t)||this;n.renderOptions=function(){var e=n.props.year,t=n.state.yearsList.map((function(t){return fe.default.createElement("div",{className:e===t?"react-datepicker__year-option react-datepicker__year-option--selected_year":"react-datepicker__year-option",key:t,onClick:n.onChange.bind(n,t),"aria-selected":e===t?"true":void 0},e===t?fe.default.createElement("span",{className:"react-datepicker__year-option--selected"},"\u2713"):"",t)})),r=n.props.minDate?O.getYear(n.props.minDate):null,o=n.props.maxDate?O.getYear(n.props.maxDate):null;return o&&n.state.yearsList.find((function(e){return e===o}))||t.unshift(fe.default.createElement("div",{className:"react-datepicker__year-option",key:"upcoming",onClick:n.incrementYears},fe.default.createElement("a",{className:"react-datepicker__navigation react-datepicker__navigation--years react-datepicker__navigation--years-upcoming"}))),r&&n.state.yearsList.find((function(e){return e===r}))||t.push(fe.default.createElement("div",{className:"react-datepicker__year-option",key:"previous",onClick:n.decrementYears},fe.default.createElement("a",{className:"react-datepicker__navigation react-datepicker__navigation--years react-datepicker__navigation--years-previous"}))),t},n.onChange=function(e){n.props.onChange(e)},n.handleClickOutside=function(){n.props.onCancel()},n.shiftYears=function(e){var t=n.state.yearsList.map((function(t){return t+e}));n.setState({yearsList:t})},n.incrementYears=function(){return n.shiftYears(1)},n.decrementYears=function(){return n.shiftYears(-1)};var o=t.yearDropdownItemNumber,a=t.scrollableYearDropdown,i=o||(a?10:5);return n.state={yearsList:Ft(n.props.year,i,n.props.minDate,n.props.maxDate)},n.dropdownRef=r.createRef(),n}return me(n,e),n.prototype.componentDidMount=function(){var e=this.dropdownRef.current;if(e){var t=e.children?Array.from(e.children):null,r=t?t.find((function(e){return e.ariaSelected})):null;e.scrollTop=r&&r instanceof HTMLElement?r.offsetTop+(r.clientHeight-e.clientHeight)/2:(e.scrollHeight-e.clientHeight)/2}},n.prototype.render=function(){var e=t.clsx({"react-datepicker__year-dropdown":!0,"react-datepicker__year-dropdown--scrollable":this.props.scrollableYearDropdown});return fe.default.createElement(we,{className:e,containerRef:this.dropdownRef,onClickOutside:this.handleClickOutside},this.renderOptions())},n}(r.Component),Ht=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.state={dropdownVisible:!1},t.renderSelectOptions=function(){for(var e=t.props.minDate?O.getYear(t.props.minDate):1900,r=t.props.maxDate?O.getYear(t.props.maxDate):2100,n=[],o=e;o<=r;o++)n.push(fe.default.createElement("option",{key:o,value:o},o));return n},t.onSelectChange=function(e){t.onChange(parseInt(e.target.value))},t.renderSelectMode=function(){return fe.default.createElement("select",{value:t.props.year,className:"react-datepicker__year-select",onChange:t.onSelectChange},t.renderSelectOptions())},t.renderReadView=function(e){return fe.default.createElement("div",{key:"read",style:{visibility:e?"visible":"hidden"},className:"react-datepicker__year-read-view",onClick:function(e){return t.toggleDropdown(e)}},fe.default.createElement("span",{className:"react-datepicker__year-read-view--down-arrow"}),fe.default.createElement("span",{className:"react-datepicker__year-read-view--selected-year"},t.props.year))},t.renderDropdown=function(){return fe.default.createElement(Wt,ge({key:"dropdown"},t.props,{onChange:t.onChange,onCancel:t.toggleDropdown}))},t.renderScrollMode=function(){var e=t.state.dropdownVisible,r=[t.renderReadView(!e)];return e&&r.unshift(t.renderDropdown()),r},t.onChange=function(e){t.toggleDropdown(),e!==t.props.year&&t.props.onChange(e)},t.toggleDropdown=function(e){t.setState({dropdownVisible:!t.state.dropdownVisible},(function(){t.props.adjustDateOnChange&&t.handleYearChange(t.props.date,e)}))},t.handleYearChange=function(e,r){var n;null===(n=t.onSelect)||void 0===n||n.call(t,e,r),t.setOpen()},t.onSelect=function(e,r){var n,o;null===(o=(n=t.props).onSelect)||void 0===o||o.call(n,e,r)},t.setOpen=function(){var e,r;null===(r=(e=t.props).setOpen)||void 0===r||r.call(e,!0)},t}return me(t,e),t.prototype.render=function(){var e;switch(this.props.dropdownMode){case"scroll":e=this.renderScrollMode();break;case"select":e=this.renderSelectMode()}return fe.default.createElement("div",{className:"react-datepicker__year-dropdown-container react-datepicker__year-dropdown-container--".concat(this.props.dropdownMode)},e)},t}(r.Component),Yt=["react-datepicker__year-select","react-datepicker__month-select","react-datepicker__month-year-select"],Vt=function(e){function a(i){var c=e.call(this,i)||this;return c.monthContainer=void 0,c.handleClickOutside=function(e){c.props.onClickOutside(e)},c.setClickOutsideRef=function(){return c.containerRef.current},c.handleDropdownFocus=function(e){var t,r,n,o;n=e.target,o=(n.className||"").split(/\s+/),Yt.some((function(e){return o.indexOf(e)>=0}))&&(null===(r=(t=c.props).onDropdownFocus)||void 0===r||r.call(t,e))},c.getDateInView=function(){var e=c.props,t=e.preSelection,r=e.selected,n=e.openToDate,o=dt(c.props),a=ft(c.props),i=ke();return n||r||t||(o&&P.isBefore(i,o)?o:a&&M.isAfter(i,a)?a:i)},c.increaseMonth=function(){c.setState((function(e){var t=e.date;return{date:s.addMonths(t,1)}}),(function(){return c.handleMonthChange(c.state.date)}))},c.decreaseMonth=function(){c.setState((function(e){var t=e.date;return{date:oe.subMonths(t,1)}}),(function(){return c.handleMonthChange(c.state.date)}))},c.handleDayClick=function(e,t,r){c.props.onSelect(e,t,r),c.props.setPreSelection&&c.props.setPreSelection(e)},c.handleDayMouseEnter=function(e){c.setState({selectingDate:e}),c.props.onDayMouseEnter&&c.props.onDayMouseEnter(e)},c.handleMonthMouseLeave=function(){c.setState({selectingDate:void 0}),c.props.onMonthMouseLeave&&c.props.onMonthMouseLeave()},c.handleYearMouseEnter=function(e,t){c.setState({selectingDate:J.setYear(ke(),t)}),c.props.onYearMouseEnter&&c.props.onYearMouseEnter(e,t)},c.handleYearMouseLeave=function(e,t){c.props.onYearMouseLeave&&c.props.onYearMouseLeave(e,t)},c.handleYearChange=function(e){var t,r,n,o;null===(r=(t=c.props).onYearChange)||void 0===r||r.call(t,e),c.setState({isRenderAriaLiveMessage:!0}),c.props.adjustDateOnChange&&(c.props.onSelect(e),null===(o=(n=c.props).setOpen)||void 0===o||o.call(n,!0)),c.props.setPreSelection&&c.props.setPreSelection(e)},c.getEnabledPreSelectionDateForMonth=function(e){if(!Qe(e,c.props))return e;for(var t=Pe(e),r=Le(e),a=n.differenceInDays(r,t),i=null,s=0;s<=a;s++){var l=o.addDays(t,s);if(!Qe(l,c.props)){i=l;break}}return i},c.handleMonthChange=function(e){var t,r,n,o=null!==(t=c.getEnabledPreSelectionDateForMonth(e))&&void 0!==t?t:e;c.handleCustomMonthChange(o),c.props.adjustDateOnChange&&(c.props.onSelect(o),null===(n=(r=c.props).setOpen)||void 0===n||n.call(r,!0)),c.props.setPreSelection&&c.props.setPreSelection(o)},c.handleCustomMonthChange=function(e){var t,r;null===(r=(t=c.props).onMonthChange)||void 0===r||r.call(t,e),c.setState({isRenderAriaLiveMessage:!0})},c.handleMonthYearChange=function(e){c.handleYearChange(e),c.handleMonthChange(e)},c.changeYear=function(e){c.setState((function(t){var r=t.date;return{date:J.setYear(r,Number(e))}}),(function(){return c.handleYearChange(c.state.date)}))},c.changeMonth=function(e){c.setState((function(t){var r=t.date;return{date:Q.setMonth(r,Number(e))}}),(function(){return c.handleMonthChange(c.state.date)}))},c.changeMonthYear=function(e){c.setState((function(t){var r=t.date;return{date:J.setYear(Q.setMonth(r,I.getMonth(e)),O.getYear(e))}}),(function(){return c.handleMonthYearChange(c.state.date)}))},c.header=function(e){void 0===e&&(e=c.state.date);var r=Me(e,c.props.locale,c.props.calendarStartDay),n=[];return c.props.showWeekNumbers&&n.push(fe.default.createElement("div",{key:"W",className:"react-datepicker__day-name"},c.props.weekLabel||"#")),n.concat([0,1,2,3,4,5,6].map((function(e){var n=o.addDays(r,e),a=c.formatWeekday(n,c.props.locale),i=c.props.weekDayClassName?c.props.weekDayClassName(n):void 0;return fe.default.createElement("div",{key:e,"aria-label":Ee(n,"EEEE",c.props.locale),className:t.clsx("react-datepicker__day-name",i)},a)})))},c.formatWeekday=function(e,t){return c.props.formatWeekDay?function(e,t,r){return t(Ee(e,"EEEE",r))}(e,c.props.formatWeekDay,t):c.props.useWeekdaysShort?function(e,t){return Ee(e,"EEE",t)}(e,t):function(e,t){return Ee(e,"EEEEEE",t)}(e,t)},c.decreaseYear=function(){c.setState((function(e){var t,r=e.date;return{date:se.subYears(r,c.props.showYearPicker?null!==(t=c.props.yearItemNumber)&&void 0!==t?t:a.defaultProps.yearItemNumber:1)}}),(function(){return c.handleYearChange(c.state.date)}))},c.clearSelectingDate=function(){c.setState({selectingDate:void 0})},c.renderPreviousButton=function(){var e;if(!c.props.renderCustomHeader){var t;switch(!0){case c.props.showMonthYearPicker:t=ct(c.state.date,c.props);break;case c.props.showYearPicker:t=function(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.yearItemNumber,a=void 0===o?Se:o,i=vt(je(se.subYears(e,a)),a).endPeriod,s=n&&O.getYear(n);return s&&s>i||!1}(c.state.date,c.props);break;case c.props.showQuarterYearPicker:t=function(e,t){var r=void 0===t?{}:t,n=r.minDate,o=r.includeDates,a=re.startOfYear(e),i=ae.subQuarters(a,1);return n&&h.differenceInCalendarQuarters(n,i)>0||o&&o.every((function(e){return h.differenceInCalendarQuarters(e,i)>0}))||!1}(c.state.date,c.props);break;default:t=st(c.state.date,c.props)}if(((null!==(e=c.props.forceShowMonthNavigation)&&void 0!==e?e:a.defaultProps.forceShowMonthNavigation)||c.props.showDisabledMonthNavigation||!t)&&!c.props.showTimeSelectOnly){var r=["react-datepicker__navigation","react-datepicker__navigation--previous"],n=c.decreaseMonth;(c.props.showMonthYearPicker||c.props.showQuarterYearPicker||c.props.showYearPicker)&&(n=c.decreaseYear),t&&c.props.showDisabledMonthNavigation&&(r.push("react-datepicker__navigation--previous--disabled"),n=void 0);var o=c.props.showMonthYearPicker||c.props.showQuarterYearPicker||c.props.showYearPicker,i=c.props,s=i.previousMonthButtonLabel,l=void 0===s?a.defaultProps.previousMonthButtonLabel:s,u=i.previousYearButtonLabel,d=void 0===u?a.defaultProps.previousYearButtonLabel:u,f=c.props,p=f.previousMonthAriaLabel,m=void 0===p?"string"==typeof l?l:"Previous Month":p,g=f.previousYearAriaLabel,v=void 0===g?"string"==typeof d?d:"Previous Year":g;return fe.default.createElement("button",{type:"button",className:r.join(" "),onClick:n,onKeyDown:c.props.handleOnKeyDown,"aria-label":o?v:m},fe.default.createElement("span",{className:["react-datepicker__navigation-icon","react-datepicker__navigation-icon--previous"].join(" ")},o?d:l))}}},c.increaseYear=function(){c.setState((function(e){var t,r=e.date;return{date:d.addYears(r,c.props.showYearPicker?null!==(t=c.props.yearItemNumber)&&void 0!==t?t:a.defaultProps.yearItemNumber:1)}}),(function(){return c.handleYearChange(c.state.date)}))},c.renderNextButton=function(){var e;if(!c.props.renderCustomHeader){var t;switch(!0){case c.props.showMonthYearPicker:t=ut(c.state.date,c.props);break;case c.props.showYearPicker:t=function(e,t){var r=void 0===t?{}:t,n=r.maxDate,o=r.yearItemNumber,a=void 0===o?Se:o,i=vt(d.addYears(e,a),a).startPeriod,s=n&&O.getYear(n);return s&&s<i||!1}(c.state.date,c.props);break;case c.props.showQuarterYearPicker:t=function(e,t){var r=void 0===t?{}:t,n=r.maxDate,o=r.includeDates,a=b.endOfYear(e),i=l.addQuarters(a,1);return n&&h.differenceInCalendarQuarters(i,n)>0||o&&o.every((function(e){return h.differenceInCalendarQuarters(i,e)>0}))||!1}(c.state.date,c.props);break;default:t=lt(c.state.date,c.props)}if(((null!==(e=c.props.forceShowMonthNavigation)&&void 0!==e?e:a.defaultProps.forceShowMonthNavigation)||c.props.showDisabledMonthNavigation||!t)&&!c.props.showTimeSelectOnly){var r=["react-datepicker__navigation","react-datepicker__navigation--next"];c.props.showTimeSelect&&r.push("react-datepicker__navigation--next--with-time"),c.props.todayButton&&r.push("react-datepicker__navigation--next--with-today-button");var n=c.increaseMonth;(c.props.showMonthYearPicker||c.props.showQuarterYearPicker||c.props.showYearPicker)&&(n=c.increaseYear),t&&c.props.showDisabledMonthNavigation&&(r.push("react-datepicker__navigation--next--disabled"),n=void 0);var o=c.props.showMonthYearPicker||c.props.showQuarterYearPicker||c.props.showYearPicker,i=c.props,s=i.nextMonthButtonLabel,u=void 0===s?a.defaultProps.nextMonthButtonLabel:s,f=i.nextYearButtonLabel,p=void 0===f?a.defaultProps.nextYearButtonLabel:f,m=c.props,g=m.nextMonthAriaLabel,v=void 0===g?"string"==typeof u?u:"Next Month":g,y=m.nextYearAriaLabel,w=void 0===y?"string"==typeof p?p:"Next Year":y;return fe.default.createElement("button",{type:"button",className:r.join(" "),onClick:n,onKeyDown:c.props.handleOnKeyDown,"aria-label":o?w:v},fe.default.createElement("span",{className:["react-datepicker__navigation-icon","react-datepicker__navigation-icon--next"].join(" ")},o?p:u))}}},c.renderCurrentMonth=function(e){void 0===e&&(e=c.state.date);var t=["react-datepicker__current-month"];return c.props.showYearDropdown&&t.push("react-datepicker__current-month--hasYearDropdown"),c.props.showMonthDropdown&&t.push("react-datepicker__current-month--hasMonthDropdown"),c.props.showMonthYearDropdown&&t.push("react-datepicker__current-month--hasMonthYearDropdown"),fe.default.createElement("h2",{className:t.join(" ")},Ee(e,c.props.dateFormat,c.props.locale))},c.renderYearDropdown=function(e){if(void 0===e&&(e=!1),c.props.showYearDropdown&&!e)return fe.default.createElement(Ht,ge({},a.defaultProps,c.props,{date:c.state.date,onChange:c.changeYear,year:O.getYear(c.state.date)}))},c.renderMonthDropdown=function(e){if(void 0===e&&(e=!1),c.props.showMonthDropdown&&!e)return fe.default.createElement(Rt,ge({},a.defaultProps,c.props,{month:I.getMonth(c.state.date),onChange:c.changeMonth}))},c.renderMonthYearDropdown=function(e){if(void 0===e&&(e=!1),c.props.showMonthYearDropdown&&!e)return fe.default.createElement(Lt,ge({},a.defaultProps,c.props,{date:c.state.date,onChange:c.changeMonthYear}))},c.handleTodayButtonClick=function(e){c.props.onSelect(_e(),e),c.props.setPreSelection&&c.props.setPreSelection(_e())},c.renderTodayButton=function(){if(c.props.todayButton&&!c.props.showTimeSelectOnly)return fe.default.createElement("div",{className:"react-datepicker__today-button",onClick:c.handleTodayButtonClick},c.props.todayButton)},c.renderDefaultHeader=function(e){var t=e.monthDate,r=e.i;return fe.default.createElement("div",{className:"react-datepicker__header ".concat(c.props.showTimeSelect?"react-datepicker__header--has-time-select":"")},c.renderCurrentMonth(t),fe.default.createElement("div",{className:"react-datepicker__header__dropdown react-datepicker__header__dropdown--".concat(c.props.dropdownMode),onFocus:c.handleDropdownFocus},c.renderMonthDropdown(0!==r),c.renderMonthYearDropdown(0!==r),c.renderYearDropdown(0!==r)),fe.default.createElement("div",{className:"react-datepicker__day-names"},c.header(t)))},c.renderCustomHeader=function(e){var t,r,n=e.monthDate,o=e.i;if(c.props.showTimeSelect&&!c.state.monthContainer||c.props.showTimeSelectOnly)return null;var a=st(c.state.date,c.props),i=lt(c.state.date,c.props),s=ct(c.state.date,c.props),l=ut(c.state.date,c.props),u=!c.props.showMonthYearPicker&&!c.props.showQuarterYearPicker&&!c.props.showYearPicker;return fe.default.createElement("div",{className:"react-datepicker__header react-datepicker__header--custom",onFocus:c.props.onDropdownFocus},null===(r=(t=c.props).renderCustomHeader)||void 0===r?void 0:r.call(t,ge(ge({},c.state),{customHeaderCount:o,monthDate:n,changeMonth:c.changeMonth,changeYear:c.changeYear,decreaseMonth:c.decreaseMonth,increaseMonth:c.increaseMonth,decreaseYear:c.decreaseYear,increaseYear:c.increaseYear,prevMonthButtonDisabled:a,nextMonthButtonDisabled:i,prevYearButtonDisabled:s,nextYearButtonDisabled:l})),u&&fe.default.createElement("div",{className:"react-datepicker__day-names"},c.header(n)))},c.renderYearHeader=function(e){var t=e.monthDate,r=c.props,n=r.showYearPicker,o=r.yearItemNumber,i=vt(t,void 0===o?a.defaultProps.yearItemNumber:o),s=i.startPeriod,l=i.endPeriod;return fe.default.createElement("div",{className:"react-datepicker__header react-datepicker-year-header"},n?"".concat(s," - ").concat(l):O.getYear(t))},c.renderHeader=function(e){var t=e.monthDate,r=e.i,n={monthDate:t,i:void 0===r?0:r};switch(!0){case void 0!==c.props.renderCustomHeader:return c.renderCustomHeader(n);case c.props.showMonthYearPicker||c.props.showQuarterYearPicker||c.props.showYearPicker:return c.renderYearHeader(n);default:return c.renderDefaultHeader(n)}},c.renderMonths=function(){var e,t;if(!c.props.showTimeSelectOnly&&!c.props.showYearPicker){for(var r=[],n=null!==(e=c.props.monthsShown)&&void 0!==e?e:a.defaultProps.monthsShown,o=c.props.showPreviousMonths?n-1:0,i=c.props.showMonthYearPicker||c.props.showQuarterYearPicker?d.addYears(c.state.date,o):oe.subMonths(c.state.date,o),l=null!==(t=c.props.monthSelectedIn)&&void 0!==t?t:o,u=0;u<n;++u){var f=u-l+o,p=c.props.showMonthYearPicker||c.props.showQuarterYearPicker?d.addYears(i,f):s.addMonths(i,f),h="month-".concat(u),m=u<n-1,g=u>0;r.push(fe.default.createElement("div",{key:h,ref:function(e){c.monthContainer=null!=e?e:void 0},className:"react-datepicker__month-container"},c.renderHeader({monthDate:p,i:u}),fe.default.createElement(Pt,ge({},a.defaultProps,c.props,{ariaLabelPrefix:c.props.monthAriaLabelPrefix,day:p,onDayClick:c.handleDayClick,handleOnKeyDown:c.props.handleOnDayKeyDown,handleOnMonthKeyDown:c.props.handleOnKeyDown,onDayMouseEnter:c.handleDayMouseEnter,onMouseLeave:c.handleMonthMouseLeave,orderInDisplay:u,selectingDate:c.state.selectingDate,monthShowsDuplicateDaysEnd:m,monthShowsDuplicateDaysStart:g}))))}return r}},c.renderYears=function(){if(!c.props.showTimeSelectOnly)return c.props.showYearPicker?fe.default.createElement("div",{className:"react-datepicker__year--container"},c.renderHeader({monthDate:c.state.date}),fe.default.createElement(Bt,ge({},a.defaultProps,c.props,{selectingDate:c.state.selectingDate,date:c.state.date,onDayClick:c.handleDayClick,clearSelectingDate:c.clearSelectingDate,onYearMouseEnter:c.handleYearMouseEnter,onYearMouseLeave:c.handleYearMouseLeave}))):void 0},c.renderTimeSection=function(){if(c.props.showTimeSelect&&(c.state.monthContainer||c.props.showTimeSelectOnly))return fe.default.createElement(Ut,ge({},a.defaultProps,c.props,{onChange:c.props.onTimeChange,format:c.props.timeFormat,intervals:c.props.timeIntervals,monthRef:c.state.monthContainer}))},c.renderInputTimeSection=function(){var e=c.props.selected?new Date(c.props.selected):void 0,t=e&&Ie(e)&&Boolean(c.props.selected)?"".concat(gt(e.getHours()),":").concat(gt(e.getMinutes())):"";if(c.props.showTimeInput)return fe.default.createElement(At,ge({},a.defaultProps,c.props,{date:e,timeString:t,onChange:c.props.onTimeChange}))},c.renderAriaLiveRegion=function(){var e,t,r=vt(c.state.date,null!==(e=c.props.yearItemNumber)&&void 0!==e?e:a.defaultProps.yearItemNumber),n=r.startPeriod,o=r.endPeriod;return t=c.props.showYearPicker?"".concat(n," - ").concat(o):c.props.showMonthYearPicker||c.props.showQuarterYearPicker?O.getYear(c.state.date):"".concat(Ge(I.getMonth(c.state.date),c.props.locale)," ").concat(O.getYear(c.state.date)),fe.default.createElement("span",{role:"alert","aria-live":"polite",className:"react-datepicker__aria-live"},c.state.isRenderAriaLiveMessage&&t)},c.renderChildren=function(){if(c.props.children)return fe.default.createElement("div",{className:"react-datepicker__children-container"},c.props.children)},c.containerRef=r.createRef(),c.state={date:c.getDateInView(),selectingDate:void 0,monthContainer:void 0,isRenderAriaLiveMessage:!1},c}return me(a,e),Object.defineProperty(a,"defaultProps",{get:function(){return{monthsShown:1,forceShowMonthNavigation:!1,timeCaption:"Time",previousYearButtonLabel:"Previous Year",nextYearButtonLabel:"Next Year",previousMonthButtonLabel:"Previous Month",nextMonthButtonLabel:"Next Month",yearItemNumber:Se}},enumerable:!1,configurable:!0}),a.prototype.componentDidMount=function(){var e=this;this.props.showTimeSelect&&(this.assignMonthContainer=void e.setState({monthContainer:e.monthContainer}))},a.prototype.componentDidUpdate=function(e){var t=this;if(!this.props.preSelection||ze(this.props.preSelection,e.preSelection)&&this.props.monthSelectedIn===e.monthSelectedIn)this.props.openToDate&&!ze(this.props.openToDate,e.openToDate)&&this.setState({date:this.props.openToDate});else{var r=!Be(this.state.date,this.props.preSelection);this.setState({date:this.props.preSelection},(function(){return r&&t.handleCustomMonthChange(t.state.date)}))}},a.prototype.render=function(){var e=this.props.container||be;return fe.default.createElement(we,{onClickOutside:this.handleClickOutside,style:{display:"contents"},containerRef:this.containerRef,ignoreClass:this.props.outsideClickIgnoreClass},fe.default.createElement(e,{className:t.clsx("react-datepicker",this.props.className,{"react-datepicker--time-only":this.props.showTimeSelectOnly}),showTime:this.props.showTimeSelect||this.props.showTimeInput,showTimeSelectOnly:this.props.showTimeSelectOnly},this.renderAriaLiveRegion(),this.renderPreviousButton(),this.renderNextButton(),this.renderMonths(),this.renderYears(),this.renderTodayButton(),this.renderTimeSection(),this.renderInputTimeSection(),this.renderChildren()))},a}(r.Component),Gt=function(e){var t=e.icon,r=e.className,n=void 0===r?"":r,o=e.onClick,a="react-datepicker__calendar-icon";return"string"==typeof t?fe.default.createElement("i",{className:"".concat(a," ").concat(t," ").concat(n),"aria-hidden":"true",onClick:o}):fe.default.isValidElement(t)?fe.default.cloneElement(t,{className:"".concat(t.props.className||""," ").concat(a," ").concat(n),onClick:function(e){"function"==typeof t.props.onClick&&t.props.onClick(e),"function"==typeof o&&o(e)}}):fe.default.createElement("svg",{className:"".concat(a," ").concat(n),xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512",onClick:o},fe.default.createElement("path",{d:"M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192z"}))},Zt=function(e){function t(t){var r=e.call(this,t)||this;return r.portalRoot=null,r.el=document.createElement("div"),r}return me(t,e),t.prototype.componentDidMount=function(){this.portalRoot=(this.props.portalHost||document).getElementById(this.props.portalId),this.portalRoot||(this.portalRoot=document.createElement("div"),this.portalRoot.setAttribute("id",this.props.portalId),(this.props.portalHost||document.body).appendChild(this.portalRoot)),this.portalRoot.appendChild(this.el)},t.prototype.componentWillUnmount=function(){this.portalRoot&&this.portalRoot.removeChild(this.el)},t.prototype.render=function(){return pe.default.createPortal(this.props.children,this.el)},t}(r.Component),Qt=function(e){return(e instanceof HTMLAnchorElement||!e.disabled)&&-1!==e.tabIndex},Kt=function(e){function t(t){var n=e.call(this,t)||this;return n.getTabChildren=function(){var e;return Array.prototype.slice.call(null===(e=n.tabLoopRef.current)||void 0===e?void 0:e.querySelectorAll("[tabindex], a, button, input, select, textarea"),1,-1).filter(Qt)},n.handleFocusStart=function(){var e=n.getTabChildren();e&&e.length>1&&e[e.length-1].focus()},n.handleFocusEnd=function(){var e=n.getTabChildren();e&&e.length>1&&e[0].focus()},n.tabLoopRef=r.createRef(),n}return me(t,e),t.prototype.render=function(){var e;return(null!==(e=this.props.enableTabLoop)&&void 0!==e?e:t.defaultProps.enableTabLoop)?fe.default.createElement("div",{className:"react-datepicker__tab-loop",ref:this.tabLoopRef},fe.default.createElement("div",{className:"react-datepicker__tab-loop__start",tabIndex:0,onFocus:this.handleFocusStart}),this.props.children,fe.default.createElement("div",{className:"react-datepicker__tab-loop__end",tabIndex:0,onFocus:this.handleFocusEnd})):this.props.children},t.defaultProps={enableTabLoop:!0},t}(r.Component),Xt=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return me(n,e),Object.defineProperty(n,"defaultProps",{get:function(){return{hidePopper:!0}},enumerable:!1,configurable:!0}),n.prototype.render=function(){var e=this.props,o=e.className,a=e.wrapperClassName,i=e.hidePopper,s=void 0===i?n.defaultProps.hidePopper:i,l=e.popperComponent,c=e.targetComponent,u=e.enableTabLoop,d=e.popperOnKeyDown,f=e.portalId,p=e.portalHost,h=e.popperProps,m=e.showArrow,g=void 0;if(!s){var v=t.clsx("react-datepicker-popper",o);g=fe.default.createElement(Kt,{enableTabLoop:u},fe.default.createElement("div",{ref:h.refs.setFloating,style:h.floatingStyles,className:v,"data-placement":h.placement,onKeyDown:d},l,m&&fe.default.createElement(ce.FloatingArrow,{ref:h.arrowRef,context:h.context,fill:"currentColor",strokeWidth:1,height:8,width:16,style:{transform:"translateY(-1px)"},className:"react-datepicker__triangle"})))}this.props.popperContainer&&(g=r.createElement(this.props.popperContainer,{},g)),f&&!s&&(g=fe.default.createElement(Zt,{portalId:f,portalHost:p},g));var y=t.clsx("react-datepicker-wrapper",a);return fe.default.createElement(fe.default.Fragment,null,fe.default.createElement("div",{ref:h.refs.setReference,className:y},c),g)},n}(r.Component),Jt=(zt=Xt,function(e){var t,n="boolean"!=typeof e.hidePopper||e.hidePopper,o=r.useRef(null),a=ce.useFloating(ge({open:!n,whileElementsMounted:ce.autoUpdate,placement:e.popperPlacement,middleware:ve([ce.flip({padding:15}),ce.offset(10),ce.arrow({element:o})],null!==(t=e.popperModifiers)&&void 0!==t?t:[],!0)},e.popperProps)),i=ge(ge({},e),{hidePopper:n,popperProps:ge(ge({},a),{arrowRef:o})});return fe.default.createElement(zt,ge({},i))}),$t="react-datepicker-ignore-onclickoutside",qt="Date input not valid.",er=function(e){function n(a){var i=e.call(this,a)||this;return i.calendar=null,i.input=null,i.getPreSelection=function(){return i.props.openToDate?i.props.openToDate:i.props.selectsEnd&&i.props.startDate?i.props.startDate:i.props.selectsStart&&i.props.endDate?i.props.endDate:ke()},i.modifyHolidays=function(){var e;return null===(e=i.props.holidays)||void 0===e?void 0:e.reduce((function(e,t){var r=new Date(t.date);return Ie(r)?ve(ve([],e,!0),[ge(ge({},t),{date:r})],!1):e}),[])},i.calcInitialState=function(){var e,t=i.getPreSelection(),r=dt(i.props),n=ft(i.props),o=r&&P.isBefore(t,Oe(r))?r:n&&M.isAfter(t,Ne(n))?n:t;return{open:i.props.startOpen||!1,preventFocus:!1,inputValue:null,preSelection:null!==(e=i.props.selectsRange?i.props.startDate:i.props.selected)&&void 0!==e?e:o,highlightDates:pt(i.props.highlightDates),focused:!1,shouldFocusDayInline:!1,isRenderAriaLiveMessage:!1,wasHidden:!1}},i.resetHiddenStatus=function(){i.setState(ge(ge({},i.state),{wasHidden:!1}))},i.setHiddenStatus=function(){i.setState(ge(ge({},i.state),{wasHidden:!0}))},i.setHiddenStateOnVisibilityHidden=function(){"hidden"===document.visibilityState&&i.setHiddenStatus()},i.clearPreventFocusTimeout=function(){i.preventFocusTimeout&&clearTimeout(i.preventFocusTimeout)},i.setFocus=function(){i.input&&i.input.focus&&i.input.focus({preventScroll:!0})},i.setBlur=function(){i.input&&i.input.blur&&i.input.blur(),i.cancelFocusInput()},i.setOpen=function(e,t){void 0===t&&(t=!1),i.setState({open:e,preSelection:e&&i.state.open?i.state.preSelection:i.calcInitialState().preSelection,lastPreSelectChange:rr},(function(){e||i.setState((function(e){return{focused:!!t&&e.focused}}),(function(){!t&&i.setBlur(),i.setState({inputValue:null})}))}))},i.inputOk=function(){return j.isDate(i.state.preSelection)},i.isCalendarOpen=function(){return void 0===i.props.open?i.state.open&&!i.props.disabled&&!i.props.readOnly:i.props.open},i.handleFocus=function(e){var t,r,n=i.state.wasHidden,o=!n||i.state.open;n&&i.resetHiddenStatus(),!i.state.preventFocus&&o&&(null===(r=(t=i.props).onFocus)||void 0===r||r.call(t,e),i.props.preventOpenOnFocus||i.props.readOnly||i.setOpen(!0)),i.setState({focused:!0})},i.sendFocusBackToInput=function(){i.preventFocusTimeout&&i.clearPreventFocusTimeout(),i.setState({preventFocus:!0},(function(){i.preventFocusTimeout=setTimeout((function(){i.setFocus(),i.setState({preventFocus:!1})}))}))},i.cancelFocusInput=function(){clearTimeout(i.inputFocusTimeout),i.inputFocusTimeout=void 0},i.deferFocusInput=function(){i.cancelFocusInput(),i.inputFocusTimeout=setTimeout((function(){return i.setFocus()}),1)},i.handleDropdownFocus=function(){i.cancelFocusInput()},i.handleBlur=function(e){var t,r;(!i.state.open||i.props.withPortal||i.props.showTimeInput)&&(null===(r=(t=i.props).onBlur)||void 0===r||r.call(t,e)),i.setState({focused:!1})},i.handleCalendarClickOutside=function(e){var t,r;i.props.inline||i.setOpen(!1),null===(r=(t=i.props).onClickOutside)||void 0===r||r.call(t,e),i.props.withPortal&&e.preventDefault()},i.handleChange=function(){for(var e,t,r=[],o=0;o<arguments.length;o++)r[o]=arguments[o];var a=r[0];if(!i.props.onChangeRaw||(i.props.onChangeRaw.apply(i,r),a&&"function"==typeof a.isDefaultPrevented&&!a.isDefaultPrevented())){i.setState({inputValue:(null==a?void 0:a.target)instanceof HTMLInputElement?a.target.value:null,lastPreSelectChange:tr});var s=i.props,l=s.dateFormat,c=void 0===l?n.defaultProps.dateFormat:l,u=s.strictParsing,d=void 0===u?n.defaultProps.strictParsing:u,f=s.selectsRange,p=s.startDate,h=s.endDate,m=(null==a?void 0:a.target)instanceof HTMLInputElement?a.target.value:"";if(f){var g=m.split("-",2).map((function(e){return e.trim()})),v=g[0],y=g[1],b=Ce(null!=v?v:"",c,i.props.locale,d),w=Ce(null!=y?y:"",c,i.props.locale,d),x=(null==p?void 0:p.getTime())!==(null==b?void 0:b.getTime()),S=(null==h?void 0:h.getTime())!==(null==w?void 0:w.getTime());if(!x&&!S)return;if(b&&Qe(b,i.props))return;if(w&&Qe(w,i.props))return;null===(t=(e=i.props).onChange)||void 0===t||t.call(e,[b,w],a)}else{var k=Ce(m,c,i.props.locale,d,i.props.minDate);i.props.showTimeSelectOnly&&i.props.selected&&k&&!ze(k,i.props.selected)&&(k=V.set(i.props.selected,{hours:A.getHours(k),minutes:C.getMinutes(k),seconds:D.getSeconds(k)})),!k&&m||i.setSelected(k,a,!0)}}},i.handleSelect=function(e,t,r){if(i.props.shouldCloseOnSelect&&!i.props.showTimeSelect&&i.sendFocusBackToInput(),i.props.onChangeRaw&&i.props.onChangeRaw(t),i.setSelected(e,t,!1,r),i.props.showDateSelect&&i.setState({isRenderAriaLiveMessage:!0}),!i.props.shouldCloseOnSelect||i.props.showTimeSelect)i.setPreSelection(e);else if(!i.props.inline){i.props.selectsRange||i.setOpen(!1);var n=i.props,o=n.startDate,a=n.endDate;!o||a||!i.props.swapRange&&wt(e,o)||i.setOpen(!1)}},i.setSelected=function(e,t,r,n){var o,a,s=e;if(i.props.showYearPicker){if(null!==s&&tt(O.getYear(s),i.props))return}else if(i.props.showMonthYearPicker){if(null!==s&&Xe(s,i.props))return}else if(null!==s&&Qe(s,i.props))return;var l=i.props,c=l.onChange,u=l.selectsRange,d=l.startDate,f=l.endDate,p=l.selectsMultiple,h=l.selectedDates,m=l.minTime,g=l.swapRange;if(!We(i.props.selected,s)||i.props.allowSameDay||u||p)if(null!==s&&(!i.props.selected||r&&(i.props.showTimeSelect||i.props.showTimeSelectOnly||i.props.showTimeInput)||(s=Te(s,{hour:A.getHours(i.props.selected),minute:C.getMinutes(i.props.selected),second:D.getSeconds(i.props.selected)})),r||!i.props.showTimeSelect&&!i.props.showTimeSelectOnly||m&&(s=Te(s,{hour:m.getHours(),minute:m.getMinutes(),second:m.getSeconds()})),i.props.inline||i.setState({preSelection:s}),i.props.focusSelectedMonth||i.setState({monthSelectedIn:n})),u){var v=d&&f;d||f?d&&!f&&(null===s?null==c||c([null,null],t):wt(s,d)?g?null==c||c([s,d],t):null==c||c([s,null],t):null==c||c([d,s],t)):null==c||c([s,null],t),v&&(null==c||c([s,null],t))}else if(p){if(null!==s)if(null==h?void 0:h.length)if(h.some((function(e){return ze(e,s)}))){var y=h.filter((function(e){return!ze(e,s)}));null==c||c(y,t)}else null==c||c(ve(ve([],h,!0),[s],!1),t);else null==c||c([s],t)}else null==c||c(s,t);r||(null===(a=(o=i.props).onSelect)||void 0===a||a.call(o,s,t),i.setState({inputValue:null}))},i.setPreSelection=function(e){var t=j.isDate(i.props.minDate),r=j.isDate(i.props.maxDate),n=!0;if(e){var o=Oe(e);if(t&&r)n=He(e,i.props.minDate,i.props.maxDate);else if(t){var a=Oe(i.props.minDate);n=M.isAfter(e,a)||We(o,a)}else if(r){var s=Ne(i.props.maxDate);n=P.isBefore(e,s)||We(o,s)}}n&&i.setState({preSelection:e})},i.toggleCalendar=function(){i.setOpen(!i.state.open)},i.handleTimeChange=function(e){var t,r;if(!i.props.selectsRange&&!i.props.selectsMultiple){var n=i.props.selected?i.props.selected:i.getPreSelection(),o=i.props.selected?e:Te(n,{hour:A.getHours(e),minute:C.getMinutes(e)});i.setState({preSelection:o}),null===(r=(t=i.props).onChange)||void 0===r||r.call(t,o),i.props.shouldCloseOnSelect&&!i.props.showTimeInput&&(i.sendFocusBackToInput(),i.setOpen(!1)),i.props.showTimeInput&&i.setOpen(!0),(i.props.showTimeSelectOnly||i.props.showTimeSelect)&&i.setState({isRenderAriaLiveMessage:!0}),i.setState({inputValue:null})}},i.onInputClick=function(){var e,t;i.props.disabled||i.props.readOnly||i.setOpen(!0),null===(t=(e=i.props).onInputClick)||void 0===t||t.call(e)},i.onInputKeyDown=function(e){var t,r,n,o,a,s;null===(r=(t=i.props).onKeyDown)||void 0===r||r.call(t,e);var l=e.key;if(i.state.open||i.props.inline||i.props.preventOpenOnFocus){if(i.state.open){if(l===ye.ArrowDown||l===ye.ArrowUp){e.preventDefault();var c=i.props.showTimeSelectOnly?".react-datepicker__time-list-item[tabindex='0']":i.props.showWeekPicker&&i.props.showWeekNumbers?'.react-datepicker__week-number[tabindex="0"]':i.props.showFullMonthYearPicker||i.props.showMonthYearPicker?'.react-datepicker__month-text[tabindex="0"]':'.react-datepicker__day[tabindex="0"]',u=(null===(o=i.calendar)||void 0===o?void 0:o.containerRef.current)instanceof Element&&i.calendar.containerRef.current.querySelector(c);return void(u instanceof HTMLElement&&u.focus({preventScroll:!0}))}var d=ke(i.state.preSelection);l===ye.Enter?(e.preventDefault(),i.inputOk()&&i.state.lastPreSelectChange===rr?(i.handleSelect(d,e),!i.props.shouldCloseOnSelect&&i.setPreSelection(d)):i.setOpen(!1)):l===ye.Escape?(e.preventDefault(),i.sendFocusBackToInput(),i.setOpen(!1)):l===ye.Tab&&i.setOpen(!1),i.inputOk()||null===(s=(a=i.props).onInputError)||void 0===s||s.call(a,{code:1,msg:qt})}}else l!==ye.ArrowDown&&l!==ye.ArrowUp&&l!==ye.Enter||null===(n=i.onInputClick)||void 0===n||n.call(i)},i.onPortalKeyDown=function(e){e.key===ye.Escape&&(e.preventDefault(),i.setState({preventFocus:!0},(function(){i.setOpen(!1),setTimeout((function(){i.setFocus(),i.setState({preventFocus:!1})}))})))},i.onDayKeyDown=function(e){var t,r,n,a,l,c,f=i.props,p=f.minDate,h=f.maxDate,m=f.disabledKeyboardNavigation,g=f.showWeekPicker,v=f.shouldCloseOnSelect,b=f.locale,w=f.calendarStartDay,x=f.adjustDateOnChange,S=f.inline;if(null===(r=(t=i.props).onKeyDown)||void 0===r||r.call(t,e),!m){var A=e.key,k=e.shiftKey,C=ke(i.state.preSelection),E=function(e,t){var r=t;switch(e){case ye.ArrowRight:r=g?u.addWeeks(t,1):o.addDays(t,1);break;case ye.ArrowLeft:r=g?ie.subWeeks(t,1):ne.subDays(t,1);break;case ye.ArrowUp:r=ie.subWeeks(t,1);break;case ye.ArrowDown:r=u.addWeeks(t,1);break;case ye.PageUp:r=k?se.subYears(t,1):oe.subMonths(t,1);break;case ye.PageDown:r=k?d.addYears(t,1):s.addMonths(t,1);break;case ye.Home:r=Me(t,b,w);break;case ye.End:r=function(e){return y.endOfWeek(e)}(t)}return r};if(A===ye.Enter)return e.preventDefault(),i.handleSelect(C,e),void(!v&&i.setPreSelection(C));if(A===ye.Escape)return e.preventDefault(),i.setOpen(!1),void(i.inputOk()||null===(a=(n=i.props).onInputError)||void 0===a||a.call(n,{code:1,msg:qt}));var D=null;switch(A){case ye.ArrowLeft:case ye.ArrowRight:case ye.ArrowUp:case ye.ArrowDown:case ye.PageUp:case ye.PageDown:case ye.Home:case ye.End:D=function(e,t){for(var r=e,n=!1,o=0,a=E(e,t);!n;){if(o>=40){a=t;break}p&&a<p&&(r=ye.ArrowRight,a=Qe(p,i.props)?E(r,a):p),h&&a>h&&(r=ye.ArrowLeft,a=Qe(h,i.props)?E(r,a):h),Qe(a,i.props)?(r!==ye.PageUp&&r!==ye.Home||(r=ye.ArrowRight),r!==ye.PageDown&&r!==ye.End||(r=ye.ArrowLeft),a=E(r,a)):n=!0,o++}return a}(A,C)}if(D){if(e.preventDefault(),i.setState({lastPreSelectChange:rr}),x&&i.setSelected(D),i.setPreSelection(D),S){var T=I.getMonth(C),M=I.getMonth(D),P=O.getYear(C),j=O.getYear(D);T!==M||P!==j?i.setState({shouldFocusDayInline:!0}):i.setState({shouldFocusDayInline:!1})}}else null===(c=(l=i.props).onInputError)||void 0===c||c.call(l,{code:1,msg:qt})}},i.onPopperKeyDown=function(e){e.key===ye.Escape&&(e.preventDefault(),i.sendFocusBackToInput())},i.onClearClick=function(e){e&&e.preventDefault&&e.preventDefault(),i.sendFocusBackToInput();var t=i.props,r=t.selectsRange,n=t.onChange;r?null==n||n([null,null],e):null==n||n(null,e),i.setState({inputValue:null})},i.clear=function(){i.onClearClick()},i.onScroll=function(e){"boolean"==typeof i.props.closeOnScroll&&i.props.closeOnScroll?e.target!==document&&e.target!==document.documentElement&&e.target!==document.body||i.setOpen(!1):"function"==typeof i.props.closeOnScroll&&i.props.closeOnScroll(e)&&i.setOpen(!1)},i.renderCalendar=function(){var e,t;return i.props.inline||i.isCalendarOpen()?fe.default.createElement(Vt,ge({showMonthYearDropdown:void 0,ref:function(e){i.calendar=e}},i.props,i.state,{setOpen:i.setOpen,dateFormat:null!==(e=i.props.dateFormatCalendar)&&void 0!==e?e:n.defaultProps.dateFormatCalendar,onSelect:i.handleSelect,onClickOutside:i.handleCalendarClickOutside,holidays:ht(i.modifyHolidays()),outsideClickIgnoreClass:$t,onDropdownFocus:i.handleDropdownFocus,onTimeChange:i.handleTimeChange,className:i.props.calendarClassName,container:i.props.calendarContainer,handleOnKeyDown:i.props.onKeyDown,handleOnDayKeyDown:i.onDayKeyDown,setPreSelection:i.setPreSelection,dropdownMode:null!==(t=i.props.dropdownMode)&&void 0!==t?t:n.defaultProps.dropdownMode}),i.props.children):null},i.renderAriaLiveRegion=function(){var e,t=i.props,r=t.dateFormat,o=void 0===r?n.defaultProps.dateFormat:r,a=t.locale,s=i.props.showTimeInput||i.props.showTimeSelect?"PPPPp":"PPPP";return e=i.props.selectsRange?"Selected start date: ".concat(De(i.props.startDate,{dateFormat:s,locale:a}),". ").concat(i.props.endDate?"End date: "+De(i.props.endDate,{dateFormat:s,locale:a}):""):i.props.showTimeSelectOnly?"Selected time: ".concat(De(i.props.selected,{dateFormat:o,locale:a})):i.props.showYearPicker?"Selected year: ".concat(De(i.props.selected,{dateFormat:"yyyy",locale:a})):i.props.showMonthYearPicker?"Selected month: ".concat(De(i.props.selected,{dateFormat:"MMMM yyyy",locale:a})):i.props.showQuarterYearPicker?"Selected quarter: ".concat(De(i.props.selected,{dateFormat:"yyyy, QQQ",locale:a})):"Selected date: ".concat(De(i.props.selected,{dateFormat:s,locale:a})),fe.default.createElement("span",{role:"alert","aria-live":"polite",className:"react-datepicker__aria-live"},e)},i.renderDateInput=function(){var e,o,a,s=t.clsx(i.props.className,((e={})[$t]=i.state.open,e)),l=i.props.customInput||fe.default.createElement("input",{type:"text"}),c=i.props.customInputRef||"ref",u=i.props,d=u.dateFormat,f=void 0===d?n.defaultProps.dateFormat:d,p=u.locale,h="string"==typeof i.props.value?i.props.value:"string"==typeof i.state.inputValue?i.state.inputValue:i.props.selectsRange?function(e,t,r){if(!e)return"";var n=De(e,r),o=t?De(t,r):"";return"".concat(n," - ").concat(o)}(i.props.startDate,i.props.endDate,{dateFormat:f,locale:p}):i.props.selectsMultiple?function(e,t){if(!(null==e?void 0:e.length))return"";var r=e[0]?De(e[0],t):"";if(1===e.length)return r;if(2===e.length&&e[1]){var n=De(e[1],t);return"".concat(r,", ").concat(n)}var o=e.length-1;return"".concat(r," (+").concat(o,")")}(null!==(a=i.props.selectedDates)&&void 0!==a?a:[],{dateFormat:f,locale:p}):De(i.props.selected,{dateFormat:f,locale:p});return r.cloneElement(l,((o={})[c]=function(e){i.input=e},o.value=h,o.onBlur=i.handleBlur,o.onChange=i.handleChange,o.onClick=i.onInputClick,o.onFocus=i.handleFocus,o.onKeyDown=i.onInputKeyDown,o.id=i.props.id,o.name=i.props.name,o.form=i.props.form,o.autoFocus=i.props.autoFocus,o.placeholder=i.props.placeholderText,o.disabled=i.props.disabled,o.autoComplete=i.props.autoComplete,o.className=t.clsx(l.props.className,s),o.title=i.props.title,o.readOnly=i.props.readOnly,o.required=i.props.required,o.tabIndex=i.props.tabIndex,o["aria-describedby"]=i.props.ariaDescribedBy,o["aria-invalid"]=i.props.ariaInvalid,o["aria-labelledby"]=i.props.ariaLabelledBy,o["aria-required"]=i.props.ariaRequired,o))},i.renderClearButton=function(){var e=i.props,r=e.isClearable,n=e.disabled,o=e.selected,a=e.startDate,s=e.endDate,l=e.clearButtonTitle,c=e.clearButtonClassName,u=void 0===c?"":c,d=e.ariaLabelClose,f=void 0===d?"Close":d,p=e.selectedDates;return r&&(null!=o||null!=a||null!=s||(null==p?void 0:p.length))?fe.default.createElement("button",{type:"button",className:t.clsx("react-datepicker__close-icon",u,{"react-datepicker__close-icon--disabled":n}),disabled:n,"aria-label":f,onClick:i.onClearClick,title:l,tabIndex:-1}):null},i.state=i.calcInitialState(),i.preventFocusTimeout=void 0,i}return me(n,e),Object.defineProperty(n,"defaultProps",{get:function(){return{allowSameDay:!1,dateFormat:"MM/dd/yyyy",dateFormatCalendar:"LLLL yyyy",disabled:!1,disabledKeyboardNavigation:!1,dropdownMode:"scroll",preventOpenOnFocus:!1,monthsShown:1,readOnly:!1,withPortal:!1,selectsDisabledDaysInRange:!1,shouldCloseOnSelect:!0,showTimeSelect:!1,showTimeInput:!1,showPreviousMonths:!1,showMonthYearPicker:!1,showFullMonthYearPicker:!1,showTwoColumnMonthYearPicker:!1,showFourColumnMonthYearPicker:!1,showYearPicker:!1,showQuarterYearPicker:!1,showWeekPicker:!1,strictParsing:!1,swapRange:!1,timeIntervals:30,timeCaption:"Time",previousMonthAriaLabel:"Previous Month",previousMonthButtonLabel:"Previous Month",nextMonthAriaLabel:"Next Month",nextMonthButtonLabel:"Next Month",previousYearAriaLabel:"Previous Year",previousYearButtonLabel:"Previous Year",nextYearAriaLabel:"Next Year",nextYearButtonLabel:"Next Year",timeInputLabel:"Time",enableTabLoop:!0,yearItemNumber:Se,focusSelectedMonth:!1,showPopperArrow:!0,excludeScrollbar:!0,customTimeInput:null,calendarStartDay:void 0,toggleCalendarOnIconClick:!1,usePointerEvent:!1}},enumerable:!1,configurable:!0}),n.prototype.componentDidMount=function(){window.addEventListener("scroll",this.onScroll,!0),document.addEventListener("visibilitychange",this.setHiddenStateOnVisibilityHidden)},n.prototype.componentDidUpdate=function(e,t){var r,n,o,a,i,s;e.inline&&(i=e.selected,s=this.props.selected,i&&s?I.getMonth(i)!==I.getMonth(s)||O.getYear(i)!==O.getYear(s):i!==s)&&this.setPreSelection(this.props.selected),void 0!==this.state.monthSelectedIn&&e.monthsShown!==this.props.monthsShown&&this.setState({monthSelectedIn:0}),e.highlightDates!==this.props.highlightDates&&this.setState({highlightDates:pt(this.props.highlightDates)}),t.focused||We(e.selected,this.props.selected)||this.setState({inputValue:null}),t.open!==this.state.open&&(!1===t.open&&!0===this.state.open&&(null===(n=(r=this.props).onCalendarOpen)||void 0===n||n.call(r)),!0===t.open&&!1===this.state.open&&(null===(a=(o=this.props).onCalendarClose)||void 0===a||a.call(o)))},n.prototype.componentWillUnmount=function(){this.clearPreventFocusTimeout(),window.removeEventListener("scroll",this.onScroll,!0),document.removeEventListener("visibilitychange",this.setHiddenStateOnVisibilityHidden)},n.prototype.renderInputContainer=function(){var e=this.props,r=e.showIcon,n=e.icon,o=e.calendarIconClassname,a=e.calendarIconClassName,i=e.toggleCalendarOnIconClick,s=this.state.open;return o&&console.warn("calendarIconClassname props is deprecated. should use calendarIconClassName props."),fe.default.createElement("div",{className:"react-datepicker__input-container".concat(r?" react-datepicker__view-calendar-icon":"")},r&&fe.default.createElement(Gt,ge({icon:n,className:t.clsx(a,!a&&o,s&&"react-datepicker-ignore-onclickoutside")},i?{onClick:this.toggleCalendar}:null)),this.state.isRenderAriaLiveMessage&&this.renderAriaLiveRegion(),this.renderDateInput(),this.renderClearButton())},n.prototype.render=function(){var e=this.renderCalendar();if(this.props.inline)return e;if(this.props.withPortal){var t=this.state.open?fe.default.createElement(Kt,{enableTabLoop:this.props.enableTabLoop},fe.default.createElement("div",{className:"react-datepicker__portal",tabIndex:-1,onKeyDown:this.onPortalKeyDown},e)):null;return this.state.open&&this.props.portalId&&(t=fe.default.createElement(Zt,ge({portalId:this.props.portalId},this.props),t)),fe.default.createElement("div",null,this.renderInputContainer(),t)}return fe.default.createElement(Jt,ge({},this.props,{className:this.props.popperClassName,hidePopper:!this.isCalendarOpen(),targetComponent:this.renderInputContainer(),popperComponent:e,popperOnKeyDown:this.onPopperKeyDown,showArrow:this.props.showPopperArrow}))},n}(r.Component),tr="input",rr="navigate";e.CalendarContainer=be,e.default=er,e.getDefaultLocale=Ye,e.registerLocale=function(e,t){var r=xe();r.__localeData__||(r.__localeData__={}),r.__localeData__[e]=t},e.setDefaultLocale=function(e){xe().__localeId__=e},Object.defineProperty(e,"__esModule",{value:!0})}(t,r(44110),r(9950),r(46075),r(65811),r(58213),r(80999),r(27811),r(20481),r(87727),r(29023),r(33116),r(18982),r(78890),r(10812),r(71823),r(13405),r(29409),r(62331),r(81274),r(75904),r(83271),r(35833),r(36648),r(44938),r(8758),r(89317),r(21063),r(31146),r(91038),r(2414),r(30877),r(75296),r(88707),r(49271),r(19859),r(49663),r(4201),r(27776),r(59941),r(84769),r(85473),r(62259),r(86084),r(33731),r(88191),r(56964),r(23098),r(34849),r(29416),r(78582),r(26650),r(64086),r(57078),r(33404),r(85694),r(82771),r(72242),r(51486),r(16744),r(39596),r(71139),r(73094),r(28707),r(17119))},66325:(e,t,r)=>{"use strict";r.r(t),r.d(t,{HTML5Backend:()=>j,NativeTypes:()=>n,getEmptyImage:()=>P});var n={};function o(e){var t=null;return function(){return null==t&&(t=e()),t}}function a(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}r.r(n),r.d(n,{FILE:()=>m,TEXT:()=>v,URL:()=>g});var i=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.entered=[],this.isNodeInDocument=t}var t,r,n;return t=e,(r=[{key:"enter",value:function(e){var t=this,r=this.entered.length;return this.entered=function(e,t){var r=new Set,n=function(e){return r.add(e)};e.forEach(n),t.forEach(n);var o=[];return r.forEach((function(e){return o.push(e)})),o}(this.entered.filter((function(r){return t.isNodeInDocument(r)&&(!r.contains||r.contains(e))})),[e]),0===r&&this.entered.length>0}},{key:"leave",value:function(e){var t,r,n=this.entered.length;return this.entered=(t=this.entered.filter(this.isNodeInDocument),r=e,t.filter((function(e){return e!==r}))),n>0&&0===this.entered.length}},{key:"reset",value:function(){this.entered=[]}}])&&a(t.prototype,r),n&&a(t,n),e}(),s=o((function(){return/firefox/i.test(navigator.userAgent)})),l=o((function(){return Boolean(window.safari)}));function c(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var u=function(){function e(t,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);for(var n=t.length,o=[],a=0;a<n;a++)o.push(a);o.sort((function(e,r){return t[e]<t[r]?-1:1}));for(var i,s,l=[],c=[],u=[],d=0;d<n-1;d++)i=t[d+1]-t[d],s=r[d+1]-r[d],c.push(i),l.push(s),u.push(s/i);for(var f=[u[0]],p=0;p<c.length-1;p++){var h=u[p],m=u[p+1];if(h*m<=0)f.push(0);else{i=c[p];var g=c[p+1],v=i+g;f.push(3*v/((v+g)/h+(v+i)/m))}}f.push(u[u.length-1]);for(var y,b=[],w=[],x=0;x<f.length-1;x++){y=u[x];var S=f[x],A=1/c[x],k=S+f[x+1]-y-y;b.push((y-S-k)*A),w.push(k*A*A)}this.xs=t,this.ys=r,this.c1s=f,this.c2s=b,this.c3s=w}var t,r,n;return t=e,(r=[{key:"interpolate",value:function(e){var t=this.xs,r=this.ys,n=this.c1s,o=this.c2s,a=this.c3s,i=t.length-1;if(e===t[i])return r[i];for(var s,l=0,c=a.length-1;l<=c;){var u=t[s=Math.floor(.5*(l+c))];if(u<e)l=s+1;else{if(!(u>e))return r[s];c=s-1}}var d=e-t[i=Math.max(0,c)],f=d*d;return r[i]+n[i]*d+o[i]*f+a[i]*d*f}}])&&c(t.prototype,r),n&&c(t,n),e}();function d(e){var t=1===e.nodeType?e:e.parentElement;if(!t)return null;var r=t.getBoundingClientRect(),n=r.top;return{x:r.left,y:n}}function f(e){return{x:e.clientX,y:e.clientY}}function p(e,t,r,n,o){var a=function(e){var t;return"IMG"===e.nodeName&&(s()||!(null===(t=document.documentElement)||void 0===t?void 0:t.contains(e)))}(t),i=d(a?e:t),c={x:r.x-i.x,y:r.y-i.y},f=e.offsetWidth,p=e.offsetHeight,h=n.anchorX,m=n.anchorY,g=function(e,t,r,n){var o=e?t.width:r,a=e?t.height:n;return l()&&e&&(a/=window.devicePixelRatio,o/=window.devicePixelRatio),{dragPreviewWidth:o,dragPreviewHeight:a}}(a,t,f,p),v=g.dragPreviewWidth,y=g.dragPreviewHeight,b=o.offsetX,w=o.offsetY,x=0===w||w;return{x:0===b||b?b:new u([0,.5,1],[c.x,c.x/f*v,c.x+v-f]).interpolate(h),y:x?w:function(){var e=new u([0,.5,1],[c.y,c.y/p*y,c.y+y-p]).interpolate(m);return l()&&a&&(e+=(window.devicePixelRatio-1)*y),e}()}}var h,m="__NATIVE_FILE__",g="__NATIVE_URL__",v="__NATIVE_TEXT__";function y(e,t,r){var n=t.reduce((function(t,r){return t||e.getData(r)}),"");return null!=n?n:r}function b(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var w=(b(h={},m,{exposeProperties:{files:function(e){return Array.prototype.slice.call(e.files)},items:function(e){return e.items}},matchesTypes:["Files"]}),b(h,g,{exposeProperties:{urls:function(e,t){return y(e,t,"").split("\n")}},matchesTypes:["Url","text/uri-list"]}),b(h,v,{exposeProperties:{text:function(e,t){return y(e,t,"")}},matchesTypes:["Text","text/plain"]}),h);function x(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var S=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.config=t,this.item={},this.initializeExposedProperties()}var t,r,n;return t=e,(r=[{key:"initializeExposedProperties",value:function(){var e=this;Object.keys(this.config.exposeProperties).forEach((function(t){Object.defineProperty(e.item,t,{configurable:!0,enumerable:!0,get:function(){return console.warn("Browser doesn't allow reading \"".concat(t,'" until the drop event.')),null}})}))}},{key:"loadDataTransfer",value:function(e){var t=this;if(e){var r={};Object.keys(this.config.exposeProperties).forEach((function(n){r[n]={value:t.config.exposeProperties[n](e,t.config.matchesTypes),configurable:!0,enumerable:!0}})),Object.defineProperties(this.item,r)}}},{key:"canDrag",value:function(){return!0}},{key:"beginDrag",value:function(){return this.item}},{key:"isDragging",value:function(e,t){return t===e.getSourceId()}},{key:"endDrag",value:function(){}}])&&x(t.prototype,r),n&&x(t,n),e}();function A(e){if(!e)return null;var t=Array.prototype.slice.call(e.types||[]);return Object.keys(w).filter((function(e){return w[e].matchesTypes.some((function(e){return t.indexOf(e)>-1}))}))[0]||null}function k(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var C=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.globalContext=t}var t,r,n;return t=e,(r=[{key:"window",get:function(){return this.globalContext?this.globalContext:"undefined"!==typeof window?window:void 0}},{key:"document",get:function(){if(this.window)return this.window.document}}])&&k(t.prototype,r),n&&k(t,n),e}();function I(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function E(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?I(Object(r),!0).forEach((function(t){D(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):I(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function D(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function T(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var O,M=function(){function e(t,r){var n=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.sourcePreviewNodes=new Map,this.sourcePreviewNodeOptions=new Map,this.sourceNodes=new Map,this.sourceNodeOptions=new Map,this.dragStartSourceIds=null,this.dropTargetIds=[],this.dragEnterTargetIds=[],this.currentNativeSource=null,this.currentNativeHandle=null,this.currentDragSourceNode=null,this.altKeyPressed=!1,this.mouseMoveTimeoutTimer=null,this.asyncEndDragFrameId=null,this.dragOverTargetIds=null,this.getSourceClientOffset=function(e){var t=n.sourceNodes.get(e);return t&&d(t)||null},this.endDragNativeItem=function(){n.isDraggingNativeItem()&&(n.actions.endDrag(),n.currentNativeHandle&&n.registry.removeSource(n.currentNativeHandle),n.currentNativeHandle=null,n.currentNativeSource=null)},this.isNodeInDocument=function(e){return Boolean(e&&n.document&&n.document.body&&document.body.contains(e))},this.endDragIfSourceWasRemovedFromDOM=function(){var e=n.currentDragSourceNode;n.isNodeInDocument(e)||n.clearCurrentDragSourceNode()&&n.actions.endDrag()},this.handleTopDragStartCapture=function(){n.clearCurrentDragSourceNode(),n.dragStartSourceIds=[]},this.handleTopDragStart=function(e){if(!e.defaultPrevented){var t=n.dragStartSourceIds;n.dragStartSourceIds=null;var r=f(e);n.monitor.isDragging()&&n.actions.endDrag(),n.actions.beginDrag(t||[],{publishSource:!1,getSourceClientOffset:n.getSourceClientOffset,clientOffset:r});var o=e.dataTransfer,a=A(o);if(n.monitor.isDragging()){if(o&&"function"===typeof o.setDragImage){var i=n.monitor.getSourceId(),s=n.sourceNodes.get(i),l=n.sourcePreviewNodes.get(i)||s;if(l){var c=n.getCurrentSourcePreviewNodeOptions(),u=p(s,l,r,{anchorX:c.anchorX,anchorY:c.anchorY},{offsetX:c.offsetX,offsetY:c.offsetY});o.setDragImage(l,u.x,u.y)}}try{null===o||void 0===o||o.setData("application/json",{})}catch(d){}n.setCurrentDragSourceNode(e.target),n.getCurrentSourcePreviewNodeOptions().captureDraggingState?n.actions.publishDragSource():setTimeout((function(){return n.actions.publishDragSource()}),0)}else if(a)n.beginDragNativeItem(a);else{if(o&&!o.types&&(e.target&&!e.target.hasAttribute||!e.target.hasAttribute("draggable")))return;e.preventDefault()}}},this.handleTopDragEndCapture=function(){n.clearCurrentDragSourceNode()&&n.actions.endDrag()},this.handleTopDragEnterCapture=function(e){if(n.dragEnterTargetIds=[],n.enterLeaveCounter.enter(e.target)&&!n.monitor.isDragging()){var t=e.dataTransfer,r=A(t);r&&n.beginDragNativeItem(r,t)}},this.handleTopDragEnter=function(e){var t=n.dragEnterTargetIds;(n.dragEnterTargetIds=[],n.monitor.isDragging())&&(n.altKeyPressed=e.altKey,s()||n.actions.hover(t,{clientOffset:f(e)}),t.some((function(e){return n.monitor.canDropOnTarget(e)}))&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=n.getCurrentDropEffect())))},this.handleTopDragOverCapture=function(){n.dragOverTargetIds=[]},this.handleTopDragOver=function(e){var t=n.dragOverTargetIds;if(n.dragOverTargetIds=[],!n.monitor.isDragging())return e.preventDefault(),void(e.dataTransfer&&(e.dataTransfer.dropEffect="none"));n.altKeyPressed=e.altKey,n.actions.hover(t||[],{clientOffset:f(e)}),(t||[]).some((function(e){return n.monitor.canDropOnTarget(e)}))?(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=n.getCurrentDropEffect())):n.isDraggingNativeItem()?e.preventDefault():(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="none"))},this.handleTopDragLeaveCapture=function(e){n.isDraggingNativeItem()&&e.preventDefault(),n.enterLeaveCounter.leave(e.target)&&n.isDraggingNativeItem()&&n.endDragNativeItem()},this.handleTopDropCapture=function(e){var t;(n.dropTargetIds=[],e.preventDefault(),n.isDraggingNativeItem())&&(null===(t=n.currentNativeSource)||void 0===t||t.loadDataTransfer(e.dataTransfer));n.enterLeaveCounter.reset()},this.handleTopDrop=function(e){var t=n.dropTargetIds;n.dropTargetIds=[],n.actions.hover(t,{clientOffset:f(e)}),n.actions.drop({dropEffect:n.getCurrentDropEffect()}),n.isDraggingNativeItem()?n.endDragNativeItem():n.endDragIfSourceWasRemovedFromDOM()},this.handleSelectStart=function(e){var t=e.target;"function"===typeof t.dragDrop&&("INPUT"===t.tagName||"SELECT"===t.tagName||"TEXTAREA"===t.tagName||t.isContentEditable||(e.preventDefault(),t.dragDrop()))},this.options=new C(r),this.actions=t.getActions(),this.monitor=t.getMonitor(),this.registry=t.getRegistry(),this.enterLeaveCounter=new i(this.isNodeInDocument)}var t,r,o;return t=e,(r=[{key:"profile",value:function(){var e,t;return{sourcePreviewNodes:this.sourcePreviewNodes.size,sourcePreviewNodeOptions:this.sourcePreviewNodeOptions.size,sourceNodeOptions:this.sourceNodeOptions.size,sourceNodes:this.sourceNodes.size,dragStartSourceIds:(null===(e=this.dragStartSourceIds)||void 0===e?void 0:e.length)||0,dropTargetIds:this.dropTargetIds.length,dragEnterTargetIds:this.dragEnterTargetIds.length,dragOverTargetIds:(null===(t=this.dragOverTargetIds)||void 0===t?void 0:t.length)||0}}},{key:"setup",value:function(){if(void 0!==this.window){if(this.window.__isReactDndBackendSetUp)throw new Error("Cannot have two HTML5 backends at the same time.");this.window.__isReactDndBackendSetUp=!0,this.addEventListeners(this.window)}}},{key:"teardown",value:function(){void 0!==this.window&&(this.window.__isReactDndBackendSetUp=!1,this.removeEventListeners(this.window),this.clearCurrentDragSourceNode(),this.asyncEndDragFrameId&&this.window.cancelAnimationFrame(this.asyncEndDragFrameId))}},{key:"connectDragPreview",value:function(e,t,r){var n=this;return this.sourcePreviewNodeOptions.set(e,r),this.sourcePreviewNodes.set(e,t),function(){n.sourcePreviewNodes.delete(e),n.sourcePreviewNodeOptions.delete(e)}}},{key:"connectDragSource",value:function(e,t,r){var n=this;this.sourceNodes.set(e,t),this.sourceNodeOptions.set(e,r);var o=function(t){return n.handleDragStart(t,e)},a=function(e){return n.handleSelectStart(e)};return t.setAttribute("draggable","true"),t.addEventListener("dragstart",o),t.addEventListener("selectstart",a),function(){n.sourceNodes.delete(e),n.sourceNodeOptions.delete(e),t.removeEventListener("dragstart",o),t.removeEventListener("selectstart",a),t.setAttribute("draggable","false")}}},{key:"connectDropTarget",value:function(e,t){var r=this,n=function(t){return r.handleDragEnter(t,e)},o=function(t){return r.handleDragOver(t,e)},a=function(t){return r.handleDrop(t,e)};return t.addEventListener("dragenter",n),t.addEventListener("dragover",o),t.addEventListener("drop",a),function(){t.removeEventListener("dragenter",n),t.removeEventListener("dragover",o),t.removeEventListener("drop",a)}}},{key:"addEventListeners",value:function(e){e.addEventListener&&(e.addEventListener("dragstart",this.handleTopDragStart),e.addEventListener("dragstart",this.handleTopDragStartCapture,!0),e.addEventListener("dragend",this.handleTopDragEndCapture,!0),e.addEventListener("dragenter",this.handleTopDragEnter),e.addEventListener("dragenter",this.handleTopDragEnterCapture,!0),e.addEventListener("dragleave",this.handleTopDragLeaveCapture,!0),e.addEventListener("dragover",this.handleTopDragOver),e.addEventListener("dragover",this.handleTopDragOverCapture,!0),e.addEventListener("drop",this.handleTopDrop),e.addEventListener("drop",this.handleTopDropCapture,!0))}},{key:"removeEventListeners",value:function(e){e.removeEventListener&&(e.removeEventListener("dragstart",this.handleTopDragStart),e.removeEventListener("dragstart",this.handleTopDragStartCapture,!0),e.removeEventListener("dragend",this.handleTopDragEndCapture,!0),e.removeEventListener("dragenter",this.handleTopDragEnter),e.removeEventListener("dragenter",this.handleTopDragEnterCapture,!0),e.removeEventListener("dragleave",this.handleTopDragLeaveCapture,!0),e.removeEventListener("dragover",this.handleTopDragOver),e.removeEventListener("dragover",this.handleTopDragOverCapture,!0),e.removeEventListener("drop",this.handleTopDrop),e.removeEventListener("drop",this.handleTopDropCapture,!0))}},{key:"getCurrentSourceNodeOptions",value:function(){var e=this.monitor.getSourceId(),t=this.sourceNodeOptions.get(e);return E({dropEffect:this.altKeyPressed?"copy":"move"},t||{})}},{key:"getCurrentDropEffect",value:function(){return this.isDraggingNativeItem()?"copy":this.getCurrentSourceNodeOptions().dropEffect}},{key:"getCurrentSourcePreviewNodeOptions",value:function(){var e=this.monitor.getSourceId();return E({anchorX:.5,anchorY:.5,captureDraggingState:!1},this.sourcePreviewNodeOptions.get(e)||{})}},{key:"isDraggingNativeItem",value:function(){var e=this.monitor.getItemType();return Object.keys(n).some((function(t){return n[t]===e}))}},{key:"beginDragNativeItem",value:function(e,t){this.clearCurrentDragSourceNode(),this.currentNativeSource=function(e,t){var r=new S(w[e]);return r.loadDataTransfer(t),r}(e,t),this.currentNativeHandle=this.registry.addSource(e,this.currentNativeSource),this.actions.beginDrag([this.currentNativeHandle])}},{key:"setCurrentDragSourceNode",value:function(e){var t=this;this.clearCurrentDragSourceNode(),this.currentDragSourceNode=e,this.mouseMoveTimeoutTimer=setTimeout((function(){return t.window&&t.window.addEventListener("mousemove",t.endDragIfSourceWasRemovedFromDOM,!0)}),1e3)}},{key:"clearCurrentDragSourceNode",value:function(){return!!this.currentDragSourceNode&&(this.currentDragSourceNode=null,this.window&&(this.window.clearTimeout(this.mouseMoveTimeoutTimer||void 0),this.window.removeEventListener("mousemove",this.endDragIfSourceWasRemovedFromDOM,!0)),this.mouseMoveTimeoutTimer=null,!0)}},{key:"handleDragStart",value:function(e,t){e.defaultPrevented||(this.dragStartSourceIds||(this.dragStartSourceIds=[]),this.dragStartSourceIds.unshift(t))}},{key:"handleDragEnter",value:function(e,t){this.dragEnterTargetIds.unshift(t)}},{key:"handleDragOver",value:function(e,t){null===this.dragOverTargetIds&&(this.dragOverTargetIds=[]),this.dragOverTargetIds.unshift(t)}},{key:"handleDrop",value:function(e,t){this.dropTargetIds.unshift(t)}},{key:"window",get:function(){return this.options.window}},{key:"document",get:function(){return this.options.document}}])&&T(t.prototype,r),o&&T(t,o),e}();function P(){return O||((O=new Image).src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),O}var j=function(e,t){return new M(e,t)}},27258:(e,t,r)=>{"use strict";r.d(t,{M:()=>ke,s:()=>Ce});var n=r(9950);function o(e){return"Minified Redux error #"+e+"; visit https://redux.js.org/Errors?code="+e+" for the full message or use the non-minified dev environment for full errors. "}var a="function"===typeof Symbol&&Symbol.observable||"@@observable",i=function(){return Math.random().toString(36).substring(7).split("").join(".")},s={INIT:"@@redux/INIT"+i(),REPLACE:"@@redux/REPLACE"+i(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+i()}};function l(e){if("object"!==typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function c(e,t,r){var n;if("function"===typeof t&&"function"===typeof r||"function"===typeof r&&"function"===typeof arguments[3])throw new Error(o(0));if("function"===typeof t&&"undefined"===typeof r&&(r=t,t=void 0),"undefined"!==typeof r){if("function"!==typeof r)throw new Error(o(1));return r(c)(e,t)}if("function"!==typeof e)throw new Error(o(2));var i=e,u=t,d=[],f=d,p=!1;function h(){f===d&&(f=d.slice())}function m(){if(p)throw new Error(o(3));return u}function g(e){if("function"!==typeof e)throw new Error(o(4));if(p)throw new Error(o(5));var t=!0;return h(),f.push(e),function(){if(t){if(p)throw new Error(o(6));t=!1,h();var r=f.indexOf(e);f.splice(r,1),d=null}}}function v(e){if(!l(e))throw new Error(o(7));if("undefined"===typeof e.type)throw new Error(o(8));if(p)throw new Error(o(9));try{p=!0,u=i(u,e)}finally{p=!1}for(var t=d=f,r=0;r<t.length;r++){(0,t[r])()}return e}return v({type:s.INIT}),(n={dispatch:v,subscribe:g,getState:m,replaceReducer:function(e){if("function"!==typeof e)throw new Error(o(10));i=e,v({type:s.REPLACE})}})[a]=function(){var e,t=g;return(e={subscribe:function(e){if("object"!==typeof e||null===e)throw new Error(o(11));function r(){e.next&&e.next(m())}return r(),{unsubscribe:t(r)}}})[a]=function(){return this},e},n}var u="dnd-core/INIT_COORDS",d="dnd-core/BEGIN_DRAG",f="dnd-core/PUBLISH_DRAG_SOURCE",p="dnd-core/HOVER",h="dnd-core/DROP",m="dnd-core/END_DRAG",g=function(e,t){return e===t};function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?v(Object(r),!0).forEach((function(t){b(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):v(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function b(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var w={initialSourceClientOffset:null,initialClientOffset:null,clientOffset:null};function x(){var e,t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:w,n=arguments.length>1?arguments[1]:void 0,o=n.payload;switch(n.type){case u:case d:return{initialSourceClientOffset:o.sourceClientOffset,initialClientOffset:o.clientOffset,clientOffset:o.clientOffset};case p:return e=r.clientOffset,t=o.clientOffset,!e&&!t||e&&t&&e.x===t.x&&e.y===t.y?r:y(y({},r),{},{clientOffset:o.clientOffset});case m:case h:return w;default:return r}}var S="dnd-core/ADD_SOURCE",A="dnd-core/ADD_TARGET",k="dnd-core/REMOVE_SOURCE",C="dnd-core/REMOVE_TARGET";function I(e){return I="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},I(e)}function E(e){return"object"===I(e)}function D(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function T(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?D(Object(r),!0).forEach((function(t){O(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):D(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function O(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var M={itemType:null,item:null,sourceId:null,targetIds:[],dropResult:null,didDrop:!1,isSourcePublic:null};function P(){var e,t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:M,n=arguments.length>1?arguments[1]:void 0,o=n.payload;switch(n.type){case d:return T(T({},r),{},{itemType:o.itemType,item:o.item,sourceId:o.sourceId,isSourcePublic:o.isSourcePublic,dropResult:null,didDrop:!1});case f:return T(T({},r),{},{isSourcePublic:!0});case p:return T(T({},r),{},{targetIds:o.targetIds});case C:return-1===r.targetIds.indexOf(o.targetId)?r:T(T({},r),{},{targetIds:(e=r.targetIds,t=o.targetId,e.filter((function(e){return e!==t})))});case h:return T(T({},r),{},{dropResult:o.dropResult,didDrop:!0,targetIds:[]});case m:return T(T({},r),{},{itemType:null,item:null,sourceId:null,dropResult:null,didDrop:!1,isSourcePublic:null,targetIds:[]});default:return r}}function j(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;switch((arguments.length>1?arguments[1]:void 0).type){case S:case A:return e+1;case k:case C:return e-1;default:return e}}var R=[],_=[];function N(){var e=arguments.length>1?arguments[1]:void 0;switch(e.type){case p:break;case S:case A:case C:case k:return R;default:return _}var t=e.payload,r=t.targetIds,n=void 0===r?[]:r,o=t.prevTargetIds,a=void 0===o?[]:o,i=function(e,t){var r=new Map,n=function(e){r.set(e,r.has(e)?r.get(e)+1:1)};e.forEach(n),t.forEach(n);var o=[];return r.forEach((function(e,t){1===e&&o.push(t)})),o}(n,a),s=i.length>0||!function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:g;if(e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!r(e[n],t[n]))return!1;return!0}(n,a);if(!s)return R;var l=a[a.length-1],c=n[n.length-1];return l!==c&&(l&&i.push(l),c&&i.push(c)),i}function L(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:0)+1}function U(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function B(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?U(Object(r),!0).forEach((function(t){F(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):U(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function F(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function z(){var e,t,r,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0;return{dirtyHandlerIds:N(n.dirtyHandlerIds,{type:o.type,payload:B(B({},o.payload),{},{prevTargetIds:(e=n,t="dragOperation.targetIds",r=[],t.split(".").reduce((function(e,t){return e&&e[t]?e[t]:r||null}),e))})}),dragOffset:x(n.dragOffset,o),refCount:j(n.refCount,o),dragOperation:P(n.dragOperation,o),stateId:L(n.stateId)}}R.__IS_NONE__=!0,_.__IS_ALL__=!0;var W=r(29424);function H(e,t){return{type:u,payload:{sourceClientOffset:t||null,clientOffset:e||null}}}var Y={type:u,payload:{clientOffset:null,sourceClientOffset:null}};function V(e){return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{publishSource:!0},n=r.publishSource,o=void 0===n||n,a=r.clientOffset,i=r.getSourceClientOffset,s=e.getMonitor(),l=e.getRegistry();e.dispatch(H(a)),function(e,t,r){(0,W.V)(!t.isDragging(),"Cannot call beginDrag while dragging."),e.forEach((function(e){(0,W.V)(r.getSource(e),"Expected sourceIds to be registered.")}))}(t,s,l);var c=function(e,t){for(var r=null,n=e.length-1;n>=0;n--)if(t.canDragSource(e[n])){r=e[n];break}return r}(t,s);if(null!==c){var u=null;if(a){if(!i)throw new Error("getSourceClientOffset must be defined");!function(e){(0,W.V)("function"===typeof e,"When clientOffset is provided, getSourceClientOffset must be a function.")}(i),u=i(c)}e.dispatch(H(a,u));var f=l.getSource(c).beginDrag(s,c);!function(e){(0,W.V)(E(e),"Item must be an object.")}(f),l.pinSource(c);var p=l.getSourceType(c);return{type:d,payload:{itemType:p,item:f,sourceId:c,clientOffset:a||null,sourceClientOffset:u||null,isSourcePublic:!!o}}}e.dispatch(Y)}}function G(e){return function(){if(e.getMonitor().isDragging())return{type:f}}}function Z(e,t){return null===t?null===e:Array.isArray(e)?e.some((function(e){return e===t})):e===t}function Q(e){return function(t){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).clientOffset;!function(e){(0,W.V)(Array.isArray(e),"Expected targetIds to be an array.")}(t);var n=t.slice(0),o=e.getMonitor(),a=e.getRegistry();return function(e,t,r){(0,W.V)(t.isDragging(),"Cannot call hover while not dragging."),(0,W.V)(!t.didDrop(),"Cannot call hover after drop.");for(var n=0;n<e.length;n++){var o=e[n];(0,W.V)(e.lastIndexOf(o)===n,"Expected targetIds to be unique in the passed array.");var a=r.getTarget(o);(0,W.V)(a,"Expected targetIds to be registered.")}}(n,o,a),function(e,t,r){for(var n=e.length-1;n>=0;n--){var o=e[n];Z(t.getTargetType(o),r)||e.splice(n,1)}}(n,a,o.getItemType()),function(e,t,r){e.forEach((function(e){r.getTarget(e).hover(t,e)}))}(n,o,a),{type:p,payload:{targetIds:n,clientOffset:r||null}}}}function K(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function X(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?K(Object(r),!0).forEach((function(t){J(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):K(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function J(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $(e){return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.getMonitor(),n=e.getRegistry();!function(e){(0,W.V)(e.isDragging(),"Cannot call drop while not dragging."),(0,W.V)(!e.didDrop(),"Cannot call drop twice during one drag operation.")}(r);var o=function(e){var t=e.getTargetIds().filter(e.canDropOnTarget,e);return t.reverse(),t}(r);o.forEach((function(o,a){var i=function(e,t,r,n){var o=r.getTarget(e),a=o?o.drop(n,e):void 0;(function(e){(0,W.V)("undefined"===typeof e||E(e),"Drop result must either be an object or undefined.")})(a),"undefined"===typeof a&&(a=0===t?{}:n.getDropResult());return a}(o,a,n,r),s={type:h,payload:{dropResult:X(X({},t),i)}};e.dispatch(s)}))}}function q(e){return function(){var t=e.getMonitor(),r=e.getRegistry();!function(e){(0,W.V)(e.isDragging(),"Cannot call endDrag while not dragging.")}(t);var n=t.getSourceId();null!=n&&(r.getSource(n,!0).endDrag(t,n),r.unpinSource());return{type:m}}}function ee(e,t){return{x:e.x-t.x,y:e.y-t.y}}function te(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var re,ne=function(){function e(t,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.store=t,this.registry=r}var t,r,n;return t=e,r=[{key:"subscribeToStateChange",value:function(e){var t=this,r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{handlerIds:void 0}).handlerIds;(0,W.V)("function"===typeof e,"listener must be a function."),(0,W.V)("undefined"===typeof r||Array.isArray(r),"handlerIds, when specified, must be an array of strings.");var n=this.store.getState().stateId;return this.store.subscribe((function(){var o=t.store.getState(),a=o.stateId;try{var i=a===n||a===n+1&&!function(e,t){return e!==R&&(e===_||"undefined"===typeof t||(r=e,t.filter((function(e){return r.indexOf(e)>-1}))).length>0);var r}(o.dirtyHandlerIds,r);i||e()}finally{n=a}}))}},{key:"subscribeToOffsetChange",value:function(e){var t=this;(0,W.V)("function"===typeof e,"listener must be a function.");var r=this.store.getState().dragOffset;return this.store.subscribe((function(){var n=t.store.getState().dragOffset;n!==r&&(r=n,e())}))}},{key:"canDragSource",value:function(e){if(!e)return!1;var t=this.registry.getSource(e);return(0,W.V)(t,"Expected to find a valid source."),!this.isDragging()&&t.canDrag(this,e)}},{key:"canDropOnTarget",value:function(e){if(!e)return!1;var t=this.registry.getTarget(e);return(0,W.V)(t,"Expected to find a valid target."),!(!this.isDragging()||this.didDrop())&&Z(this.registry.getTargetType(e),this.getItemType())&&t.canDrop(this,e)}},{key:"isDragging",value:function(){return Boolean(this.getItemType())}},{key:"isDraggingSource",value:function(e){if(!e)return!1;var t=this.registry.getSource(e,!0);return(0,W.V)(t,"Expected to find a valid source."),!(!this.isDragging()||!this.isSourcePublic())&&this.registry.getSourceType(e)===this.getItemType()&&t.isDragging(this,e)}},{key:"isOverTarget",value:function(e){if(!e)return!1;var t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{shallow:!1}).shallow;if(!this.isDragging())return!1;var r=this.registry.getTargetType(e),n=this.getItemType();if(n&&!Z(r,n))return!1;var o=this.getTargetIds();if(!o.length)return!1;var a=o.indexOf(e);return t?a===o.length-1:a>-1}},{key:"getItemType",value:function(){return this.store.getState().dragOperation.itemType}},{key:"getItem",value:function(){return this.store.getState().dragOperation.item}},{key:"getSourceId",value:function(){return this.store.getState().dragOperation.sourceId}},{key:"getTargetIds",value:function(){return this.store.getState().dragOperation.targetIds}},{key:"getDropResult",value:function(){return this.store.getState().dragOperation.dropResult}},{key:"didDrop",value:function(){return this.store.getState().dragOperation.didDrop}},{key:"isSourcePublic",value:function(){return Boolean(this.store.getState().dragOperation.isSourcePublic)}},{key:"getInitialClientOffset",value:function(){return this.store.getState().dragOffset.initialClientOffset}},{key:"getInitialSourceClientOffset",value:function(){return this.store.getState().dragOffset.initialSourceClientOffset}},{key:"getClientOffset",value:function(){return this.store.getState().dragOffset.clientOffset}},{key:"getSourceClientOffset",value:function(){return function(e){var t,r,n=e.clientOffset,o=e.initialClientOffset,a=e.initialSourceClientOffset;return n&&o&&a?ee((r=a,{x:(t=n).x+r.x,y:t.y+r.y}),o):null}(this.store.getState().dragOffset)}},{key:"getDifferenceFromInitialOffset",value:function(){return function(e){var t=e.clientOffset,r=e.initialClientOffset;return t&&r?ee(t,r):null}(this.store.getState().dragOffset)}}],r&&te(t.prototype,r),n&&te(t,n),e}(),oe=0;function ae(e){return ae="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ae(e)}function ie(e,t){t&&Array.isArray(e)?e.forEach((function(e){return ie(e,!1)})):(0,W.V)("string"===typeof e||"symbol"===ae(e),t?"Type can only be a string, a symbol, or an array of either.":"Type can only be a string or a symbol.")}!function(e){e.SOURCE="SOURCE",e.TARGET="TARGET"}(re||(re={}));const se="undefined"!==typeof global?global:self,le=se.MutationObserver||se.WebKitMutationObserver;function ce(e){return function(){const t=setTimeout(n,0),r=setInterval(n,50);function n(){clearTimeout(t),clearInterval(r),e()}}}const ue="function"===typeof le?function(e){let t=1;const r=new le(e),n=document.createTextNode("");return r.observe(n,{characterData:!0}),function(){t=-t,n.data=t}}:ce;class de{call(){try{this.task&&this.task()}catch(e){this.onError(e)}finally{this.task=null,this.release(this)}}constructor(e,t){this.onError=e,this.release=t,this.task=null}}const fe=new class{enqueueTask(e){const{queue:t,requestFlush:r}=this;t.length||(r(),this.flushing=!0),t[t.length]=e}constructor(){this.queue=[],this.pendingErrors=[],this.flushing=!1,this.index=0,this.capacity=1024,this.flush=()=>{const{queue:e}=this;for(;this.index<e.length;){const t=this.index;if(this.index++,e[t].call(),this.index>this.capacity){for(let t=0,r=e.length-this.index;t<r;t++)e[t]=e[t+this.index];e.length-=this.index,this.index=0}}e.length=0,this.index=0,this.flushing=!1},this.registerPendingError=e=>{this.pendingErrors.push(e),this.requestErrorThrow()},this.requestFlush=ue(this.flush),this.requestErrorThrow=ce((()=>{if(this.pendingErrors.length)throw this.pendingErrors.shift()}))}},pe=new class{create(e){const t=this.freeTasks,r=t.length?t.pop():new de(this.onError,(e=>t[t.length]=e));return r.task=e,r}constructor(e){this.onError=e,this.freeTasks=[]}}(fe.registerPendingError);function he(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function me(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return ge(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ge(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ge(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function ve(e){var t=(oe++).toString();switch(e){case re.SOURCE:return"S".concat(t);case re.TARGET:return"T".concat(t);default:throw new Error("Unknown Handler Role: ".concat(e))}}function ye(e){switch(e[0]){case"S":return re.SOURCE;case"T":return re.TARGET;default:(0,W.V)(!1,"Cannot parse handler ID: ".concat(e))}}function be(e,t){var r=e.entries(),n=!1;do{var o=r.next(),a=o.done;if(me(o.value,2)[1]===t)return!0;n=!!a}while(!n);return!1}var we=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.types=new Map,this.dragSources=new Map,this.dropTargets=new Map,this.pinnedSourceId=null,this.pinnedSource=null,this.store=t}var t,r,n;return t=e,r=[{key:"addSource",value:function(e,t){ie(e),function(e){(0,W.V)("function"===typeof e.canDrag,"Expected canDrag to be a function."),(0,W.V)("function"===typeof e.beginDrag,"Expected beginDrag to be a function."),(0,W.V)("function"===typeof e.endDrag,"Expected endDrag to be a function.")}(t);var r=this.addHandler(re.SOURCE,e,t);return this.store.dispatch(function(e){return{type:S,payload:{sourceId:e}}}(r)),r}},{key:"addTarget",value:function(e,t){ie(e,!0),function(e){(0,W.V)("function"===typeof e.canDrop,"Expected canDrop to be a function."),(0,W.V)("function"===typeof e.hover,"Expected hover to be a function."),(0,W.V)("function"===typeof e.drop,"Expected beginDrag to be a function.")}(t);var r=this.addHandler(re.TARGET,e,t);return this.store.dispatch(function(e){return{type:A,payload:{targetId:e}}}(r)),r}},{key:"containsHandler",value:function(e){return be(this.dragSources,e)||be(this.dropTargets,e)}},{key:"getSource",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,W.V)(this.isSourceId(e),"Expected a valid source ID."),t&&e===this.pinnedSourceId?this.pinnedSource:this.dragSources.get(e)}},{key:"getTarget",value:function(e){return(0,W.V)(this.isTargetId(e),"Expected a valid target ID."),this.dropTargets.get(e)}},{key:"getSourceType",value:function(e){return(0,W.V)(this.isSourceId(e),"Expected a valid source ID."),this.types.get(e)}},{key:"getTargetType",value:function(e){return(0,W.V)(this.isTargetId(e),"Expected a valid target ID."),this.types.get(e)}},{key:"isSourceId",value:function(e){return ye(e)===re.SOURCE}},{key:"isTargetId",value:function(e){return ye(e)===re.TARGET}},{key:"removeSource",value:function(e){var t,r=this;(0,W.V)(this.getSource(e),"Expected an existing source."),this.store.dispatch(function(e){return{type:k,payload:{sourceId:e}}}(e)),t=function(){r.dragSources.delete(e),r.types.delete(e)},fe.enqueueTask(pe.create(t))}},{key:"removeTarget",value:function(e){(0,W.V)(this.getTarget(e),"Expected an existing target."),this.store.dispatch(function(e){return{type:C,payload:{targetId:e}}}(e)),this.dropTargets.delete(e),this.types.delete(e)}},{key:"pinSource",value:function(e){var t=this.getSource(e);(0,W.V)(t,"Expected an existing source."),this.pinnedSourceId=e,this.pinnedSource=t}},{key:"unpinSource",value:function(){(0,W.V)(this.pinnedSource,"No source is pinned at the time."),this.pinnedSourceId=null,this.pinnedSource=null}},{key:"addHandler",value:function(e,t,r){var n=ve(e);return this.types.set(n,t),e===re.SOURCE?this.dragSources.set(n,r):e===re.TARGET&&this.dropTargets.set(n,r),n}}],r&&he(t.prototype,r),n&&he(t,n),e}();function xe(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var Se=function(){function e(){var t=this,r=arguments.length>0&&void 0!==arguments[0]&&arguments[0];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.isSetUp=!1,this.handleRefCountChange=function(){var e=t.store.getState().refCount>0;t.backend&&(e&&!t.isSetUp?(t.backend.setup(),t.isSetUp=!0):!e&&t.isSetUp&&(t.backend.teardown(),t.isSetUp=!1))};var n=function(e){var t="undefined"!==typeof window&&window.__REDUX_DEVTOOLS_EXTENSION__;return c(z,e&&t&&t({name:"dnd-core",instanceId:"dnd-core"}))}(r);this.store=n,this.monitor=new ne(n,new we(n)),n.subscribe(this.handleRefCountChange)}var t,r,n;return t=e,r=[{key:"receiveBackend",value:function(e){this.backend=e}},{key:"getMonitor",value:function(){return this.monitor}},{key:"getBackend",value:function(){return this.backend}},{key:"getRegistry",value:function(){return this.monitor.registry}},{key:"getActions",value:function(){var e=this,t=this.store.dispatch,r=function(e){return{beginDrag:V(e),publishDragSource:G(e),hover:Q(e),drop:$(e),endDrag:q(e)}}(this);return Object.keys(r).reduce((function(n,o){var a,i=r[o];return n[o]=(a=i,function(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];var i=a.apply(e,n);"undefined"!==typeof i&&t(i)}),n}),{})}},{key:"dispatch",value:function(e){this.store.dispatch(e)}}],r&&xe(t.prototype,r),n&&xe(t,n),e}();function Ae(e,t,r,n){var o=new Se(n),a=e(o,t,r);return o.receiveBackend(a),o}var ke=n.createContext({dragDropManager:void 0});function Ce(e,t,r,n){return{dragDropManager:Ae(e,t,r,n)}}},25855:(e,t,r)=>{"use strict";r.d(t,{G:()=>s});var n=r(29424);function o(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var a=!1,i=!1,s=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.sourceId=null,this.internalMonitor=t.getMonitor()}var t,r,s;return t=e,(r=[{key:"receiveHandlerId",value:function(e){this.sourceId=e}},{key:"getHandlerId",value:function(){return this.sourceId}},{key:"canDrag",value:function(){(0,n.V)(!a,"You may not call monitor.canDrag() inside your canDrag() implementation. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source-monitor");try{return a=!0,this.internalMonitor.canDragSource(this.sourceId)}finally{a=!1}}},{key:"isDragging",value:function(){if(!this.sourceId)return!1;(0,n.V)(!i,"You may not call monitor.isDragging() inside your isDragging() implementation. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source-monitor");try{return i=!0,this.internalMonitor.isDraggingSource(this.sourceId)}finally{i=!1}}},{key:"subscribeToStateChange",value:function(e,t){return this.internalMonitor.subscribeToStateChange(e,t)}},{key:"isDraggingSource",value:function(e){return this.internalMonitor.isDraggingSource(e)}},{key:"isOverTarget",value:function(e,t){return this.internalMonitor.isOverTarget(e,t)}},{key:"getTargetIds",value:function(){return this.internalMonitor.getTargetIds()}},{key:"isSourcePublic",value:function(){return this.internalMonitor.isSourcePublic()}},{key:"getSourceId",value:function(){return this.internalMonitor.getSourceId()}},{key:"subscribeToOffsetChange",value:function(e){return this.internalMonitor.subscribeToOffsetChange(e)}},{key:"canDragSource",value:function(e){return this.internalMonitor.canDragSource(e)}},{key:"canDropOnTarget",value:function(e){return this.internalMonitor.canDropOnTarget(e)}},{key:"getItemType",value:function(){return this.internalMonitor.getItemType()}},{key:"getItem",value:function(){return this.internalMonitor.getItem()}},{key:"getDropResult",value:function(){return this.internalMonitor.getDropResult()}},{key:"didDrop",value:function(){return this.internalMonitor.didDrop()}},{key:"getInitialClientOffset",value:function(){return this.internalMonitor.getInitialClientOffset()}},{key:"getInitialSourceClientOffset",value:function(){return this.internalMonitor.getInitialSourceClientOffset()}},{key:"getSourceClientOffset",value:function(){return this.internalMonitor.getSourceClientOffset()}},{key:"getClientOffset",value:function(){return this.internalMonitor.getClientOffset()}},{key:"getDifferenceFromInitialOffset",value:function(){return this.internalMonitor.getDifferenceFromInitialOffset()}}])&&o(t.prototype,r),s&&o(t,s),e}()},3942:(e,t,r)=>{"use strict";r.d(t,{b:()=>i});var n=r(29424);function o(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var a=!1,i=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.targetId=null,this.internalMonitor=t.getMonitor()}var t,r,i;return t=e,(r=[{key:"receiveHandlerId",value:function(e){this.targetId=e}},{key:"getHandlerId",value:function(){return this.targetId}},{key:"subscribeToStateChange",value:function(e,t){return this.internalMonitor.subscribeToStateChange(e,t)}},{key:"canDrop",value:function(){if(!this.targetId)return!1;(0,n.V)(!a,"You may not call monitor.canDrop() inside your canDrop() implementation. Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target-monitor");try{return a=!0,this.internalMonitor.canDropOnTarget(this.targetId)}finally{a=!1}}},{key:"isOver",value:function(e){return!!this.targetId&&this.internalMonitor.isOverTarget(this.targetId,e)}},{key:"getItemType",value:function(){return this.internalMonitor.getItemType()}},{key:"getItem",value:function(){return this.internalMonitor.getItem()}},{key:"getDropResult",value:function(){return this.internalMonitor.getDropResult()}},{key:"didDrop",value:function(){return this.internalMonitor.didDrop()}},{key:"getInitialClientOffset",value:function(){return this.internalMonitor.getInitialClientOffset()}},{key:"getInitialSourceClientOffset",value:function(){return this.internalMonitor.getInitialSourceClientOffset()}},{key:"getSourceClientOffset",value:function(){return this.internalMonitor.getSourceClientOffset()}},{key:"getClientOffset",value:function(){return this.internalMonitor.getClientOffset()}},{key:"getDifferenceFromInitialOffset",value:function(){return this.internalMonitor.getDifferenceFromInitialOffset()}}])&&o(t.prototype,r),i&&o(t,i),e}()},24538:(e,t,r)=>{"use strict";r.d(t,{b:()=>s});var n=r(85100),o=r(13637),a=r(40192);function i(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var s=function(){function e(t){var r=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.hooks=(0,n.i)({dragSource:function(e,t){r.clearDragSource(),r.dragSourceOptions=t||null,(0,o.i)(e)?r.dragSourceRef=e:r.dragSourceNode=e,r.reconnectDragSource()},dragPreview:function(e,t){r.clearDragPreview(),r.dragPreviewOptions=t||null,(0,o.i)(e)?r.dragPreviewRef=e:r.dragPreviewNode=e,r.reconnectDragPreview()}}),this.handlerId=null,this.dragSourceRef=null,this.dragSourceOptionsInternal=null,this.dragPreviewRef=null,this.dragPreviewOptionsInternal=null,this.lastConnectedHandlerId=null,this.lastConnectedDragSource=null,this.lastConnectedDragSourceOptions=null,this.lastConnectedDragPreview=null,this.lastConnectedDragPreviewOptions=null,this.backend=t}var t,r,s;return t=e,(r=[{key:"receiveHandlerId",value:function(e){this.handlerId!==e&&(this.handlerId=e,this.reconnect())}},{key:"reconnect",value:function(){this.reconnectDragSource(),this.reconnectDragPreview()}},{key:"reconnectDragSource",value:function(){var e=this.dragSource,t=this.didHandlerIdChange()||this.didConnectedDragSourceChange()||this.didDragSourceOptionsChange();t&&this.disconnectDragSource(),this.handlerId&&(e?t&&(this.lastConnectedHandlerId=this.handlerId,this.lastConnectedDragSource=e,this.lastConnectedDragSourceOptions=this.dragSourceOptions,this.dragSourceUnsubscribe=this.backend.connectDragSource(this.handlerId,e,this.dragSourceOptions)):this.lastConnectedDragSource=e)}},{key:"reconnectDragPreview",value:function(){var e=this.dragPreview,t=this.didHandlerIdChange()||this.didConnectedDragPreviewChange()||this.didDragPreviewOptionsChange();t&&this.disconnectDragPreview(),this.handlerId&&(e?t&&(this.lastConnectedHandlerId=this.handlerId,this.lastConnectedDragPreview=e,this.lastConnectedDragPreviewOptions=this.dragPreviewOptions,this.dragPreviewUnsubscribe=this.backend.connectDragPreview(this.handlerId,e,this.dragPreviewOptions)):this.lastConnectedDragPreview=e)}},{key:"didHandlerIdChange",value:function(){return this.lastConnectedHandlerId!==this.handlerId}},{key:"didConnectedDragSourceChange",value:function(){return this.lastConnectedDragSource!==this.dragSource}},{key:"didConnectedDragPreviewChange",value:function(){return this.lastConnectedDragPreview!==this.dragPreview}},{key:"didDragSourceOptionsChange",value:function(){return!(0,a.b)(this.lastConnectedDragSourceOptions,this.dragSourceOptions)}},{key:"didDragPreviewOptionsChange",value:function(){return!(0,a.b)(this.lastConnectedDragPreviewOptions,this.dragPreviewOptions)}},{key:"disconnectDragSource",value:function(){this.dragSourceUnsubscribe&&(this.dragSourceUnsubscribe(),this.dragSourceUnsubscribe=void 0)}},{key:"disconnectDragPreview",value:function(){this.dragPreviewUnsubscribe&&(this.dragPreviewUnsubscribe(),this.dragPreviewUnsubscribe=void 0,this.dragPreviewNode=null,this.dragPreviewRef=null)}},{key:"clearDragSource",value:function(){this.dragSourceNode=null,this.dragSourceRef=null}},{key:"clearDragPreview",value:function(){this.dragPreviewNode=null,this.dragPreviewRef=null}},{key:"connectTarget",get:function(){return this.dragSource}},{key:"dragSourceOptions",get:function(){return this.dragSourceOptionsInternal},set:function(e){this.dragSourceOptionsInternal=e}},{key:"dragPreviewOptions",get:function(){return this.dragPreviewOptionsInternal},set:function(e){this.dragPreviewOptionsInternal=e}},{key:"dragSource",get:function(){return this.dragSourceNode||this.dragSourceRef&&this.dragSourceRef.current}},{key:"dragPreview",get:function(){return this.dragPreviewNode||this.dragPreviewRef&&this.dragPreviewRef.current}}])&&i(t.prototype,r),s&&i(t,s),e}()},64706:(e,t,r)=>{"use strict";r.d(t,{P:()=>s});var n=r(40192),o=r(85100),a=r(13637);function i(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var s=function(){function e(t){var r=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.hooks=(0,o.i)({dropTarget:function(e,t){r.clearDropTarget(),r.dropTargetOptions=t,(0,a.i)(e)?r.dropTargetRef=e:r.dropTargetNode=e,r.reconnect()}}),this.handlerId=null,this.dropTargetRef=null,this.dropTargetOptionsInternal=null,this.lastConnectedHandlerId=null,this.lastConnectedDropTarget=null,this.lastConnectedDropTargetOptions=null,this.backend=t}var t,r,s;return t=e,(r=[{key:"reconnect",value:function(){var e=this.didHandlerIdChange()||this.didDropTargetChange()||this.didOptionsChange();e&&this.disconnectDropTarget();var t=this.dropTarget;this.handlerId&&(t?e&&(this.lastConnectedHandlerId=this.handlerId,this.lastConnectedDropTarget=t,this.lastConnectedDropTargetOptions=this.dropTargetOptions,this.unsubscribeDropTarget=this.backend.connectDropTarget(this.handlerId,t,this.dropTargetOptions)):this.lastConnectedDropTarget=t)}},{key:"receiveHandlerId",value:function(e){e!==this.handlerId&&(this.handlerId=e,this.reconnect())}},{key:"didHandlerIdChange",value:function(){return this.lastConnectedHandlerId!==this.handlerId}},{key:"didDropTargetChange",value:function(){return this.lastConnectedDropTarget!==this.dropTarget}},{key:"didOptionsChange",value:function(){return!(0,n.b)(this.lastConnectedDropTargetOptions,this.dropTargetOptions)}},{key:"disconnectDropTarget",value:function(){this.unsubscribeDropTarget&&(this.unsubscribeDropTarget(),this.unsubscribeDropTarget=void 0)}},{key:"clearDropTarget",value:function(){this.dropTargetRef=null,this.dropTargetNode=null}},{key:"connectTarget",get:function(){return this.dropTarget}},{key:"dropTargetOptions",get:function(){return this.dropTargetOptionsInternal},set:function(e){this.dropTargetOptionsInternal=e}},{key:"dropTarget",get:function(){return this.dropTargetNode||this.dropTargetRef&&this.dropTargetRef.current}}])&&i(t.prototype,r),s&&i(t,s),e}()},57991:(e,t,r)=>{"use strict";r.d(t,{Mp:()=>n.M,QP:()=>c,Ic:()=>f,sz:()=>n.s});var n=r(27258),o=r(9950);function a(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return i(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return i(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function s(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=0,c=(0,o.memo)((function(e){var t=e.children,r=function(e){if("manager"in e){return[{dragDropManager:e.manager},!1]}var t=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:d(),r=arguments.length>2?arguments[2]:void 0,o=arguments.length>3?arguments[3]:void 0,a=t;a[u]||(a[u]=(0,n.s)(e,t,r,o));return a[u]}(e.backend,e.context,e.options,e.debugMode),r=!e.context;return[t,r]}(s(e,["children"])),i=a(r,2),c=i[0],f=i[1];return o.useEffect((function(){return f&&l++,function(){f&&(0===--l&&(d()[u]=null))}}),[]),o.createElement(n.M.Provider,{value:c},t)}));c.displayName="DndProvider";var u=Symbol.for("__REACT_DND_CONTEXT_INSTANCE__");function d(){return"undefined"!==typeof r.g?r.g:window}var f=o.memo((function(e){var t=e.connect,r=e.src;return o.useEffect((function(){if("undefined"!==typeof Image){var e=!1,n=new Image;return n.src=r,n.onload=function(){t(n),e=!0},function(){e&&t(null)}}})),null}));f.displayName="DragPreviewImage"},15665:(e,t,r)=>{"use strict";function n(e,t,r){var n=r.getRegistry(),o=n.addTarget(e,t);return[o,function(){return n.removeTarget(o)}]}function o(e,t,r){var n=r.getRegistry(),o=n.addSource(e,t);return[o,function(){return n.removeSource(o)}]}r.d(t,{V:()=>o,l:()=>n})},85100:(e,t,r)=>{"use strict";r.d(t,{i:()=>s});var n=r(9950),o=r(29424);function a(e,t){"function"===typeof e?e(t):e.current=t}function i(e){return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!(0,n.isValidElement)(t)){var i=t;return e(i,r),i}var s=t;!function(e){if("string"!==typeof e.type){var t=e.type.displayName||e.type.name||"the component";throw new Error("Only native element nodes can now be passed to React DnD connectors."+"You can either wrap ".concat(t," into a <div>, or turn it into a ")+"drag source or a drop target itself.")}}(s);var l=r?function(t){return e(t,r)}:e;return function(e,t){var r=e.ref;return(0,o.V)("string"!==typeof r,"Cannot connect React DnD to an element with an existing string ref. Please convert it to use a callback ref instead, or wrap it into a <span> or <div>. Read more: https://facebook.github.io/react/docs/more-about-refs.html#the-ref-callback-attribute"),r?(0,n.cloneElement)(e,{ref:function(e){a(r,e),a(t,e)}}):(0,n.cloneElement)(e,{ref:t})}(s,l)}}function s(e){var t={};return Object.keys(e).forEach((function(r){var n=e[r];if(r.endsWith("Ref"))t[r]=e[r];else{var o=i(n);t[r]=function(){return o}}})),t}},16874:(e,t,r)=>{"use strict";r.d(t,{M:()=>g});var n=r(9950),o=r(40192),a=r(23876),i=r.n(a),s=r(29424),l=r(27258),c=r(13103),u=r(22028);function d(e){return d="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function f(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function p(e,t){return p=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},p(e,t)}function h(e){var t=function(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=m(e);if(t){var o=m(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===d(t)||"function"===typeof t))return t;return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,r)}}function m(e){return m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},m(e)}function g(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,u.cl)("DragLayer","collect[, options]",e,t),(0,s.V)("function"===typeof e,'Expected "collect" provided as the first argument to DragLayer to be a function that collects props to inject into the component. ',"Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-layer",e),(0,s.V)((0,c.Qd)(t),'Expected "options" provided as the second argument to DragLayer to be a plain object when specified. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-layer',t),function(r){var a=r,c=t.arePropsEqual,m=void 0===c?o.b:c,g=a.displayName||a.name||"Component",v=function(){var t=function(t){!function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&p(e,t)}(y,t);var r,i,c,v=h(y);function y(){var e;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,y),(e=v.apply(this,arguments)).isCurrentlyMounted=!1,e.ref=n.createRef(),e.handleChange=function(){if(e.isCurrentlyMounted){var t=e.getCurrentState();(0,o.b)(t,e.state)||e.setState(t)}},e}return r=y,(i=[{key:"getDecoratedComponentInstance",value:function(){return(0,s.V)(this.ref.current,"In order to access an instance of the decorated component, it must either be a class component or use React.forwardRef()"),this.ref.current}},{key:"shouldComponentUpdate",value:function(e,t){return!m(e,this.props)||!(0,o.b)(t,this.state)}},{key:"componentDidMount",value:function(){this.isCurrentlyMounted=!0,this.handleChange()}},{key:"componentWillUnmount",value:function(){this.isCurrentlyMounted=!1,this.unsubscribeFromOffsetChange&&(this.unsubscribeFromOffsetChange(),this.unsubscribeFromOffsetChange=void 0),this.unsubscribeFromStateChange&&(this.unsubscribeFromStateChange(),this.unsubscribeFromStateChange=void 0)}},{key:"render",value:function(){var e=this;return n.createElement(l.M.Consumer,null,(function(t){var r=t.dragDropManager;return void 0===r?null:(e.receiveDragDropManager(r),e.isCurrentlyMounted?n.createElement(a,Object.assign({},e.props,e.state,{ref:(0,u.Yy)(a)?e.ref:null})):null)}))}},{key:"receiveDragDropManager",value:function(e){if(void 0===this.manager){this.manager=e,(0,s.V)("object"===d(e),"Could not find the drag and drop manager in the context of %s. Make sure to render a DndProvider component in your top-level component. Read more: http://react-dnd.github.io/react-dnd/docs/troubleshooting#could-not-find-the-drag-and-drop-manager-in-the-context",g,g);var t=this.manager.getMonitor();this.unsubscribeFromOffsetChange=t.subscribeToOffsetChange(this.handleChange),this.unsubscribeFromStateChange=t.subscribeToStateChange(this.handleChange)}}},{key:"getCurrentState",value:function(){if(!this.manager)return{};var t=this.manager.getMonitor();return e(t,this.props)}}])&&f(r.prototype,i),c&&f(r,c),y}(n.Component);return t.displayName="DragLayer(".concat(g,")"),t.DecoratedComponent=r,t}();return i()(v,r)}}},72321:(e,t,r)=>{"use strict";r.d(t,{I:()=>m});var n=r(29424),o=r(13103),a=r(22028),i=r(37418),s=r(15665),l=r(25855),c=r(24538),u=r(49194);function d(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var f=["canDrag","beginDrag","isDragging","endDrag"],p=["beginDrag"],h=function(){function e(t,r,n){var o=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.props=null,this.beginDrag=function(){if(o.props)return o.spec.beginDrag(o.props,o.monitor,o.ref.current)},this.spec=t,this.monitor=r,this.ref=n}var t,r,n;return t=e,(r=[{key:"receiveProps",value:function(e){this.props=e}},{key:"canDrag",value:function(){return!!this.props&&(!this.spec.canDrag||this.spec.canDrag(this.props,this.monitor))}},{key:"isDragging",value:function(e,t){return!!this.props&&(this.spec.isDragging?this.spec.isDragging(this.props,this.monitor):t===e.getSourceId())}},{key:"endDrag",value:function(){this.props&&this.spec.endDrag&&this.spec.endDrag(this.props,this.monitor,(0,a.PQ)(this.ref))}}])&&d(t.prototype,r),n&&d(t,n),e}();function m(e,t,r){var d=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};(0,a.cl)("DragSource","type, spec, collect[, options]",e,t,r,d);var m=e;"function"!==typeof e&&((0,n.V)((0,u.N)(e),'Expected "type" provided as the first argument to DragSource to be a string, or a function that returns a string given the current props. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source',e),m=function(){return e}),(0,n.V)((0,o.Qd)(t),'Expected "spec" provided as the second argument to DragSource to be a plain object. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source',t);var g=function(e){return Object.keys(e).forEach((function(t){(0,n.V)(f.indexOf(t)>-1,'Expected the drag source specification to only have some of the following keys: %s. Instead received a specification with an unexpected "%s" key. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source',f.join(", "),t),(0,n.V)("function"===typeof e[t],"Expected %s in the drag source specification to be a function. Instead received a specification with %s: %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source",t,t,e[t])})),p.forEach((function(t){(0,n.V)("function"===typeof e[t],"Expected %s in the drag source specification to be a function. Instead received a specification with %s: %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source",t,t,e[t])})),function(t,r){return new h(e,t,r)}}(t);return(0,n.V)("function"===typeof r,'Expected "collect" provided as the third argument to DragSource to be a function that returns a plain object of props to inject. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source',r),(0,n.V)((0,o.Qd)(d),'Expected "options" provided as the fourth argument to DragSource to be a plain object when specified. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source',r),function(e){return(0,i.A)({containerDisplayName:"DragSource",createHandler:g,registerHandler:s.V,createConnector:function(e){return new c.b(e)},createMonitor:function(e){return new l.G(e)},DecoratedComponent:e,getType:m,collect:r,options:d})}}},18665:(e,t,r)=>{"use strict";r.d(t,{T:()=>h});var n=r(29424),o=r(13103),a=r(15665),i=r(49194),s=r(64706),l=r(3942),c=r(22028),u=r(37418);function d(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var f=["canDrop","hover","drop"],p=function(){function e(t,r,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.props=null,this.spec=t,this.monitor=r,this.ref=n}var t,r,n;return t=e,(r=[{key:"receiveProps",value:function(e){this.props=e}},{key:"receiveMonitor",value:function(e){this.monitor=e}},{key:"canDrop",value:function(){return!this.spec.canDrop||this.spec.canDrop(this.props,this.monitor)}},{key:"hover",value:function(){this.spec.hover&&this.props&&this.spec.hover(this.props,this.monitor,(0,c.PQ)(this.ref))}},{key:"drop",value:function(){if(this.spec.drop)return this.spec.drop(this.props,this.monitor,this.ref.current)}}])&&d(t.prototype,r),n&&d(t,n),e}();function h(e,t,r){var d=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};(0,c.cl)("DropTarget","type, spec, collect[, options]",e,t,r,d);var h=e;"function"!==typeof e&&((0,n.V)((0,i.N)(e,!0),'Expected "type" provided as the first argument to DropTarget to be a string, an array of strings, or a function that returns either given the current props. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target',e),h=function(){return e}),(0,n.V)((0,o.Qd)(t),'Expected "spec" provided as the second argument to DropTarget to be a plain object. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target',t);var m=function(e){return Object.keys(e).forEach((function(t){(0,n.V)(f.indexOf(t)>-1,'Expected the drop target specification to only have some of the following keys: %s. Instead received a specification with an unexpected "%s" key. Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target',f.join(", "),t),(0,n.V)("function"===typeof e[t],"Expected %s in the drop target specification to be a function. Instead received a specification with %s: %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target",t,t,e[t])})),function(t,r){return new p(e,t,r)}}(t);return(0,n.V)("function"===typeof r,'Expected "collect" provided as the third argument to DropTarget to be a function that returns a plain object of props to inject. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target',r),(0,n.V)((0,o.Qd)(d),'Expected "options" provided as the fourth argument to DropTarget to be a plain object when specified. Instead, received %s. Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target',r),function(e){return(0,u.A)({containerDisplayName:"DropTarget",createHandler:m,registerHandler:a.l,createMonitor:function(e){return new l.b(e)},createConnector:function(e){return new s.P(e)},DecoratedComponent:e,getType:h,collect:r,options:d})}}},37418:(e,t,r)=>{"use strict";r.d(t,{A:()=>k});var n=r(9950),o=r(40192),a=r(29424),i=r(23876),s=r.n(i),l=r(27258),c=r(13103);function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function d(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function f(e,t,r){return t&&d(e.prototype,t),r&&d(e,r),e}var p=function(){var e=function(){function e(t){u(this,e),this.isDisposed=!1,this.action=(0,c.Tn)(t)?t:c.lQ}return f(e,[{key:"dispose",value:function(){this.isDisposed||(this.action(),this.isDisposed=!0)}}],[{key:"isDisposable",value:function(e){return Boolean(e&&(0,c.Tn)(e.dispose))}},{key:"_fixup",value:function(t){return e.isDisposable(t)?t:e.empty}},{key:"create",value:function(t){return new e(t)}}]),e}();return e.empty={dispose:c.lQ},e}(),h=function(){function e(){u(this,e),this.isDisposed=!1;for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];this.disposables=r}return f(e,[{key:"add",value:function(e){this.isDisposed?e.dispose():this.disposables.push(e)}},{key:"remove",value:function(e){var t=!1;if(!this.isDisposed){var r=this.disposables.indexOf(e);-1!==r&&(t=!0,this.disposables.splice(r,1),e.dispose())}return t}},{key:"clear",value:function(){if(!this.isDisposed){for(var e=this.disposables.length,t=new Array(e),r=0;r<e;r++)t[r]=this.disposables[r];this.disposables=[];for(var n=0;n<e;n++)t[n].dispose()}}},{key:"dispose",value:function(){if(!this.isDisposed){this.isDisposed=!0;for(var e=this.disposables.length,t=new Array(e),r=0;r<e;r++)t[r]=this.disposables[r];this.disposables=[];for(var n=0;n<e;n++)t[n].dispose()}}}]),e}(),m=function(){function e(){u(this,e),this.isDisposed=!1}return f(e,[{key:"getDisposable",value:function(){return this.current}},{key:"setDisposable",value:function(e){var t=this.isDisposed;if(!t){var r=this.current;this.current=e,r&&r.dispose()}t&&e&&e.dispose()}},{key:"dispose",value:function(){if(!this.isDisposed){this.isDisposed=!0;var e=this.current;this.current=void 0,e&&e.dispose()}}}]),e}(),g=r(22028);function v(e){return v="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function y(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return b(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function w(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function x(e,t){return x=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},x(e,t)}function S(e){var t=function(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=A(e);if(t){var o=A(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===v(t)||"function"===typeof t))return t;return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,r)}}function A(e){return A=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},A(e)}function k(e){var t=e.DecoratedComponent,r=e.createHandler,i=e.createMonitor,c=e.createConnector,u=e.registerHandler,d=e.containerDisplayName,f=e.getType,v=e.collect,b=e.options.arePropsEqual,A=void 0===b?o.b:b,k=t,C=t.displayName||t.name||"Component",I=function(){var e=function(e){!function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&x(e,t)}(I,e);var t,s,d,b=S(I);function I(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,I),(t=b.call(this,e)).decoratedRef=n.createRef(),t.handleChange=function(){var e=t.getCurrentState();(0,o.b)(e,t.state)||t.setState(e)},t.disposable=new m,t.receiveProps(e),t.dispose(),t}return t=I,(s=[{key:"getHandlerId",value:function(){return this.handlerId}},{key:"getDecoratedComponentInstance",value:function(){return(0,a.V)(this.decoratedRef.current,"In order to access an instance of the decorated component, it must either be a class component or use React.forwardRef()"),this.decoratedRef.current}},{key:"shouldComponentUpdate",value:function(e,t){return!A(e,this.props)||!(0,o.b)(t,this.state)}},{key:"componentDidMount",value:function(){this.disposable=new m,this.currentType=void 0,this.receiveProps(this.props),this.handleChange()}},{key:"componentDidUpdate",value:function(e){A(this.props,e)||(this.receiveProps(this.props),this.handleChange())}},{key:"componentWillUnmount",value:function(){this.dispose()}},{key:"receiveProps",value:function(e){this.handler&&(this.handler.receiveProps(e),this.receiveType(f(e)))}},{key:"receiveType",value:function(e){if(this.handlerMonitor&&this.manager&&this.handlerConnector&&e!==this.currentType){this.currentType=e;var t=y(u(e,this.handler,this.manager),2),r=t[0],n=t[1];this.handlerId=r,this.handlerMonitor.receiveHandlerId(r),this.handlerConnector.receiveHandlerId(r);var o=this.manager.getMonitor().subscribeToStateChange(this.handleChange,{handlerIds:[r]});this.disposable.setDisposable(new h(new p(o),new p(n)))}}},{key:"dispose",value:function(){this.disposable.dispose(),this.handlerConnector&&this.handlerConnector.receiveHandlerId(null)}},{key:"getCurrentState",value:function(){return this.handlerConnector?v(this.handlerConnector.hooks,this.handlerMonitor,this.props):{}}},{key:"render",value:function(){var e=this;return n.createElement(l.M.Consumer,null,(function(t){var r=t.dragDropManager;return e.receiveDragDropManager(r),"undefined"!==typeof requestAnimationFrame&&requestAnimationFrame((function(){var t;return null===(t=e.handlerConnector)||void 0===t?void 0:t.reconnect()})),n.createElement(k,Object.assign({},e.props,e.getCurrentState(),{ref:(0,g.Yy)(k)?e.decoratedRef:null}))}))}},{key:"receiveDragDropManager",value:function(e){void 0===this.manager&&((0,a.V)(void 0!==e,"Could not find the drag and drop manager in the context of %s. Make sure to render a DndProvider component in your top-level component. Read more: http://react-dnd.github.io/react-dnd/docs/troubleshooting#could-not-find-the-drag-and-drop-manager-in-the-context",C,C),void 0!==e&&(this.manager=e,this.handlerMonitor=i(e),this.handlerConnector=c(e.getBackend()),this.handler=r(this.handlerMonitor,this.decoratedRef)))}}])&&w(t.prototype,s),d&&w(t,d),I}(n.Component);return e.DecoratedComponent=t,e.displayName="".concat(d,"(").concat(C,")"),e}();return s()(I,t)}},74849:(e,t,r)=>{"use strict";r.r(t),r.d(t,{DragLayer:()=>a.M,DragSource:()=>n.I,DropTarget:()=>o.T});var n=r(72321),o=r(18665),a=r(16874),i=r(79121),s={};for(const l in i)["default","DragSource","DropTarget","DragLayer"].indexOf(l)<0&&(s[l]=()=>i[l]);r.d(t,s)},79121:()=>{},22028:(e,t,r)=>{"use strict";function n(e){var t=e.current;return null==t?null:t.decoratedRef?t.decoratedRef.current:t}function o(e){return(t=e)&&t.prototype&&"function"===typeof t.prototype.render||function(e){var t;return"Symbol(react.forward_ref)"===(null===e||void 0===e||null===(t=e.$$typeof)||void 0===t?void 0:t.toString())}(e);var t}function a(e,t){}r.d(t,{PQ:()=>n,Yy:()=>o,cl:()=>a})},23027:(e,t,r)=>{"use strict";r.d(t,{i3:()=>A,uF:()=>m,V7:()=>j,Hd:()=>O});var n=r(9950),o=r(29424),a="undefined"!==typeof window?n.useLayoutEffect:n.useEffect,i=r(40192);function s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return l(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return l(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function c(e,t,r){var o=s((0,n.useState)((function(){return t(e)})),2),l=o[0],c=o[1],u=(0,n.useCallback)((function(){var n=t(e);(0,i.b)(l,n)||(c(n),r&&r())}),[l,e,r]);return a(u,[]),[l,u]}function u(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return d(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function f(e,t,r){var n=u(c(e,t,r),2),o=n[0],i=n[1];return a((function(){var t=e.getHandlerId();if(null!=t)return e.subscribeToStateChange(i,{handlerIds:[t]})}),[e,i]),o}var p=r(15665),h=r(27258);function m(){var e=(0,n.useContext)(h.M).dragDropManager;return(0,o.V)(null!=e,"Expected drag drop context"),e}var g=r(25855),v=r(24538);function y(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return b(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function w(e){return w="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},w(e)}function x(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return S(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return S(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function A(e){var t=(0,n.useRef)(e);t.current=e,(0,o.V)(null!=e.item,"item must be defined"),(0,o.V)(null!=e.item.type,"item type must be defined");var r=x(function(){var e=m();return[(0,n.useMemo)((function(){return new g.G(e)}),[e]),(0,n.useMemo)((function(){return new v.b(e.getBackend())}),[e])]}(),2),i=r[0],s=r[1];!function(e,t,r){var i=m(),s=(0,n.useMemo)((function(){return{beginDrag:function(){var r=e.current,n=r.begin,a=r.item;if(n){var i=n(t);return(0,o.V)(null==i||"object"===w(i),"dragSpec.begin() must either return an object, undefined, or null"),i||a||{}}return a||{}},canDrag:function(){return"boolean"===typeof e.current.canDrag?e.current.canDrag:"function"!==typeof e.current.canDrag||e.current.canDrag(t)},isDragging:function(r,n){var o=e.current.isDragging;return o?o(t):n===r.getSourceId()},endDrag:function(){var n=e.current.end;n&&n(t.getItem(),t),r.reconnect()}}}),[]);a((function(){var n=y((0,p.V)(e.current.item.type,s,i),2),o=n[0],a=n[1];return t.receiveHandlerId(o),r.receiveHandlerId(o),a}),[])}(t,i,s);var l=f(i,t.current.collect||function(){return{}},(function(){return s.reconnect()})),c=(0,n.useMemo)((function(){return s.hooks.dragSource()}),[s]),u=(0,n.useMemo)((function(){return s.hooks.dragPreview()}),[s]);return a((function(){s.dragSourceOptions=t.current.options||null,s.reconnect()}),[s]),a((function(){s.dragPreviewOptions=t.current.previewOptions||null,s.reconnect()}),[s]),[l,c,u]}var k=r(64706),C=r(3942);function I(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return E(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return E(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function E(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function D(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return T(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return T(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function O(e){var t=(0,n.useRef)(e);t.current=e,(0,o.V)(null!=e.accept,"accept must be defined");var r=D(function(){var e=m();return[(0,n.useMemo)((function(){return new C.b(e)}),[e]),(0,n.useMemo)((function(){return new k.P(e.getBackend())}),[e])]}(),2),i=r[0],s=r[1];!function(e,t,r){var o=m(),i=(0,n.useMemo)((function(){return{canDrop:function(){var r=e.current.canDrop;return!r||r(t.getItem(),t)},hover:function(){var r=e.current.hover;r&&r(t.getItem(),t)},drop:function(){var r=e.current.drop;if(r)return r(t.getItem(),t)}}}),[t]);a((function(){var n=I((0,p.l)(e.current.accept,i,o),2),a=n[0],s=n[1];return t.receiveHandlerId(a),r.receiveHandlerId(a),s}),[t,r])}(t,i,s);var l=f(i,t.current.collect||function(){return{}},(function(){return s.reconnect()})),c=(0,n.useMemo)((function(){return s.hooks.dropTarget()}),[s]);return a((function(){s.dropTargetOptions=e.options||null,s.reconnect()}),[e.options]),[l,c]}function M(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(l){o=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(o)throw a}}return r}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return P(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return P(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function j(e){var t=m().getMonitor(),r=M(c(t,e),2),o=r[0],a=r[1];return(0,n.useEffect)((function(){return t.subscribeToOffsetChange(a)})),(0,n.useEffect)((function(){return t.subscribeToStateChange(a)})),o}},89326:(e,t,r)=>{"use strict";r.r(t),r.d(t,{DndContext:()=>n.Mp,DndProvider:()=>n.QP,DragPreviewImage:()=>n.Ic,createDndContext:()=>n.sz,useDrag:()=>i.i3,useDragDropManager:()=>i.uF,useDragLayer:()=>i.V7,useDrop:()=>i.Hd});var n=r(57991),o=r(39579),a={};for(const l in o)["default","DndContext","DndProvider","DragPreviewImage","createDndContext"].indexOf(l)<0&&(a[l]=()=>o[l]);r.d(t,a);var i=r(23027),s=r(74849);a={};for(const l in s)["default","DndContext","DndProvider","DragPreviewImage","createDndContext","useDrag","useDragDropManager","useDragLayer","useDrop"].indexOf(l)<0&&(a[l]=()=>s[l]);r.d(t,a)},23535:()=>{},91131:()=>{},39579:(e,t,r)=>{"use strict";r.r(t);var n=r(29708),o={};for(const l in n)"default"!==l&&(o[l]=()=>n[l]);r.d(t,o);var a=r(91131);o={};for(const l in a)"default"!==l&&(o[l]=()=>a[l]);r.d(t,o);var i=r(94153);o={};for(const l in i)"default"!==l&&(o[l]=()=>i[l]);r.d(t,o);var s=r(23535);o={};for(const l in s)"default"!==l&&(o[l]=()=>s[l]);r.d(t,o)},29708:()=>{},94153:()=>{},13637:(e,t,r)=>{"use strict";function n(e){return n="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e){return null!==e&&"object"===n(e)&&Object.prototype.hasOwnProperty.call(e,"current")}r.d(t,{i:()=>o})},49194:(e,t,r)=>{"use strict";function n(e){return n="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,t){return"string"===typeof e||"symbol"===n(e)||!!t&&Array.isArray(e)&&e.every((function(e){return o(e,!1)}))}r.d(t,{N:()=>o})},13103:(e,t,r)=>{"use strict";function n(e){return n="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e){return"function"===typeof e}function a(){}function i(e){if(!function(e){return"object"===n(e)&&null!==e}(e))return!1;if(null===Object.getPrototypeOf(e))return!0;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}r.d(t,{Qd:()=>i,Tn:()=>o,lQ:()=>a})},38345:(e,t,r)=>{"use strict";var n=r(9950),o=r(75340);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r<arguments.length;r++)t+="&args[]="+encodeURIComponent(arguments[r]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var i=new Set,s={};function l(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(s[e]=t,e=0;e<t.length;e++)i.add(t[e])}var u=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement),d=Object.prototype.hasOwnProperty,f=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,p={},h={};function m(e,t,r,n,o,a,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=n,this.attributeNamespace=o,this.mustUseProperty=r,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=i}var g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){g[e]=new m(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];g[t]=new m(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){g[e]=new m(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){g[e]=new m(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){g[e]=new m(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){g[e]=new m(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){g[e]=new m(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){g[e]=new m(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){g[e]=new m(e,5,!1,e.toLowerCase(),null,!1,!1)}));var v=/[\-:]([a-z])/g;function y(e){return e[1].toUpperCase()}function b(e,t,r,n){var o=g.hasOwnProperty(t)?g[t]:null;(null!==o?0!==o.type:n||!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&(function(e,t,r,n){if(null===t||"undefined"===typeof t||function(e,t,r,n){if(null!==r&&0===r.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!n&&(null!==r?!r.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,r,n))return!0;if(n)return!1;if(null!==r)switch(r.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,r,o,n)&&(r=null),n||null===o?function(e){return!!d.call(h,e)||!d.call(p,e)&&(f.test(e)?h[e]=!0:(p[e]=!0,!1))}(t)&&(null===r?e.removeAttribute(t):e.setAttribute(t,""+r)):o.mustUseProperty?e[o.propertyName]=null===r?3!==o.type&&"":r:(t=o.attributeName,n=o.attributeNamespace,null===r?e.removeAttribute(t):(r=3===(o=o.type)||4===o&&!0===r?"":""+r,n?e.setAttributeNS(n,t,r):e.setAttribute(t,r))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(v,y);g[t]=new m(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(v,y);g[t]=new m(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(v,y);g[t]=new m(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){g[e]=new m(e,1,!1,e.toLowerCase(),null,!1,!1)})),g.xlinkHref=new m("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){g[e]=new m(e,1,!1,e.toLowerCase(),null,!0,!0)}));var w=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,x=Symbol.for("react.element"),S=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),k=Symbol.for("react.strict_mode"),C=Symbol.for("react.profiler"),I=Symbol.for("react.provider"),E=Symbol.for("react.context"),D=Symbol.for("react.forward_ref"),T=Symbol.for("react.suspense"),O=Symbol.for("react.suspense_list"),M=Symbol.for("react.memo"),P=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var j=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var R=Symbol.iterator;function _(e){return null===e||"object"!==typeof e?null:"function"===typeof(e=R&&e[R]||e["@@iterator"])?e:null}var N,L=Object.assign;function U(e){if(void 0===N)try{throw Error()}catch(r){var t=r.stack.trim().match(/\n( *(at )?)/);N=t&&t[1]||""}return"\n"+N+e}var B=!1;function F(e,t){if(!e||B)return"";B=!0;var r=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"===typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var n=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){n=c}e.call(t.prototype)}else{try{throw Error()}catch(c){n=c}e()}}catch(c){if(c&&n&&"string"===typeof c.stack){for(var o=c.stack.split("\n"),a=n.stack.split("\n"),i=o.length-1,s=a.length-1;1<=i&&0<=s&&o[i]!==a[s];)s--;for(;1<=i&&0<=s;i--,s--)if(o[i]!==a[s]){if(1!==i||1!==s)do{if(i--,0>--s||o[i]!==a[s]){var l="\n"+o[i].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}}while(1<=i&&0<=s);break}}}finally{B=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?U(e):""}function z(e){switch(e.tag){case 5:return U(e.type);case 16:return U("Lazy");case 13:return U("Suspense");case 19:return U("SuspenseList");case 0:case 2:case 15:return e=F(e.type,!1);case 11:return e=F(e.type.render,!1);case 1:return e=F(e.type,!0);default:return""}}function W(e){if(null==e)return null;if("function"===typeof e)return e.displayName||e.name||null;if("string"===typeof e)return e;switch(e){case A:return"Fragment";case S:return"Portal";case C:return"Profiler";case k:return"StrictMode";case T:return"Suspense";case O:return"SuspenseList"}if("object"===typeof e)switch(e.$$typeof){case E:return(e.displayName||"Context")+".Consumer";case I:return(e._context.displayName||"Context")+".Provider";case D:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case M:return null!==(t=e.displayName||null)?t:W(e.type)||"Memo";case P:t=e._payload,e=e._init;try{return W(e(t))}catch(r){}}return null}function H(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return W(t);case 8:return t===k?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"===typeof t)return t.displayName||t.name||null;if("string"===typeof t)return t}return null}function Y(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function V(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function G(e){e._valueTracker||(e._valueTracker=function(e){var t=V(e)?"checked":"value",r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),n=""+e[t];if(!e.hasOwnProperty(t)&&"undefined"!==typeof r&&"function"===typeof r.get&&"function"===typeof r.set){var o=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){n=""+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function Z(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),n="";return e&&(n=V(e)?e.checked?"true":"false":e.value),(e=n)!==r&&(t.setValue(e),!0)}function Q(e){if("undefined"===typeof(e=e||("undefined"!==typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function K(e,t){var r=t.checked;return L({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=r?r:e._wrapperState.initialChecked})}function X(e,t){var r=null==t.defaultValue?"":t.defaultValue,n=null!=t.checked?t.checked:t.defaultChecked;r=Y(null!=t.value?t.value:r),e._wrapperState={initialChecked:n,initialValue:r,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function J(e,t){null!=(t=t.checked)&&b(e,"checked",t,!1)}function $(e,t){J(e,t);var r=Y(t.value),n=t.type;if(null!=r)"number"===n?(0===r&&""===e.value||e.value!=r)&&(e.value=""+r):e.value!==""+r&&(e.value=""+r);else if("submit"===n||"reset"===n)return void e.removeAttribute("value");t.hasOwnProperty("value")?ee(e,t.type,r):t.hasOwnProperty("defaultValue")&&ee(e,t.type,Y(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function q(e,t,r){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var n=t.type;if(!("submit"!==n&&"reset"!==n||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,r||t===e.value||(e.value=t),e.defaultValue=t}""!==(r=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==r&&(e.name=r)}function ee(e,t,r){"number"===t&&Q(e.ownerDocument)===e||(null==r?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+r&&(e.defaultValue=""+r))}var te=Array.isArray;function re(e,t,r,n){if(e=e.options,t){t={};for(var o=0;o<r.length;o++)t["$"+r[o]]=!0;for(r=0;r<e.length;r++)o=t.hasOwnProperty("$"+e[r].value),e[r].selected!==o&&(e[r].selected=o),o&&n&&(e[r].defaultSelected=!0)}else{for(r=""+Y(r),t=null,o=0;o<e.length;o++){if(e[o].value===r)return e[o].selected=!0,void(n&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function ne(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(a(91));return L({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function oe(e,t){var r=t.value;if(null==r){if(r=t.children,t=t.defaultValue,null!=r){if(null!=t)throw Error(a(92));if(te(r)){if(1<r.length)throw Error(a(93));r=r[0]}t=r}null==t&&(t=""),r=t}e._wrapperState={initialValue:Y(r)}}function ae(e,t){var r=Y(t.value),n=Y(t.defaultValue);null!=r&&((r=""+r)!==e.value&&(e.value=r),null==t.defaultValue&&e.defaultValue!==r&&(e.defaultValue=r)),null!=n&&(e.defaultValue=""+n)}function ie(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function se(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function le(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?se(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var ce,ue,de=(ue=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((ce=ce||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ce.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,r,n){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function fe(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&3===r.nodeType)return void(r.nodeValue=t)}e.textContent=t}var pe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},he=["Webkit","ms","Moz","O"];function me(e,t,r){return null==t||"boolean"===typeof t||""===t?"":r||"number"!==typeof t||0===t||pe.hasOwnProperty(e)&&pe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var r in e=e.style,t)if(t.hasOwnProperty(r)){var n=0===r.indexOf("--"),o=me(r,t[r],n);"float"===r&&(r="cssFloat"),n?e.setProperty(r,o):e[r]=o}}Object.keys(pe).forEach((function(e){he.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),pe[t]=pe[e]}))}));var ve=L({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ye(e,t){if(t){if(ve[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(a(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(a(60));if("object"!==typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(a(61))}if(null!=t.style&&"object"!==typeof t.style)throw Error(a(62))}}function be(e,t){if(-1===e.indexOf("-"))return"string"===typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function xe(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Se=null,Ae=null,ke=null;function Ce(e){if(e=wo(e)){if("function"!==typeof Se)throw Error(a(280));var t=e.stateNode;t&&(t=So(t),Se(e.stateNode,e.type,t))}}function Ie(e){Ae?ke?ke.push(e):ke=[e]:Ae=e}function Ee(){if(Ae){var e=Ae,t=ke;if(ke=Ae=null,Ce(e),t)for(e=0;e<t.length;e++)Ce(t[e])}}function De(e,t){return e(t)}function Te(){}var Oe=!1;function Me(e,t,r){if(Oe)return e(t,r);Oe=!0;try{return De(e,t,r)}finally{Oe=!1,(null!==Ae||null!==ke)&&(Te(),Ee())}}function Pe(e,t){var r=e.stateNode;if(null===r)return null;var n=So(r);if(null===n)return null;r=n[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(n=!n.disabled)||(n=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!n;break e;default:e=!1}if(e)return null;if(r&&"function"!==typeof r)throw Error(a(231,t,typeof r));return r}var je=!1;if(u)try{var Re={};Object.defineProperty(Re,"passive",{get:function(){je=!0}}),window.addEventListener("test",Re,Re),window.removeEventListener("test",Re,Re)}catch(ue){je=!1}function _e(e,t,r,n,o,a,i,s,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(r,c)}catch(u){this.onError(u)}}var Ne=!1,Le=null,Ue=!1,Be=null,Fe={onError:function(e){Ne=!0,Le=e}};function ze(e,t,r,n,o,a,i,s,l){Ne=!1,Le=null,_e.apply(Fe,arguments)}function We(e){var t=e,r=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!==(4098&(t=e).flags)&&(r=t.return),e=t.return}while(e)}return 3===t.tag?r:null}function He(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function Ye(e){if(We(e)!==e)throw Error(a(188))}function Ve(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=We(e)))throw Error(a(188));return t!==e?null:e}for(var r=e,n=t;;){var o=r.return;if(null===o)break;var i=o.alternate;if(null===i){if(null!==(n=o.return)){r=n;continue}break}if(o.child===i.child){for(i=o.child;i;){if(i===r)return Ye(o),e;if(i===n)return Ye(o),t;i=i.sibling}throw Error(a(188))}if(r.return!==n.return)r=o,n=i;else{for(var s=!1,l=o.child;l;){if(l===r){s=!0,r=o,n=i;break}if(l===n){s=!0,n=o,r=i;break}l=l.sibling}if(!s){for(l=i.child;l;){if(l===r){s=!0,r=i,n=o;break}if(l===n){s=!0,n=i,r=o;break}l=l.sibling}if(!s)throw Error(a(189))}}if(r.alternate!==n)throw Error(a(190))}if(3!==r.tag)throw Error(a(188));return r.stateNode.current===r?e:t}(e))?Ge(e):null}function Ge(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=Ge(e);if(null!==t)return t;e=e.sibling}return null}var Ze=o.unstable_scheduleCallback,Qe=o.unstable_cancelCallback,Ke=o.unstable_shouldYield,Xe=o.unstable_requestPaint,Je=o.unstable_now,$e=o.unstable_getCurrentPriorityLevel,qe=o.unstable_ImmediatePriority,et=o.unstable_UserBlockingPriority,tt=o.unstable_NormalPriority,rt=o.unstable_LowPriority,nt=o.unstable_IdlePriority,ot=null,at=null;var it=Math.clz32?Math.clz32:function(e){return e>>>=0,0===e?32:31-(st(e)/lt|0)|0},st=Math.log,lt=Math.LN2;var ct=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ft(e,t){var r=e.pendingLanes;if(0===r)return 0;var n=0,o=e.suspendedLanes,a=e.pingedLanes,i=268435455&r;if(0!==i){var s=i&~o;0!==s?n=dt(s):0!==(a&=i)&&(n=dt(a))}else 0!==(i=r&~o)?n=dt(i):0!==a&&(n=dt(a));if(0===n)return 0;if(0!==t&&t!==n&&0===(t&o)&&((o=n&-n)>=(a=t&-t)||16===o&&0!==(4194240&a)))return t;if(0!==(4&n)&&(n|=16&r),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=n;0<t;)o=1<<(r=31-it(t)),n|=e[r],t&=~o;return n}function pt(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function ht(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function mt(){var e=ct;return 0===(4194240&(ct<<=1))&&(ct=64),e}function gt(e){for(var t=[],r=0;31>r;r++)t.push(e);return t}function vt(e,t,r){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-it(t)]=r}function yt(e,t){var r=e.entangledLanes|=t;for(e=e.entanglements;r;){var n=31-it(r),o=1<<n;o&t|e[n]&t&&(e[n]|=t),r&=~o}}var bt=0;function wt(e){return 1<(e&=-e)?4<e?0!==(268435455&e)?16:536870912:4:1}var xt,St,At,kt,Ct,It=!1,Et=[],Dt=null,Tt=null,Ot=null,Mt=new Map,Pt=new Map,jt=[],Rt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function _t(e,t){switch(e){case"focusin":case"focusout":Dt=null;break;case"dragenter":case"dragleave":Tt=null;break;case"mouseover":case"mouseout":Ot=null;break;case"pointerover":case"pointerout":Mt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Pt.delete(t.pointerId)}}function Nt(e,t,r,n,o,a){return null===e||e.nativeEvent!==a?(e={blockedOn:t,domEventName:r,eventSystemFlags:n,nativeEvent:a,targetContainers:[o]},null!==t&&(null!==(t=wo(t))&&St(t)),e):(e.eventSystemFlags|=n,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function Lt(e){var t=bo(e.target);if(null!==t){var r=We(t);if(null!==r)if(13===(t=r.tag)){if(null!==(t=He(r)))return e.blockedOn=t,void Ct(e.priority,(function(){At(r)}))}else if(3===t&&r.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===r.tag?r.stateNode.containerInfo:null)}e.blockedOn=null}function Ut(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var r=Kt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==r)return null!==(t=wo(r))&&St(t),e.blockedOn=r,!1;var n=new(r=e.nativeEvent).constructor(r.type,r);we=n,r.target.dispatchEvent(n),we=null,t.shift()}return!0}function Bt(e,t,r){Ut(e)&&r.delete(t)}function Ft(){It=!1,null!==Dt&&Ut(Dt)&&(Dt=null),null!==Tt&&Ut(Tt)&&(Tt=null),null!==Ot&&Ut(Ot)&&(Ot=null),Mt.forEach(Bt),Pt.forEach(Bt)}function zt(e,t){e.blockedOn===t&&(e.blockedOn=null,It||(It=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,Ft)))}function Wt(e){function t(t){return zt(t,e)}if(0<Et.length){zt(Et[0],e);for(var r=1;r<Et.length;r++){var n=Et[r];n.blockedOn===e&&(n.blockedOn=null)}}for(null!==Dt&&zt(Dt,e),null!==Tt&&zt(Tt,e),null!==Ot&&zt(Ot,e),Mt.forEach(t),Pt.forEach(t),r=0;r<jt.length;r++)(n=jt[r]).blockedOn===e&&(n.blockedOn=null);for(;0<jt.length&&null===(r=jt[0]).blockedOn;)Lt(r),null===r.blockedOn&&jt.shift()}var Ht=w.ReactCurrentBatchConfig,Yt=!0;function Vt(e,t,r,n){var o=bt,a=Ht.transition;Ht.transition=null;try{bt=1,Zt(e,t,r,n)}finally{bt=o,Ht.transition=a}}function Gt(e,t,r,n){var o=bt,a=Ht.transition;Ht.transition=null;try{bt=4,Zt(e,t,r,n)}finally{bt=o,Ht.transition=a}}function Zt(e,t,r,n){if(Yt){var o=Kt(e,t,r,n);if(null===o)Yn(e,t,n,Qt,r),_t(e,n);else if(function(e,t,r,n,o){switch(t){case"focusin":return Dt=Nt(Dt,e,t,r,n,o),!0;case"dragenter":return Tt=Nt(Tt,e,t,r,n,o),!0;case"mouseover":return Ot=Nt(Ot,e,t,r,n,o),!0;case"pointerover":var a=o.pointerId;return Mt.set(a,Nt(Mt.get(a)||null,e,t,r,n,o)),!0;case"gotpointercapture":return a=o.pointerId,Pt.set(a,Nt(Pt.get(a)||null,e,t,r,n,o)),!0}return!1}(o,e,t,r,n))n.stopPropagation();else if(_t(e,n),4&t&&-1<Rt.indexOf(e)){for(;null!==o;){var a=wo(o);if(null!==a&&xt(a),null===(a=Kt(e,t,r,n))&&Yn(e,t,n,Qt,r),a===o)break;o=a}null!==o&&n.stopPropagation()}else Yn(e,t,n,null,r)}}var Qt=null;function Kt(e,t,r,n){if(Qt=null,null!==(e=bo(e=xe(n))))if(null===(t=We(e)))e=null;else if(13===(r=t.tag)){if(null!==(e=He(t)))return e;e=null}else if(3===r){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Qt=e,null}function Xt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch($e()){case qe:return 1;case et:return 4;case tt:case rt:return 16;case nt:return 536870912;default:return 16}default:return 16}}var Jt=null,$t=null,qt=null;function er(){if(qt)return qt;var e,t,r=$t,n=r.length,o="value"in Jt?Jt.value:Jt.textContent,a=o.length;for(e=0;e<n&&r[e]===o[e];e++);var i=n-e;for(t=1;t<=i&&r[n-t]===o[a-t];t++);return qt=o.slice(e,1<t?1-t:void 0)}function tr(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function rr(){return!0}function nr(){return!1}function or(e){function t(t,r,n,o,a){for(var i in this._reactName=t,this._targetInst=n,this.type=r,this.nativeEvent=o,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(o):o[i]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?rr:nr,this.isPropagationStopped=nr,this}return L(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!==typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=rr)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!==typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=rr)},persist:function(){},isPersistent:rr}),t}var ar,ir,sr,lr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},cr=or(lr),ur=L({},lr,{view:0,detail:0}),dr=or(ur),fr=L({},ur,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:kr,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==sr&&(sr&&"mousemove"===e.type?(ar=e.screenX-sr.screenX,ir=e.screenY-sr.screenY):ir=ar=0,sr=e),ar)},movementY:function(e){return"movementY"in e?e.movementY:ir}}),pr=or(fr),hr=or(L({},fr,{dataTransfer:0})),mr=or(L({},ur,{relatedTarget:0})),gr=or(L({},lr,{animationName:0,elapsedTime:0,pseudoElement:0})),vr=L({},lr,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),yr=or(vr),br=or(L({},lr,{data:0})),wr={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},xr={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Sr={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Ar(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=Sr[e])&&!!t[e]}function kr(){return Ar}var Cr=L({},ur,{key:function(e){if(e.key){var t=wr[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=tr(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?xr[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:kr,charCode:function(e){return"keypress"===e.type?tr(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?tr(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Ir=or(Cr),Er=or(L({},fr,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Dr=or(L({},ur,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:kr})),Tr=or(L({},lr,{propertyName:0,elapsedTime:0,pseudoElement:0})),Or=L({},fr,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),Mr=or(Or),Pr=[9,13,27,32],jr=u&&"CompositionEvent"in window,Rr=null;u&&"documentMode"in document&&(Rr=document.documentMode);var _r=u&&"TextEvent"in window&&!Rr,Nr=u&&(!jr||Rr&&8<Rr&&11>=Rr),Lr=String.fromCharCode(32),Ur=!1;function Br(e,t){switch(e){case"keyup":return-1!==Pr.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Fr(e){return"object"===typeof(e=e.detail)&&"data"in e?e.data:null}var zr=!1;var Wr={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Hr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Wr[e.type]:"textarea"===t}function Yr(e,t,r,n){Ie(n),0<(t=Gn(t,"onChange")).length&&(r=new cr("onChange","change",null,r,n),e.push({event:r,listeners:t}))}var Vr=null,Gr=null;function Zr(e){Un(e,0)}function Qr(e){if(Z(xo(e)))return e}function Kr(e,t){if("change"===e)return t}var Xr=!1;if(u){var Jr;if(u){var $r="oninput"in document;if(!$r){var qr=document.createElement("div");qr.setAttribute("oninput","return;"),$r="function"===typeof qr.oninput}Jr=$r}else Jr=!1;Xr=Jr&&(!document.documentMode||9<document.documentMode)}function en(){Vr&&(Vr.detachEvent("onpropertychange",tn),Gr=Vr=null)}function tn(e){if("value"===e.propertyName&&Qr(Gr)){var t=[];Yr(t,Gr,e,xe(e)),Me(Zr,t)}}function rn(e,t,r){"focusin"===e?(en(),Gr=r,(Vr=t).attachEvent("onpropertychange",tn)):"focusout"===e&&en()}function nn(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Qr(Gr)}function on(e,t){if("click"===e)return Qr(t)}function an(e,t){if("input"===e||"change"===e)return Qr(t)}var sn="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t};function ln(e,t){if(sn(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;var r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(n=0;n<r.length;n++){var o=r[n];if(!d.call(t,o)||!sn(e[o],t[o]))return!1}return!0}function cn(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function un(e,t){var r,n=cn(e);for(e=0;n;){if(3===n.nodeType){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=cn(n)}}function dn(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dn(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function fn(){for(var e=window,t=Q();t instanceof e.HTMLIFrameElement;){try{var r="string"===typeof t.contentWindow.location.href}catch(n){r=!1}if(!r)break;t=Q((e=t.contentWindow).document)}return t}function pn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function hn(e){var t=fn(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&dn(r.ownerDocument.documentElement,r)){if(null!==n&&pn(r))if(t=n.start,void 0===(e=n.end)&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if((e=(t=r.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var o=r.textContent.length,a=Math.min(n.start,o);n=void 0===n.end?a:Math.min(n.end,o),!e.extend&&a>n&&(o=n,n=a,a=o),o=un(r,a);var i=un(r,n);o&&i&&(1!==e.rangeCount||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&((t=t.createRange()).setStart(o.node,o.offset),e.removeAllRanges(),a>n?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}for(t=[],e=r;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"===typeof r.focus&&r.focus(),r=0;r<t.length;r++)(e=t[r]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var mn=u&&"documentMode"in document&&11>=document.documentMode,gn=null,vn=null,yn=null,bn=!1;function wn(e,t,r){var n=r.window===r?r.document:9===r.nodeType?r:r.ownerDocument;bn||null==gn||gn!==Q(n)||("selectionStart"in(n=gn)&&pn(n)?n={start:n.selectionStart,end:n.selectionEnd}:n={anchorNode:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset},yn&&ln(yn,n)||(yn=n,0<(n=Gn(vn,"onSelect")).length&&(t=new cr("onSelect","select",null,t,r),e.push({event:t,listeners:n}),t.target=gn)))}function xn(e,t){var r={};return r[e.toLowerCase()]=t.toLowerCase(),r["Webkit"+e]="webkit"+t,r["Moz"+e]="moz"+t,r}var Sn={animationend:xn("Animation","AnimationEnd"),animationiteration:xn("Animation","AnimationIteration"),animationstart:xn("Animation","AnimationStart"),transitionend:xn("Transition","TransitionEnd")},An={},kn={};function Cn(e){if(An[e])return An[e];if(!Sn[e])return e;var t,r=Sn[e];for(t in r)if(r.hasOwnProperty(t)&&t in kn)return An[e]=r[t];return e}u&&(kn=document.createElement("div").style,"AnimationEvent"in window||(delete Sn.animationend.animation,delete Sn.animationiteration.animation,delete Sn.animationstart.animation),"TransitionEvent"in window||delete Sn.transitionend.transition);var In=Cn("animationend"),En=Cn("animationiteration"),Dn=Cn("animationstart"),Tn=Cn("transitionend"),On=new Map,Mn="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Pn(e,t){On.set(e,t),l(t,[e])}for(var jn=0;jn<Mn.length;jn++){var Rn=Mn[jn];Pn(Rn.toLowerCase(),"on"+(Rn[0].toUpperCase()+Rn.slice(1)))}Pn(In,"onAnimationEnd"),Pn(En,"onAnimationIteration"),Pn(Dn,"onAnimationStart"),Pn("dblclick","onDoubleClick"),Pn("focusin","onFocus"),Pn("focusout","onBlur"),Pn(Tn,"onTransitionEnd"),c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),l("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),l("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),l("onBeforeInput",["compositionend","keypress","textInput","paste"]),l("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),l("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),l("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var _n="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Nn=new Set("cancel close invalid load scroll toggle".split(" ").concat(_n));function Ln(e,t,r){var n=e.type||"unknown-event";e.currentTarget=r,function(e,t,r,n,o,i,s,l,c){if(ze.apply(this,arguments),Ne){if(!Ne)throw Error(a(198));var u=Le;Ne=!1,Le=null,Ue||(Ue=!0,Be=u)}}(n,t,void 0,e),e.currentTarget=null}function Un(e,t){t=0!==(4&t);for(var r=0;r<e.length;r++){var n=e[r],o=n.event;n=n.listeners;e:{var a=void 0;if(t)for(var i=n.length-1;0<=i;i--){var s=n[i],l=s.instance,c=s.currentTarget;if(s=s.listener,l!==a&&o.isPropagationStopped())break e;Ln(o,s,c),a=l}else for(i=0;i<n.length;i++){if(l=(s=n[i]).instance,c=s.currentTarget,s=s.listener,l!==a&&o.isPropagationStopped())break e;Ln(o,s,c),a=l}}}if(Ue)throw e=Be,Ue=!1,Be=null,e}function Bn(e,t){var r=t[go];void 0===r&&(r=t[go]=new Set);var n=e+"__bubble";r.has(n)||(Hn(t,e,2,!1),r.add(n))}function Fn(e,t,r){var n=0;t&&(n|=4),Hn(r,e,n,t)}var zn="_reactListening"+Math.random().toString(36).slice(2);function Wn(e){if(!e[zn]){e[zn]=!0,i.forEach((function(t){"selectionchange"!==t&&(Nn.has(t)||Fn(t,!1,e),Fn(t,!0,e))}));var t=9===e.nodeType?e:e.ownerDocument;null===t||t[zn]||(t[zn]=!0,Fn("selectionchange",!1,t))}}function Hn(e,t,r,n){switch(Xt(t)){case 1:var o=Vt;break;case 4:o=Gt;break;default:o=Zt}r=o.bind(null,t,r,e),o=void 0,!je||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),n?void 0!==o?e.addEventListener(t,r,{capture:!0,passive:o}):e.addEventListener(t,r,!0):void 0!==o?e.addEventListener(t,r,{passive:o}):e.addEventListener(t,r,!1)}function Yn(e,t,r,n,o){var a=n;if(0===(1&t)&&0===(2&t)&&null!==n)e:for(;;){if(null===n)return;var i=n.tag;if(3===i||4===i){var s=n.stateNode.containerInfo;if(s===o||8===s.nodeType&&s.parentNode===o)break;if(4===i)for(i=n.return;null!==i;){var l=i.tag;if((3===l||4===l)&&((l=i.stateNode.containerInfo)===o||8===l.nodeType&&l.parentNode===o))return;i=i.return}for(;null!==s;){if(null===(i=bo(s)))return;if(5===(l=i.tag)||6===l){n=a=i;continue e}s=s.parentNode}}n=n.return}Me((function(){var n=a,o=xe(r),i=[];e:{var s=On.get(e);if(void 0!==s){var l=cr,c=e;switch(e){case"keypress":if(0===tr(r))break e;case"keydown":case"keyup":l=Ir;break;case"focusin":c="focus",l=mr;break;case"focusout":c="blur",l=mr;break;case"beforeblur":case"afterblur":l=mr;break;case"click":if(2===r.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":l=pr;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":l=hr;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":l=Dr;break;case In:case En:case Dn:l=gr;break;case Tn:l=Tr;break;case"scroll":l=dr;break;case"wheel":l=Mr;break;case"copy":case"cut":case"paste":l=yr;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":l=Er}var u=0!==(4&t),d=!u&&"scroll"===e,f=u?null!==s?s+"Capture":null:s;u=[];for(var p,h=n;null!==h;){var m=(p=h).stateNode;if(5===p.tag&&null!==m&&(p=m,null!==f&&(null!=(m=Pe(h,f))&&u.push(Vn(h,m,p)))),d)break;h=h.return}0<u.length&&(s=new l(s,c,null,r,o),i.push({event:s,listeners:u}))}}if(0===(7&t)){if(l="mouseout"===e||"pointerout"===e,(!(s="mouseover"===e||"pointerover"===e)||r===we||!(c=r.relatedTarget||r.fromElement)||!bo(c)&&!c[mo])&&(l||s)&&(s=o.window===o?o:(s=o.ownerDocument)?s.defaultView||s.parentWindow:window,l?(l=n,null!==(c=(c=r.relatedTarget||r.toElement)?bo(c):null)&&(c!==(d=We(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(l=null,c=n),l!==c)){if(u=pr,m="onMouseLeave",f="onMouseEnter",h="mouse","pointerout"!==e&&"pointerover"!==e||(u=Er,m="onPointerLeave",f="onPointerEnter",h="pointer"),d=null==l?s:xo(l),p=null==c?s:xo(c),(s=new u(m,h+"leave",l,r,o)).target=d,s.relatedTarget=p,m=null,bo(o)===n&&((u=new u(f,h+"enter",c,r,o)).target=p,u.relatedTarget=d,m=u),d=m,l&&c)e:{for(f=c,h=0,p=u=l;p;p=Zn(p))h++;for(p=0,m=f;m;m=Zn(m))p++;for(;0<h-p;)u=Zn(u),h--;for(;0<p-h;)f=Zn(f),p--;for(;h--;){if(u===f||null!==f&&u===f.alternate)break e;u=Zn(u),f=Zn(f)}u=null}else u=null;null!==l&&Qn(i,s,l,u,!1),null!==c&&null!==d&&Qn(i,d,c,u,!0)}if("select"===(l=(s=n?xo(n):window).nodeName&&s.nodeName.toLowerCase())||"input"===l&&"file"===s.type)var g=Kr;else if(Hr(s))if(Xr)g=an;else{g=nn;var v=rn}else(l=s.nodeName)&&"input"===l.toLowerCase()&&("checkbox"===s.type||"radio"===s.type)&&(g=on);switch(g&&(g=g(e,n))?Yr(i,g,r,o):(v&&v(e,s,n),"focusout"===e&&(v=s._wrapperState)&&v.controlled&&"number"===s.type&&ee(s,"number",s.value)),v=n?xo(n):window,e){case"focusin":(Hr(v)||"true"===v.contentEditable)&&(gn=v,vn=n,yn=null);break;case"focusout":yn=vn=gn=null;break;case"mousedown":bn=!0;break;case"contextmenu":case"mouseup":case"dragend":bn=!1,wn(i,r,o);break;case"selectionchange":if(mn)break;case"keydown":case"keyup":wn(i,r,o)}var y;if(jr)e:{switch(e){case"compositionstart":var b="onCompositionStart";break e;case"compositionend":b="onCompositionEnd";break e;case"compositionupdate":b="onCompositionUpdate";break e}b=void 0}else zr?Br(e,r)&&(b="onCompositionEnd"):"keydown"===e&&229===r.keyCode&&(b="onCompositionStart");b&&(Nr&&"ko"!==r.locale&&(zr||"onCompositionStart"!==b?"onCompositionEnd"===b&&zr&&(y=er()):($t="value"in(Jt=o)?Jt.value:Jt.textContent,zr=!0)),0<(v=Gn(n,b)).length&&(b=new br(b,e,null,r,o),i.push({event:b,listeners:v}),y?b.data=y:null!==(y=Fr(r))&&(b.data=y))),(y=_r?function(e,t){switch(e){case"compositionend":return Fr(t);case"keypress":return 32!==t.which?null:(Ur=!0,Lr);case"textInput":return(e=t.data)===Lr&&Ur?null:e;default:return null}}(e,r):function(e,t){if(zr)return"compositionend"===e||!jr&&Br(e,t)?(e=er(),qt=$t=Jt=null,zr=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Nr&&"ko"!==t.locale?null:t.data}}(e,r))&&(0<(n=Gn(n,"onBeforeInput")).length&&(o=new br("onBeforeInput","beforeinput",null,r,o),i.push({event:o,listeners:n}),o.data=y))}Un(i,t)}))}function Vn(e,t,r){return{instance:e,listener:t,currentTarget:r}}function Gn(e,t){for(var r=t+"Capture",n=[];null!==e;){var o=e,a=o.stateNode;5===o.tag&&null!==a&&(o=a,null!=(a=Pe(e,r))&&n.unshift(Vn(e,a,o)),null!=(a=Pe(e,t))&&n.push(Vn(e,a,o))),e=e.return}return n}function Zn(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Qn(e,t,r,n,o){for(var a=t._reactName,i=[];null!==r&&r!==n;){var s=r,l=s.alternate,c=s.stateNode;if(null!==l&&l===n)break;5===s.tag&&null!==c&&(s=c,o?null!=(l=Pe(r,a))&&i.unshift(Vn(r,l,s)):o||null!=(l=Pe(r,a))&&i.push(Vn(r,l,s))),r=r.return}0!==i.length&&e.push({event:t,listeners:i})}var Kn=/\r\n?/g,Xn=/\u0000|\uFFFD/g;function Jn(e){return("string"===typeof e?e:""+e).replace(Kn,"\n").replace(Xn,"")}function $n(e,t,r){if(t=Jn(t),Jn(e)!==t&&r)throw Error(a(425))}function qn(){}var eo=null,to=null;function ro(e,t){return"textarea"===e||"noscript"===e||"string"===typeof t.children||"number"===typeof t.children||"object"===typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var no="function"===typeof setTimeout?setTimeout:void 0,oo="function"===typeof clearTimeout?clearTimeout:void 0,ao="function"===typeof Promise?Promise:void 0,io="function"===typeof queueMicrotask?queueMicrotask:"undefined"!==typeof ao?function(e){return ao.resolve(null).then(e).catch(so)}:no;function so(e){setTimeout((function(){throw e}))}function lo(e,t){var r=t,n=0;do{var o=r.nextSibling;if(e.removeChild(r),o&&8===o.nodeType)if("/$"===(r=o.data)){if(0===n)return e.removeChild(o),void Wt(t);n--}else"$"!==r&&"$?"!==r&&"$!"!==r||n++;r=o}while(r);Wt(t)}function co(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function uo(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var r=e.data;if("$"===r||"$!"===r||"$?"===r){if(0===t)return e;t--}else"/$"===r&&t++}e=e.previousSibling}return null}var fo=Math.random().toString(36).slice(2),po="__reactFiber$"+fo,ho="__reactProps$"+fo,mo="__reactContainer$"+fo,go="__reactEvents$"+fo,vo="__reactListeners$"+fo,yo="__reactHandles$"+fo;function bo(e){var t=e[po];if(t)return t;for(var r=e.parentNode;r;){if(t=r[mo]||r[po]){if(r=t.alternate,null!==t.child||null!==r&&null!==r.child)for(e=uo(e);null!==e;){if(r=e[po])return r;e=uo(e)}return t}r=(e=r).parentNode}return null}function wo(e){return!(e=e[po]||e[mo])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function xo(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(a(33))}function So(e){return e[ho]||null}var Ao=[],ko=-1;function Co(e){return{current:e}}function Io(e){0>ko||(e.current=Ao[ko],Ao[ko]=null,ko--)}function Eo(e,t){ko++,Ao[ko]=e.current,e.current=t}var Do={},To=Co(Do),Oo=Co(!1),Mo=Do;function Po(e,t){var r=e.type.contextTypes;if(!r)return Do;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var o,a={};for(o in r)a[o]=t[o];return n&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function jo(e){return null!==(e=e.childContextTypes)&&void 0!==e}function Ro(){Io(Oo),Io(To)}function _o(e,t,r){if(To.current!==Do)throw Error(a(168));Eo(To,t),Eo(Oo,r)}function No(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,"function"!==typeof n.getChildContext)return r;for(var o in n=n.getChildContext())if(!(o in t))throw Error(a(108,H(e)||"Unknown",o));return L({},r,n)}function Lo(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Do,Mo=To.current,Eo(To,e),Eo(Oo,Oo.current),!0}function Uo(e,t,r){var n=e.stateNode;if(!n)throw Error(a(169));r?(e=No(e,t,Mo),n.__reactInternalMemoizedMergedChildContext=e,Io(Oo),Io(To),Eo(To,e)):Io(Oo),Eo(Oo,r)}var Bo=null,Fo=!1,zo=!1;function Wo(e){null===Bo?Bo=[e]:Bo.push(e)}function Ho(){if(!zo&&null!==Bo){zo=!0;var e=0,t=bt;try{var r=Bo;for(bt=1;e<r.length;e++){var n=r[e];do{n=n(!0)}while(null!==n)}Bo=null,Fo=!1}catch(o){throw null!==Bo&&(Bo=Bo.slice(e+1)),Ze(qe,Ho),o}finally{bt=t,zo=!1}}return null}var Yo=[],Vo=0,Go=null,Zo=0,Qo=[],Ko=0,Xo=null,Jo=1,$o="";function qo(e,t){Yo[Vo++]=Zo,Yo[Vo++]=Go,Go=e,Zo=t}function ea(e,t,r){Qo[Ko++]=Jo,Qo[Ko++]=$o,Qo[Ko++]=Xo,Xo=e;var n=Jo;e=$o;var o=32-it(n)-1;n&=~(1<<o),r+=1;var a=32-it(t)+o;if(30<a){var i=o-o%5;a=(n&(1<<i)-1).toString(32),n>>=i,o-=i,Jo=1<<32-it(t)+o|r<<o|n,$o=a+e}else Jo=1<<a|r<<o|n,$o=e}function ta(e){null!==e.return&&(qo(e,1),ea(e,1,0))}function ra(e){for(;e===Go;)Go=Yo[--Vo],Yo[Vo]=null,Zo=Yo[--Vo],Yo[Vo]=null;for(;e===Xo;)Xo=Qo[--Ko],Qo[Ko]=null,$o=Qo[--Ko],Qo[Ko]=null,Jo=Qo[--Ko],Qo[Ko]=null}var na=null,oa=null,aa=!1,ia=null;function sa(e,t){var r=Mc(5,null,null,0);r.elementType="DELETED",r.stateNode=t,r.return=e,null===(t=e.deletions)?(e.deletions=[r],e.flags|=16):t.push(r)}function la(e,t){switch(e.tag){case 5:var r=e.type;return null!==(t=1!==t.nodeType||r.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,na=e,oa=co(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,na=e,oa=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(r=null!==Xo?{id:Jo,overflow:$o}:null,e.memoizedState={dehydrated:t,treeContext:r,retryLane:1073741824},(r=Mc(18,null,null,0)).stateNode=t,r.return=e,e.child=r,na=e,oa=null,!0);default:return!1}}function ca(e){return 0!==(1&e.mode)&&0===(128&e.flags)}function ua(e){if(aa){var t=oa;if(t){var r=t;if(!la(e,t)){if(ca(e))throw Error(a(418));t=co(r.nextSibling);var n=na;t&&la(e,t)?sa(n,r):(e.flags=-4097&e.flags|2,aa=!1,na=e)}}else{if(ca(e))throw Error(a(418));e.flags=-4097&e.flags|2,aa=!1,na=e}}}function da(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;na=e}function fa(e){if(e!==na)return!1;if(!aa)return da(e),aa=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!ro(e.type,e.memoizedProps)),t&&(t=oa)){if(ca(e))throw pa(),Error(a(418));for(;t;)sa(e,t),t=co(t.nextSibling)}if(da(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(a(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var r=e.data;if("/$"===r){if(0===t){oa=co(e.nextSibling);break e}t--}else"$"!==r&&"$!"!==r&&"$?"!==r||t++}e=e.nextSibling}oa=null}}else oa=na?co(e.stateNode.nextSibling):null;return!0}function pa(){for(var e=oa;e;)e=co(e.nextSibling)}function ha(){oa=na=null,aa=!1}function ma(e){null===ia?ia=[e]:ia.push(e)}var ga=w.ReactCurrentBatchConfig;function va(e,t,r){if(null!==(e=r.ref)&&"function"!==typeof e&&"object"!==typeof e){if(r._owner){if(r=r._owner){if(1!==r.tag)throw Error(a(309));var n=r.stateNode}if(!n)throw Error(a(147,e));var o=n,i=""+e;return null!==t&&null!==t.ref&&"function"===typeof t.ref&&t.ref._stringRef===i?t.ref:(t=function(e){var t=o.refs;null===e?delete t[i]:t[i]=e},t._stringRef=i,t)}if("string"!==typeof e)throw Error(a(284));if(!r._owner)throw Error(a(290,e))}return e}function ya(e,t){throw e=Object.prototype.toString.call(t),Error(a(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function ba(e){return(0,e._init)(e._payload)}function wa(e){function t(t,r){if(e){var n=t.deletions;null===n?(t.deletions=[r],t.flags|=16):n.push(r)}}function r(r,n){if(!e)return null;for(;null!==n;)t(r,n),n=n.sibling;return null}function n(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=jc(e,t)).index=0,e.sibling=null,e}function i(t,r,n){return t.index=n,e?null!==(n=t.alternate)?(n=n.index)<r?(t.flags|=2,r):n:(t.flags|=2,r):(t.flags|=1048576,r)}function s(t){return e&&null===t.alternate&&(t.flags|=2),t}function l(e,t,r,n){return null===t||6!==t.tag?((t=Lc(r,e.mode,n)).return=e,t):((t=o(t,r)).return=e,t)}function c(e,t,r,n){var a=r.type;return a===A?d(e,t,r.props.children,n,r.key):null!==t&&(t.elementType===a||"object"===typeof a&&null!==a&&a.$$typeof===P&&ba(a)===t.type)?((n=o(t,r.props)).ref=va(e,t,r),n.return=e,n):((n=Rc(r.type,r.key,r.props,null,e.mode,n)).ref=va(e,t,r),n.return=e,n)}function u(e,t,r,n){return null===t||4!==t.tag||t.stateNode.containerInfo!==r.containerInfo||t.stateNode.implementation!==r.implementation?((t=Uc(r,e.mode,n)).return=e,t):((t=o(t,r.children||[])).return=e,t)}function d(e,t,r,n,a){return null===t||7!==t.tag?((t=_c(r,e.mode,n,a)).return=e,t):((t=o(t,r)).return=e,t)}function f(e,t,r){if("string"===typeof t&&""!==t||"number"===typeof t)return(t=Lc(""+t,e.mode,r)).return=e,t;if("object"===typeof t&&null!==t){switch(t.$$typeof){case x:return(r=Rc(t.type,t.key,t.props,null,e.mode,r)).ref=va(e,null,t),r.return=e,r;case S:return(t=Uc(t,e.mode,r)).return=e,t;case P:return f(e,(0,t._init)(t._payload),r)}if(te(t)||_(t))return(t=_c(t,e.mode,r,null)).return=e,t;ya(e,t)}return null}function p(e,t,r,n){var o=null!==t?t.key:null;if("string"===typeof r&&""!==r||"number"===typeof r)return null!==o?null:l(e,t,""+r,n);if("object"===typeof r&&null!==r){switch(r.$$typeof){case x:return r.key===o?c(e,t,r,n):null;case S:return r.key===o?u(e,t,r,n):null;case P:return p(e,t,(o=r._init)(r._payload),n)}if(te(r)||_(r))return null!==o?null:d(e,t,r,n,null);ya(e,r)}return null}function h(e,t,r,n,o){if("string"===typeof n&&""!==n||"number"===typeof n)return l(t,e=e.get(r)||null,""+n,o);if("object"===typeof n&&null!==n){switch(n.$$typeof){case x:return c(t,e=e.get(null===n.key?r:n.key)||null,n,o);case S:return u(t,e=e.get(null===n.key?r:n.key)||null,n,o);case P:return h(e,t,r,(0,n._init)(n._payload),o)}if(te(n)||_(n))return d(t,e=e.get(r)||null,n,o,null);ya(t,n)}return null}function m(o,a,s,l){for(var c=null,u=null,d=a,m=a=0,g=null;null!==d&&m<s.length;m++){d.index>m?(g=d,d=null):g=d.sibling;var v=p(o,d,s[m],l);if(null===v){null===d&&(d=g);break}e&&d&&null===v.alternate&&t(o,d),a=i(v,a,m),null===u?c=v:u.sibling=v,u=v,d=g}if(m===s.length)return r(o,d),aa&&qo(o,m),c;if(null===d){for(;m<s.length;m++)null!==(d=f(o,s[m],l))&&(a=i(d,a,m),null===u?c=d:u.sibling=d,u=d);return aa&&qo(o,m),c}for(d=n(o,d);m<s.length;m++)null!==(g=h(d,o,m,s[m],l))&&(e&&null!==g.alternate&&d.delete(null===g.key?m:g.key),a=i(g,a,m),null===u?c=g:u.sibling=g,u=g);return e&&d.forEach((function(e){return t(o,e)})),aa&&qo(o,m),c}function g(o,s,l,c){var u=_(l);if("function"!==typeof u)throw Error(a(150));if(null==(l=u.call(l)))throw Error(a(151));for(var d=u=null,m=s,g=s=0,v=null,y=l.next();null!==m&&!y.done;g++,y=l.next()){m.index>g?(v=m,m=null):v=m.sibling;var b=p(o,m,y.value,c);if(null===b){null===m&&(m=v);break}e&&m&&null===b.alternate&&t(o,m),s=i(b,s,g),null===d?u=b:d.sibling=b,d=b,m=v}if(y.done)return r(o,m),aa&&qo(o,g),u;if(null===m){for(;!y.done;g++,y=l.next())null!==(y=f(o,y.value,c))&&(s=i(y,s,g),null===d?u=y:d.sibling=y,d=y);return aa&&qo(o,g),u}for(m=n(o,m);!y.done;g++,y=l.next())null!==(y=h(m,o,g,y.value,c))&&(e&&null!==y.alternate&&m.delete(null===y.key?g:y.key),s=i(y,s,g),null===d?u=y:d.sibling=y,d=y);return e&&m.forEach((function(e){return t(o,e)})),aa&&qo(o,g),u}return function e(n,a,i,l){if("object"===typeof i&&null!==i&&i.type===A&&null===i.key&&(i=i.props.children),"object"===typeof i&&null!==i){switch(i.$$typeof){case x:e:{for(var c=i.key,u=a;null!==u;){if(u.key===c){if((c=i.type)===A){if(7===u.tag){r(n,u.sibling),(a=o(u,i.props.children)).return=n,n=a;break e}}else if(u.elementType===c||"object"===typeof c&&null!==c&&c.$$typeof===P&&ba(c)===u.type){r(n,u.sibling),(a=o(u,i.props)).ref=va(n,u,i),a.return=n,n=a;break e}r(n,u);break}t(n,u),u=u.sibling}i.type===A?((a=_c(i.props.children,n.mode,l,i.key)).return=n,n=a):((l=Rc(i.type,i.key,i.props,null,n.mode,l)).ref=va(n,a,i),l.return=n,n=l)}return s(n);case S:e:{for(u=i.key;null!==a;){if(a.key===u){if(4===a.tag&&a.stateNode.containerInfo===i.containerInfo&&a.stateNode.implementation===i.implementation){r(n,a.sibling),(a=o(a,i.children||[])).return=n,n=a;break e}r(n,a);break}t(n,a),a=a.sibling}(a=Uc(i,n.mode,l)).return=n,n=a}return s(n);case P:return e(n,a,(u=i._init)(i._payload),l)}if(te(i))return m(n,a,i,l);if(_(i))return g(n,a,i,l);ya(n,i)}return"string"===typeof i&&""!==i||"number"===typeof i?(i=""+i,null!==a&&6===a.tag?(r(n,a.sibling),(a=o(a,i)).return=n,n=a):(r(n,a),(a=Lc(i,n.mode,l)).return=n,n=a),s(n)):r(n,a)}}var xa=wa(!0),Sa=wa(!1),Aa=Co(null),ka=null,Ca=null,Ia=null;function Ea(){Ia=Ca=ka=null}function Da(e){var t=Aa.current;Io(Aa),e._currentValue=t}function Ta(e,t,r){for(;null!==e;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==n&&(n.childLanes|=t)):null!==n&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===r)break;e=e.return}}function Oa(e,t){ka=e,Ia=Ca=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!==(e.lanes&t)&&(bs=!0),e.firstContext=null)}function Ma(e){var t=e._currentValue;if(Ia!==e)if(e={context:e,memoizedValue:t,next:null},null===Ca){if(null===ka)throw Error(a(308));Ca=e,ka.dependencies={lanes:0,firstContext:e}}else Ca=Ca.next=e;return t}var Pa=null;function ja(e){null===Pa?Pa=[e]:Pa.push(e)}function Ra(e,t,r,n){var o=t.interleaved;return null===o?(r.next=r,ja(t)):(r.next=o.next,o.next=r),t.interleaved=r,_a(e,n)}function _a(e,t){e.lanes|=t;var r=e.alternate;for(null!==r&&(r.lanes|=t),r=e,e=e.return;null!==e;)e.childLanes|=t,null!==(r=e.alternate)&&(r.childLanes|=t),r=e,e=e.return;return 3===r.tag?r.stateNode:null}var Na=!1;function La(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Ua(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ba(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Fa(e,t,r){var n=e.updateQueue;if(null===n)return null;if(n=n.shared,0!==(2&Dl)){var o=n.pending;return null===o?t.next=t:(t.next=o.next,o.next=t),n.pending=t,_a(e,r)}return null===(o=n.interleaved)?(t.next=t,ja(n)):(t.next=o.next,o.next=t),n.interleaved=t,_a(e,r)}function za(e,t,r){if(null!==(t=t.updateQueue)&&(t=t.shared,0!==(4194240&r))){var n=t.lanes;r|=n&=e.pendingLanes,t.lanes=r,yt(e,r)}}function Wa(e,t){var r=e.updateQueue,n=e.alternate;if(null!==n&&r===(n=n.updateQueue)){var o=null,a=null;if(null!==(r=r.firstBaseUpdate)){do{var i={eventTime:r.eventTime,lane:r.lane,tag:r.tag,payload:r.payload,callback:r.callback,next:null};null===a?o=a=i:a=a.next=i,r=r.next}while(null!==r);null===a?o=a=t:a=a.next=t}else o=a=t;return r={baseState:n.baseState,firstBaseUpdate:o,lastBaseUpdate:a,shared:n.shared,effects:n.effects},void(e.updateQueue=r)}null===(e=r.lastBaseUpdate)?r.firstBaseUpdate=t:e.next=t,r.lastBaseUpdate=t}function Ha(e,t,r,n){var o=e.updateQueue;Na=!1;var a=o.firstBaseUpdate,i=o.lastBaseUpdate,s=o.shared.pending;if(null!==s){o.shared.pending=null;var l=s,c=l.next;l.next=null,null===i?a=c:i.next=c,i=l;var u=e.alternate;null!==u&&((s=(u=u.updateQueue).lastBaseUpdate)!==i&&(null===s?u.firstBaseUpdate=c:s.next=c,u.lastBaseUpdate=l))}if(null!==a){var d=o.baseState;for(i=0,u=c=l=null,s=a;;){var f=s.lane,p=s.eventTime;if((n&f)===f){null!==u&&(u=u.next={eventTime:p,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var h=e,m=s;switch(f=t,p=r,m.tag){case 1:if("function"===typeof(h=m.payload)){d=h.call(p,d,f);break e}d=h;break e;case 3:h.flags=-65537&h.flags|128;case 0:if(null===(f="function"===typeof(h=m.payload)?h.call(p,d,f):h)||void 0===f)break e;d=L({},d,f);break e;case 2:Na=!0}}null!==s.callback&&0!==s.lane&&(e.flags|=64,null===(f=o.effects)?o.effects=[s]:f.push(s))}else p={eventTime:p,lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},null===u?(c=u=p,l=d):u=u.next=p,i|=f;if(null===(s=s.next)){if(null===(s=o.shared.pending))break;s=(f=s).next,f.next=null,o.lastBaseUpdate=f,o.shared.pending=null}}if(null===u&&(l=d),o.baseState=l,o.firstBaseUpdate=c,o.lastBaseUpdate=u,null!==(t=o.shared.interleaved)){o=t;do{i|=o.lane,o=o.next}while(o!==t)}else null===a&&(o.shared.lanes=0);Nl|=i,e.lanes=i,e.memoizedState=d}}function Ya(e,t,r){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var n=e[t],o=n.callback;if(null!==o){if(n.callback=null,n=r,"function"!==typeof o)throw Error(a(191,o));o.call(n)}}}var Va={},Ga=Co(Va),Za=Co(Va),Qa=Co(Va);function Ka(e){if(e===Va)throw Error(a(174));return e}function Xa(e,t){switch(Eo(Qa,t),Eo(Za,e),Eo(Ga,Va),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:le(null,"");break;default:t=le(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Io(Ga),Eo(Ga,t)}function Ja(){Io(Ga),Io(Za),Io(Qa)}function $a(e){Ka(Qa.current);var t=Ka(Ga.current),r=le(t,e.type);t!==r&&(Eo(Za,e),Eo(Ga,r))}function qa(e){Za.current===e&&(Io(Ga),Io(Za))}var ei=Co(0);function ti(e){for(var t=e;null!==t;){if(13===t.tag){var r=t.memoizedState;if(null!==r&&(null===(r=r.dehydrated)||"$?"===r.data||"$!"===r.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!==(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ri=[];function ni(){for(var e=0;e<ri.length;e++)ri[e]._workInProgressVersionPrimary=null;ri.length=0}var oi=w.ReactCurrentDispatcher,ai=w.ReactCurrentBatchConfig,ii=0,si=null,li=null,ci=null,ui=!1,di=!1,fi=0,pi=0;function hi(){throw Error(a(321))}function mi(e,t){if(null===t)return!1;for(var r=0;r<t.length&&r<e.length;r++)if(!sn(e[r],t[r]))return!1;return!0}function gi(e,t,r,n,o,i){if(ii=i,si=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,oi.current=null===e||null===e.memoizedState?qi:es,e=r(n,o),di){i=0;do{if(di=!1,fi=0,25<=i)throw Error(a(301));i+=1,ci=li=null,t.updateQueue=null,oi.current=ts,e=r(n,o)}while(di)}if(oi.current=$i,t=null!==li&&null!==li.next,ii=0,ci=li=si=null,ui=!1,t)throw Error(a(300));return e}function vi(){var e=0!==fi;return fi=0,e}function yi(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ci?si.memoizedState=ci=e:ci=ci.next=e,ci}function bi(){if(null===li){var e=si.alternate;e=null!==e?e.memoizedState:null}else e=li.next;var t=null===ci?si.memoizedState:ci.next;if(null!==t)ci=t,li=e;else{if(null===e)throw Error(a(310));e={memoizedState:(li=e).memoizedState,baseState:li.baseState,baseQueue:li.baseQueue,queue:li.queue,next:null},null===ci?si.memoizedState=ci=e:ci=ci.next=e}return ci}function wi(e,t){return"function"===typeof t?t(e):t}function xi(e){var t=bi(),r=t.queue;if(null===r)throw Error(a(311));r.lastRenderedReducer=e;var n=li,o=n.baseQueue,i=r.pending;if(null!==i){if(null!==o){var s=o.next;o.next=i.next,i.next=s}n.baseQueue=o=i,r.pending=null}if(null!==o){i=o.next,n=n.baseState;var l=s=null,c=null,u=i;do{var d=u.lane;if((ii&d)===d)null!==c&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),n=u.hasEagerState?u.eagerState:e(n,u.action);else{var f={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===c?(l=c=f,s=n):c=c.next=f,si.lanes|=d,Nl|=d}u=u.next}while(null!==u&&u!==i);null===c?s=n:c.next=l,sn(n,t.memoizedState)||(bs=!0),t.memoizedState=n,t.baseState=s,t.baseQueue=c,r.lastRenderedState=n}if(null!==(e=r.interleaved)){o=e;do{i=o.lane,si.lanes|=i,Nl|=i,o=o.next}while(o!==e)}else null===o&&(r.lanes=0);return[t.memoizedState,r.dispatch]}function Si(e){var t=bi(),r=t.queue;if(null===r)throw Error(a(311));r.lastRenderedReducer=e;var n=r.dispatch,o=r.pending,i=t.memoizedState;if(null!==o){r.pending=null;var s=o=o.next;do{i=e(i,s.action),s=s.next}while(s!==o);sn(i,t.memoizedState)||(bs=!0),t.memoizedState=i,null===t.baseQueue&&(t.baseState=i),r.lastRenderedState=i}return[i,n]}function Ai(){}function ki(e,t){var r=si,n=bi(),o=t(),i=!sn(n.memoizedState,o);if(i&&(n.memoizedState=o,bs=!0),n=n.queue,Ni(Ei.bind(null,r,n,e),[e]),n.getSnapshot!==t||i||null!==ci&&1&ci.memoizedState.tag){if(r.flags|=2048,Mi(9,Ii.bind(null,r,n,o,t),void 0,null),null===Tl)throw Error(a(349));0!==(30&ii)||Ci(r,t,o)}return o}function Ci(e,t,r){e.flags|=16384,e={getSnapshot:t,value:r},null===(t=si.updateQueue)?(t={lastEffect:null,stores:null},si.updateQueue=t,t.stores=[e]):null===(r=t.stores)?t.stores=[e]:r.push(e)}function Ii(e,t,r,n){t.value=r,t.getSnapshot=n,Di(t)&&Ti(e)}function Ei(e,t,r){return r((function(){Di(t)&&Ti(e)}))}function Di(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!sn(e,r)}catch(n){return!0}}function Ti(e){var t=_a(e,1);null!==t&&rc(t,e,1,-1)}function Oi(e){var t=yi();return"function"===typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:wi,lastRenderedState:e},t.queue=e,e=e.dispatch=Qi.bind(null,si,e),[t.memoizedState,e]}function Mi(e,t,r,n){return e={tag:e,create:t,destroy:r,deps:n,next:null},null===(t=si.updateQueue)?(t={lastEffect:null,stores:null},si.updateQueue=t,t.lastEffect=e.next=e):null===(r=t.lastEffect)?t.lastEffect=e.next=e:(n=r.next,r.next=e,e.next=n,t.lastEffect=e),e}function Pi(){return bi().memoizedState}function ji(e,t,r,n){var o=yi();si.flags|=e,o.memoizedState=Mi(1|t,r,void 0,void 0===n?null:n)}function Ri(e,t,r,n){var o=bi();n=void 0===n?null:n;var a=void 0;if(null!==li){var i=li.memoizedState;if(a=i.destroy,null!==n&&mi(n,i.deps))return void(o.memoizedState=Mi(t,r,a,n))}si.flags|=e,o.memoizedState=Mi(1|t,r,a,n)}function _i(e,t){return ji(8390656,8,e,t)}function Ni(e,t){return Ri(2048,8,e,t)}function Li(e,t){return Ri(4,2,e,t)}function Ui(e,t){return Ri(4,4,e,t)}function Bi(e,t){return"function"===typeof t?(e=e(),t(e),function(){t(null)}):null!==t&&void 0!==t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Fi(e,t,r){return r=null!==r&&void 0!==r?r.concat([e]):null,Ri(4,4,Bi.bind(null,t,e),r)}function zi(){}function Wi(e,t){var r=bi();t=void 0===t?null:t;var n=r.memoizedState;return null!==n&&null!==t&&mi(t,n[1])?n[0]:(r.memoizedState=[e,t],e)}function Hi(e,t){var r=bi();t=void 0===t?null:t;var n=r.memoizedState;return null!==n&&null!==t&&mi(t,n[1])?n[0]:(e=e(),r.memoizedState=[e,t],e)}function Yi(e,t,r){return 0===(21&ii)?(e.baseState&&(e.baseState=!1,bs=!0),e.memoizedState=r):(sn(r,t)||(r=mt(),si.lanes|=r,Nl|=r,e.baseState=!0),t)}function Vi(e,t){var r=bt;bt=0!==r&&4>r?r:4,e(!0);var n=ai.transition;ai.transition={};try{e(!1),t()}finally{bt=r,ai.transition=n}}function Gi(){return bi().memoizedState}function Zi(e,t,r){var n=tc(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},Ki(e))Xi(t,r);else if(null!==(r=Ra(e,t,r,n))){rc(r,e,n,ec()),Ji(r,t,n)}}function Qi(e,t,r){var n=tc(e),o={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(Ki(e))Xi(t,o);else{var a=e.alternate;if(0===e.lanes&&(null===a||0===a.lanes)&&null!==(a=t.lastRenderedReducer))try{var i=t.lastRenderedState,s=a(i,r);if(o.hasEagerState=!0,o.eagerState=s,sn(s,i)){var l=t.interleaved;return null===l?(o.next=o,ja(t)):(o.next=l.next,l.next=o),void(t.interleaved=o)}}catch(c){}null!==(r=Ra(e,t,o,n))&&(rc(r,e,n,o=ec()),Ji(r,t,n))}}function Ki(e){var t=e.alternate;return e===si||null!==t&&t===si}function Xi(e,t){di=ui=!0;var r=e.pending;null===r?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function Ji(e,t,r){if(0!==(4194240&r)){var n=t.lanes;r|=n&=e.pendingLanes,t.lanes=r,yt(e,r)}}var $i={readContext:Ma,useCallback:hi,useContext:hi,useEffect:hi,useImperativeHandle:hi,useInsertionEffect:hi,useLayoutEffect:hi,useMemo:hi,useReducer:hi,useRef:hi,useState:hi,useDebugValue:hi,useDeferredValue:hi,useTransition:hi,useMutableSource:hi,useSyncExternalStore:hi,useId:hi,unstable_isNewReconciler:!1},qi={readContext:Ma,useCallback:function(e,t){return yi().memoizedState=[e,void 0===t?null:t],e},useContext:Ma,useEffect:_i,useImperativeHandle:function(e,t,r){return r=null!==r&&void 0!==r?r.concat([e]):null,ji(4194308,4,Bi.bind(null,t,e),r)},useLayoutEffect:function(e,t){return ji(4194308,4,e,t)},useInsertionEffect:function(e,t){return ji(4,2,e,t)},useMemo:function(e,t){var r=yi();return t=void 0===t?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=yi();return t=void 0!==r?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=Zi.bind(null,si,e),[n.memoizedState,e]},useRef:function(e){return e={current:e},yi().memoizedState=e},useState:Oi,useDebugValue:zi,useDeferredValue:function(e){return yi().memoizedState=e},useTransition:function(){var e=Oi(!1),t=e[0];return e=Vi.bind(null,e[1]),yi().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=si,o=yi();if(aa){if(void 0===r)throw Error(a(407));r=r()}else{if(r=t(),null===Tl)throw Error(a(349));0!==(30&ii)||Ci(n,t,r)}o.memoizedState=r;var i={value:r,getSnapshot:t};return o.queue=i,_i(Ei.bind(null,n,i,e),[e]),n.flags|=2048,Mi(9,Ii.bind(null,n,i,r,t),void 0,null),r},useId:function(){var e=yi(),t=Tl.identifierPrefix;if(aa){var r=$o;t=":"+t+"R"+(r=(Jo&~(1<<32-it(Jo)-1)).toString(32)+r),0<(r=fi++)&&(t+="H"+r.toString(32)),t+=":"}else t=":"+t+"r"+(r=pi++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},es={readContext:Ma,useCallback:Wi,useContext:Ma,useEffect:Ni,useImperativeHandle:Fi,useInsertionEffect:Li,useLayoutEffect:Ui,useMemo:Hi,useReducer:xi,useRef:Pi,useState:function(){return xi(wi)},useDebugValue:zi,useDeferredValue:function(e){return Yi(bi(),li.memoizedState,e)},useTransition:function(){return[xi(wi)[0],bi().memoizedState]},useMutableSource:Ai,useSyncExternalStore:ki,useId:Gi,unstable_isNewReconciler:!1},ts={readContext:Ma,useCallback:Wi,useContext:Ma,useEffect:Ni,useImperativeHandle:Fi,useInsertionEffect:Li,useLayoutEffect:Ui,useMemo:Hi,useReducer:Si,useRef:Pi,useState:function(){return Si(wi)},useDebugValue:zi,useDeferredValue:function(e){var t=bi();return null===li?t.memoizedState=e:Yi(t,li.memoizedState,e)},useTransition:function(){return[Si(wi)[0],bi().memoizedState]},useMutableSource:Ai,useSyncExternalStore:ki,useId:Gi,unstable_isNewReconciler:!1};function rs(e,t){if(e&&e.defaultProps){for(var r in t=L({},t),e=e.defaultProps)void 0===t[r]&&(t[r]=e[r]);return t}return t}function ns(e,t,r,n){r=null===(r=r(n,t=e.memoizedState))||void 0===r?t:L({},t,r),e.memoizedState=r,0===e.lanes&&(e.updateQueue.baseState=r)}var os={isMounted:function(e){return!!(e=e._reactInternals)&&We(e)===e},enqueueSetState:function(e,t,r){e=e._reactInternals;var n=ec(),o=tc(e),a=Ba(n,o);a.payload=t,void 0!==r&&null!==r&&(a.callback=r),null!==(t=Fa(e,a,o))&&(rc(t,e,o,n),za(t,e,o))},enqueueReplaceState:function(e,t,r){e=e._reactInternals;var n=ec(),o=tc(e),a=Ba(n,o);a.tag=1,a.payload=t,void 0!==r&&null!==r&&(a.callback=r),null!==(t=Fa(e,a,o))&&(rc(t,e,o,n),za(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var r=ec(),n=tc(e),o=Ba(r,n);o.tag=2,void 0!==t&&null!==t&&(o.callback=t),null!==(t=Fa(e,o,n))&&(rc(t,e,n,r),za(t,e,n))}};function as(e,t,r,n,o,a,i){return"function"===typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(n,a,i):!t.prototype||!t.prototype.isPureReactComponent||(!ln(r,n)||!ln(o,a))}function is(e,t,r){var n=!1,o=Do,a=t.contextType;return"object"===typeof a&&null!==a?a=Ma(a):(o=jo(t)?Mo:To.current,a=(n=null!==(n=t.contextTypes)&&void 0!==n)?Po(e,o):Do),t=new t(r,a),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=os,e.stateNode=t,t._reactInternals=e,n&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=a),t}function ss(e,t,r,n){e=t.state,"function"===typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(r,n),"function"===typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(r,n),t.state!==e&&os.enqueueReplaceState(t,t.state,null)}function ls(e,t,r,n){var o=e.stateNode;o.props=r,o.state=e.memoizedState,o.refs={},La(e);var a=t.contextType;"object"===typeof a&&null!==a?o.context=Ma(a):(a=jo(t)?Mo:To.current,o.context=Po(e,a)),o.state=e.memoizedState,"function"===typeof(a=t.getDerivedStateFromProps)&&(ns(e,t,a,r),o.state=e.memoizedState),"function"===typeof t.getDerivedStateFromProps||"function"===typeof o.getSnapshotBeforeUpdate||"function"!==typeof o.UNSAFE_componentWillMount&&"function"!==typeof o.componentWillMount||(t=o.state,"function"===typeof o.componentWillMount&&o.componentWillMount(),"function"===typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&os.enqueueReplaceState(o,o.state,null),Ha(e,r,o,n),o.state=e.memoizedState),"function"===typeof o.componentDidMount&&(e.flags|=4194308)}function cs(e,t){try{var r="",n=t;do{r+=z(n),n=n.return}while(n);var o=r}catch(a){o="\nError generating stack: "+a.message+"\n"+a.stack}return{value:e,source:t,stack:o,digest:null}}function us(e,t,r){return{value:e,source:null,stack:null!=r?r:null,digest:null!=t?t:null}}function ds(e,t){try{console.error(t.value)}catch(r){setTimeout((function(){throw r}))}}var fs="function"===typeof WeakMap?WeakMap:Map;function ps(e,t,r){(r=Ba(-1,r)).tag=3,r.payload={element:null};var n=t.value;return r.callback=function(){Yl||(Yl=!0,Vl=n),ds(0,t)},r}function hs(e,t,r){(r=Ba(-1,r)).tag=3;var n=e.type.getDerivedStateFromError;if("function"===typeof n){var o=t.value;r.payload=function(){return n(o)},r.callback=function(){ds(0,t)}}var a=e.stateNode;return null!==a&&"function"===typeof a.componentDidCatch&&(r.callback=function(){ds(0,t),"function"!==typeof n&&(null===Gl?Gl=new Set([this]):Gl.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),r}function ms(e,t,r){var n=e.pingCache;if(null===n){n=e.pingCache=new fs;var o=new Set;n.set(t,o)}else void 0===(o=n.get(t))&&(o=new Set,n.set(t,o));o.has(r)||(o.add(r),e=Cc.bind(null,e,t,r),t.then(e,e))}function gs(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function vs(e,t,r,n,o){return 0===(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,r.flags|=131072,r.flags&=-52805,1===r.tag&&(null===r.alternate?r.tag=17:((t=Ba(-1,1)).tag=2,Fa(r,t,1))),r.lanes|=1),e):(e.flags|=65536,e.lanes=o,e)}var ys=w.ReactCurrentOwner,bs=!1;function ws(e,t,r,n){t.child=null===e?Sa(t,null,r,n):xa(t,e.child,r,n)}function xs(e,t,r,n,o){r=r.render;var a=t.ref;return Oa(t,o),n=gi(e,t,r,n,a,o),r=vi(),null===e||bs?(aa&&r&&ta(t),t.flags|=1,ws(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Ys(e,t,o))}function Ss(e,t,r,n,o){if(null===e){var a=r.type;return"function"!==typeof a||Pc(a)||void 0!==a.defaultProps||null!==r.compare||void 0!==r.defaultProps?((e=Rc(r.type,null,n,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=a,As(e,t,a,n,o))}if(a=e.child,0===(e.lanes&o)){var i=a.memoizedProps;if((r=null!==(r=r.compare)?r:ln)(i,n)&&e.ref===t.ref)return Ys(e,t,o)}return t.flags|=1,(e=jc(a,n)).ref=t.ref,e.return=t,t.child=e}function As(e,t,r,n,o){if(null!==e){var a=e.memoizedProps;if(ln(a,n)&&e.ref===t.ref){if(bs=!1,t.pendingProps=n=a,0===(e.lanes&o))return t.lanes=e.lanes,Ys(e,t,o);0!==(131072&e.flags)&&(bs=!0)}}return Is(e,t,r,n,o)}function ks(e,t,r){var n=t.pendingProps,o=n.children,a=null!==e?e.memoizedState:null;if("hidden"===n.mode)if(0===(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Eo(jl,Pl),Pl|=r;else{if(0===(1073741824&r))return e=null!==a?a.baseLanes|r:r,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Eo(jl,Pl),Pl|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},n=null!==a?a.baseLanes:r,Eo(jl,Pl),Pl|=n}else null!==a?(n=a.baseLanes|r,t.memoizedState=null):n=r,Eo(jl,Pl),Pl|=n;return ws(e,t,o,r),t.child}function Cs(e,t){var r=t.ref;(null===e&&null!==r||null!==e&&e.ref!==r)&&(t.flags|=512,t.flags|=2097152)}function Is(e,t,r,n,o){var a=jo(r)?Mo:To.current;return a=Po(t,a),Oa(t,o),r=gi(e,t,r,n,a,o),n=vi(),null===e||bs?(aa&&n&&ta(t),t.flags|=1,ws(e,t,r,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Ys(e,t,o))}function Es(e,t,r,n,o){if(jo(r)){var a=!0;Lo(t)}else a=!1;if(Oa(t,o),null===t.stateNode)Hs(e,t),is(t,r,n),ls(t,r,n,o),n=!0;else if(null===e){var i=t.stateNode,s=t.memoizedProps;i.props=s;var l=i.context,c=r.contextType;"object"===typeof c&&null!==c?c=Ma(c):c=Po(t,c=jo(r)?Mo:To.current);var u=r.getDerivedStateFromProps,d="function"===typeof u||"function"===typeof i.getSnapshotBeforeUpdate;d||"function"!==typeof i.UNSAFE_componentWillReceiveProps&&"function"!==typeof i.componentWillReceiveProps||(s!==n||l!==c)&&ss(t,i,n,c),Na=!1;var f=t.memoizedState;i.state=f,Ha(t,n,i,o),l=t.memoizedState,s!==n||f!==l||Oo.current||Na?("function"===typeof u&&(ns(t,r,u,n),l=t.memoizedState),(s=Na||as(t,r,s,n,f,l,c))?(d||"function"!==typeof i.UNSAFE_componentWillMount&&"function"!==typeof i.componentWillMount||("function"===typeof i.componentWillMount&&i.componentWillMount(),"function"===typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"===typeof i.componentDidMount&&(t.flags|=4194308)):("function"===typeof i.componentDidMount&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=l),i.props=n,i.state=l,i.context=c,n=s):("function"===typeof i.componentDidMount&&(t.flags|=4194308),n=!1)}else{i=t.stateNode,Ua(e,t),s=t.memoizedProps,c=t.type===t.elementType?s:rs(t.type,s),i.props=c,d=t.pendingProps,f=i.context,"object"===typeof(l=r.contextType)&&null!==l?l=Ma(l):l=Po(t,l=jo(r)?Mo:To.current);var p=r.getDerivedStateFromProps;(u="function"===typeof p||"function"===typeof i.getSnapshotBeforeUpdate)||"function"!==typeof i.UNSAFE_componentWillReceiveProps&&"function"!==typeof i.componentWillReceiveProps||(s!==d||f!==l)&&ss(t,i,n,l),Na=!1,f=t.memoizedState,i.state=f,Ha(t,n,i,o);var h=t.memoizedState;s!==d||f!==h||Oo.current||Na?("function"===typeof p&&(ns(t,r,p,n),h=t.memoizedState),(c=Na||as(t,r,c,n,f,h,l)||!1)?(u||"function"!==typeof i.UNSAFE_componentWillUpdate&&"function"!==typeof i.componentWillUpdate||("function"===typeof i.componentWillUpdate&&i.componentWillUpdate(n,h,l),"function"===typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(n,h,l)),"function"===typeof i.componentDidUpdate&&(t.flags|=4),"function"===typeof i.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof i.componentDidUpdate||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),"function"!==typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=h),i.props=n,i.state=h,i.context=l,n=c):("function"!==typeof i.componentDidUpdate||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),"function"!==typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),n=!1)}return Ds(e,t,r,n,a,o)}function Ds(e,t,r,n,o,a){Cs(e,t);var i=0!==(128&t.flags);if(!n&&!i)return o&&Uo(t,r,!1),Ys(e,t,a);n=t.stateNode,ys.current=t;var s=i&&"function"!==typeof r.getDerivedStateFromError?null:n.render();return t.flags|=1,null!==e&&i?(t.child=xa(t,e.child,null,a),t.child=xa(t,null,s,a)):ws(e,t,s,a),t.memoizedState=n.state,o&&Uo(t,r,!0),t.child}function Ts(e){var t=e.stateNode;t.pendingContext?_o(0,t.pendingContext,t.pendingContext!==t.context):t.context&&_o(0,t.context,!1),Xa(e,t.containerInfo)}function Os(e,t,r,n,o){return ha(),ma(o),t.flags|=256,ws(e,t,r,n),t.child}var Ms,Ps,js,Rs,_s={dehydrated:null,treeContext:null,retryLane:0};function Ns(e){return{baseLanes:e,cachePool:null,transitions:null}}function Ls(e,t,r){var n,o=t.pendingProps,i=ei.current,s=!1,l=0!==(128&t.flags);if((n=l)||(n=(null===e||null!==e.memoizedState)&&0!==(2&i)),n?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(i|=1),Eo(ei,1&i),null===e)return ua(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0===(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(l=o.children,e=o.fallback,s?(o=t.mode,s=t.child,l={mode:"hidden",children:l},0===(1&o)&&null!==s?(s.childLanes=0,s.pendingProps=l):s=Nc(l,o,0,null),e=_c(e,o,r,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ns(r),t.memoizedState=_s,e):Us(t,l));if(null!==(i=e.memoizedState)&&null!==(n=i.dehydrated))return function(e,t,r,n,o,i,s){if(r)return 256&t.flags?(t.flags&=-257,Bs(e,t,s,n=us(Error(a(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(i=n.fallback,o=t.mode,n=Nc({mode:"visible",children:n.children},o,0,null),(i=_c(i,o,s,null)).flags|=2,n.return=t,i.return=t,n.sibling=i,t.child=n,0!==(1&t.mode)&&xa(t,e.child,null,s),t.child.memoizedState=Ns(s),t.memoizedState=_s,i);if(0===(1&t.mode))return Bs(e,t,s,null);if("$!"===o.data){if(n=o.nextSibling&&o.nextSibling.dataset)var l=n.dgst;return n=l,Bs(e,t,s,n=us(i=Error(a(419)),n,void 0))}if(l=0!==(s&e.childLanes),bs||l){if(null!==(n=Tl)){switch(s&-s){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}0!==(o=0!==(o&(n.suspendedLanes|s))?0:o)&&o!==i.retryLane&&(i.retryLane=o,_a(e,o),rc(n,e,o,-1))}return mc(),Bs(e,t,s,n=us(Error(a(421))))}return"$?"===o.data?(t.flags|=128,t.child=e.child,t=Ec.bind(null,e),o._reactRetry=t,null):(e=i.treeContext,oa=co(o.nextSibling),na=t,aa=!0,ia=null,null!==e&&(Qo[Ko++]=Jo,Qo[Ko++]=$o,Qo[Ko++]=Xo,Jo=e.id,$o=e.overflow,Xo=t),t=Us(t,n.children),t.flags|=4096,t)}(e,t,l,o,n,i,r);if(s){s=o.fallback,l=t.mode,n=(i=e.child).sibling;var c={mode:"hidden",children:o.children};return 0===(1&l)&&t.child!==i?((o=t.child).childLanes=0,o.pendingProps=c,t.deletions=null):(o=jc(i,c)).subtreeFlags=14680064&i.subtreeFlags,null!==n?s=jc(n,s):(s=_c(s,l,r,null)).flags|=2,s.return=t,o.return=t,o.sibling=s,t.child=o,o=s,s=t.child,l=null===(l=e.child.memoizedState)?Ns(r):{baseLanes:l.baseLanes|r,cachePool:null,transitions:l.transitions},s.memoizedState=l,s.childLanes=e.childLanes&~r,t.memoizedState=_s,o}return e=(s=e.child).sibling,o=jc(s,{mode:"visible",children:o.children}),0===(1&t.mode)&&(o.lanes=r),o.return=t,o.sibling=null,null!==e&&(null===(r=t.deletions)?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=o,t.memoizedState=null,o}function Us(e,t){return(t=Nc({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Bs(e,t,r,n){return null!==n&&ma(n),xa(t,e.child,null,r),(e=Us(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Fs(e,t,r){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),Ta(e.return,t,r)}function zs(e,t,r,n,o){var a=e.memoizedState;null===a?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:r,tailMode:o}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=n,a.tail=r,a.tailMode=o)}function Ws(e,t,r){var n=t.pendingProps,o=n.revealOrder,a=n.tail;if(ws(e,t,n.children,r),0!==(2&(n=ei.current)))n=1&n|2,t.flags|=128;else{if(null!==e&&0!==(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Fs(e,r,t);else if(19===e.tag)Fs(e,r,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}n&=1}if(Eo(ei,n),0===(1&t.mode))t.memoizedState=null;else switch(o){case"forwards":for(r=t.child,o=null;null!==r;)null!==(e=r.alternate)&&null===ti(e)&&(o=r),r=r.sibling;null===(r=o)?(o=t.child,t.child=null):(o=r.sibling,r.sibling=null),zs(t,!1,o,r,a);break;case"backwards":for(r=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===ti(e)){t.child=o;break}e=o.sibling,o.sibling=r,r=o,o=e}zs(t,!0,r,null,a);break;case"together":zs(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Hs(e,t){0===(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ys(e,t,r){if(null!==e&&(t.dependencies=e.dependencies),Nl|=t.lanes,0===(r&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(a(153));if(null!==t.child){for(r=jc(e=t.child,e.pendingProps),t.child=r,r.return=t;null!==e.sibling;)e=e.sibling,(r=r.sibling=jc(e,e.pendingProps)).return=t;r.sibling=null}return t.child}function Vs(e,t){if(!aa)switch(e.tailMode){case"hidden":t=e.tail;for(var r=null;null!==t;)null!==t.alternate&&(r=t),t=t.sibling;null===r?e.tail=null:r.sibling=null;break;case"collapsed":r=e.tail;for(var n=null;null!==r;)null!==r.alternate&&(n=r),r=r.sibling;null===n?t||null===e.tail?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Gs(e){var t=null!==e.alternate&&e.alternate.child===e.child,r=0,n=0;if(t)for(var o=e.child;null!==o;)r|=o.lanes|o.childLanes,n|=14680064&o.subtreeFlags,n|=14680064&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)r|=o.lanes|o.childLanes,n|=o.subtreeFlags,n|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=n,e.childLanes=r,t}function Zs(e,t,r){var n=t.pendingProps;switch(ra(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Gs(t),null;case 1:case 17:return jo(t.type)&&Ro(),Gs(t),null;case 3:return n=t.stateNode,Ja(),Io(Oo),Io(To),ni(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),null!==e&&null!==e.child||(fa(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,null!==ia&&(ic(ia),ia=null))),Ps(e,t),Gs(t),null;case 5:qa(t);var o=Ka(Qa.current);if(r=t.type,null!==e&&null!=t.stateNode)js(e,t,r,n,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!n){if(null===t.stateNode)throw Error(a(166));return Gs(t),null}if(e=Ka(Ga.current),fa(t)){n=t.stateNode,r=t.type;var i=t.memoizedProps;switch(n[po]=t,n[ho]=i,e=0!==(1&t.mode),r){case"dialog":Bn("cancel",n),Bn("close",n);break;case"iframe":case"object":case"embed":Bn("load",n);break;case"video":case"audio":for(o=0;o<_n.length;o++)Bn(_n[o],n);break;case"source":Bn("error",n);break;case"img":case"image":case"link":Bn("error",n),Bn("load",n);break;case"details":Bn("toggle",n);break;case"input":X(n,i),Bn("invalid",n);break;case"select":n._wrapperState={wasMultiple:!!i.multiple},Bn("invalid",n);break;case"textarea":oe(n,i),Bn("invalid",n)}for(var l in ye(r,i),o=null,i)if(i.hasOwnProperty(l)){var c=i[l];"children"===l?"string"===typeof c?n.textContent!==c&&(!0!==i.suppressHydrationWarning&&$n(n.textContent,c,e),o=["children",c]):"number"===typeof c&&n.textContent!==""+c&&(!0!==i.suppressHydrationWarning&&$n(n.textContent,c,e),o=["children",""+c]):s.hasOwnProperty(l)&&null!=c&&"onScroll"===l&&Bn("scroll",n)}switch(r){case"input":G(n),q(n,i,!0);break;case"textarea":G(n),ie(n);break;case"select":case"option":break;default:"function"===typeof i.onClick&&(n.onclick=qn)}n=o,t.updateQueue=n,null!==n&&(t.flags|=4)}else{l=9===o.nodeType?o:o.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=se(r)),"http://www.w3.org/1999/xhtml"===e?"script"===r?((e=l.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"===typeof n.is?e=l.createElement(r,{is:n.is}):(e=l.createElement(r),"select"===r&&(l=e,n.multiple?l.multiple=!0:n.size&&(l.size=n.size))):e=l.createElementNS(e,r),e[po]=t,e[ho]=n,Ms(e,t,!1,!1),t.stateNode=e;e:{switch(l=be(r,n),r){case"dialog":Bn("cancel",e),Bn("close",e),o=n;break;case"iframe":case"object":case"embed":Bn("load",e),o=n;break;case"video":case"audio":for(o=0;o<_n.length;o++)Bn(_n[o],e);o=n;break;case"source":Bn("error",e),o=n;break;case"img":case"image":case"link":Bn("error",e),Bn("load",e),o=n;break;case"details":Bn("toggle",e),o=n;break;case"input":X(e,n),o=K(e,n),Bn("invalid",e);break;case"option":default:o=n;break;case"select":e._wrapperState={wasMultiple:!!n.multiple},o=L({},n,{value:void 0}),Bn("invalid",e);break;case"textarea":oe(e,n),o=ne(e,n),Bn("invalid",e)}for(i in ye(r,o),c=o)if(c.hasOwnProperty(i)){var u=c[i];"style"===i?ge(e,u):"dangerouslySetInnerHTML"===i?null!=(u=u?u.__html:void 0)&&de(e,u):"children"===i?"string"===typeof u?("textarea"!==r||""!==u)&&fe(e,u):"number"===typeof u&&fe(e,""+u):"suppressContentEditableWarning"!==i&&"suppressHydrationWarning"!==i&&"autoFocus"!==i&&(s.hasOwnProperty(i)?null!=u&&"onScroll"===i&&Bn("scroll",e):null!=u&&b(e,i,u,l))}switch(r){case"input":G(e),q(e,n,!1);break;case"textarea":G(e),ie(e);break;case"option":null!=n.value&&e.setAttribute("value",""+Y(n.value));break;case"select":e.multiple=!!n.multiple,null!=(i=n.value)?re(e,!!n.multiple,i,!1):null!=n.defaultValue&&re(e,!!n.multiple,n.defaultValue,!0);break;default:"function"===typeof o.onClick&&(e.onclick=qn)}switch(r){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break e;case"img":n=!0;break e;default:n=!1}}n&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return Gs(t),null;case 6:if(e&&null!=t.stateNode)Rs(e,t,e.memoizedProps,n);else{if("string"!==typeof n&&null===t.stateNode)throw Error(a(166));if(r=Ka(Qa.current),Ka(Ga.current),fa(t)){if(n=t.stateNode,r=t.memoizedProps,n[po]=t,(i=n.nodeValue!==r)&&null!==(e=na))switch(e.tag){case 3:$n(n.nodeValue,r,0!==(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&$n(n.nodeValue,r,0!==(1&e.mode))}i&&(t.flags|=4)}else(n=(9===r.nodeType?r:r.ownerDocument).createTextNode(n))[po]=t,t.stateNode=n}return Gs(t),null;case 13:if(Io(ei),n=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(aa&&null!==oa&&0!==(1&t.mode)&&0===(128&t.flags))pa(),ha(),t.flags|=98560,i=!1;else if(i=fa(t),null!==n&&null!==n.dehydrated){if(null===e){if(!i)throw Error(a(318));if(!(i=null!==(i=t.memoizedState)?i.dehydrated:null))throw Error(a(317));i[po]=t}else ha(),0===(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Gs(t),i=!1}else null!==ia&&(ic(ia),ia=null),i=!0;if(!i)return 65536&t.flags?t:null}return 0!==(128&t.flags)?(t.lanes=r,t):((n=null!==n)!==(null!==e&&null!==e.memoizedState)&&n&&(t.child.flags|=8192,0!==(1&t.mode)&&(null===e||0!==(1&ei.current)?0===Rl&&(Rl=3):mc())),null!==t.updateQueue&&(t.flags|=4),Gs(t),null);case 4:return Ja(),Ps(e,t),null===e&&Wn(t.stateNode.containerInfo),Gs(t),null;case 10:return Da(t.type._context),Gs(t),null;case 19:if(Io(ei),null===(i=t.memoizedState))return Gs(t),null;if(n=0!==(128&t.flags),null===(l=i.rendering))if(n)Vs(i,!1);else{if(0!==Rl||null!==e&&0!==(128&e.flags))for(e=t.child;null!==e;){if(null!==(l=ti(e))){for(t.flags|=128,Vs(i,!1),null!==(n=l.updateQueue)&&(t.updateQueue=n,t.flags|=4),t.subtreeFlags=0,n=r,r=t.child;null!==r;)e=n,(i=r).flags&=14680066,null===(l=i.alternate)?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=l.childLanes,i.lanes=l.lanes,i.child=l.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=l.memoizedProps,i.memoizedState=l.memoizedState,i.updateQueue=l.updateQueue,i.type=l.type,e=l.dependencies,i.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),r=r.sibling;return Eo(ei,1&ei.current|2),t.child}e=e.sibling}null!==i.tail&&Je()>Wl&&(t.flags|=128,n=!0,Vs(i,!1),t.lanes=4194304)}else{if(!n)if(null!==(e=ti(l))){if(t.flags|=128,n=!0,null!==(r=e.updateQueue)&&(t.updateQueue=r,t.flags|=4),Vs(i,!0),null===i.tail&&"hidden"===i.tailMode&&!l.alternate&&!aa)return Gs(t),null}else 2*Je()-i.renderingStartTime>Wl&&1073741824!==r&&(t.flags|=128,n=!0,Vs(i,!1),t.lanes=4194304);i.isBackwards?(l.sibling=t.child,t.child=l):(null!==(r=i.last)?r.sibling=l:t.child=l,i.last=l)}return null!==i.tail?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Je(),t.sibling=null,r=ei.current,Eo(ei,n?1&r|2:1&r),t):(Gs(t),null);case 22:case 23:return dc(),n=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==n&&(t.flags|=8192),n&&0!==(1&t.mode)?0!==(1073741824&Pl)&&(Gs(t),6&t.subtreeFlags&&(t.flags|=8192)):Gs(t),null;case 24:case 25:return null}throw Error(a(156,t.tag))}function Qs(e,t){switch(ra(t),t.tag){case 1:return jo(t.type)&&Ro(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return Ja(),Io(Oo),Io(To),ni(),0!==(65536&(e=t.flags))&&0===(128&e)?(t.flags=-65537&e|128,t):null;case 5:return qa(t),null;case 13:if(Io(ei),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(a(340));ha()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Io(ei),null;case 4:return Ja(),null;case 10:return Da(t.type._context),null;case 22:case 23:return dc(),null;default:return null}}Ms=function(e,t){for(var r=t.child;null!==r;){if(5===r.tag||6===r.tag)e.appendChild(r.stateNode);else if(4!==r.tag&&null!==r.child){r.child.return=r,r=r.child;continue}if(r===t)break;for(;null===r.sibling;){if(null===r.return||r.return===t)return;r=r.return}r.sibling.return=r.return,r=r.sibling}},Ps=function(){},js=function(e,t,r,n){var o=e.memoizedProps;if(o!==n){e=t.stateNode,Ka(Ga.current);var a,i=null;switch(r){case"input":o=K(e,o),n=K(e,n),i=[];break;case"select":o=L({},o,{value:void 0}),n=L({},n,{value:void 0}),i=[];break;case"textarea":o=ne(e,o),n=ne(e,n),i=[];break;default:"function"!==typeof o.onClick&&"function"===typeof n.onClick&&(e.onclick=qn)}for(u in ye(r,n),r=null,o)if(!n.hasOwnProperty(u)&&o.hasOwnProperty(u)&&null!=o[u])if("style"===u){var l=o[u];for(a in l)l.hasOwnProperty(a)&&(r||(r={}),r[a]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(s.hasOwnProperty(u)?i||(i=[]):(i=i||[]).push(u,null));for(u in n){var c=n[u];if(l=null!=o?o[u]:void 0,n.hasOwnProperty(u)&&c!==l&&(null!=c||null!=l))if("style"===u)if(l){for(a in l)!l.hasOwnProperty(a)||c&&c.hasOwnProperty(a)||(r||(r={}),r[a]="");for(a in c)c.hasOwnProperty(a)&&l[a]!==c[a]&&(r||(r={}),r[a]=c[a])}else r||(i||(i=[]),i.push(u,r)),r=c;else"dangerouslySetInnerHTML"===u?(c=c?c.__html:void 0,l=l?l.__html:void 0,null!=c&&l!==c&&(i=i||[]).push(u,c)):"children"===u?"string"!==typeof c&&"number"!==typeof c||(i=i||[]).push(u,""+c):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(s.hasOwnProperty(u)?(null!=c&&"onScroll"===u&&Bn("scroll",e),i||l===c||(i=[])):(i=i||[]).push(u,c))}r&&(i=i||[]).push("style",r);var u=i;(t.updateQueue=u)&&(t.flags|=4)}},Rs=function(e,t,r,n){r!==n&&(t.flags|=4)};var Ks=!1,Xs=!1,Js="function"===typeof WeakSet?WeakSet:Set,$s=null;function qs(e,t){var r=e.ref;if(null!==r)if("function"===typeof r)try{r(null)}catch(n){kc(e,t,n)}else r.current=null}function el(e,t,r){try{r()}catch(n){kc(e,t,n)}}var tl=!1;function rl(e,t,r){var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var o=n=n.next;do{if((o.tag&e)===e){var a=o.destroy;o.destroy=void 0,void 0!==a&&el(t,r,a)}o=o.next}while(o!==n)}}function nl(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function ol(e){var t=e.ref;if(null!==t){var r=e.stateNode;e.tag,e=r,"function"===typeof t?t(e):t.current=e}}function al(e){var t=e.alternate;null!==t&&(e.alternate=null,al(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[po],delete t[ho],delete t[go],delete t[vo],delete t[yo])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function il(e){return 5===e.tag||3===e.tag||4===e.tag}function sl(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||il(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function ll(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?8===r.nodeType?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(8===r.nodeType?(t=r.parentNode).insertBefore(e,r):(t=r).appendChild(e),null!==(r=r._reactRootContainer)&&void 0!==r||null!==t.onclick||(t.onclick=qn));else if(4!==n&&null!==(e=e.child))for(ll(e,t,r),e=e.sibling;null!==e;)ll(e,t,r),e=e.sibling}function cl(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(4!==n&&null!==(e=e.child))for(cl(e,t,r),e=e.sibling;null!==e;)cl(e,t,r),e=e.sibling}var ul=null,dl=!1;function fl(e,t,r){for(r=r.child;null!==r;)pl(e,t,r),r=r.sibling}function pl(e,t,r){if(at&&"function"===typeof at.onCommitFiberUnmount)try{at.onCommitFiberUnmount(ot,r)}catch(s){}switch(r.tag){case 5:Xs||qs(r,t);case 6:var n=ul,o=dl;ul=null,fl(e,t,r),dl=o,null!==(ul=n)&&(dl?(e=ul,r=r.stateNode,8===e.nodeType?e.parentNode.removeChild(r):e.removeChild(r)):ul.removeChild(r.stateNode));break;case 18:null!==ul&&(dl?(e=ul,r=r.stateNode,8===e.nodeType?lo(e.parentNode,r):1===e.nodeType&&lo(e,r),Wt(e)):lo(ul,r.stateNode));break;case 4:n=ul,o=dl,ul=r.stateNode.containerInfo,dl=!0,fl(e,t,r),ul=n,dl=o;break;case 0:case 11:case 14:case 15:if(!Xs&&(null!==(n=r.updateQueue)&&null!==(n=n.lastEffect))){o=n=n.next;do{var a=o,i=a.destroy;a=a.tag,void 0!==i&&(0!==(2&a)||0!==(4&a))&&el(r,t,i),o=o.next}while(o!==n)}fl(e,t,r);break;case 1:if(!Xs&&(qs(r,t),"function"===typeof(n=r.stateNode).componentWillUnmount))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){kc(r,t,s)}fl(e,t,r);break;case 21:fl(e,t,r);break;case 22:1&r.mode?(Xs=(n=Xs)||null!==r.memoizedState,fl(e,t,r),Xs=n):fl(e,t,r);break;default:fl(e,t,r)}}function hl(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var r=e.stateNode;null===r&&(r=e.stateNode=new Js),t.forEach((function(t){var n=Dc.bind(null,e,t);r.has(t)||(r.add(t),t.then(n,n))}))}}function ml(e,t){var r=t.deletions;if(null!==r)for(var n=0;n<r.length;n++){var o=r[n];try{var i=e,s=t,l=s;e:for(;null!==l;){switch(l.tag){case 5:ul=l.stateNode,dl=!1;break e;case 3:case 4:ul=l.stateNode.containerInfo,dl=!0;break e}l=l.return}if(null===ul)throw Error(a(160));pl(i,s,o),ul=null,dl=!1;var c=o.alternate;null!==c&&(c.return=null),o.return=null}catch(u){kc(o,t,u)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)gl(t,e),t=t.sibling}function gl(e,t){var r=e.alternate,n=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(ml(t,e),vl(e),4&n){try{rl(3,e,e.return),nl(3,e)}catch(g){kc(e,e.return,g)}try{rl(5,e,e.return)}catch(g){kc(e,e.return,g)}}break;case 1:ml(t,e),vl(e),512&n&&null!==r&&qs(r,r.return);break;case 5:if(ml(t,e),vl(e),512&n&&null!==r&&qs(r,r.return),32&e.flags){var o=e.stateNode;try{fe(o,"")}catch(g){kc(e,e.return,g)}}if(4&n&&null!=(o=e.stateNode)){var i=e.memoizedProps,s=null!==r?r.memoizedProps:i,l=e.type,c=e.updateQueue;if(e.updateQueue=null,null!==c)try{"input"===l&&"radio"===i.type&&null!=i.name&&J(o,i),be(l,s);var u=be(l,i);for(s=0;s<c.length;s+=2){var d=c[s],f=c[s+1];"style"===d?ge(o,f):"dangerouslySetInnerHTML"===d?de(o,f):"children"===d?fe(o,f):b(o,d,f,u)}switch(l){case"input":$(o,i);break;case"textarea":ae(o,i);break;case"select":var p=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!i.multiple;var h=i.value;null!=h?re(o,!!i.multiple,h,!1):p!==!!i.multiple&&(null!=i.defaultValue?re(o,!!i.multiple,i.defaultValue,!0):re(o,!!i.multiple,i.multiple?[]:"",!1))}o[ho]=i}catch(g){kc(e,e.return,g)}}break;case 6:if(ml(t,e),vl(e),4&n){if(null===e.stateNode)throw Error(a(162));o=e.stateNode,i=e.memoizedProps;try{o.nodeValue=i}catch(g){kc(e,e.return,g)}}break;case 3:if(ml(t,e),vl(e),4&n&&null!==r&&r.memoizedState.isDehydrated)try{Wt(t.containerInfo)}catch(g){kc(e,e.return,g)}break;case 4:default:ml(t,e),vl(e);break;case 13:ml(t,e),vl(e),8192&(o=e.child).flags&&(i=null!==o.memoizedState,o.stateNode.isHidden=i,!i||null!==o.alternate&&null!==o.alternate.memoizedState||(zl=Je())),4&n&&hl(e);break;case 22:if(d=null!==r&&null!==r.memoizedState,1&e.mode?(Xs=(u=Xs)||d,ml(t,e),Xs=u):ml(t,e),vl(e),8192&n){if(u=null!==e.memoizedState,(e.stateNode.isHidden=u)&&!d&&0!==(1&e.mode))for($s=e,d=e.child;null!==d;){for(f=$s=d;null!==$s;){switch(h=(p=$s).child,p.tag){case 0:case 11:case 14:case 15:rl(4,p,p.return);break;case 1:qs(p,p.return);var m=p.stateNode;if("function"===typeof m.componentWillUnmount){n=p,r=p.return;try{t=n,m.props=t.memoizedProps,m.state=t.memoizedState,m.componentWillUnmount()}catch(g){kc(n,r,g)}}break;case 5:qs(p,p.return);break;case 22:if(null!==p.memoizedState){xl(f);continue}}null!==h?(h.return=p,$s=h):xl(f)}d=d.sibling}e:for(d=null,f=e;;){if(5===f.tag){if(null===d){d=f;try{o=f.stateNode,u?"function"===typeof(i=o.style).setProperty?i.setProperty("display","none","important"):i.display="none":(l=f.stateNode,s=void 0!==(c=f.memoizedProps.style)&&null!==c&&c.hasOwnProperty("display")?c.display:null,l.style.display=me("display",s))}catch(g){kc(e,e.return,g)}}}else if(6===f.tag){if(null===d)try{f.stateNode.nodeValue=u?"":f.memoizedProps}catch(g){kc(e,e.return,g)}}else if((22!==f.tag&&23!==f.tag||null===f.memoizedState||f===e)&&null!==f.child){f.child.return=f,f=f.child;continue}if(f===e)break e;for(;null===f.sibling;){if(null===f.return||f.return===e)break e;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:ml(t,e),vl(e),4&n&&hl(e);case 21:}}function vl(e){var t=e.flags;if(2&t){try{e:{for(var r=e.return;null!==r;){if(il(r)){var n=r;break e}r=r.return}throw Error(a(160))}switch(n.tag){case 5:var o=n.stateNode;32&n.flags&&(fe(o,""),n.flags&=-33),cl(e,sl(e),o);break;case 3:case 4:var i=n.stateNode.containerInfo;ll(e,sl(e),i);break;default:throw Error(a(161))}}catch(s){kc(e,e.return,s)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function yl(e,t,r){$s=e,bl(e,t,r)}function bl(e,t,r){for(var n=0!==(1&e.mode);null!==$s;){var o=$s,a=o.child;if(22===o.tag&&n){var i=null!==o.memoizedState||Ks;if(!i){var s=o.alternate,l=null!==s&&null!==s.memoizedState||Xs;s=Ks;var c=Xs;if(Ks=i,(Xs=l)&&!c)for($s=o;null!==$s;)l=(i=$s).child,22===i.tag&&null!==i.memoizedState?Sl(o):null!==l?(l.return=i,$s=l):Sl(o);for(;null!==a;)$s=a,bl(a,t,r),a=a.sibling;$s=o,Ks=s,Xs=c}wl(e)}else 0!==(8772&o.subtreeFlags)&&null!==a?(a.return=o,$s=a):wl(e)}}function wl(e){for(;null!==$s;){var t=$s;if(0!==(8772&t.flags)){var r=t.alternate;try{if(0!==(8772&t.flags))switch(t.tag){case 0:case 11:case 15:Xs||nl(5,t);break;case 1:var n=t.stateNode;if(4&t.flags&&!Xs)if(null===r)n.componentDidMount();else{var o=t.elementType===t.type?r.memoizedProps:rs(t.type,r.memoizedProps);n.componentDidUpdate(o,r.memoizedState,n.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;null!==i&&Ya(t,i,n);break;case 3:var s=t.updateQueue;if(null!==s){if(r=null,null!==t.child)switch(t.child.tag){case 5:case 1:r=t.child.stateNode}Ya(t,s,r)}break;case 5:var l=t.stateNode;if(null===r&&4&t.flags){r=l;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&r.focus();break;case"img":c.src&&(r.src=c.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var u=t.alternate;if(null!==u){var d=u.memoizedState;if(null!==d){var f=d.dehydrated;null!==f&&Wt(f)}}}break;default:throw Error(a(163))}Xs||512&t.flags&&ol(t)}catch(p){kc(t,t.return,p)}}if(t===e){$s=null;break}if(null!==(r=t.sibling)){r.return=t.return,$s=r;break}$s=t.return}}function xl(e){for(;null!==$s;){var t=$s;if(t===e){$s=null;break}var r=t.sibling;if(null!==r){r.return=t.return,$s=r;break}$s=t.return}}function Sl(e){for(;null!==$s;){var t=$s;try{switch(t.tag){case 0:case 11:case 15:var r=t.return;try{nl(4,t)}catch(l){kc(t,r,l)}break;case 1:var n=t.stateNode;if("function"===typeof n.componentDidMount){var o=t.return;try{n.componentDidMount()}catch(l){kc(t,o,l)}}var a=t.return;try{ol(t)}catch(l){kc(t,a,l)}break;case 5:var i=t.return;try{ol(t)}catch(l){kc(t,i,l)}}}catch(l){kc(t,t.return,l)}if(t===e){$s=null;break}var s=t.sibling;if(null!==s){s.return=t.return,$s=s;break}$s=t.return}}var Al,kl=Math.ceil,Cl=w.ReactCurrentDispatcher,Il=w.ReactCurrentOwner,El=w.ReactCurrentBatchConfig,Dl=0,Tl=null,Ol=null,Ml=0,Pl=0,jl=Co(0),Rl=0,_l=null,Nl=0,Ll=0,Ul=0,Bl=null,Fl=null,zl=0,Wl=1/0,Hl=null,Yl=!1,Vl=null,Gl=null,Zl=!1,Ql=null,Kl=0,Xl=0,Jl=null,$l=-1,ql=0;function ec(){return 0!==(6&Dl)?Je():-1!==$l?$l:$l=Je()}function tc(e){return 0===(1&e.mode)?1:0!==(2&Dl)&&0!==Ml?Ml&-Ml:null!==ga.transition?(0===ql&&(ql=mt()),ql):0!==(e=bt)?e:e=void 0===(e=window.event)?16:Xt(e.type)}function rc(e,t,r,n){if(50<Xl)throw Xl=0,Jl=null,Error(a(185));vt(e,r,n),0!==(2&Dl)&&e===Tl||(e===Tl&&(0===(2&Dl)&&(Ll|=r),4===Rl&&sc(e,Ml)),nc(e,n),1===r&&0===Dl&&0===(1&t.mode)&&(Wl=Je()+500,Fo&&Ho()))}function nc(e,t){var r=e.callbackNode;!function(e,t){for(var r=e.suspendedLanes,n=e.pingedLanes,o=e.expirationTimes,a=e.pendingLanes;0<a;){var i=31-it(a),s=1<<i,l=o[i];-1===l?0!==(s&r)&&0===(s&n)||(o[i]=pt(s,t)):l<=t&&(e.expiredLanes|=s),a&=~s}}(e,t);var n=ft(e,e===Tl?Ml:0);if(0===n)null!==r&&Qe(r),e.callbackNode=null,e.callbackPriority=0;else if(t=n&-n,e.callbackPriority!==t){if(null!=r&&Qe(r),1===t)0===e.tag?function(e){Fo=!0,Wo(e)}(lc.bind(null,e)):Wo(lc.bind(null,e)),io((function(){0===(6&Dl)&&Ho()})),r=null;else{switch(wt(n)){case 1:r=qe;break;case 4:r=et;break;case 16:default:r=tt;break;case 536870912:r=nt}r=Tc(r,oc.bind(null,e))}e.callbackPriority=t,e.callbackNode=r}}function oc(e,t){if($l=-1,ql=0,0!==(6&Dl))throw Error(a(327));var r=e.callbackNode;if(Sc()&&e.callbackNode!==r)return null;var n=ft(e,e===Tl?Ml:0);if(0===n)return null;if(0!==(30&n)||0!==(n&e.expiredLanes)||t)t=gc(e,n);else{t=n;var o=Dl;Dl|=2;var i=hc();for(Tl===e&&Ml===t||(Hl=null,Wl=Je()+500,fc(e,t));;)try{yc();break}catch(l){pc(e,l)}Ea(),Cl.current=i,Dl=o,null!==Ol?t=0:(Tl=null,Ml=0,t=Rl)}if(0!==t){if(2===t&&(0!==(o=ht(e))&&(n=o,t=ac(e,o))),1===t)throw r=_l,fc(e,0),sc(e,n),nc(e,Je()),r;if(6===t)sc(e,n);else{if(o=e.current.alternate,0===(30&n)&&!function(e){for(var t=e;;){if(16384&t.flags){var r=t.updateQueue;if(null!==r&&null!==(r=r.stores))for(var n=0;n<r.length;n++){var o=r[n],a=o.getSnapshot;o=o.value;try{if(!sn(a(),o))return!1}catch(s){return!1}}}if(r=t.child,16384&t.subtreeFlags&&null!==r)r.return=t,t=r;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(o)&&(2===(t=gc(e,n))&&(0!==(i=ht(e))&&(n=i,t=ac(e,i))),1===t))throw r=_l,fc(e,0),sc(e,n),nc(e,Je()),r;switch(e.finishedWork=o,e.finishedLanes=n,t){case 0:case 1:throw Error(a(345));case 2:case 5:xc(e,Fl,Hl);break;case 3:if(sc(e,n),(130023424&n)===n&&10<(t=zl+500-Je())){if(0!==ft(e,0))break;if(((o=e.suspendedLanes)&n)!==n){ec(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=no(xc.bind(null,e,Fl,Hl),t);break}xc(e,Fl,Hl);break;case 4:if(sc(e,n),(4194240&n)===n)break;for(t=e.eventTimes,o=-1;0<n;){var s=31-it(n);i=1<<s,(s=t[s])>o&&(o=s),n&=~i}if(n=o,10<(n=(120>(n=Je()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*kl(n/1960))-n)){e.timeoutHandle=no(xc.bind(null,e,Fl,Hl),n);break}xc(e,Fl,Hl);break;default:throw Error(a(329))}}}return nc(e,Je()),e.callbackNode===r?oc.bind(null,e):null}function ac(e,t){var r=Bl;return e.current.memoizedState.isDehydrated&&(fc(e,t).flags|=256),2!==(e=gc(e,t))&&(t=Fl,Fl=r,null!==t&&ic(t)),e}function ic(e){null===Fl?Fl=e:Fl.push.apply(Fl,e)}function sc(e,t){for(t&=~Ul,t&=~Ll,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var r=31-it(t),n=1<<r;e[r]=-1,t&=~n}}function lc(e){if(0!==(6&Dl))throw Error(a(327));Sc();var t=ft(e,0);if(0===(1&t))return nc(e,Je()),null;var r=gc(e,t);if(0!==e.tag&&2===r){var n=ht(e);0!==n&&(t=n,r=ac(e,n))}if(1===r)throw r=_l,fc(e,0),sc(e,t),nc(e,Je()),r;if(6===r)throw Error(a(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,xc(e,Fl,Hl),nc(e,Je()),null}function cc(e,t){var r=Dl;Dl|=1;try{return e(t)}finally{0===(Dl=r)&&(Wl=Je()+500,Fo&&Ho())}}function uc(e){null!==Ql&&0===Ql.tag&&0===(6&Dl)&&Sc();var t=Dl;Dl|=1;var r=El.transition,n=bt;try{if(El.transition=null,bt=1,e)return e()}finally{bt=n,El.transition=r,0===(6&(Dl=t))&&Ho()}}function dc(){Pl=jl.current,Io(jl)}function fc(e,t){e.finishedWork=null,e.finishedLanes=0;var r=e.timeoutHandle;if(-1!==r&&(e.timeoutHandle=-1,oo(r)),null!==Ol)for(r=Ol.return;null!==r;){var n=r;switch(ra(n),n.tag){case 1:null!==(n=n.type.childContextTypes)&&void 0!==n&&Ro();break;case 3:Ja(),Io(Oo),Io(To),ni();break;case 5:qa(n);break;case 4:Ja();break;case 13:case 19:Io(ei);break;case 10:Da(n.type._context);break;case 22:case 23:dc()}r=r.return}if(Tl=e,Ol=e=jc(e.current,null),Ml=Pl=t,Rl=0,_l=null,Ul=Ll=Nl=0,Fl=Bl=null,null!==Pa){for(t=0;t<Pa.length;t++)if(null!==(n=(r=Pa[t]).interleaved)){r.interleaved=null;var o=n.next,a=r.pending;if(null!==a){var i=a.next;a.next=o,n.next=i}r.pending=n}Pa=null}return e}function pc(e,t){for(;;){var r=Ol;try{if(Ea(),oi.current=$i,ui){for(var n=si.memoizedState;null!==n;){var o=n.queue;null!==o&&(o.pending=null),n=n.next}ui=!1}if(ii=0,ci=li=si=null,di=!1,fi=0,Il.current=null,null===r||null===r.return){Rl=1,_l=t,Ol=null;break}e:{var i=e,s=r.return,l=r,c=t;if(t=Ml,l.flags|=32768,null!==c&&"object"===typeof c&&"function"===typeof c.then){var u=c,d=l,f=d.tag;if(0===(1&d.mode)&&(0===f||11===f||15===f)){var p=d.alternate;p?(d.updateQueue=p.updateQueue,d.memoizedState=p.memoizedState,d.lanes=p.lanes):(d.updateQueue=null,d.memoizedState=null)}var h=gs(s);if(null!==h){h.flags&=-257,vs(h,s,l,0,t),1&h.mode&&ms(i,u,t),c=u;var m=(t=h).updateQueue;if(null===m){var g=new Set;g.add(c),t.updateQueue=g}else m.add(c);break e}if(0===(1&t)){ms(i,u,t),mc();break e}c=Error(a(426))}else if(aa&&1&l.mode){var v=gs(s);if(null!==v){0===(65536&v.flags)&&(v.flags|=256),vs(v,s,l,0,t),ma(cs(c,l));break e}}i=c=cs(c,l),4!==Rl&&(Rl=2),null===Bl?Bl=[i]:Bl.push(i),i=s;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t,Wa(i,ps(0,c,t));break e;case 1:l=c;var y=i.type,b=i.stateNode;if(0===(128&i.flags)&&("function"===typeof y.getDerivedStateFromError||null!==b&&"function"===typeof b.componentDidCatch&&(null===Gl||!Gl.has(b)))){i.flags|=65536,t&=-t,i.lanes|=t,Wa(i,hs(i,l,t));break e}}i=i.return}while(null!==i)}wc(r)}catch(w){t=w,Ol===r&&null!==r&&(Ol=r=r.return);continue}break}}function hc(){var e=Cl.current;return Cl.current=$i,null===e?$i:e}function mc(){0!==Rl&&3!==Rl&&2!==Rl||(Rl=4),null===Tl||0===(268435455&Nl)&&0===(268435455&Ll)||sc(Tl,Ml)}function gc(e,t){var r=Dl;Dl|=2;var n=hc();for(Tl===e&&Ml===t||(Hl=null,fc(e,t));;)try{vc();break}catch(o){pc(e,o)}if(Ea(),Dl=r,Cl.current=n,null!==Ol)throw Error(a(261));return Tl=null,Ml=0,Rl}function vc(){for(;null!==Ol;)bc(Ol)}function yc(){for(;null!==Ol&&!Ke();)bc(Ol)}function bc(e){var t=Al(e.alternate,e,Pl);e.memoizedProps=e.pendingProps,null===t?wc(e):Ol=t,Il.current=null}function wc(e){var t=e;do{var r=t.alternate;if(e=t.return,0===(32768&t.flags)){if(null!==(r=Zs(r,t,Pl)))return void(Ol=r)}else{if(null!==(r=Qs(r,t)))return r.flags&=32767,void(Ol=r);if(null===e)return Rl=6,void(Ol=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}if(null!==(t=t.sibling))return void(Ol=t);Ol=t=e}while(null!==t);0===Rl&&(Rl=5)}function xc(e,t,r){var n=bt,o=El.transition;try{El.transition=null,bt=1,function(e,t,r,n){do{Sc()}while(null!==Ql);if(0!==(6&Dl))throw Error(a(327));r=e.finishedWork;var o=e.finishedLanes;if(null===r)return null;if(e.finishedWork=null,e.finishedLanes=0,r===e.current)throw Error(a(177));e.callbackNode=null,e.callbackPriority=0;var i=r.lanes|r.childLanes;if(function(e,t){var r=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var n=e.eventTimes;for(e=e.expirationTimes;0<r;){var o=31-it(r),a=1<<o;t[o]=0,n[o]=-1,e[o]=-1,r&=~a}}(e,i),e===Tl&&(Ol=Tl=null,Ml=0),0===(2064&r.subtreeFlags)&&0===(2064&r.flags)||Zl||(Zl=!0,Tc(tt,(function(){return Sc(),null}))),i=0!==(15990&r.flags),0!==(15990&r.subtreeFlags)||i){i=El.transition,El.transition=null;var s=bt;bt=1;var l=Dl;Dl|=4,Il.current=null,function(e,t){if(eo=Yt,pn(e=fn())){if("selectionStart"in e)var r={start:e.selectionStart,end:e.selectionEnd};else e:{var n=(r=(r=e.ownerDocument)&&r.defaultView||window).getSelection&&r.getSelection();if(n&&0!==n.rangeCount){r=n.anchorNode;var o=n.anchorOffset,i=n.focusNode;n=n.focusOffset;try{r.nodeType,i.nodeType}catch(x){r=null;break e}var s=0,l=-1,c=-1,u=0,d=0,f=e,p=null;t:for(;;){for(var h;f!==r||0!==o&&3!==f.nodeType||(l=s+o),f!==i||0!==n&&3!==f.nodeType||(c=s+n),3===f.nodeType&&(s+=f.nodeValue.length),null!==(h=f.firstChild);)p=f,f=h;for(;;){if(f===e)break t;if(p===r&&++u===o&&(l=s),p===i&&++d===n&&(c=s),null!==(h=f.nextSibling))break;p=(f=p).parentNode}f=h}r=-1===l||-1===c?null:{start:l,end:c}}else r=null}r=r||{start:0,end:0}}else r=null;for(to={focusedElem:e,selectionRange:r},Yt=!1,$s=t;null!==$s;)if(e=(t=$s).child,0!==(1028&t.subtreeFlags)&&null!==e)e.return=t,$s=e;else for(;null!==$s;){t=$s;try{var m=t.alternate;if(0!==(1024&t.flags))switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==m){var g=m.memoizedProps,v=m.memoizedState,y=t.stateNode,b=y.getSnapshotBeforeUpdate(t.elementType===t.type?g:rs(t.type,g),v);y.__reactInternalSnapshotBeforeUpdate=b}break;case 3:var w=t.stateNode.containerInfo;1===w.nodeType?w.textContent="":9===w.nodeType&&w.documentElement&&w.removeChild(w.documentElement);break;default:throw Error(a(163))}}catch(x){kc(t,t.return,x)}if(null!==(e=t.sibling)){e.return=t.return,$s=e;break}$s=t.return}m=tl,tl=!1}(e,r),gl(r,e),hn(to),Yt=!!eo,to=eo=null,e.current=r,yl(r,e,o),Xe(),Dl=l,bt=s,El.transition=i}else e.current=r;if(Zl&&(Zl=!1,Ql=e,Kl=o),i=e.pendingLanes,0===i&&(Gl=null),function(e){if(at&&"function"===typeof at.onCommitFiberRoot)try{at.onCommitFiberRoot(ot,e,void 0,128===(128&e.current.flags))}catch(t){}}(r.stateNode),nc(e,Je()),null!==t)for(n=e.onRecoverableError,r=0;r<t.length;r++)o=t[r],n(o.value,{componentStack:o.stack,digest:o.digest});if(Yl)throw Yl=!1,e=Vl,Vl=null,e;0!==(1&Kl)&&0!==e.tag&&Sc(),i=e.pendingLanes,0!==(1&i)?e===Jl?Xl++:(Xl=0,Jl=e):Xl=0,Ho()}(e,t,r,n)}finally{El.transition=o,bt=n}return null}function Sc(){if(null!==Ql){var e=wt(Kl),t=El.transition,r=bt;try{if(El.transition=null,bt=16>e?16:e,null===Ql)var n=!1;else{if(e=Ql,Ql=null,Kl=0,0!==(6&Dl))throw Error(a(331));var o=Dl;for(Dl|=4,$s=e.current;null!==$s;){var i=$s,s=i.child;if(0!==(16&$s.flags)){var l=i.deletions;if(null!==l){for(var c=0;c<l.length;c++){var u=l[c];for($s=u;null!==$s;){var d=$s;switch(d.tag){case 0:case 11:case 15:rl(8,d,i)}var f=d.child;if(null!==f)f.return=d,$s=f;else for(;null!==$s;){var p=(d=$s).sibling,h=d.return;if(al(d),d===u){$s=null;break}if(null!==p){p.return=h,$s=p;break}$s=h}}}var m=i.alternate;if(null!==m){var g=m.child;if(null!==g){m.child=null;do{var v=g.sibling;g.sibling=null,g=v}while(null!==g)}}$s=i}}if(0!==(2064&i.subtreeFlags)&&null!==s)s.return=i,$s=s;else e:for(;null!==$s;){if(0!==(2048&(i=$s).flags))switch(i.tag){case 0:case 11:case 15:rl(9,i,i.return)}var y=i.sibling;if(null!==y){y.return=i.return,$s=y;break e}$s=i.return}}var b=e.current;for($s=b;null!==$s;){var w=(s=$s).child;if(0!==(2064&s.subtreeFlags)&&null!==w)w.return=s,$s=w;else e:for(s=b;null!==$s;){if(0!==(2048&(l=$s).flags))try{switch(l.tag){case 0:case 11:case 15:nl(9,l)}}catch(S){kc(l,l.return,S)}if(l===s){$s=null;break e}var x=l.sibling;if(null!==x){x.return=l.return,$s=x;break e}$s=l.return}}if(Dl=o,Ho(),at&&"function"===typeof at.onPostCommitFiberRoot)try{at.onPostCommitFiberRoot(ot,e)}catch(S){}n=!0}return n}finally{bt=r,El.transition=t}}return!1}function Ac(e,t,r){e=Fa(e,t=ps(0,t=cs(r,t),1),1),t=ec(),null!==e&&(vt(e,1,t),nc(e,t))}function kc(e,t,r){if(3===e.tag)Ac(e,e,r);else for(;null!==t;){if(3===t.tag){Ac(t,e,r);break}if(1===t.tag){var n=t.stateNode;if("function"===typeof t.type.getDerivedStateFromError||"function"===typeof n.componentDidCatch&&(null===Gl||!Gl.has(n))){t=Fa(t,e=hs(t,e=cs(r,e),1),1),e=ec(),null!==t&&(vt(t,1,e),nc(t,e));break}}t=t.return}}function Cc(e,t,r){var n=e.pingCache;null!==n&&n.delete(t),t=ec(),e.pingedLanes|=e.suspendedLanes&r,Tl===e&&(Ml&r)===r&&(4===Rl||3===Rl&&(130023424&Ml)===Ml&&500>Je()-zl?fc(e,0):Ul|=r),nc(e,t)}function Ic(e,t){0===t&&(0===(1&e.mode)?t=1:(t=ut,0===(130023424&(ut<<=1))&&(ut=4194304)));var r=ec();null!==(e=_a(e,t))&&(vt(e,t,r),nc(e,r))}function Ec(e){var t=e.memoizedState,r=0;null!==t&&(r=t.retryLane),Ic(e,r)}function Dc(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,o=e.memoizedState;null!==o&&(r=o.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(a(314))}null!==n&&n.delete(t),Ic(e,r)}function Tc(e,t){return Ze(e,t)}function Oc(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Mc(e,t,r,n){return new Oc(e,t,r,n)}function Pc(e){return!(!(e=e.prototype)||!e.isReactComponent)}function jc(e,t){var r=e.alternate;return null===r?((r=Mc(e.tag,t,e.key,e.mode)).elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=14680064&e.flags,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function Rc(e,t,r,n,o,i){var s=2;if(n=e,"function"===typeof e)Pc(e)&&(s=1);else if("string"===typeof e)s=5;else e:switch(e){case A:return _c(r.children,o,i,t);case k:s=8,o|=8;break;case C:return(e=Mc(12,r,t,2|o)).elementType=C,e.lanes=i,e;case T:return(e=Mc(13,r,t,o)).elementType=T,e.lanes=i,e;case O:return(e=Mc(19,r,t,o)).elementType=O,e.lanes=i,e;case j:return Nc(r,o,i,t);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case I:s=10;break e;case E:s=9;break e;case D:s=11;break e;case M:s=14;break e;case P:s=16,n=null;break e}throw Error(a(130,null==e?e:typeof e,""))}return(t=Mc(s,r,t,o)).elementType=e,t.type=n,t.lanes=i,t}function _c(e,t,r,n){return(e=Mc(7,e,n,t)).lanes=r,e}function Nc(e,t,r,n){return(e=Mc(22,e,n,t)).elementType=j,e.lanes=r,e.stateNode={isHidden:!1},e}function Lc(e,t,r){return(e=Mc(6,e,null,t)).lanes=r,e}function Uc(e,t,r){return(t=Mc(4,null!==e.children?e.children:[],e.key,t)).lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Bc(e,t,r,n,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=n,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Fc(e,t,r,n,o,a,i,s,l){return e=new Bc(e,t,r,s,l),1===t?(t=1,!0===a&&(t|=8)):t=0,a=Mc(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},La(a),e}function zc(e){if(!e)return Do;e:{if(We(e=e._reactInternals)!==e||1!==e.tag)throw Error(a(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(jo(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(a(171))}if(1===e.tag){var r=e.type;if(jo(r))return No(e,r,t)}return t}function Wc(e,t,r,n,o,a,i,s,l){return(e=Fc(r,n,!0,e,0,a,0,s,l)).context=zc(null),r=e.current,(a=Ba(n=ec(),o=tc(r))).callback=void 0!==t&&null!==t?t:null,Fa(r,a,o),e.current.lanes=o,vt(e,o,n),nc(e,n),e}function Hc(e,t,r,n){var o=t.current,a=ec(),i=tc(o);return r=zc(r),null===t.context?t.context=r:t.pendingContext=r,(t=Ba(a,i)).payload={element:e},null!==(n=void 0===n?null:n)&&(t.callback=n),null!==(e=Fa(o,t,i))&&(rc(e,o,i,a),za(e,o,i)),i}function Yc(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Vc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var r=e.retryLane;e.retryLane=0!==r&&r<t?r:t}}function Gc(e,t){Vc(e,t),(e=e.alternate)&&Vc(e,t)}Al=function(e,t,r){if(null!==e)if(e.memoizedProps!==t.pendingProps||Oo.current)bs=!0;else{if(0===(e.lanes&r)&&0===(128&t.flags))return bs=!1,function(e,t,r){switch(t.tag){case 3:Ts(t),ha();break;case 5:$a(t);break;case 1:jo(t.type)&&Lo(t);break;case 4:Xa(t,t.stateNode.containerInfo);break;case 10:var n=t.type._context,o=t.memoizedProps.value;Eo(Aa,n._currentValue),n._currentValue=o;break;case 13:if(null!==(n=t.memoizedState))return null!==n.dehydrated?(Eo(ei,1&ei.current),t.flags|=128,null):0!==(r&t.child.childLanes)?Ls(e,t,r):(Eo(ei,1&ei.current),null!==(e=Ys(e,t,r))?e.sibling:null);Eo(ei,1&ei.current);break;case 19:if(n=0!==(r&t.childLanes),0!==(128&e.flags)){if(n)return Ws(e,t,r);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),Eo(ei,ei.current),n)break;return null;case 22:case 23:return t.lanes=0,ks(e,t,r)}return Ys(e,t,r)}(e,t,r);bs=0!==(131072&e.flags)}else bs=!1,aa&&0!==(1048576&t.flags)&&ea(t,Zo,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;Hs(e,t),e=t.pendingProps;var o=Po(t,To.current);Oa(t,r),o=gi(null,t,n,e,o,r);var i=vi();return t.flags|=1,"object"===typeof o&&null!==o&&"function"===typeof o.render&&void 0===o.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,jo(n)?(i=!0,Lo(t)):i=!1,t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,La(t),o.updater=os,t.stateNode=o,o._reactInternals=t,ls(t,n,e,r),t=Ds(null,t,n,!0,i,r)):(t.tag=0,aa&&i&&ta(t),ws(null,t,o,r),t=t.child),t;case 16:n=t.elementType;e:{switch(Hs(e,t),e=t.pendingProps,n=(o=n._init)(n._payload),t.type=n,o=t.tag=function(e){if("function"===typeof e)return Pc(e)?1:0;if(void 0!==e&&null!==e){if((e=e.$$typeof)===D)return 11;if(e===M)return 14}return 2}(n),e=rs(n,e),o){case 0:t=Is(null,t,n,e,r);break e;case 1:t=Es(null,t,n,e,r);break e;case 11:t=xs(null,t,n,e,r);break e;case 14:t=Ss(null,t,n,rs(n.type,e),r);break e}throw Error(a(306,n,""))}return t;case 0:return n=t.type,o=t.pendingProps,Is(e,t,n,o=t.elementType===n?o:rs(n,o),r);case 1:return n=t.type,o=t.pendingProps,Es(e,t,n,o=t.elementType===n?o:rs(n,o),r);case 3:e:{if(Ts(t),null===e)throw Error(a(387));n=t.pendingProps,o=(i=t.memoizedState).element,Ua(e,t),Ha(t,n,null,r);var s=t.memoizedState;if(n=s.element,i.isDehydrated){if(i={element:n,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=i,t.memoizedState=i,256&t.flags){t=Os(e,t,n,r,o=cs(Error(a(423)),t));break e}if(n!==o){t=Os(e,t,n,r,o=cs(Error(a(424)),t));break e}for(oa=co(t.stateNode.containerInfo.firstChild),na=t,aa=!0,ia=null,r=Sa(t,null,n,r),t.child=r;r;)r.flags=-3&r.flags|4096,r=r.sibling}else{if(ha(),n===o){t=Ys(e,t,r);break e}ws(e,t,n,r)}t=t.child}return t;case 5:return $a(t),null===e&&ua(t),n=t.type,o=t.pendingProps,i=null!==e?e.memoizedProps:null,s=o.children,ro(n,o)?s=null:null!==i&&ro(n,i)&&(t.flags|=32),Cs(e,t),ws(e,t,s,r),t.child;case 6:return null===e&&ua(t),null;case 13:return Ls(e,t,r);case 4:return Xa(t,t.stateNode.containerInfo),n=t.pendingProps,null===e?t.child=xa(t,null,n,r):ws(e,t,n,r),t.child;case 11:return n=t.type,o=t.pendingProps,xs(e,t,n,o=t.elementType===n?o:rs(n,o),r);case 7:return ws(e,t,t.pendingProps,r),t.child;case 8:case 12:return ws(e,t,t.pendingProps.children,r),t.child;case 10:e:{if(n=t.type._context,o=t.pendingProps,i=t.memoizedProps,s=o.value,Eo(Aa,n._currentValue),n._currentValue=s,null!==i)if(sn(i.value,s)){if(i.children===o.children&&!Oo.current){t=Ys(e,t,r);break e}}else for(null!==(i=t.child)&&(i.return=t);null!==i;){var l=i.dependencies;if(null!==l){s=i.child;for(var c=l.firstContext;null!==c;){if(c.context===n){if(1===i.tag){(c=Ba(-1,r&-r)).tag=2;var u=i.updateQueue;if(null!==u){var d=(u=u.shared).pending;null===d?c.next=c:(c.next=d.next,d.next=c),u.pending=c}}i.lanes|=r,null!==(c=i.alternate)&&(c.lanes|=r),Ta(i.return,r,t),l.lanes|=r;break}c=c.next}}else if(10===i.tag)s=i.type===t.type?null:i.child;else if(18===i.tag){if(null===(s=i.return))throw Error(a(341));s.lanes|=r,null!==(l=s.alternate)&&(l.lanes|=r),Ta(s,r,t),s=i.sibling}else s=i.child;if(null!==s)s.return=i;else for(s=i;null!==s;){if(s===t){s=null;break}if(null!==(i=s.sibling)){i.return=s.return,s=i;break}s=s.return}i=s}ws(e,t,o.children,r),t=t.child}return t;case 9:return o=t.type,n=t.pendingProps.children,Oa(t,r),n=n(o=Ma(o)),t.flags|=1,ws(e,t,n,r),t.child;case 14:return o=rs(n=t.type,t.pendingProps),Ss(e,t,n,o=rs(n.type,o),r);case 15:return As(e,t,t.type,t.pendingProps,r);case 17:return n=t.type,o=t.pendingProps,o=t.elementType===n?o:rs(n,o),Hs(e,t),t.tag=1,jo(n)?(e=!0,Lo(t)):e=!1,Oa(t,r),is(t,n,o),ls(t,n,o,r),Ds(null,t,n,!0,e,r);case 19:return Ws(e,t,r);case 22:return ks(e,t,r)}throw Error(a(156,t.tag))};var Zc="function"===typeof reportError?reportError:function(e){console.error(e)};function Qc(e){this._internalRoot=e}function Kc(e){this._internalRoot=e}function Xc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Jc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function $c(){}function qc(e,t,r,n,o){var a=r._reactRootContainer;if(a){var i=a;if("function"===typeof o){var s=o;o=function(){var e=Yc(i);s.call(e)}}Hc(t,i,e,o)}else i=function(e,t,r,n,o){if(o){if("function"===typeof n){var a=n;n=function(){var e=Yc(i);a.call(e)}}var i=Wc(t,n,e,0,null,!1,0,"",$c);return e._reactRootContainer=i,e[mo]=i.current,Wn(8===e.nodeType?e.parentNode:e),uc(),i}for(;o=e.lastChild;)e.removeChild(o);if("function"===typeof n){var s=n;n=function(){var e=Yc(l);s.call(e)}}var l=Fc(e,0,!1,null,0,!1,0,"",$c);return e._reactRootContainer=l,e[mo]=l.current,Wn(8===e.nodeType?e.parentNode:e),uc((function(){Hc(t,l,r,n)})),l}(r,t,e,o,n);return Yc(i)}Kc.prototype.render=Qc.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(a(409));Hc(e,t,null,null)},Kc.prototype.unmount=Qc.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;uc((function(){Hc(null,e,null,null)})),t[mo]=null}},Kc.prototype.unstable_scheduleHydration=function(e){if(e){var t=kt();e={blockedOn:null,target:e,priority:t};for(var r=0;r<jt.length&&0!==t&&t<jt[r].priority;r++);jt.splice(r,0,e),0===r&&Lt(e)}},xt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var r=dt(t.pendingLanes);0!==r&&(yt(t,1|r),nc(t,Je()),0===(6&Dl)&&(Wl=Je()+500,Ho()))}break;case 13:uc((function(){var t=_a(e,1);if(null!==t){var r=ec();rc(t,e,1,r)}})),Gc(e,1)}},St=function(e){if(13===e.tag){var t=_a(e,134217728);if(null!==t)rc(t,e,134217728,ec());Gc(e,134217728)}},At=function(e){if(13===e.tag){var t=tc(e),r=_a(e,t);if(null!==r)rc(r,e,t,ec());Gc(e,t)}},kt=function(){return bt},Ct=function(e,t){var r=bt;try{return bt=e,t()}finally{bt=r}},Se=function(e,t,r){switch(t){case"input":if($(e,r),t=r.name,"radio"===r.type&&null!=t){for(r=e;r.parentNode;)r=r.parentNode;for(r=r.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<r.length;t++){var n=r[t];if(n!==e&&n.form===e.form){var o=So(n);if(!o)throw Error(a(90));Z(n),$(n,o)}}}break;case"textarea":ae(e,r);break;case"select":null!=(t=r.value)&&re(e,!!r.multiple,t,!1)}},De=cc,Te=uc;var eu={usingClientEntryPoint:!1,Events:[wo,xo,So,Ie,Ee,cc]},tu={findFiberByHostInstance:bo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},ru={bundleType:tu.bundleType,version:tu.version,rendererPackageName:tu.rendererPackageName,rendererConfig:tu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:w.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ve(e))?null:e.stateNode},findFiberByHostInstance:tu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var nu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!nu.isDisabled&&nu.supportsFiber)try{ot=nu.inject(ru),at=nu}catch(ue){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=eu,t.createPortal=function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Xc(t))throw Error(a(200));return function(e,t,r){var n=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:S,key:null==n?null:""+n,children:e,containerInfo:t,implementation:r}}(e,t,null,r)},t.createRoot=function(e,t){if(!Xc(e))throw Error(a(299));var r=!1,n="",o=Zc;return null!==t&&void 0!==t&&(!0===t.unstable_strictMode&&(r=!0),void 0!==t.identifierPrefix&&(n=t.identifierPrefix),void 0!==t.onRecoverableError&&(o=t.onRecoverableError)),t=Fc(e,1,!1,null,0,r,0,n,o),e[mo]=t.current,Wn(8===e.nodeType?e.parentNode:e),new Qc(t)},t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"===typeof e.render)throw Error(a(188));throw e=Object.keys(e).join(","),Error(a(268,e))}return e=null===(e=Ve(t))?null:e.stateNode},t.flushSync=function(e){return uc(e)},t.hydrate=function(e,t,r){if(!Jc(t))throw Error(a(200));return qc(null,e,t,!0,r)},t.hydrateRoot=function(e,t,r){if(!Xc(e))throw Error(a(405));var n=null!=r&&r.hydratedSources||null,o=!1,i="",s=Zc;if(null!==r&&void 0!==r&&(!0===r.unstable_strictMode&&(o=!0),void 0!==r.identifierPrefix&&(i=r.identifierPrefix),void 0!==r.onRecoverableError&&(s=r.onRecoverableError)),t=Wc(t,null,e,1,null!=r?r:null,o,0,i,s),e[mo]=t.current,Wn(e),n)for(e=0;e<n.length;e++)o=(o=(r=n[e])._getVersion)(r._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[r,o]:t.mutableSourceEagerHydrationData.push(r,o);return new Kc(t)},t.render=function(e,t,r){if(!Jc(t))throw Error(a(200));return qc(null,e,t,!1,r)},t.unmountComponentAtNode=function(e){if(!Jc(e))throw Error(a(40));return!!e._reactRootContainer&&(uc((function(){qc(null,null,e,!1,(function(){e._reactRootContainer=null,e[mo]=null}))})),!0)},t.unstable_batchedUpdates=cc,t.unstable_renderSubtreeIntoContainer=function(e,t,r,n){if(!Jc(r))throw Error(a(200));if(null==e||void 0===e._reactInternals)throw Error(a(38));return qc(e,t,r,!1,n)},t.version="18.3.1-next-f1338f8080-20240426"},1352:(e,t,r)=>{"use strict";var n=r(17119);t.createRoot=n.createRoot,t.hydrateRoot=n.hydrateRoot},17119:(e,t,r)=>{"use strict";!function e(){if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=r(38345)},68577:(e,t)=>{"use strict";var r,n=Symbol.for("react.element"),o=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),l=Symbol.for("react.provider"),c=Symbol.for("react.context"),u=Symbol.for("react.server_context"),d=Symbol.for("react.forward_ref"),f=Symbol.for("react.suspense"),p=Symbol.for("react.suspense_list"),h=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),g=Symbol.for("react.offscreen");function v(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case a:case s:case i:case f:case p:return e;default:switch(e=e&&e.$$typeof){case u:case c:case d:case m:case h:case l:return e;default:return t}}case o:return t}}}r=Symbol.for("react.module.reference")},26429:(e,t,r)=>{"use strict";r(68577)},54599:(e,t)=>{"use strict";const r=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,n=/^[\u0021-\u003A\u003C-\u007E]*$/,o=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,a=/^[\u0020-\u003A\u003D-\u007E]*$/,i=Object.prototype.toString,s=(()=>{const e=function(){};return e.prototype=Object.create(null),e})();function l(e,t,r){do{const r=e.charCodeAt(t);if(32!==r&&9!==r)return t}while(++t<r);return r}function c(e,t,r){for(;t>r;){const r=e.charCodeAt(--t);if(32!==r&&9!==r)return t+1}return r}function u(e){if(-1===e.indexOf("%"))return e;try{return decodeURIComponent(e)}catch(t){return e}}},45418:function(e,t,r){var n,o;"undefined"!=typeof self&&self,e.exports=(n=r(9950),o=r(17119),function(){"use strict";var e={328:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.PrintContextConsumer=t.PrintContext=void 0;var n=r(496),o=Object.prototype.hasOwnProperty.call(n,"createContext");t.PrintContext=o?n.createContext({}):null,t.PrintContextConsumer=t.PrintContext?t.PrintContext.Consumer:function(){return null}},428:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.ReactToPrint=void 0;var n=r(316),o=r(496),a=r(190),i=r(328),s=r(940),l=function(e){function t(){var t=e.apply(this,n.__spreadArray([],n.__read(arguments),!1))||this;return t.startPrint=function(e){var r=t.props,n=r.onAfterPrint,o=r.onPrintError,a=r.print,i=r.documentTitle;setTimeout((function(){var r,s;if(e.contentWindow)if(e.contentWindow.focus(),a)a(e).then((function(){return null==n?void 0:n()})).then((function(){return t.handleRemoveIframe()})).catch((function(e){o?o("print",e):t.logMessages(["An error was thrown by the specified `print` function"])}));else{if(e.contentWindow.print){var l=null!==(s=null===(r=e.contentDocument)||void 0===r?void 0:r.title)&&void 0!==s?s:"",c=e.ownerDocument.title;i&&(e.ownerDocument.title=i,e.contentDocument&&(e.contentDocument.title=i)),e.contentWindow.print(),i&&(e.ownerDocument.title=c,e.contentDocument&&(e.contentDocument.title=l))}else t.logMessages(["Printing for this browser is not currently possible: the browser does not have a `print` method available for iframes."]);null==n||n(),t.handleRemoveIframe()}else t.logMessages(["Printing failed because the `contentWindow` of the print iframe did not load. This is possibly an error with `react-to-print`. Please file an issue: https://github.com/gregnb/react-to-print/issues/"])}),500)},t.triggerPrint=function(e){var r=t.props,n=r.onBeforePrint,o=r.onPrintError;if(n){var a=n();a&&"function"==typeof a.then?a.then((function(){t.startPrint(e)})).catch((function(e){o&&o("onBeforePrint",e)})):t.startPrint(e)}else t.startPrint(e)},t.handlePrint=function(e){var r=t.props,o=r.bodyClass,i=r.content,s=r.copyStyles,l=r.fonts,c=r.pageStyle,u=r.nonce,d="function"==typeof e?e():null;if(d&&"function"==typeof i&&t.logMessages(['"react-to-print" received a `content` prop and a content param passed the callback return by `useReactToPrint. The `content` prop will be ignored.'],"warning"),d||"function"!=typeof i||(d=i()),void 0!==d)if(null!==d){var f=document.createElement("iframe");f.width="".concat(document.documentElement.clientWidth,"px"),f.height="".concat(document.documentElement.clientHeight,"px"),f.style.position="absolute",f.style.top="-".concat(document.documentElement.clientHeight+100,"px"),f.style.left="-".concat(document.documentElement.clientWidth+100,"px"),f.id="printWindow",f.srcdoc="<!DOCTYPE html>";var p=(0,a.findDOMNode)(d);if(p){var h=p.cloneNode(!0),m=h instanceof Text,g=document.querySelectorAll("link[rel~='stylesheet'], link[as='style']"),v=m?[]:h.querySelectorAll("img"),y=m?[]:h.querySelectorAll("video"),b=l?l.length:0;t.numResourcesToLoad=g.length+v.length+y.length+b,t.resourcesLoaded=[],t.resourcesErrored=[];var w=function(e,r){t.resourcesLoaded.includes(e)?t.logMessages(["Tried to mark a resource that has already been handled",e],"debug"):(r?(t.logMessages(n.__spreadArray(['"react-to-print" was unable to load a resource but will continue attempting to print the page'],n.__read(r),!1)),t.resourcesErrored.push(e)):t.resourcesLoaded.push(e),t.resourcesLoaded.length+t.resourcesErrored.length===t.numResourcesToLoad&&t.triggerPrint(f))};f.onload=function(){var e,r,a,i;f.onload=null;var d=f.contentDocument||(null===(r=f.contentWindow)||void 0===r?void 0:r.document);if(d){d.body.appendChild(h),l&&((null===(a=f.contentDocument)||void 0===a?void 0:a.fonts)&&(null===(i=f.contentWindow)||void 0===i?void 0:i.FontFace)?l.forEach((function(e){var t=new FontFace(e.family,e.source,{weight:e.weight,style:e.style});f.contentDocument.fonts.add(t),t.loaded.then((function(){w(t)})).catch((function(e){w(t,["Failed loading the font:",t,"Load error:",e])}))})):(l.forEach((function(e){return w(e)})),t.logMessages(['"react-to-print" is not able to load custom fonts because the browser does not support the FontFace API but will continue attempting to print the page'])));var g="function"==typeof c?c():c;if("string"!=typeof g)t.logMessages(['"react-to-print" expected a "string" from `pageStyle` but received "'.concat(typeof g,'". Styles from `pageStyle` will not be applied.')]);else{var b=d.createElement("style");u&&(b.setAttribute("nonce",u),d.head.setAttribute("nonce",u)),b.appendChild(d.createTextNode(g)),d.head.appendChild(b)}if(o&&(e=d.body.classList).add.apply(e,n.__spreadArray([],n.__read(o.split(" ")),!1)),!m){for(var x=m?[]:p.querySelectorAll("canvas"),S=d.querySelectorAll("canvas"),A=0;A<x.length;++A){var k=x[A],C=S[A].getContext("2d");C&&C.drawImage(k,0,0)}var I=function(e){var t=v[e],r=t.getAttribute("src");if(r){var n=new Image;n.onload=function(){return w(t)},n.onerror=function(e,r,n,o,a){return w(t,["Error loading <img>",t,"Error",a])},n.src=r}else w(t,['Found an <img> tag with an empty "src" attribute. This prevents pre-loading it. The <img> is:',t])};for(A=0;A<v.length;A++)I(A);var E=function(e){var t=y[e];t.preload="auto";var r=t.getAttribute("poster");if(r){var n=new Image;n.onload=function(){return w(t)},n.onerror=function(e,n,o,a,i){return w(t,["Error loading video poster",r,"for video",t,"Error:",i])},n.src=r}else t.readyState>=2?w(t):(t.onloadeddata=function(){return w(t)},t.onerror=function(e,r,n,o,a){return w(t,["Error loading video",t,"Error",a])},t.onstalled=function(){return w(t,["Loading video stalled, skipping",t])})};for(A=0;A<y.length;A++)E(A);var D="input",T=p.querySelectorAll(D),O=d.querySelectorAll(D);for(A=0;A<T.length;A++)O[A].value=T[A].value;var M="input[type=checkbox],input[type=radio]",P=p.querySelectorAll(M),j=d.querySelectorAll(M);for(A=0;A<P.length;A++)j[A].checked=P[A].checked;var R="select",_=p.querySelectorAll(R),N=d.querySelectorAll(R);for(A=0;A<_.length;A++)N[A].value=_[A].value}if(s)for(var L=document.querySelectorAll("style, link[rel~='stylesheet'], link[as='style']"),U=function(e,r){var n=L[e];if("style"===n.tagName.toLowerCase()){var o=d.createElement(n.tagName),a=n.sheet;if(a){var i="";try{for(var s=a.cssRules.length,l=0;l<s;++l)"string"==typeof a.cssRules[l].cssText&&(i+="".concat(a.cssRules[l].cssText,"\r\n"))}catch(e){t.logMessages(["A stylesheet could not be accessed. This is likely due to the stylesheet having cross-origin imports, and many browsers block script access to cross-origin stylesheets. See https://github.com/gregnb/react-to-print/issues/429 for details. You may be able to load the sheet by both marking the stylesheet with the cross `crossorigin` attribute, and setting the `Access-Control-Allow-Origin` header on the server serving the stylesheet. Alternatively, host the stylesheet on your domain to avoid this issue entirely.",n],"warning")}o.setAttribute("id","react-to-print-".concat(e)),u&&o.setAttribute("nonce",u),o.appendChild(d.createTextNode(i)),d.head.appendChild(o)}}else if(n.getAttribute("href"))if(n.hasAttribute("disabled"))t.logMessages(["`react-to-print` encountered a <link> tag with a `disabled` attribute and will ignore it. Note that the `disabled` attribute is deprecated, and some browsers ignore it. You should stop using it. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link#attr-disabled. The <link> is:",n],"warning"),w(n);else{for(var c=d.createElement(n.tagName),f=(l=0,n.attributes.length);l<f;++l){var p=n.attributes[l];p&&c.setAttribute(p.nodeName,p.nodeValue||"")}c.onload=function(){return w(c)},c.onerror=function(e,t,r,n,o){return w(c,["Failed to load",c,"Error:",o])},u&&c.setAttribute("nonce",u),d.head.appendChild(c)}else t.logMessages(["`react-to-print` encountered a <link> tag with an empty `href` attribute. In addition to being invalid HTML, this can cause problems in many browsers, and so the <link> was not loaded. The <link> is:",n],"warning"),w(n)},B=(A=0,L.length);A<B;++A)U(A)}0!==t.numResourcesToLoad&&s||t.triggerPrint(f)},t.handleRemoveIframe(!0),document.body.appendChild(f)}else t.logMessages(['"react-to-print" could not locate the DOM node corresponding with the `content` prop'])}else t.logMessages(['There is nothing to print because the "content" prop returned "null". Please ensure "content" is renderable before allowing "react-to-print" to be called.']);else t.logMessages(["To print a functional component ensure it is wrapped with `React.forwardRef`, and ensure the forwarded ref is used. See the README for an example: https://github.com/gregnb/react-to-print#examples"])},t.handleRemoveIframe=function(e){var r=t.props.removeAfterPrint;if(e||r){var n=document.getElementById("printWindow");n&&document.body.removeChild(n)}},t.logMessages=function(e,r){void 0===r&&(r="error"),t.props.suppressErrors||("error"===r?console.error(e):"warning"===r?console.warn(e):"debug"===r&&console.debug(e))},t}return n.__extends(t,e),t.prototype.handleClick=function(e,t){var r=this,n=this.props,o=n.onBeforeGetContent,a=n.onPrintError;if(o){var i=o();i&&"function"==typeof i.then?i.then((function(){return r.handlePrint(t)})).catch((function(e){a&&a("onBeforeGetContent",e)})):this.handlePrint(t)}else this.handlePrint(t)},t.prototype.render=function(){var e=this.props,t=e.children,r=e.trigger;if(r)return o.cloneElement(r(),{onClick:this.handleClick.bind(this)});if(!i.PrintContext)return this.logMessages(['"react-to-print" requires React ^16.3.0 to be able to use "PrintContext"']),null;var n={handlePrint:this.handleClick.bind(this)};return o.createElement(i.PrintContext.Provider,{value:n},t)},t.defaultProps=s.defaultProps,t}(o.Component);t.ReactToPrint=l},940:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.defaultProps=void 0,t.defaultProps={copyStyles:!0,pageStyle:"\n        @page {\n            /* Remove browser default header (title) and footer (url) */\n            margin: 0;\n        }\n        @media print {\n            body {\n                /* Tell browsers to print background colors */\n                -webkit-print-color-adjust: exact; /* Chrome/Safari/Edge/Opera */\n                color-adjust: exact; /* Firefox */\n            }\n        }\n    ",removeAfterPrint:!1,suppressErrors:!1}},892:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.useReactToPrint=void 0;var n=r(316),o=r(496),a=r(428),i=r(940),s=r(860),l=Object.prototype.hasOwnProperty.call(o,"useMemo")&&Object.prototype.hasOwnProperty.call(o,"useCallback");t.useReactToPrint=function(e){if(!l)return e.suppressErrors||console.error('"react-to-print" requires React ^16.8.0 to be able to use "useReactToPrint"'),function(){throw new Error('"react-to-print" requires React ^16.8.0 to be able to use "useReactToPrint"')};var t=o.useMemo((function(){return new a.ReactToPrint(n.__assign(n.__assign({},i.defaultProps),e))}),[e]);return o.useCallback((function(e,r){return(0,s.wrapCallbackWithArgs)(t,t.handleClick,r)(e)}),[t])}},860:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.wrapCallbackWithArgs=void 0;var n=r(316);t.wrapCallbackWithArgs=function(e,t){for(var r=[],o=2;o<arguments.length;o++)r[o-2]=arguments[o];return function(){for(var o=[],a=0;a<arguments.length;a++)o[a]=arguments[a];return t.apply(e,n.__spreadArray(n.__spreadArray([],n.__read(o),!1),n.__read(r),!1))}}},496:function(e){e.exports=n},190:function(e){e.exports=o},316:function(e,t,r){r.r(t),r.d(t,{__addDisposableResource:function(){return R},__assign:function(){return a},__asyncDelegator:function(){return C},__asyncGenerator:function(){return k},__asyncValues:function(){return I},__await:function(){return A},__awaiter:function(){return h},__classPrivateFieldGet:function(){return M},__classPrivateFieldIn:function(){return j},__classPrivateFieldSet:function(){return P},__createBinding:function(){return g},__decorate:function(){return s},__disposeResources:function(){return N},__esDecorate:function(){return c},__exportStar:function(){return v},__extends:function(){return o},__generator:function(){return m},__importDefault:function(){return O},__importStar:function(){return T},__makeTemplateObject:function(){return E},__metadata:function(){return p},__param:function(){return l},__propKey:function(){return d},__read:function(){return b},__rest:function(){return i},__runInitializers:function(){return u},__setFunctionName:function(){return f},__spread:function(){return w},__spreadArray:function(){return S},__spreadArrays:function(){return x},__values:function(){return y}});var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var a=function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},a.apply(this,arguments)};function i(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r}function s(e,t,r,n){var o,a=arguments.length,i=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(i=(a<3?o(i):a>3?o(t,r,i):o(t,r))||i);return a>3&&i&&Object.defineProperty(t,r,i),i}function l(e,t){return function(r,n){t(r,n,e)}}function c(e,t,r,n,o,a){function i(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var s,l=n.kind,c="getter"===l?"get":"setter"===l?"set":"value",u=!t&&e?n.static?e:e.prototype:null,d=t||(u?Object.getOwnPropertyDescriptor(u,n.name):{}),f=!1,p=r.length-1;p>=0;p--){var h={};for(var m in n)h[m]="access"===m?{}:n[m];for(var m in n.access)h.access[m]=n.access[m];h.addInitializer=function(e){if(f)throw new TypeError("Cannot add initializers after decoration has completed");a.push(i(e||null))};var g=(0,r[p])("accessor"===l?{get:d.get,set:d.set}:d[c],h);if("accessor"===l){if(void 0===g)continue;if(null===g||"object"!=typeof g)throw new TypeError("Object expected");(s=i(g.get))&&(d.get=s),(s=i(g.set))&&(d.set=s),(s=i(g.init))&&o.unshift(s)}else(s=i(g))&&("field"===l?o.unshift(s):d[c]=s)}u&&Object.defineProperty(u,n.name,d),f=!0}function u(e,t,r){for(var n=arguments.length>2,o=0;o<t.length;o++)r=n?t[o].call(e,r):t[o].call(e);return n?r:void 0}function d(e){return"symbol"==typeof e?e:"".concat(e)}function f(e,t,r){return"symbol"==typeof t&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:r?"".concat(r," ",t):t})}function p(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function h(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(e){a(e)}}function s(e){try{l(n.throw(e))}catch(e){a(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))}function m(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}}var g=Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]};function v(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||g(t,e,r)}function y(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function b(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i}function w(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(b(arguments[t]));return e}function x(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),o=0;for(t=0;t<r;t++)for(var a=arguments[t],i=0,s=a.length;i<s;i++,o++)n[o]=a[i];return n}function S(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o<a;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))}function A(e){return this instanceof A?(this.v=e,this):new A(e)}function k(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,o=r.apply(e,t||[]),a=[];return n={},i("next"),i("throw"),i("return"),n[Symbol.asyncIterator]=function(){return this},n;function i(e){o[e]&&(n[e]=function(t){return new Promise((function(r,n){a.push([e,t,r,n])>1||s(e,t)}))})}function s(e,t){try{(r=o[e](t)).value instanceof A?Promise.resolve(r.value.v).then(l,c):u(a[0][2],r)}catch(e){u(a[0][3],e)}var r}function l(e){s("next",e)}function c(e){s("throw",e)}function u(e,t){e(t),a.shift(),a.length&&s(a[0][0],a[0][1])}}function C(e){var t,r;return t={},n("next"),n("throw",(function(e){throw e})),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,o){t[n]=e[n]?function(t){return(r=!r)?{value:A(e[n](t)),done:!1}:o?o(t):t}:o}}function I(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=y(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,o){!function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)}(n,o,(t=e[r](t)).done,t.value)}))}}}function E(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var D=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t};function T(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&g(t,e,r);return D(t,e),t}function O(e){return e&&e.__esModule?e:{default:e}}function M(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function P(e,t,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(e,r):o?o.value=r:t.set(e,r),r}function j(e,t){if(null===t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?t===e:e.has(t)}function R(e,t,r){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var n;if(r){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");n=t[Symbol.asyncDispose]}if(void 0===n){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");n=t[Symbol.dispose]}if("function"!=typeof n)throw new TypeError("Object not disposable.");e.stack.push({value:t,dispose:n,async:r})}else r&&e.stack.push({async:!0});return t}var _="function"==typeof SuppressedError?SuppressedError:function(e,t,r){var n=new Error(r);return n.name="SuppressedError",n.error=e,n.suppressed=t,n};function N(e){function t(t){e.error=e.hasError?new _(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}return function r(){for(;e.stack.length;){var n=e.stack.pop();try{var o=n.dispose&&n.dispose.call(n.value);if(n.async)return Promise.resolve(o).then(r,(function(e){return t(e),r()}))}catch(e){t(e)}}if(e.hasError)throw e.error}()}t.default={__extends:o,__assign:a,__rest:i,__decorate:s,__param:l,__metadata:p,__awaiter:h,__generator:m,__createBinding:g,__exportStar:v,__values:y,__read:b,__spread:w,__spreadArrays:x,__spreadArray:S,__await:A,__asyncGenerator:k,__asyncDelegator:C,__asyncValues:I,__makeTemplateObject:E,__importStar:T,__importDefault:O,__classPrivateFieldGet:M,__classPrivateFieldSet:P,__classPrivateFieldIn:j,__addDisposableResource:R,__disposeResources:N}}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}r.d=function(e,t){for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return function(){var e=a;Object.defineProperty(e,"__esModule",{value:!0}),e.useReactToPrint=e.ReactToPrint=e.PrintContextConsumer=void 0;var t=r(328);Object.defineProperty(e,"PrintContextConsumer",{enumerable:!0,get:function(){return t.PrintContextConsumer}});var n=r(428);Object.defineProperty(e,"ReactToPrint",{enumerable:!0,get:function(){return n.ReactToPrint}});var o=r(892);Object.defineProperty(e,"useReactToPrint",{enumerable:!0,get:function(){return o.useReactToPrint}});var i=r(428);e.default=i.ReactToPrint}(),a}())},32448:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>g});var n=r(98587),o=r(25540),a=r(9950),i=r(17119);const s=!1;var l=r(28555),c="unmounted",u="exited",d="entering",f="entered",p="exiting",h=function(e){function t(t,r){var n;n=e.call(this,t,r)||this;var o,a=r&&!r.isMounting?t.enter:t.appear;return n.appearStatus=null,t.in?a?(o=u,n.appearStatus=d):o=f:o=t.unmountOnExit||t.mountOnEnter?c:u,n.state={status:o},n.nextCallback=null,n}(0,o.A)(t,e),t.getDerivedStateFromProps=function(e,t){return e.in&&t.status===c?{status:u}:null};var r=t.prototype;return r.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},r.componentDidUpdate=function(e){var t=null;if(e!==this.props){var r=this.state.status;this.props.in?r!==d&&r!==f&&(t=d):r!==d&&r!==f||(t=p)}this.updateStatus(!1,t)},r.componentWillUnmount=function(){this.cancelNextCallback()},r.getTimeouts=function(){var e,t,r,n=this.props.timeout;return e=t=r=n,null!=n&&"number"!==typeof n&&(e=n.exit,t=n.enter,r=void 0!==n.appear?n.appear:t),{exit:e,enter:t,appear:r}},r.updateStatus=function(e,t){if(void 0===e&&(e=!1),null!==t)if(this.cancelNextCallback(),t===d){if(this.props.unmountOnExit||this.props.mountOnEnter){var r=this.props.nodeRef?this.props.nodeRef.current:i.findDOMNode(this);r&&function(e){e.scrollTop}(r)}this.performEnter(e)}else this.performExit();else this.props.unmountOnExit&&this.state.status===u&&this.setState({status:c})},r.performEnter=function(e){var t=this,r=this.props.enter,n=this.context?this.context.isMounting:e,o=this.props.nodeRef?[n]:[i.findDOMNode(this),n],a=o[0],l=o[1],c=this.getTimeouts(),u=n?c.appear:c.enter;!e&&!r||s?this.safeSetState({status:f},(function(){t.props.onEntered(a)})):(this.props.onEnter(a,l),this.safeSetState({status:d},(function(){t.props.onEntering(a,l),t.onTransitionEnd(u,(function(){t.safeSetState({status:f},(function(){t.props.onEntered(a,l)}))}))})))},r.performExit=function(){var e=this,t=this.props.exit,r=this.getTimeouts(),n=this.props.nodeRef?void 0:i.findDOMNode(this);t&&!s?(this.props.onExit(n),this.safeSetState({status:p},(function(){e.props.onExiting(n),e.onTransitionEnd(r.exit,(function(){e.safeSetState({status:u},(function(){e.props.onExited(n)}))}))}))):this.safeSetState({status:u},(function(){e.props.onExited(n)}))},r.cancelNextCallback=function(){null!==this.nextCallback&&(this.nextCallback.cancel(),this.nextCallback=null)},r.safeSetState=function(e,t){t=this.setNextCallback(t),this.setState(e,t)},r.setNextCallback=function(e){var t=this,r=!0;return this.nextCallback=function(n){r&&(r=!1,t.nextCallback=null,e(n))},this.nextCallback.cancel=function(){r=!1},this.nextCallback},r.onTransitionEnd=function(e,t){this.setNextCallback(t);var r=this.props.nodeRef?this.props.nodeRef.current:i.findDOMNode(this),n=null==e&&!this.props.addEndListener;if(r&&!n){if(this.props.addEndListener){var o=this.props.nodeRef?[this.nextCallback]:[r,this.nextCallback],a=o[0],s=o[1];this.props.addEndListener(a,s)}null!=e&&setTimeout(this.nextCallback,e)}else setTimeout(this.nextCallback,0)},r.render=function(){var e=this.state.status;if(e===c)return null;var t=this.props,r=t.children,o=(t.in,t.mountOnEnter,t.unmountOnExit,t.appear,t.enter,t.exit,t.timeout,t.addEndListener,t.onEnter,t.onEntering,t.onEntered,t.onExit,t.onExiting,t.onExited,t.nodeRef,(0,n.A)(t,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]));return a.createElement(l.A.Provider,{value:null},"function"===typeof r?r(e,o):a.cloneElement(a.Children.only(r),o))},t}(a.Component);function m(){}h.contextType=l.A,h.propTypes={},h.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:m,onEntering:m,onEntered:m,onExit:m,onExiting:m,onExited:m},h.UNMOUNTED=c,h.EXITED=u,h.ENTERING=d,h.ENTERED=f,h.EXITING=p;const g=h},28555:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});const n=r(9950).createContext(null)},32654:(e,t,r)=>{"use strict";var n=r(9950),o=Symbol.for("react.element"),a=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,r){var n,a={},c=null,u=null;for(n in void 0!==r&&(c=""+r),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)i.call(t,n)&&!l.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===a[n]&&(a[n]=t[n]);return{$$typeof:o,type:e,key:c,ref:u,props:a,_owner:s.current}}t.Fragment=a,t.jsx=c,t.jsxs=c},32049:(e,t)=>{"use strict";var r=Symbol.for("react.element"),n=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),p=Symbol.iterator;var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,g={};function v(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||h}function y(){}function b(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},y.prototype=v.prototype;var w=b.prototype=new y;w.constructor=b,m(w,v.prototype),w.isPureReactComponent=!0;var x=Array.isArray,S=Object.prototype.hasOwnProperty,A={current:null},k={key:!0,ref:!0,__self:!0,__source:!0};function C(e,t,n){var o,a={},i=null,s=null;if(null!=t)for(o in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(i=""+t.key),t)S.call(t,o)&&!k.hasOwnProperty(o)&&(a[o]=t[o]);var l=arguments.length-2;if(1===l)a.children=n;else if(1<l){for(var c=Array(l),u=0;u<l;u++)c[u]=arguments[u+2];a.children=c}if(e&&e.defaultProps)for(o in l=e.defaultProps)void 0===a[o]&&(a[o]=l[o]);return{$$typeof:r,type:e,key:i,ref:s,props:a,_owner:A.current}}function I(e){return"object"===typeof e&&null!==e&&e.$$typeof===r}var E=/\/+/g;function D(e,t){return"object"===typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(e,t,o,a,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var l=!1;if(null===e)l=!0;else switch(s){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case r:case n:l=!0}}if(l)return i=i(l=e),e=""===a?"."+D(l,0):a,x(i)?(o="",null!=e&&(o=e.replace(E,"$&/")+"/"),T(i,t,o,"",(function(e){return e}))):null!=i&&(I(i)&&(i=function(e,t){return{$$typeof:r,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,o+(!i.key||l&&l.key===i.key?"":(""+i.key).replace(E,"$&/")+"/")+e)),t.push(i)),1;if(l=0,a=""===a?".":a+":",x(e))for(var c=0;c<e.length;c++){var u=a+D(s=e[c],c);l+=T(s,t,o,u,i)}else if(u=function(e){return null===e||"object"!==typeof e?null:"function"===typeof(e=p&&e[p]||e["@@iterator"])?e:null}(e),"function"===typeof u)for(e=u.call(e),c=0;!(s=e.next()).done;)l+=T(s=s.value,t,o,u=a+D(s,c++),i);else if("object"===s)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return l}function O(e,t,r){if(null==e)return e;var n=[],o=0;return T(e,n,"","",(function(e){return t.call(r,e,o++)})),n}function M(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var P={current:null},j={transition:null},R={ReactCurrentDispatcher:P,ReactCurrentBatchConfig:j,ReactCurrentOwner:A};function _(){throw Error("act(...) is not supported in production builds of React.")}t.Children={map:O,forEach:function(e,t,r){O(e,(function(){t.apply(this,arguments)}),r)},count:function(e){var t=0;return O(e,(function(){t++})),t},toArray:function(e){return O(e,(function(e){return e}))||[]},only:function(e){if(!I(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=v,t.Fragment=o,t.Profiler=i,t.PureComponent=b,t.StrictMode=a,t.Suspense=u,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=R,t.act=_,t.cloneElement=function(e,t,n){if(null===e||void 0===e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var o=m({},e.props),a=e.key,i=e.ref,s=e._owner;if(null!=t){if(void 0!==t.ref&&(i=t.ref,s=A.current),void 0!==t.key&&(a=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(c in t)S.call(t,c)&&!k.hasOwnProperty(c)&&(o[c]=void 0===t[c]&&void 0!==l?l[c]:t[c])}var c=arguments.length-2;if(1===c)o.children=n;else if(1<c){l=Array(c);for(var u=0;u<c;u++)l[u]=arguments[u+2];o.children=l}return{$$typeof:r,type:e.type,key:a,ref:i,props:o,_owner:s}},t.createContext=function(e){return(e={$$typeof:l,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:s,_context:e},e.Consumer=e},t.createElement=C,t.createFactory=function(e){var t=C.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:c,render:e}},t.isValidElement=I,t.lazy=function(e){return{$$typeof:f,_payload:{_status:-1,_result:e},_init:M}},t.memo=function(e,t){return{$$typeof:d,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=j.transition;j.transition={};try{e()}finally{j.transition=t}},t.unstable_act=_,t.useCallback=function(e,t){return P.current.useCallback(e,t)},t.useContext=function(e){return P.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return P.current.useDeferredValue(e)},t.useEffect=function(e,t){return P.current.useEffect(e,t)},t.useId=function(){return P.current.useId()},t.useImperativeHandle=function(e,t,r){return P.current.useImperativeHandle(e,t,r)},t.useInsertionEffect=function(e,t){return P.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return P.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return P.current.useMemo(e,t)},t.useReducer=function(e,t,r){return P.current.useReducer(e,t,r)},t.useRef=function(e){return P.current.useRef(e)},t.useState=function(e){return P.current.useState(e)},t.useSyncExternalStore=function(e,t,r){return P.current.useSyncExternalStore(e,t,r)},t.useTransition=function(){return P.current.useTransition()},t.version="18.3.1"},9950:(e,t,r)=>{"use strict";e.exports=r(32049)},44414:(e,t,r)=>{"use strict";e.exports=r(32654)},31761:(e,t)=>{"use strict";function r(e,t){var r=e.length;e.push(t);e:for(;0<r;){var n=r-1>>>1,o=e[n];if(!(0<a(o,t)))break e;e[n]=t,e[r]=o,r=n}}function n(e){return 0===e.length?null:e[0]}function o(e){if(0===e.length)return null;var t=e[0],r=e.pop();if(r!==t){e[0]=r;e:for(var n=0,o=e.length,i=o>>>1;n<i;){var s=2*(n+1)-1,l=e[s],c=s+1,u=e[c];if(0>a(l,r))c<o&&0>a(u,l)?(e[n]=u,e[c]=r,n=c):(e[n]=l,e[s]=r,n=s);else{if(!(c<o&&0>a(u,r)))break e;e[n]=u,e[c]=r,n=c}}}return t}function a(e,t){var r=e.sortIndex-t.sortIndex;return 0!==r?r:e.id-t.id}if("object"===typeof performance&&"function"===typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var s=Date,l=s.now();t.unstable_now=function(){return s.now()-l}}var c=[],u=[],d=1,f=null,p=3,h=!1,m=!1,g=!1,v="function"===typeof setTimeout?setTimeout:null,y="function"===typeof clearTimeout?clearTimeout:null,b="undefined"!==typeof setImmediate?setImmediate:null;function w(e){for(var t=n(u);null!==t;){if(null===t.callback)o(u);else{if(!(t.startTime<=e))break;o(u),t.sortIndex=t.expirationTime,r(c,t)}t=n(u)}}function x(e){if(g=!1,w(e),!m)if(null!==n(c))m=!0,j(S);else{var t=n(u);null!==t&&R(x,t.startTime-e)}}function S(e,r){m=!1,g&&(g=!1,y(I),I=-1),h=!0;var a=p;try{for(w(r),f=n(c);null!==f&&(!(f.expirationTime>r)||e&&!T());){var i=f.callback;if("function"===typeof i){f.callback=null,p=f.priorityLevel;var s=i(f.expirationTime<=r);r=t.unstable_now(),"function"===typeof s?f.callback=s:f===n(c)&&o(c),w(r)}else o(c);f=n(c)}if(null!==f)var l=!0;else{var d=n(u);null!==d&&R(x,d.startTime-r),l=!1}return l}finally{f=null,p=a,h=!1}}"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var A,k=!1,C=null,I=-1,E=5,D=-1;function T(){return!(t.unstable_now()-D<E)}function O(){if(null!==C){var e=t.unstable_now();D=e;var r=!0;try{r=C(!0,e)}finally{r?A():(k=!1,C=null)}}else k=!1}if("function"===typeof b)A=function(){b(O)};else if("undefined"!==typeof MessageChannel){var M=new MessageChannel,P=M.port2;M.port1.onmessage=O,A=function(){P.postMessage(null)}}else A=function(){v(O,0)};function j(e){C=e,k||(k=!0,A())}function R(e,r){I=v((function(){e(t.unstable_now())}),r)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){m||h||(m=!0,j(S))},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):E=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return p},t.unstable_getFirstCallbackNode=function(){return n(c)},t.unstable_next=function(e){switch(p){case 1:case 2:case 3:var t=3;break;default:t=p}var r=p;p=t;try{return e()}finally{p=r}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=p;p=e;try{return t()}finally{p=r}},t.unstable_scheduleCallback=function(e,o,a){var i=t.unstable_now();switch("object"===typeof a&&null!==a?a="number"===typeof(a=a.delay)&&0<a?i+a:i:a=i,e){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return e={id:d++,callback:o,priorityLevel:e,startTime:a,expirationTime:s=a+s,sortIndex:-1},a>i?(e.sortIndex=a,r(u,e),null===n(c)&&e===n(u)&&(g?(y(I),I=-1):g=!0,R(x,a-i))):(e.sortIndex=s,r(c,e),m||h||(m=!0,j(S))),e},t.unstable_shouldYield=T,t.unstable_wrapCallback=function(e){var t=p;return function(){var r=p;p=t;try{return e.apply(this,arguments)}finally{p=r}}}},75340:(e,t,r)=>{"use strict";e.exports=r(31761)},61873:(e,t,r)=>{"use strict";r.r(t),r.d(t,{__assign:()=>a,__asyncDelegator:()=>w,__asyncGenerator:()=>b,__asyncValues:()=>x,__await:()=>y,__awaiter:()=>u,__classPrivateFieldGet:()=>C,__classPrivateFieldSet:()=>I,__createBinding:()=>f,__decorate:()=>s,__exportStar:()=>p,__extends:()=>o,__generator:()=>d,__importDefault:()=>k,__importStar:()=>A,__makeTemplateObject:()=>S,__metadata:()=>c,__param:()=>l,__read:()=>m,__rest:()=>i,__spread:()=>g,__spreadArrays:()=>v,__values:()=>h});var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])},n(e,t)};function o(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var a=function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},a.apply(this,arguments)};function i(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r}function s(e,t,r,n){var o,a=arguments.length,i=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(i=(a<3?o(i):a>3?o(t,r,i):o(t,r))||i);return a>3&&i&&Object.defineProperty(t,r,i),i}function l(e,t){return function(r,n){t(r,n,e)}}function c(e,t){if("object"===typeof Reflect&&"function"===typeof Reflect.metadata)return Reflect.metadata(e,t)}function u(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(t){a(t)}}function s(e){try{l(n.throw(e))}catch(t){a(t)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))}function d(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;i;)try{if(r=1,n&&(o=2&a[0]?n.return:a[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,a[1])).done)return o;switch(n=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,n=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(s){a=[6,s],n=0}finally{r=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}}function f(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}function p(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||(t[r]=e[r])}function h(e){var t="function"===typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"===typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function m(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i}function g(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(m(arguments[t]));return e}function v(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),o=0;for(t=0;t<r;t++)for(var a=arguments[t],i=0,s=a.length;i<s;i++,o++)n[o]=a[i];return n}function y(e){return this instanceof y?(this.v=e,this):new y(e)}function b(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,o=r.apply(e,t||[]),a=[];return n={},i("next"),i("throw"),i("return"),n[Symbol.asyncIterator]=function(){return this},n;function i(e){o[e]&&(n[e]=function(t){return new Promise((function(r,n){a.push([e,t,r,n])>1||s(e,t)}))})}function s(e,t){try{(r=o[e](t)).value instanceof y?Promise.resolve(r.value.v).then(l,c):u(a[0][2],r)}catch(n){u(a[0][3],n)}var r}function l(e){s("next",e)}function c(e){s("throw",e)}function u(e,t){e(t),a.shift(),a.length&&s(a[0][0],a[0][1])}}function w(e){var t,r;return t={},n("next"),n("throw",(function(e){throw e})),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,o){t[n]=e[n]?function(t){return(r=!r)?{value:y(e[n](t)),done:"return"===n}:o?o(t):t}:o}}function x(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=h(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,o){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,o,(t=e[r](t)).done,t.value)}))}}}function S(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function A(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function k(e){return e&&e.__esModule?e:{default:e}}function C(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function I(e,t,r){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,r),r}},84028:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalStyles=void 0;const s=i(r(9950)),l=a(r(88283));t.GlobalStyles=function(e){const{styles:t}=e;return s.default.createElement(l.Global,{styles:l.css(t)})}},55135:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.TssCacheProvider=t.useTssEmotionCache=t.getTssDefaultEmotionCache=t.getDoExistsTssDefaultEmotionCacheMemoizedValue=void 0;const s=a(r(9950)),l=i(r(63387)),{getDoExistsTssDefaultEmotionCacheMemoizedValue:c,getTssDefaultEmotionCache:u,reactContext:d}=(()=>{const e=s.createContext;let t=e["__tss-react_context"];if(void 0===t){const{getTssDefaultEmotionCache:r,getDoExistsTssDefaultEmotionCacheMemoizedValue:n}=(()=>{let e;return{getTssDefaultEmotionCache:function(t){const{doReset:r=!1}=null!==t&&void 0!==t?t:{};return r&&(e=void 0),void 0===e&&(e=(0,l.default)({key:"tss"})),e},getDoExistsTssDefaultEmotionCacheMemoizedValue:()=>void 0!==e}})();t={getTssDefaultEmotionCache:r,getDoExistsTssDefaultEmotionCacheMemoizedValue:n,reactContext:(0,s.createContext)(void 0)},Object.defineProperty(e,"__tss-react_context",{configurable:!1,enumerable:!1,writable:!1,value:t})}return t})();t.getDoExistsTssDefaultEmotionCacheMemoizedValue=c,t.getTssDefaultEmotionCache=u,t.useTssEmotionCache=function(){const e=(0,s.useContext)(d);return null!==e&&void 0!==e?e:u()},t.TssCacheProvider=function(e){const{children:t,value:r}=e;return s.default.createElement(d.Provider,{value:r},t)}},74794:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useCssAndCx=t.createCssAndCx=void 0;const n=r(13005),o=r(89015),a=r(71783),i=r(61838),s=r(55135),l=r(18064);t.createCssAndCx=function(e){const{cache:t}=e,r=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];const i=(0,o.serializeStyles)(r,t.registered);(0,a.insertStyles)(t,i,!1);const s=`${t.key}-${i.name}`;{const e=r[0];(0,l.matchCSSObject)(e)&&c.saveClassNameCSSObjectMapping(t,s,e)}return s};return{css:r,cx:function(){for(var e=arguments.length,o=new Array(e),i=0;i<e;i++)o[i]=arguments[i];const s=(0,n.classnames)(o),l=c.fixClassName(t,s,r);return function(e,t,r){const n=[],o=(0,a.getRegisteredStyles)(e,n,r);return n.length<2?r:o+t(n)}(t.registered,r,l)}}},t.useCssAndCx=function(){const e=(0,s.useTssEmotionCache)(),{css:r,cx:n}=(0,i.useGuaranteedMemo)((()=>(0,t.createCssAndCx)({cache:e})),[e]);return{css:r,cx:n}};const c=(()=>{const e=new WeakMap;return{saveClassNameCSSObjectMapping:(t,r,n)=>{let o=e.get(t);void 0===o&&(o=new Map,e.set(t,o)),o.set(r,n)},fixClassName:(t,r,o)=>{const a=e.get(t);return(0,n.classnames)(function(e){let t=!1;return e.map((e=>{let r,[n,o]=e;if(void 0===o)return n;if(t)r={"&&":o};else{r=n;for(const e in o)if(e.startsWith("@media")){t=!0;break}}return r}))}(r.split(" ").map((e=>[e,null===a||void 0===a?void 0:a.get(e)]))).map((e=>"string"===typeof e?e:o(e))))}}})()},15745:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createMakeAndWithStyles=t.TssCacheProvider=t.getTssDefaultEmotionCache=t.GlobalStyles=t.keyframes=t.createWithStyles=t.createMakeStyles=t.useMergedClasses=t.useCssAndCx=void 0;var n=r(74794);Object.defineProperty(t,"useCssAndCx",{enumerable:!0,get:function(){return n.useCssAndCx}});var o=r(37485);Object.defineProperty(t,"useMergedClasses",{enumerable:!0,get:function(){return o.useMergedClasses}});const a=r(72565);Object.defineProperty(t,"createMakeStyles",{enumerable:!0,get:function(){return a.createMakeStyles}});const i=r(215);Object.defineProperty(t,"createWithStyles",{enumerable:!0,get:function(){return i.createWithStyles}});var s=r(88283);Object.defineProperty(t,"keyframes",{enumerable:!0,get:function(){return s.keyframes}});var l=r(84028);Object.defineProperty(t,"GlobalStyles",{enumerable:!0,get:function(){return l.GlobalStyles}});var c=r(55135);Object.defineProperty(t,"getTssDefaultEmotionCache",{enumerable:!0,get:function(){return c.getTssDefaultEmotionCache}}),Object.defineProperty(t,"TssCacheProvider",{enumerable:!0,get:function(){return c.TssCacheProvider}}),t.createMakeAndWithStyles=function(e){return Object.assign(Object.assign({},(0,a.createMakeStyles)(e)),(0,i.createWithStyles)(e))}},72565:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createMakeStyles=void 0;const n=r(9950),o=r(14561),a=r(85062),i=r(74794),s=r(20546),l=r(8932),c=r(55135),u=r(26731),d=r(37485);let f=0;t.createMakeStyles=function(e){const{useTheme:t}=e;return{makeStyles:function(e){const{name:r,uniqId:p=f++}=null!==e&&void 0!==e?e:{},h="object"!==typeof r?r:Object.keys(r)[0];return function(e){const r="function"===typeof e?e:()=>e;return function(e,f){var m,g;const v=t(),{css:y,cx:b}=(0,i.useCssAndCx)(),w=(0,c.useTssEmotionCache)();let x=(0,n.useMemo)((()=>{const t={},n="undefined"!==typeof Proxy&&new Proxy({},{get:(e,r)=>("symbol"===typeof r&&(0,u.assert)(!1),t[r]=`${w.key}-${p}${void 0!==h?`-${h}`:""}-${r}-ref`)}),i=r(v,e,n||{}),s=(0,o.objectFromEntries)((0,a.objectKeys)(i).map((e=>{const r=i[e];return r.label||(r.label=`${void 0!==h?`${h}-`:""}${e}`),[e,`${y(r)}${(0,l.typeGuard)(e,e in t)?` ${t[e]}`:""}`]})));return(0,a.objectKeys)(t).forEach((e=>{e in s||(s[e]=t[e])})),s}),[w,y,b,v,(0,s.getDependencyArrayRef)(e)]);const S=null===f||void 0===f?void 0:f.props.classes;x=(0,n.useMemo)((()=>(0,d.mergeClasses)(x,S,b)),[x,(0,s.getDependencyArrayRef)(S),b]);{let e;try{e=void 0!==h?null===(g=null===(m=v.components)||void 0===m?void 0:m[h])||void 0===g?void 0:g.styleOverrides:void 0}catch(A){}const t=(0,n.useMemo)((()=>{if(!e)return;const t={};for(const r in e){const n=e[r];n instanceof Object&&(t[r]=y("function"===typeof n?n(Object.assign({theme:v,ownerState:null===f||void 0===f?void 0:f.ownerState},null===f||void 0===f?void 0:f.props)):n))}return t}),[void 0===e?void 0:JSON.stringify(e),(0,s.getDependencyArrayRef)(null===f||void 0===f?void 0:f.props),(0,s.getDependencyArrayRef)(null===f||void 0===f?void 0:f.ownerState),y]);x=(0,n.useMemo)((()=>(0,d.mergeClasses)(x,t,b)),[x,t,b])}return{classes:x,theme:v,css:y,cx:b}}}},useStyles:function(){const e=t(),{css:r,cx:n}=(0,i.useCssAndCx)();return{theme:e,css:r,cx:n}}}}},37485:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useMergedClasses=t.mergeClasses=void 0;const n=r(85062),o=r(20546),a=r(74794),i=r(9950);function s(e,t,r){if(!(t instanceof Object))return e;const o={};return(0,n.objectKeys)(e).forEach((n=>o[n]=r(e[n],t[n]))),(0,n.objectKeys)(t).forEach((r=>{if(r in e)return;const n=t[r];"string"===typeof n&&(o[r]=n)})),o}t.mergeClasses=s,t.useMergedClasses=function(e,t){const{cx:r}=(0,a.useCssAndCx)();return(0,i.useMemo)((()=>s(e,t,r)),[e,(0,o.getDependencyArrayRef)(t),r])}},48576:(e,t,r)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.useStyles=t.withStyles=t.makeStyles=void 0;const o=r(5249);n=(0,r(15745).createMakeAndWithStyles)({useTheme:o.useTheme}),t.makeStyles=n.makeStyles,t.withStyles=n.withStyles,t.useStyles=n.useStyles},26731:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assert=void 0,t.assert=function(e,t){if(!e)throw new Error(t)}},38855:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.capitalize=void 0,t.capitalize=function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},13005:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.classnames=void 0;const n=r(26731),o=r(8932);t.classnames=e=>{const r=e.length;let a=0,i="";for(;a<r;a++){const r=e[a];if(null==r)continue;let s;switch(typeof r){case"boolean":break;case"object":if(Array.isArray(r))s=(0,t.classnames)(r);else{(0,n.assert)(!(0,o.typeGuard)(r,!1)),s="";for(const e in r)r[e]&&e&&(s&&(s+=" "),s+=e)}break;default:s=r}s&&(i&&(i+=" "),i+=s)}return i}},20546:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getDependencyArrayRef=void 0,t.getDependencyArrayRef=function(e){if(!(e instanceof Object)||"function"===typeof e)return e;const t=[];for(const r in e){const n=e[r],o=typeof n;if("string"!==o&&("number"!==o||isNaN(n))&&"boolean"!==o&&void 0!==n&&null!==n)return e;t.push(`${r}:${o}_${n}`)}return"xSqLiJdLMd9s"+t.join("|")}},85062:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.objectKeys=void 0,t.objectKeys=function(e){return Object.keys(e)}},14561:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.objectFromEntries=void 0,t.objectFromEntries=Object.fromEntries?Object.fromEntries:e=>{if(!e||!e[Symbol.iterator])throw new Error("Object.fromEntries() requires a single iterable argument");const t={};return Object.keys(e).forEach((r=>{const[n,o]=e[r];t[n]=o})),t}},8932:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.typeGuard=void 0,t.typeGuard=function(e,t){return t}},61838:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useGuaranteedMemo=void 0;const n=r(9950);t.useGuaranteedMemo=function(e,t){const r=(0,n.useRef)();return(!r.current||t.length!==r.current.prevDeps.length||r.current.prevDeps.map(((e,r)=>e===t[r])).indexOf(!1)>=0)&&(r.current={v:e(),prevDeps:[...t]}),r.current.v}},18064:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.matchCSSObject=void 0,t.matchCSSObject=function(e){return e instanceof Object&&!("styles"in e)&&!("length"in e)&&!("__emotion_styles"in e)}},215:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t},i=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r};Object.defineProperty(t,"__esModule",{value:!0}),t.createWithStyles=void 0;const s=a(r(9950)),l=r(72565),c=r(38855);function u(e){const t={},r={};return Object.keys(e).forEach((n=>(n.startsWith("@media")?r:t)[n]=e[n])),Object.keys(r).forEach((e=>{const n=r[e];Object.keys(n).forEach((r=>{var o;return t[r]=Object.assign(Object.assign({},null!==(o=t[r])&&void 0!==o?o:{}),{[e]:n[r]})}))})),t}t.createWithStyles=function(e){const{useTheme:t}=e,{makeStyles:r}=(0,l.createMakeStyles)({useTheme:t});return{withStyles:function(e,t,n){const o="string"===typeof e?(()=>{const t=e,r=function(e){var{children:r}=e,n=i(e,["children"]);return(0,s.createElement)(t,n,r)};return Object.defineProperty(r,"name",{value:(0,c.capitalize)(t)}),r})():e,a=(()=>{const{name:e}=o;return"string"===typeof e?e:void 0})(),l=r(n)("function"===typeof t?(e,r,n)=>u(t(e,r,n)):u(t)),d=(0,s.forwardRef)((function(t,r){const{className:n,classes:a}=t,c=i(t,["className","classes"]),{classes:u,cx:d}=l(t,{props:t});return s.default.createElement(o,Object.assign({ref:r,className:d(u.root,n)},"string"===typeof e?{}:{classes:u},c))}));return void 0!==a&&Object.defineProperty(d,"name",{value:`${a}WithStyles`}),d}}}},44244:(e,t,r)=>{"use strict";function n(e,t){return t=t||{},new Promise((function(r,n){var o=new XMLHttpRequest,a=[],i=[],s={},l=function(){return{ok:2==(o.status/100|0),statusText:o.statusText,status:o.status,url:o.responseURL,text:function(){return Promise.resolve(o.responseText)},json:function(){return Promise.resolve(o.responseText).then(JSON.parse)},blob:function(){return Promise.resolve(new Blob([o.response]))},clone:l,headers:{keys:function(){return a},entries:function(){return i},get:function(e){return s[e.toLowerCase()]},has:function(e){return e.toLowerCase()in s}}}};for(var c in o.open(t.method||"get",e,!0),o.onload=function(){o.getAllResponseHeaders().replace(/^(.*?):[^\S\n]*([\s\S]*?)$/gm,(function(e,t,r){a.push(t=t.toLowerCase()),i.push([t,r]),s[t]=s[t]?s[t]+","+r:r})),r(l())},o.onerror=n,o.withCredentials="include"==t.credentials,t.headers)o.setRequestHeader(c,t.headers[c]);o.send(t.body||null)}))}r.r(t),r.d(t,{default:()=>n})},34016:function(e,t,r){var n;e=r.nmd(e),function(){t&&t.nodeType,e&&e.nodeType;var o="object"==typeof r.g&&r.g;o.global!==o&&o.window!==o&&o.self;var a,i=2147483647,s=36,l=/^xn--/,c=/[^\x20-\x7E]/,u=/[\x2E\u3002\uFF0E\uFF61]/g,d={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},f=Math.floor,p=String.fromCharCode;function h(e){throw RangeError(d[e])}function m(e,t){for(var r=e.length,n=[];r--;)n[r]=t(e[r]);return n}function g(e,t){var r=e.split("@"),n="";return r.length>1&&(n=r[0]+"@",e=r[1]),n+m((e=e.replace(u,".")).split("."),t).join(".")}function v(e){for(var t,r,n=[],o=0,a=e.length;o<a;)(t=e.charCodeAt(o++))>=55296&&t<=56319&&o<a?56320==(64512&(r=e.charCodeAt(o++)))?n.push(((1023&t)<<10)+(1023&r)+65536):(n.push(t),o--):n.push(t);return n}function y(e){return m(e,(function(e){var t="";return e>65535&&(t+=p((e-=65536)>>>10&1023|55296),e=56320|1023&e),t+=p(e)})).join("")}function b(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function w(e,t,r){var n=0;for(e=r?f(e/700):e>>1,e+=f(e/t);e>455;n+=s)e=f(e/35);return f(n+36*e/(e+38))}function x(e){var t,r,n,o,a,l,c,u,d,p,m,g=[],v=e.length,b=0,x=128,S=72;for((r=e.lastIndexOf("-"))<0&&(r=0),n=0;n<r;++n)e.charCodeAt(n)>=128&&h("not-basic"),g.push(e.charCodeAt(n));for(o=r>0?r+1:0;o<v;){for(a=b,l=1,c=s;o>=v&&h("invalid-input"),((u=(m=e.charCodeAt(o++))-48<10?m-22:m-65<26?m-65:m-97<26?m-97:s)>=s||u>f((i-b)/l))&&h("overflow"),b+=u*l,!(u<(d=c<=S?1:c>=S+26?26:c-S));c+=s)l>f(i/(p=s-d))&&h("overflow"),l*=p;S=w(b-a,t=g.length+1,0==a),f(b/t)>i-x&&h("overflow"),x+=f(b/t),b%=t,g.splice(b++,0,x)}return y(g)}function S(e){var t,r,n,o,a,l,c,u,d,m,g,y,x,S,A,k=[];for(y=(e=v(e)).length,t=128,r=0,a=72,l=0;l<y;++l)(g=e[l])<128&&k.push(p(g));for(n=o=k.length,o&&k.push("-");n<y;){for(c=i,l=0;l<y;++l)(g=e[l])>=t&&g<c&&(c=g);for(c-t>f((i-r)/(x=n+1))&&h("overflow"),r+=(c-t)*x,t=c,l=0;l<y;++l)if((g=e[l])<t&&++r>i&&h("overflow"),g==t){for(u=r,d=s;!(u<(m=d<=a?1:d>=a+26?26:d-a));d+=s)A=u-m,S=s-m,k.push(p(b(m+A%S,0))),u=f(A/S);k.push(p(b(u,0))),a=w(r,x,n==o),r=0,++n}++r,++t}return k.join("")}a={version:"1.3.2",ucs2:{decode:v,encode:y},decode:x,encode:S,toASCII:function(e){return g(e,(function(e){return c.test(e)?"xn--"+S(e):e}))},toUnicode:function(e){return g(e,(function(e){return l.test(e)?x(e.slice(4).toLowerCase()):e}))}},void 0===(n=function(){return a}.call(t,r,t,e))||(e.exports=n)}()},90625:(e,t,r)=>{"use strict";var n=r(34016),o=r(43178);function a(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.qg=b;var i=/^([a-z0-9.+-]+:)/i,s=/:[0-9]*$/,l=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,c=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),u=["'"].concat(c),d=["%","/","?",";","#"].concat(u),f=["/","?","#"],p=/^[+a-z0-9A-Z_-]{0,63}$/,h=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},g={javascript:!0,"javascript:":!0},v={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},y=r(42392);function b(e,t,r){if(e&&o.isObject(e)&&e instanceof a)return e;var n=new a;return n.parse(e,t,r),n}a.prototype.parse=function(e,t,r){if(!o.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var a=e.indexOf("?"),s=-1!==a&&a<e.indexOf("#")?"?":"#",c=e.split(s);c[0]=c[0].replace(/\\/g,"/");var b=e=c.join(s);if(b=b.trim(),!r&&1===e.split("#").length){var w=l.exec(b);if(w)return this.path=b,this.href=b,this.pathname=w[1],w[2]?(this.search=w[2],this.query=t?y.parse(this.search.substr(1)):this.search.substr(1)):t&&(this.search="",this.query={}),this}var x=i.exec(b);if(x){var S=(x=x[0]).toLowerCase();this.protocol=S,b=b.substr(x.length)}if(r||x||b.match(/^\/\/[^@\/]+@[^@\/]+/)){var A="//"===b.substr(0,2);!A||x&&g[x]||(b=b.substr(2),this.slashes=!0)}if(!g[x]&&(A||x&&!v[x])){for(var k,C,I=-1,E=0;E<f.length;E++){-1!==(D=b.indexOf(f[E]))&&(-1===I||D<I)&&(I=D)}-1!==(C=-1===I?b.lastIndexOf("@"):b.lastIndexOf("@",I))&&(k=b.slice(0,C),b=b.slice(C+1),this.auth=decodeURIComponent(k)),I=-1;for(E=0;E<d.length;E++){var D;-1!==(D=b.indexOf(d[E]))&&(-1===I||D<I)&&(I=D)}-1===I&&(I=b.length),this.host=b.slice(0,I),b=b.slice(I),this.parseHost(),this.hostname=this.hostname||"";var T="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!T)for(var O=this.hostname.split(/\./),M=(E=0,O.length);E<M;E++){var P=O[E];if(P&&!P.match(p)){for(var j="",R=0,_=P.length;R<_;R++)P.charCodeAt(R)>127?j+="x":j+=P[R];if(!j.match(p)){var N=O.slice(0,E),L=O.slice(E+1),U=P.match(h);U&&(N.push(U[1]),L.unshift(U[2])),L.length&&(b="/"+L.join(".")+b),this.hostname=N.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),T||(this.hostname=n.toASCII(this.hostname));var B=this.port?":"+this.port:"",F=this.hostname||"";this.host=F+B,this.href+=this.host,T&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==b[0]&&(b="/"+b))}if(!m[S])for(E=0,M=u.length;E<M;E++){var z=u[E];if(-1!==b.indexOf(z)){var W=encodeURIComponent(z);W===z&&(W=escape(z)),b=b.split(z).join(W)}}var H=b.indexOf("#");-1!==H&&(this.hash=b.substr(H),b=b.slice(0,H));var Y=b.indexOf("?");if(-1!==Y?(this.search=b.substr(Y),this.query=b.substr(Y+1),t&&(this.query=y.parse(this.query)),b=b.slice(0,Y)):t&&(this.search="",this.query={}),b&&(this.pathname=b),v[S]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){B=this.pathname||"";var V=this.search||"";this.path=B+V}return this.href=this.format(),this},a.prototype.format=function(){var e=this.auth||"";e&&(e=(e=encodeURIComponent(e)).replace(/%3A/i,":"),e+="@");var t=this.protocol||"",r=this.pathname||"",n=this.hash||"",a=!1,i="";this.host?a=e+this.host:this.hostname&&(a=e+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(a+=":"+this.port)),this.query&&o.isObject(this.query)&&Object.keys(this.query).length&&(i=y.stringify(this.query));var s=this.search||i&&"?"+i||"";return t&&":"!==t.substr(-1)&&(t+=":"),this.slashes||(!t||v[t])&&!1!==a?(a="//"+(a||""),r&&"/"!==r.charAt(0)&&(r="/"+r)):a||(a=""),n&&"#"!==n.charAt(0)&&(n="#"+n),s&&"?"!==s.charAt(0)&&(s="?"+s),t+a+(r=r.replace(/[?#]/g,(function(e){return encodeURIComponent(e)})))+(s=s.replace("#","%23"))+n},a.prototype.resolve=function(e){return this.resolveObject(b(e,!1,!0)).format()},a.prototype.resolveObject=function(e){if(o.isString(e)){var t=new a;t.parse(e,!1,!0),e=t}for(var r=new a,n=Object.keys(this),i=0;i<n.length;i++){var s=n[i];r[s]=this[s]}if(r.hash=e.hash,""===e.href)return r.href=r.format(),r;if(e.slashes&&!e.protocol){for(var l=Object.keys(e),c=0;c<l.length;c++){var u=l[c];"protocol"!==u&&(r[u]=e[u])}return v[r.protocol]&&r.hostname&&!r.pathname&&(r.path=r.pathname="/"),r.href=r.format(),r}if(e.protocol&&e.protocol!==r.protocol){if(!v[e.protocol]){for(var d=Object.keys(e),f=0;f<d.length;f++){var p=d[f];r[p]=e[p]}return r.href=r.format(),r}if(r.protocol=e.protocol,e.host||g[e.protocol])r.pathname=e.pathname;else{for(var h=(e.pathname||"").split("/");h.length&&!(e.host=h.shift()););e.host||(e.host=""),e.hostname||(e.hostname=""),""!==h[0]&&h.unshift(""),h.length<2&&h.unshift(""),r.pathname=h.join("/")}if(r.search=e.search,r.query=e.query,r.host=e.host||"",r.auth=e.auth,r.hostname=e.hostname||e.host,r.port=e.port,r.pathname||r.search){var m=r.pathname||"",y=r.search||"";r.path=m+y}return r.slashes=r.slashes||e.slashes,r.href=r.format(),r}var b=r.pathname&&"/"===r.pathname.charAt(0),w=e.host||e.pathname&&"/"===e.pathname.charAt(0),x=w||b||r.host&&e.pathname,S=x,A=r.pathname&&r.pathname.split("/")||[],k=(h=e.pathname&&e.pathname.split("/")||[],r.protocol&&!v[r.protocol]);if(k&&(r.hostname="",r.port=null,r.host&&(""===A[0]?A[0]=r.host:A.unshift(r.host)),r.host="",e.protocol&&(e.hostname=null,e.port=null,e.host&&(""===h[0]?h[0]=e.host:h.unshift(e.host)),e.host=null),x=x&&(""===h[0]||""===A[0])),w)r.host=e.host||""===e.host?e.host:r.host,r.hostname=e.hostname||""===e.hostname?e.hostname:r.hostname,r.search=e.search,r.query=e.query,A=h;else if(h.length)A||(A=[]),A.pop(),A=A.concat(h),r.search=e.search,r.query=e.query;else if(!o.isNullOrUndefined(e.search)){if(k)r.hostname=r.host=A.shift(),(T=!!(r.host&&r.host.indexOf("@")>0)&&r.host.split("@"))&&(r.auth=T.shift(),r.host=r.hostname=T.shift());return r.search=e.search,r.query=e.query,o.isNull(r.pathname)&&o.isNull(r.search)||(r.path=(r.pathname?r.pathname:"")+(r.search?r.search:"")),r.href=r.format(),r}if(!A.length)return r.pathname=null,r.search?r.path="/"+r.search:r.path=null,r.href=r.format(),r;for(var C=A.slice(-1)[0],I=(r.host||e.host||A.length>1)&&("."===C||".."===C)||""===C,E=0,D=A.length;D>=0;D--)"."===(C=A[D])?A.splice(D,1):".."===C?(A.splice(D,1),E++):E&&(A.splice(D,1),E--);if(!x&&!S)for(;E--;E)A.unshift("..");!x||""===A[0]||A[0]&&"/"===A[0].charAt(0)||A.unshift(""),I&&"/"!==A.join("/").substr(-1)&&A.push("");var T,O=""===A[0]||A[0]&&"/"===A[0].charAt(0);k&&(r.hostname=r.host=O?"":A.length?A.shift():"",(T=!!(r.host&&r.host.indexOf("@")>0)&&r.host.split("@"))&&(r.auth=T.shift(),r.host=r.hostname=T.shift()));return(x=x||r.host&&A.length)&&!O&&A.unshift(""),A.length?r.pathname=A.join("/"):(r.pathname=null,r.path=null),o.isNull(r.pathname)&&o.isNull(r.search)||(r.path=(r.pathname?r.pathname:"")+(r.search?r.search:"")),r.auth=e.auth||r.auth,r.slashes=r.slashes||e.slashes,r.href=r.format(),r},a.prototype.parseHost=function(){var e=this.host,t=s.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},43178:e=>{"use strict";e.exports={isString:function(e){return"string"===typeof e},isObject:function(e){return"object"===typeof e&&null!==e},isNull:function(e){return null===e},isNullOrUndefined:function(e){return null==e}}},60759:(e,t,r)=>{"use strict";var n=r(9950);var o="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},a=n.useState,i=n.useEffect,s=n.useLayoutEffect,l=n.useDebugValue;function c(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!o(e,r)}catch(n){return!0}}var u="undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=a({inst:{value:r,getSnapshot:t}}),o=n[0].inst,u=n[1];return s((function(){o.value=r,o.getSnapshot=t,c(o)&&u({inst:o})}),[e,r,t]),i((function(){return c(o)&&u({inst:o}),e((function(){c(o)&&u({inst:o})}))}),[e]),l(r),r};t.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:u},39940:(e,t,r)=>{"use strict";var n=r(9950),o=r(6538);var a="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},i=o.useSyncExternalStore,s=n.useRef,l=n.useEffect,c=n.useMemo,u=n.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,r,n,o){var d=s(null);if(null===d.current){var f={hasValue:!1,value:null};d.current=f}else f=d.current;d=c((function(){function e(e){if(!l){if(l=!0,i=e,e=n(e),void 0!==o&&f.hasValue){var t=f.value;if(o(t,e))return s=t}return s=e}if(t=s,a(i,e))return t;var r=n(e);return void 0!==o&&o(t,r)?(i=e,t):(i=e,s=r)}var i,s,l=!1,c=void 0===r?null:r;return[function(){return e(t())},null===c?void 0:function(){return e(c())}]}),[t,r,n,o]);var p=i(e,d[0],d[1]);return l((function(){f.hasValue=!0,f.value=p}),[p]),u(p),p}},57254:(e,t,r)=>{"use strict";var n=r(9950);var o="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},a=n.useSyncExternalStore,i=n.useRef,s=n.useEffect,l=n.useMemo,c=n.useDebugValue},6538:(e,t,r)=>{"use strict";e.exports=r(60759)},53044:(e,t,r)=>{"use strict";e.exports=r(39940)},67256:(e,t,r)=>{"use strict";r(57254)},57413:e=>{e.exports={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}},66615:(e,t,r)=>{e.exports=r(26846)},94870:(e,t,r)=>{e.exports=r(74473)},11393:(e,t,r)=>{e.exports=r(62726)},14166:(e,t,r)=>{e.exports=r(80187)},96319:(e,t,r)=>{e.exports=r(38164)},26327:(e,t,r)=>{e.exports=r(11640)},86226:(e,t,r)=>{e.exports=r(43017)},64007:(e,t,r)=>{e.exports=r(37432)},48079:(e,t,r)=>{e.exports=r(76042)},73363:(e,t,r)=>{e.exports=r(21812)},18979:(e,t,r)=>{e.exports=r(63554)},31721:(e,t,r)=>{e.exports=r(65362)},129:(e,t,r)=>{e.exports=r(46042)},385:(e,t,r)=>{e.exports=r(25894)},165:(e,t,r)=>{e.exports=r(36904)},11265:(e,t,r)=>{e.exports=r(48850)},85569:(e,t,r)=>{e.exports=r(3608)},29544:(e,t,r)=>{e.exports=r(73155)},25110:(e,t,r)=>{e.exports=r(69139)},53930:(e,t,r)=>{e.exports=r(37823)},38573:(e,t,r)=>{e.exports=r(66208)},78928:(e,t,r)=>{e.exports=r(47293)},36751:(e,t,r)=>{e.exports=r(98680)},26100:(e,t,r)=>{e.exports=r(50439)},50697:(e,t,r)=>{e.exports=r(35542)},57119:(e,t,r)=>{e.exports=r(70560)},36586:(e,t,r)=>{e.exports=r(41701)},92574:(e,t,r)=>{e.exports=r(81989)},56255:(e,t,r)=>{e.exports=r(27684)},96984:(e,t,r)=>{e.exports=r(388)},31607:e=>{e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n},e.exports.__esModule=!0,e.exports.default=e.exports},31251:(e,t,r)=>{var n=r(95370);e.exports=function(e){if(n(e))return e},e.exports.__esModule=!0,e.exports.default=e.exports},54309:(e,t,r)=>{var n=r(95370),o=r(31607);e.exports=function(e){if(n(e))return o(e)},e.exports.__esModule=!0,e.exports.default=e.exports},6803:e=>{e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.__esModule=!0,e.exports.default=e.exports},20271:e=>{e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.__esModule=!0,e.exports.default=e.exports},43563:(e,t,r)=>{var n=r(28915),o=r(4704);function a(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),n(e,o(a.key),a)}}e.exports=function(e,t,r){return t&&a(e.prototype,t),r&&a(e,r),n(e,"prototype",{writable:!1}),e},e.exports.__esModule=!0,e.exports.default=e.exports},70533:(e,t,r)=>{var n=r(28915),o=r(4704);e.exports=function(e,t,r){return(t=o(t))in e?n(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e},e.exports.__esModule=!0,e.exports.default=e.exports},7666:(e,t,r)=>{var n=r(16967),o=r(8805);function a(){var t;return e.exports=a=n?o(t=n).call(t):function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},e.exports.__esModule=!0,e.exports.default=e.exports,a.apply(null,arguments)}e.exports=a,e.exports.__esModule=!0,e.exports.default=e.exports},11832:(e,t,r)=>{var n=r(11321),o=r(8805),a=r(63013);function i(t){var r;return e.exports=i=n?o(r=a).call(r):function(e){return e.__proto__||a(e)},e.exports.__esModule=!0,e.exports.default=e.exports,i(t)}e.exports=i,e.exports.__esModule=!0,e.exports.default=e.exports},60319:(e,t,r)=>{var n=r(36530),o=r(28915),a=r(86604);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=n(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),o(e,"prototype",{writable:!1}),t&&a(e,t)},e.exports.__esModule=!0,e.exports.default=e.exports},28899:(e,t,r)=>{var n=r(91747),o=r(51139),a=r(56266);e.exports=function(e){if("undefined"!=typeof n&&null!=o(e)||null!=e["@@iterator"])return a(e)},e.exports.__esModule=!0,e.exports.default=e.exports},94172:(e,t,r)=>{var n=r(91747),o=r(51139),a=r(89930);e.exports=function(e,t){var r=null==e?null:"undefined"!=typeof n&&o(e)||e["@@iterator"];if(null!=r){var i,s,l,c,u=[],d=!0,f=!1;try{if(l=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;d=!1}else for(;!(d=(i=l.call(r)).done)&&(a(u).call(u,i.value),u.length!==t);d=!0);}catch(e){f=!0,s=e}finally{try{if(!d&&null!=r.return&&(c=r.return(),Object(c)!==c))return}finally{if(f)throw s}}return u}},e.exports.__esModule=!0,e.exports.default=e.exports},85344:e=>{e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.__esModule=!0,e.exports.default=e.exports},20805:e=>{e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.__esModule=!0,e.exports.default=e.exports},48447:(e,t,r)=>{var n=r(80291),o=r(52815),a=r(52997);e.exports=function(e,t){if(null==e)return{};var r,i,s=a(e,t);if(n){var l=n(e);for(i=0;i<l.length;i++)r=l[i],o(t).call(t,r)||{}.propertyIsEnumerable.call(e,r)&&(s[r]=e[r])}return s},e.exports.__esModule=!0,e.exports.default=e.exports},52997:(e,t,r)=>{var n=r(52815);e.exports=function(e,t){if(null==e)return{};var r={};for(var o in e)if({}.hasOwnProperty.call(e,o)){if(n(t).call(t,o))continue;r[o]=e[o]}return r},e.exports.__esModule=!0,e.exports.default=e.exports},45180:(e,t,r)=>{var n=r(91234).default,o=r(6803);e.exports=function(e,t){if(t&&("object"==n(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return o(e)},e.exports.__esModule=!0,e.exports.default=e.exports},86604:(e,t,r)=>{var n=r(11321),o=r(8805);function a(t,r){var i;return e.exports=a=n?o(i=n).call(i):function(e,t){return e.__proto__=t,e},e.exports.__esModule=!0,e.exports.default=e.exports,a(t,r)}e.exports=a,e.exports.__esModule=!0,e.exports.default=e.exports},34875:(e,t,r)=>{var n=r(31251),o=r(94172),a=r(90426),i=r(85344);e.exports=function(e,t){return n(e)||o(e,t)||a(e,t)||i()},e.exports.__esModule=!0,e.exports.default=e.exports},47284:(e,t,r)=>{var n=r(54309),o=r(28899),a=r(90426),i=r(20805);e.exports=function(e){return n(e)||o(e)||a(e)||i()},e.exports.__esModule=!0,e.exports.default=e.exports},56973:(e,t,r)=>{var n=r(21806),o=r(91234).default;e.exports=function(e,t){if("object"!=o(e)||!e)return e;var r=e[n];if(void 0!==r){var a=r.call(e,t||"default");if("object"!=o(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)},e.exports.__esModule=!0,e.exports.default=e.exports},4704:(e,t,r)=>{var n=r(91234).default,o=r(56973);e.exports=function(e){var t=o(e,"string");return"symbol"==n(t)?t:t+""},e.exports.__esModule=!0,e.exports.default=e.exports},91234:(e,t,r)=>{var n=r(91747),o=r(46973);function a(t){return e.exports=a="function"==typeof n&&"symbol"==typeof o?function(e){return typeof e}:function(e){return e&&"function"==typeof n&&e.constructor===n&&e!==n.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,a(t)}e.exports=a,e.exports.__esModule=!0,e.exports.default=e.exports},90426:(e,t,r)=>{var n=r(55414),o=r(56266),a=r(31607);e.exports=function(e,t){if(e){var r;if("string"==typeof e)return a(e,t);var i=n(r={}.toString.call(e)).call(r,8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?o(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?a(e,t):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports},24994:e=>{e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports},77965:(e,t,r)=>{"use strict";var n=r(28078);e.exports=n},3641:(e,t,r)=>{"use strict";var n=r(26846);e.exports=n},17318:(e,t,r)=>{"use strict";var n=r(67647);e.exports=n},56384:(e,t,r)=>{"use strict";var n=r(74473);e.exports=n},73682:(e,t,r)=>{"use strict";var n=r(18523);e.exports=n},9143:(e,t,r)=>{"use strict";var n=r(94774);e.exports=n},88497:(e,t,r)=>{"use strict";var n=r(63554);e.exports=n},40658:(e,t,r)=>{"use strict";var n=r(73155);e.exports=n},33547:(e,t,r)=>{"use strict";var n=r(81094);e.exports=n},91420:(e,t,r)=>{"use strict";var n=r(37823);e.exports=n},65042:(e,t,r)=>{"use strict";var n=r(50439);e.exports=n},53716:(e,t,r)=>{"use strict";var n=r(93553);e.exports=n},14024:(e,t,r)=>{"use strict";var n=r(7805);e.exports=n},48948:(e,t,r)=>{"use strict";var n=r(17087);r(29508),r(4665),r(83412),r(93752),e.exports=n},5536:(e,t,r)=>{"use strict";var n=r(36841);e.exports=n},73963:(e,t,r)=>{"use strict";var n=r(13906);e.exports=n},17315:(e,t,r)=>{"use strict";r(24349),r(76993);var n=r(27466);e.exports=n.Array.from},98711:(e,t,r)=>{"use strict";r(82797);var n=r(27466);e.exports=n.Array.isArray},82599:(e,t,r)=>{"use strict";r(20181);var n=r(14407);e.exports=n("Array","concat")},60176:(e,t,r)=>{"use strict";r(55026);var n=r(14407);e.exports=n("Array","every")},49773:(e,t,r)=>{"use strict";r(77707);var n=r(14407);e.exports=n("Array","filter")},77137:(e,t,r)=>{"use strict";r(28971);var n=r(14407);e.exports=n("Array","findIndex")},90696:(e,t,r)=>{"use strict";r(54894);var n=r(14407);e.exports=n("Array","forEach")},68902:(e,t,r)=>{"use strict";r(67592);var n=r(14407);e.exports=n("Array","includes")},72809:(e,t,r)=>{"use strict";r(15955);var n=r(14407);e.exports=n("Array","indexOf")},95945:(e,t,r)=>{"use strict";r(60043);var n=r(14407);e.exports=n("Array","map")},48171:(e,t,r)=>{"use strict";r(99989);var n=r(14407);e.exports=n("Array","push")},6257:(e,t,r)=>{"use strict";r(76959);var n=r(14407);e.exports=n("Array","reduce")},45605:(e,t,r)=>{"use strict";r(65639);var n=r(14407);e.exports=n("Array","slice")},57527:(e,t,r)=>{"use strict";r(56093);var n=r(14407);e.exports=n("Array","some")},34027:(e,t,r)=>{"use strict";r(68109);var n=r(14407);e.exports=n("Array","sort")},50263:(e,t,r)=>{"use strict";r(43709);var n=r(14407);e.exports=n("Array","splice")},38699:(e,t,r)=>{"use strict";r(58463);var n=r(14407);e.exports=n("Function","bind")},7436:(e,t,r)=>{"use strict";r(89695),r(24349);var n=r(50404);e.exports=n},98166:(e,t,r)=>{"use strict";var n=r(24500),o=r(38699),a=Function.prototype;e.exports=function(e){var t=e.bind;return e===a||n(a,e)&&t===a.bind?o:t}},73537:(e,t,r)=>{"use strict";var n=r(24500),o=r(82599),a=Array.prototype;e.exports=function(e){var t=e.concat;return e===a||n(a,e)&&t===a.concat?o:t}},37910:(e,t,r)=>{"use strict";var n=r(24500),o=r(60176),a=Array.prototype;e.exports=function(e){var t=e.every;return e===a||n(a,e)&&t===a.every?o:t}},96671:(e,t,r)=>{"use strict";var n=r(24500),o=r(49773),a=Array.prototype;e.exports=function(e){var t=e.filter;return e===a||n(a,e)&&t===a.filter?o:t}},66103:(e,t,r)=>{"use strict";var n=r(24500),o=r(77137),a=Array.prototype;e.exports=function(e){var t=e.findIndex;return e===a||n(a,e)&&t===a.findIndex?o:t}},37492:(e,t,r)=>{"use strict";var n=r(24500),o=r(68902),a=r(29582),i=Array.prototype,s=String.prototype;e.exports=function(e){var t=e.includes;return e===i||n(i,e)&&t===i.includes?o:"string"==typeof e||e===s||n(s,e)&&t===s.includes?a:t}},41319:(e,t,r)=>{"use strict";var n=r(24500),o=r(72809),a=Array.prototype;e.exports=function(e){var t=e.indexOf;return e===a||n(a,e)&&t===a.indexOf?o:t}},34671:(e,t,r)=>{"use strict";var n=r(24500),o=r(95945),a=Array.prototype;e.exports=function(e){var t=e.map;return e===a||n(a,e)&&t===a.map?o:t}},86209:(e,t,r)=>{"use strict";var n=r(24500),o=r(48171),a=Array.prototype;e.exports=function(e){var t=e.push;return e===a||n(a,e)&&t===a.push?o:t}},65139:(e,t,r)=>{"use strict";var n=r(24500),o=r(6257),a=Array.prototype;e.exports=function(e){var t=e.reduce;return e===a||n(a,e)&&t===a.reduce?o:t}},55043:(e,t,r)=>{"use strict";var n=r(24500),o=r(45605),a=Array.prototype;e.exports=function(e){var t=e.slice;return e===a||n(a,e)&&t===a.slice?o:t}},99145:(e,t,r)=>{"use strict";var n=r(24500),o=r(57527),a=Array.prototype;e.exports=function(e){var t=e.some;return e===a||n(a,e)&&t===a.some?o:t}},23073:(e,t,r)=>{"use strict";var n=r(24500),o=r(34027),a=Array.prototype;e.exports=function(e){var t=e.sort;return e===a||n(a,e)&&t===a.sort?o:t}},10273:(e,t,r)=>{"use strict";var n=r(24500),o=r(50263),a=Array.prototype;e.exports=function(e){var t=e.splice;return e===a||n(a,e)&&t===a.splice?o:t}},92133:(e,t,r)=>{"use strict";var n=r(24500),o=r(59063),a=String.prototype;e.exports=function(e){var t=e.startsWith;return"string"==typeof e||e===a||n(a,e)&&t===a.startsWith?o:t}},62977:(e,t,r)=>{"use strict";var n=r(24500),o=r(97395),a=String.prototype;e.exports=function(e){var t=e.trim;return"string"==typeof e||e===a||n(a,e)&&t===a.trim?o:t}},88449:(e,t,r)=>{"use strict";r(44036),r(54725);var n=r(27466),o=r(48700);n.JSON||(n.JSON={stringify:JSON.stringify}),e.exports=function(e,t,r){return o(n.JSON.stringify,null,arguments)}},19816:(e,t,r)=>{"use strict";r(95400);var n=r(27466);e.exports=n.Object.assign},78817:(e,t,r)=>{"use strict";r(79553);var n=r(27466).Object;e.exports=function(e,t){return n.create(e,t)}},62422:(e,t,r)=>{"use strict";r(57686);var n=r(27466).Object,o=e.exports=function(e,t){return n.defineProperties(e,t)};n.defineProperties.sham&&(o.sham=!0)},69802:(e,t,r)=>{"use strict";r(50794);var n=r(27466).Object,o=e.exports=function(e,t,r){return n.defineProperty(e,t,r)};n.defineProperty.sham&&(o.sham=!0)},49709:(e,t,r)=>{"use strict";r(70957);var n=r(27466);e.exports=n.Object.entries},95760:(e,t,r)=>{"use strict";r(87184);var n=r(27466).Object,o=e.exports=function(e,t){return n.getOwnPropertyDescriptor(e,t)};n.getOwnPropertyDescriptor.sham&&(o.sham=!0)},26191:(e,t,r)=>{"use strict";r(22479);var n=r(27466);e.exports=n.Object.getOwnPropertyDescriptors},65460:(e,t,r)=>{"use strict";r(45344);var n=r(27466);e.exports=n.Object.getOwnPropertySymbols},47234:(e,t,r)=>{"use strict";r(44642);var n=r(27466);e.exports=n.Object.getPrototypeOf},53193:(e,t,r)=>{"use strict";r(66089);var n=r(27466);e.exports=n.Object.keys},30838:(e,t,r)=>{"use strict";r(91702);var n=r(27466);e.exports=n.Object.setPrototypeOf},59391:(e,t,r)=>{"use strict";r(90271);var n=r(27466);e.exports=n.Object.values},59050:(e,t,r)=>{"use strict";r(43325);var n=r(27466);e.exports=n.parseInt},79422:(e,t,r)=>{"use strict";r(81592);var n=r(27466);e.exports=n.Reflect.construct},29582:(e,t,r)=>{"use strict";r(33806);var n=r(14407);e.exports=n("String","includes")},59063:(e,t,r)=>{"use strict";r(919);var n=r(14407);e.exports=n("String","startsWith")},97395:(e,t,r)=>{"use strict";r(33555);var n=r(14407);e.exports=n("String","trim")},71382:(e,t,r)=>{"use strict";r(20181),r(84940),r(45344),r(33209),r(48456),r(37624),r(28045),r(52278),r(91983),r(76269),r(25282),r(81860),r(10832),r(50054),r(15177),r(48806),r(76217),r(97732),r(66304),r(39833);var n=r(27466);e.exports=n.Symbol},5686:(e,t,r)=>{"use strict";r(89695),r(84940),r(24349),r(52278);var n=r(46292);e.exports=n.f("iterator")},84553:(e,t,r)=>{"use strict";r(6701),r(15177);var n=r(46292);e.exports=n.f("toPrimitive")},56266:(e,t,r)=>{"use strict";e.exports=r(13256)},95370:(e,t,r)=>{"use strict";e.exports=r(81152)},51139:(e,t,r)=>{"use strict";e.exports=r(24945)},8805:(e,t,r)=>{"use strict";e.exports=r(19779)},52815:(e,t,r)=>{"use strict";e.exports=r(11193)},89930:(e,t,r)=>{"use strict";e.exports=r(13516)},55414:(e,t,r)=>{"use strict";e.exports=r(7096)},16967:(e,t,r)=>{"use strict";e.exports=r(99221)},36530:(e,t,r)=>{"use strict";e.exports=r(84824)},28915:(e,t,r)=>{"use strict";e.exports=r(50065)},80291:(e,t,r)=>{"use strict";e.exports=r(51285)},63013:(e,t,r)=>{"use strict";e.exports=r(88259)},11321:(e,t,r)=>{"use strict";e.exports=r(38823)},91747:(e,t,r)=>{"use strict";e.exports=r(89085)},46973:(e,t,r)=>{"use strict";e.exports=r(96819)},21806:(e,t,r)=>{"use strict";e.exports=r(47972)},13256:(e,t,r)=>{"use strict";var n=r(77965);e.exports=n},81152:(e,t,r)=>{"use strict";var n=r(3641);e.exports=n},24945:(e,t,r)=>{"use strict";var n=r(17318);e.exports=n},19779:(e,t,r)=>{"use strict";var n=r(56384);e.exports=n},11193:(e,t,r)=>{"use strict";var n=r(73682);e.exports=n},13516:(e,t,r)=>{"use strict";var n=r(9143);e.exports=n},7096:(e,t,r)=>{"use strict";var n=r(88497);e.exports=n},99221:(e,t,r)=>{"use strict";var n=r(40658);e.exports=n},84824:(e,t,r)=>{"use strict";var n=r(33547);e.exports=n},50065:(e,t,r)=>{"use strict";var n=r(91420);e.exports=n},51285:(e,t,r)=>{"use strict";var n=r(65042);e.exports=n},88259:(e,t,r)=>{"use strict";var n=r(53716);e.exports=n},38823:(e,t,r)=>{"use strict";var n=r(14024);e.exports=n},89085:(e,t,r)=>{"use strict";var n=r(48948);r(30639),r(64701),r(22581),r(62852),r(93698),r(94272),r(8275),r(34858),r(9691),r(4739),e.exports=n},96819:(e,t,r)=>{"use strict";var n=r(5536);e.exports=n},47972:(e,t,r)=>{"use strict";var n=r(73963);e.exports=n},7035:(e,t,r)=>{"use strict";var n=r(87758),o=r(34956),a=TypeError;e.exports=function(e){if(n(e))return e;throw new a(o(e)+" is not a function")}},65743:(e,t,r)=>{"use strict";var n=r(12168),o=r(34956),a=TypeError;e.exports=function(e){if(n(e))return e;throw new a(o(e)+" is not a constructor")}},46511:(e,t,r)=>{"use strict";var n=r(83502),o=String,a=TypeError;e.exports=function(e){if(n(e))return e;throw new a("Can't set "+o(e)+" as a prototype")}},20872:e=>{"use strict";e.exports=function(){}},58344:(e,t,r)=>{"use strict";var n=r(24500),o=TypeError;e.exports=function(e,t){if(n(t,e))return e;throw new o("Incorrect invocation")}},56276:(e,t,r)=>{"use strict";var n=r(87801),o=String,a=TypeError;e.exports=function(e){if(n(e))return e;throw new a(o(e)+" is not an object")}},50926:(e,t,r)=>{"use strict";var n=r(92658).forEach,o=r(23707)("forEach");e.exports=o?[].forEach:function(e){return n(this,e,arguments.length>1?arguments[1]:void 0)}},77441:(e,t,r)=>{"use strict";var n=r(37275),o=r(21006),a=r(88878),i=r(37646),s=r(44712),l=r(12168),c=r(47555),u=r(26187),d=r(74528),f=r(50404),p=Array;e.exports=function(e){var t=a(e),r=l(this),h=arguments.length,m=h>1?arguments[1]:void 0,g=void 0!==m;g&&(m=n(m,h>2?arguments[2]:void 0));var v,y,b,w,x,S,A=f(t),k=0;if(!A||this===p&&s(A))for(v=c(t),y=r?new this(v):p(v);v>k;k++)S=g?m(t[k],k):t[k],u(y,k,S);else for(y=r?new this:[],x=(w=d(t,A)).next;!(b=o(x,w)).done;k++)S=g?i(w,m,[b.value,k],!0):b.value,u(y,k,S);return y.length=k,y}},63624:(e,t,r)=>{"use strict";var n=r(90698),o=r(8925),a=r(47555),i=function(e){return function(t,r,i){var s=n(t),l=a(s);if(0===l)return!e&&-1;var c,u=o(i,l);if(e&&r!==r){for(;l>u;)if((c=s[u++])!==c)return!0}else for(;l>u;u++)if((e||u in s)&&s[u]===r)return e||u||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},92658:(e,t,r)=>{"use strict";var n=r(37275),o=r(32495),a=r(2094),i=r(88878),s=r(47555),l=r(37732),c=o([].push),u=function(e){var t=1===e,r=2===e,o=3===e,u=4===e,d=6===e,f=7===e,p=5===e||d;return function(h,m,g,v){for(var y,b,w=i(h),x=a(w),S=s(x),A=n(m,g),k=0,C=v||l,I=t?C(h,S):r||f?C(h,0):void 0;S>k;k++)if((p||k in x)&&(b=A(y=x[k],k,w),e))if(t)I[k]=b;else if(b)switch(e){case 3:return!0;case 5:return y;case 6:return k;case 2:c(I,y)}else switch(e){case 4:return!1;case 7:c(I,y)}return d?-1:o||u?u:I}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterReject:u(7)}},7156:(e,t,r)=>{"use strict";var n=r(24648),o=r(47004),a=r(9346),i=o("species");e.exports=function(e){return a>=51||!n((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},23707:(e,t,r)=>{"use strict";var n=r(24648);e.exports=function(e,t){var r=[][e];return!!r&&n((function(){r.call(null,t||function(){return 1},1)}))}},76191:(e,t,r)=>{"use strict";var n=r(7035),o=r(88878),a=r(2094),i=r(47555),s=TypeError,l="Reduce of empty array with no initial value",c=function(e){return function(t,r,c,u){var d=o(t),f=a(d),p=i(d);if(n(r),0===p&&c<2)throw new s(l);var h=e?p-1:0,m=e?-1:1;if(c<2)for(;;){if(h in f){u=f[h],h+=m;break}if(h+=m,e?h<0:p<=h)throw new s(l)}for(;e?h>=0:p>h;h+=m)h in f&&(u=r(u,f[h],h,d));return u}};e.exports={left:c(!1),right:c(!0)}},46342:(e,t,r)=>{"use strict";var n=r(50771),o=r(95309),a=TypeError,i=Object.getOwnPropertyDescriptor,s=n&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}();e.exports=s?function(e,t){if(o(e)&&!i(e,"length").writable)throw new a("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t}},81479:(e,t,r)=>{"use strict";var n=r(32495);e.exports=n([].slice)},52205:(e,t,r)=>{"use strict";var n=r(81479),o=Math.floor,a=function(e,t){var r=e.length;if(r<8)for(var i,s,l=1;l<r;){for(s=l,i=e[l];s&&t(e[s-1],i)>0;)e[s]=e[--s];s!==l++&&(e[s]=i)}else for(var c=o(r/2),u=a(n(e,0,c),t),d=a(n(e,c),t),f=u.length,p=d.length,h=0,m=0;h<f||m<p;)e[h+m]=h<f&&m<p?t(u[h],d[m])<=0?u[h++]:d[m++]:h<f?u[h++]:d[m++];return e};e.exports=a},24422:(e,t,r)=>{"use strict";var n=r(95309),o=r(12168),a=r(87801),i=r(47004)("species"),s=Array;e.exports=function(e){var t;return n(e)&&(t=e.constructor,(o(t)&&(t===s||n(t.prototype))||a(t)&&null===(t=t[i]))&&(t=void 0)),void 0===t?s:t}},37732:(e,t,r)=>{"use strict";var n=r(24422);e.exports=function(e,t){return new(n(e))(0===t?0:t)}},37646:(e,t,r)=>{"use strict";var n=r(56276),o=r(86158);e.exports=function(e,t,r,a){try{return a?t(n(r)[0],r[1]):t(r)}catch(i){o(e,"throw",i)}}},74797:(e,t,r)=>{"use strict";var n=r(47004)("iterator"),o=!1;try{var a=0,i={next:function(){return{done:!!a++}},return:function(){o=!0}};i[n]=function(){return this},Array.from(i,(function(){throw 2}))}catch(s){}e.exports=function(e,t){try{if(!t&&!o)return!1}catch(s){return!1}var r=!1;try{var a={};a[n]=function(){return{next:function(){return{done:r=!0}}}},e(a)}catch(s){}return r}},72851:(e,t,r)=>{"use strict";var n=r(32495),o=n({}.toString),a=n("".slice);e.exports=function(e){return a(o(e),8,-1)}},77168:(e,t,r)=>{"use strict";var n=r(47715),o=r(87758),a=r(72851),i=r(47004)("toStringTag"),s=Object,l="Arguments"===a(function(){return arguments}());e.exports=n?a:function(e){var t,r,n;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(r=function(e,t){try{return e[t]}catch(r){}}(t=s(e),i))?r:l?a(t):"Object"===(n=a(t))&&o(t.callee)?"Arguments":n}},46323:(e,t,r)=>{"use strict";var n=r(47004)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(r){try{return t[n]=!1,"/./"[e](t)}catch(o){}}return!1}},50354:(e,t,r)=>{"use strict";var n=r(24648);e.exports=!n((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},78242:e=>{"use strict";e.exports=function(e,t){return{value:e,done:t}}},68742:(e,t,r)=>{"use strict";var n=r(50771),o=r(47848),a=r(58605);e.exports=n?function(e,t,r){return o.f(e,t,a(1,r))}:function(e,t,r){return e[t]=r,e}},58605:e=>{"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},26187:(e,t,r)=>{"use strict";var n=r(50771),o=r(47848),a=r(58605);e.exports=function(e,t,r){n?o.f(e,t,a(0,r)):e[t]=r}},56329:(e,t,r)=>{"use strict";var n=r(32495),o=r(24648),a=r(33368).start,i=RangeError,s=isFinite,l=Math.abs,c=Date.prototype,u=c.toISOString,d=n(c.getTime),f=n(c.getUTCDate),p=n(c.getUTCFullYear),h=n(c.getUTCHours),m=n(c.getUTCMilliseconds),g=n(c.getUTCMinutes),v=n(c.getUTCMonth),y=n(c.getUTCSeconds);e.exports=o((function(){return"0385-07-25T07:06:39.999Z"!==u.call(new Date(-50000000000001))}))||!o((function(){u.call(new Date(NaN))}))?function(){if(!s(d(this)))throw new i("Invalid time value");var e=this,t=p(e),r=m(e),n=t<0?"-":t>9999?"+":"";return n+a(l(t),n?6:4,0)+"-"+a(v(e)+1,2,0)+"-"+a(f(e),2,0)+"T"+a(h(e),2,0)+":"+a(g(e),2,0)+":"+a(y(e),2,0)+"."+a(r,3,0)+"Z"}:u},73927:(e,t,r)=>{"use strict";var n=r(47848);e.exports=function(e,t,r){return n.f(e,t,r)}},88203:(e,t,r)=>{"use strict";var n=r(68742);e.exports=function(e,t,r,o){return o&&o.enumerable?e[t]=r:n(e,t,r),e}},27102:(e,t,r)=>{"use strict";var n=r(88203);e.exports=function(e,t,r){for(var o in t)r&&r.unsafe&&e[o]?e[o]=t[o]:n(e,o,t[o],r);return e}},47432:(e,t,r)=>{"use strict";var n=r(9227),o=Object.defineProperty;e.exports=function(e,t){try{o(n,e,{value:t,configurable:!0,writable:!0})}catch(r){n[e]=t}return t}},9243:(e,t,r)=>{"use strict";var n=r(34956),o=TypeError;e.exports=function(e,t){if(!delete e[t])throw new o("Cannot delete property "+n(t)+" of "+n(e))}},50771:(e,t,r)=>{"use strict";var n=r(24648);e.exports=!n((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))},14804:(e,t,r)=>{"use strict";var n=r(9227),o=r(87801),a=n.document,i=o(a)&&o(a.createElement);e.exports=function(e){return i?a.createElement(e):{}}},28532:e=>{"use strict";var t=TypeError;e.exports=function(e){if(e>9007199254740991)throw t("Maximum allowed index exceeded");return e}},77427:e=>{"use strict";e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},32428:e=>{"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},428:(e,t,r)=>{"use strict";var n=r(85942).match(/firefox\/(\d+)/i);e.exports=!!n&&+n[1]},73852:(e,t,r)=>{"use strict";var n=r(85942);e.exports=/MSIE|Trident/.test(n)},37062:(e,t,r)=>{"use strict";var n=r(98708);e.exports="NODE"===n},85942:(e,t,r)=>{"use strict";var n=r(9227).navigator,o=n&&n.userAgent;e.exports=o?String(o):""},9346:(e,t,r)=>{"use strict";var n,o,a=r(9227),i=r(85942),s=a.process,l=a.Deno,c=s&&s.versions||l&&l.version,u=c&&c.v8;u&&(o=(n=u.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&i&&(!(n=i.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=i.match(/Chrome\/(\d+)/))&&(o=+n[1]),e.exports=o},55710:(e,t,r)=>{"use strict";var n=r(85942).match(/AppleWebKit\/(\d+)\./);e.exports=!!n&&+n[1]},98708:(e,t,r)=>{"use strict";var n=r(9227),o=r(85942),a=r(72851),i=function(e){return o.slice(0,e.length)===e};e.exports=i("Bun/")?"BUN":i("Cloudflare-Workers")?"CLOUDFLARE":i("Deno/")?"DENO":i("Node.js/")?"NODE":n.Bun&&"string"==typeof Bun.version?"BUN":n.Deno&&"object"==typeof Deno.version?"DENO":"process"===a(n.process)?"NODE":n.window&&n.document?"BROWSER":"REST"},43119:(e,t,r)=>{"use strict";var n=r(9227),o=r(48700),a=r(91085),i=r(87758),s=r(54602).f,l=r(63979),c=r(27466),u=r(37275),d=r(68742),f=r(38224);r(68836);var p=function(e){var t=function(r,n,a){if(this instanceof t){switch(arguments.length){case 0:return new e;case 1:return new e(r);case 2:return new e(r,n)}return new e(r,n,a)}return o(e,this,arguments)};return t.prototype=e.prototype,t};e.exports=function(e,t){var r,o,h,m,g,v,y,b,w,x=e.target,S=e.global,A=e.stat,k=e.proto,C=S?n:A?n[x]:n[x]&&n[x].prototype,I=S?c:c[x]||d(c,x,{})[x],E=I.prototype;for(m in t)o=!(r=l(S?m:x+(A?".":"#")+m,e.forced))&&C&&f(C,m),v=I[m],o&&(y=e.dontCallGetSet?(w=s(C,m))&&w.value:C[m]),g=o&&y?y:t[m],(r||k||typeof v!=typeof g)&&(b=e.bind&&o?u(g,n):e.wrap&&o?p(g):k&&i(g)?a(g):g,(e.sham||g&&g.sham||v&&v.sham)&&d(b,"sham",!0),d(I,m,b),k&&(f(c,h=x+"Prototype")||d(c,h,{}),d(c[h],m,g),e.real&&E&&(r||!E[m])&&d(E,m,g)))}},24648:e=>{"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},48700:(e,t,r)=>{"use strict";var n=r(46293),o=Function.prototype,a=o.apply,i=o.call;e.exports="object"==typeof Reflect&&Reflect.apply||(n?i.bind(a):function(){return i.apply(a,arguments)})},37275:(e,t,r)=>{"use strict";var n=r(91085),o=r(7035),a=r(46293),i=n(n.bind);e.exports=function(e,t){return o(e),void 0===t?e:a?i(e,t):function(){return e.apply(t,arguments)}}},46293:(e,t,r)=>{"use strict";var n=r(24648);e.exports=!n((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},7269:(e,t,r)=>{"use strict";var n=r(32495),o=r(7035),a=r(87801),i=r(38224),s=r(81479),l=r(46293),c=Function,u=n([].concat),d=n([].join),f={};e.exports=l?c.bind:function(e){var t=o(this),r=t.prototype,n=s(arguments,1),l=function(){var r=u(n,s(arguments));return this instanceof l?function(e,t,r){if(!i(f,t)){for(var n=[],o=0;o<t;o++)n[o]="a["+o+"]";f[t]=c("C,a","return new C("+d(n,",")+")")}return f[t](e,r)}(t,r.length,r):t.apply(e,r)};return a(r)&&(l.prototype=r),l}},21006:(e,t,r)=>{"use strict";var n=r(46293),o=Function.prototype.call;e.exports=n?o.bind(o):function(){return o.apply(o,arguments)}},75741:(e,t,r)=>{"use strict";var n=r(50771),o=r(38224),a=Function.prototype,i=n&&Object.getOwnPropertyDescriptor,s=o(a,"name"),l=s&&"something"===function(){}.name,c=s&&(!n||n&&i(a,"name").configurable);e.exports={EXISTS:s,PROPER:l,CONFIGURABLE:c}},37835:(e,t,r)=>{"use strict";var n=r(32495),o=r(7035);e.exports=function(e,t,r){try{return n(o(Object.getOwnPropertyDescriptor(e,t)[r]))}catch(a){}}},91085:(e,t,r)=>{"use strict";var n=r(72851),o=r(32495);e.exports=function(e){if("Function"===n(e))return o(e)}},32495:(e,t,r)=>{"use strict";var n=r(46293),o=Function.prototype,a=o.call,i=n&&o.bind.bind(a,a);e.exports=n?i:function(e){return function(){return a.apply(e,arguments)}}},14407:(e,t,r)=>{"use strict";var n=r(9227),o=r(27466);e.exports=function(e,t){var r=o[e+"Prototype"],a=r&&r[t];if(a)return a;var i=n[e],s=i&&i.prototype;return s&&s[t]}},20330:(e,t,r)=>{"use strict";var n=r(27466),o=r(9227),a=r(87758),i=function(e){return a(e)?e:void 0};e.exports=function(e,t){return arguments.length<2?i(n[e])||i(o[e]):n[e]&&n[e][t]||o[e]&&o[e][t]}},50404:(e,t,r)=>{"use strict";var n=r(77168),o=r(40323),a=r(92644),i=r(15034),s=r(47004)("iterator");e.exports=function(e){if(!a(e))return o(e,s)||o(e,"@@iterator")||i[n(e)]}},74528:(e,t,r)=>{"use strict";var n=r(21006),o=r(7035),a=r(56276),i=r(34956),s=r(50404),l=TypeError;e.exports=function(e,t){var r=arguments.length<2?s(e):t;if(o(r))return a(n(r,e));throw new l(i(e)+" is not iterable")}},25388:(e,t,r)=>{"use strict";var n=r(32495),o=r(95309),a=r(87758),i=r(72851),s=r(69996),l=n([].push);e.exports=function(e){if(a(e))return e;if(o(e)){for(var t=e.length,r=[],n=0;n<t;n++){var c=e[n];"string"==typeof c?l(r,c):"number"!=typeof c&&"Number"!==i(c)&&"String"!==i(c)||l(r,s(c))}var u=r.length,d=!0;return function(e,t){if(d)return d=!1,t;if(o(this))return t;for(var n=0;n<u;n++)if(r[n]===e)return t}}}},40323:(e,t,r)=>{"use strict";var n=r(7035),o=r(92644);e.exports=function(e,t){var r=e[t];return o(r)?void 0:n(r)}},9227:function(e,t,r){"use strict";var n=function(e){return e&&e.Math===Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof r.g&&r.g)||n("object"==typeof this&&this)||function(){return this}()||Function("return this")()},38224:(e,t,r)=>{"use strict";var n=r(32495),o=r(88878),a=n({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,t){return a(o(e),t)}},18094:e=>{"use strict";e.exports={}},15564:(e,t,r)=>{"use strict";var n=r(20330);e.exports=n("document","documentElement")},93148:(e,t,r)=>{"use strict";var n=r(50771),o=r(24648),a=r(14804);e.exports=!n&&!o((function(){return 7!==Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},2094:(e,t,r)=>{"use strict";var n=r(32495),o=r(24648),a=r(72851),i=Object,s=n("".split);e.exports=o((function(){return!i("z").propertyIsEnumerable(0)}))?function(e){return"String"===a(e)?s(e,""):i(e)}:i},33043:(e,t,r)=>{"use strict";var n=r(32495),o=r(87758),a=r(68836),i=n(Function.toString);o(a.inspectSource)||(a.inspectSource=function(e){return i(e)}),e.exports=a.inspectSource},6080:(e,t,r)=>{"use strict";var n,o,a,i=r(29587),s=r(9227),l=r(87801),c=r(68742),u=r(38224),d=r(68836),f=r(36846),p=r(18094),h="Object already initialized",m=s.TypeError,g=s.WeakMap;if(i||d.state){var v=d.state||(d.state=new g);v.get=v.get,v.has=v.has,v.set=v.set,n=function(e,t){if(v.has(e))throw new m(h);return t.facade=e,v.set(e,t),t},o=function(e){return v.get(e)||{}},a=function(e){return v.has(e)}}else{var y=f("state");p[y]=!0,n=function(e,t){if(u(e,y))throw new m(h);return t.facade=e,c(e,y,t),t},o=function(e){return u(e,y)?e[y]:{}},a=function(e){return u(e,y)}}e.exports={set:n,get:o,has:a,enforce:function(e){return a(e)?o(e):n(e,{})},getterFor:function(e){return function(t){var r;if(!l(t)||(r=o(t)).type!==e)throw new m("Incompatible receiver, "+e+" required");return r}}}},44712:(e,t,r)=>{"use strict";var n=r(47004),o=r(15034),a=n("iterator"),i=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||i[a]===e)}},95309:(e,t,r)=>{"use strict";var n=r(72851);e.exports=Array.isArray||function(e){return"Array"===n(e)}},87758:e=>{"use strict";var t="object"==typeof document&&document.all;e.exports="undefined"==typeof t&&void 0!==t?function(e){return"function"==typeof e||e===t}:function(e){return"function"==typeof e}},12168:(e,t,r)=>{"use strict";var n=r(32495),o=r(24648),a=r(87758),i=r(77168),s=r(20330),l=r(33043),c=function(){},u=s("Reflect","construct"),d=/^\s*(?:class|function)\b/,f=n(d.exec),p=!d.test(c),h=function(e){if(!a(e))return!1;try{return u(c,[],e),!0}catch(t){return!1}},m=function(e){if(!a(e))return!1;switch(i(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return p||!!f(d,l(e))}catch(t){return!0}};m.sham=!0,e.exports=!u||o((function(){var e;return h(h.call)||!h(Object)||!h((function(){e=!0}))||e}))?m:h},63979:(e,t,r)=>{"use strict";var n=r(24648),o=r(87758),a=/#|\.prototype\./,i=function(e,t){var r=l[s(e)];return r===u||r!==c&&(o(t)?n(t):!!t)},s=i.normalize=function(e){return String(e).replace(a,".").toLowerCase()},l=i.data={},c=i.NATIVE="N",u=i.POLYFILL="P";e.exports=i},92644:e=>{"use strict";e.exports=function(e){return null===e||void 0===e}},87801:(e,t,r)=>{"use strict";var n=r(87758);e.exports=function(e){return"object"==typeof e?null!==e:n(e)}},83502:(e,t,r)=>{"use strict";var n=r(87801);e.exports=function(e){return n(e)||null===e}},12724:e=>{"use strict";e.exports=!0},66019:(e,t,r)=>{"use strict";var n=r(87801),o=r(72851),a=r(47004)("match");e.exports=function(e){var t;return n(e)&&(void 0!==(t=e[a])?!!t:"RegExp"===o(e))}},12582:(e,t,r)=>{"use strict";var n=r(20330),o=r(87758),a=r(24500),i=r(76851),s=Object;e.exports=i?function(e){return"symbol"==typeof e}:function(e){var t=n("Symbol");return o(t)&&a(t.prototype,s(e))}},86158:(e,t,r)=>{"use strict";var n=r(21006),o=r(56276),a=r(40323);e.exports=function(e,t,r){var i,s;o(e);try{if(!(i=a(e,"return"))){if("throw"===t)throw r;return r}i=n(i,e)}catch(l){s=!0,i=l}if("throw"===t)throw r;if(s)throw i;return o(i),r}},91745:(e,t,r)=>{"use strict";var n=r(77848).IteratorPrototype,o=r(14207),a=r(58605),i=r(39284),s=r(15034),l=function(){return this};e.exports=function(e,t,r,c){var u=t+" Iterator";return e.prototype=o(n,{next:a(+!c,r)}),i(e,u,!1,!0),s[u]=l,e}},60947:(e,t,r)=>{"use strict";var n=r(43119),o=r(21006),a=r(12724),i=r(75741),s=r(87758),l=r(91745),c=r(9984),u=r(75692),d=r(39284),f=r(68742),p=r(88203),h=r(47004),m=r(15034),g=r(77848),v=i.PROPER,y=i.CONFIGURABLE,b=g.IteratorPrototype,w=g.BUGGY_SAFARI_ITERATORS,x=h("iterator"),S="keys",A="values",k="entries",C=function(){return this};e.exports=function(e,t,r,i,h,g,I){l(r,t,i);var E,D,T,O=function(e){if(e===h&&_)return _;if(!w&&e&&e in j)return j[e];switch(e){case S:case A:case k:return function(){return new r(this,e)}}return function(){return new r(this)}},M=t+" Iterator",P=!1,j=e.prototype,R=j[x]||j["@@iterator"]||h&&j[h],_=!w&&R||O(h),N="Array"===t&&j.entries||R;if(N&&(E=c(N.call(new e)))!==Object.prototype&&E.next&&(a||c(E)===b||(u?u(E,b):s(E[x])||p(E,x,C)),d(E,M,!0,!0),a&&(m[M]=C)),v&&h===A&&R&&R.name!==A&&(!a&&y?f(j,"name",A):(P=!0,_=function(){return o(R,this)})),h)if(D={values:O(A),keys:g?_:O(S),entries:O(k)},I)for(T in D)(w||P||!(T in j))&&p(j,T,D[T]);else n({target:t,proto:!0,forced:w||P},D);return a&&!I||j[x]===_||p(j,x,_,{name:h}),m[t]=_,D}},77848:(e,t,r)=>{"use strict";var n,o,a,i=r(24648),s=r(87758),l=r(87801),c=r(14207),u=r(9984),d=r(88203),f=r(47004),p=r(12724),h=f("iterator"),m=!1;[].keys&&("next"in(a=[].keys())?(o=u(u(a)))!==Object.prototype&&(n=o):m=!0),!l(n)||i((function(){var e={};return n[h].call(e)!==e}))?n={}:p&&(n=c(n)),s(n[h])||d(n,h,(function(){return this})),e.exports={IteratorPrototype:n,BUGGY_SAFARI_ITERATORS:m}},15034:e=>{"use strict";e.exports={}},47555:(e,t,r)=>{"use strict";var n=r(24989);e.exports=function(e){return n(e.length)}},13852:e=>{"use strict";var t=Math.ceil,r=Math.floor;e.exports=Math.trunc||function(e){var n=+e;return(n>0?r:t)(n)}},26574:(e,t,r)=>{"use strict";var n=r(66019),o=TypeError;e.exports=function(e){if(n(e))throw new o("The method doesn't accept regular expressions");return e}},7750:(e,t,r)=>{"use strict";var n=r(9227),o=r(24648),a=r(32495),i=r(69996),s=r(67877).trim,l=r(52183),c=n.parseInt,u=n.Symbol,d=u&&u.iterator,f=/^[+-]?0x/i,p=a(f.exec),h=8!==c(l+"08")||22!==c(l+"0x16")||d&&!o((function(){c(Object(d))}));e.exports=h?function(e,t){var r=s(i(e));return c(r,t>>>0||(p(f,r)?16:10))}:c},86238:(e,t,r)=>{"use strict";var n=r(50771),o=r(32495),a=r(21006),i=r(24648),s=r(23423),l=r(98918),c=r(94362),u=r(88878),d=r(2094),f=Object.assign,p=Object.defineProperty,h=o([].concat);e.exports=!f||i((function(){if(n&&1!==f({b:1},f(p({},"a",{enumerable:!0,get:function(){p(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},r=Symbol("assign detection"),o="abcdefghijklmnopqrst";return e[r]=7,o.split("").forEach((function(e){t[e]=e})),7!==f({},e)[r]||s(f({},t)).join("")!==o}))?function(e,t){for(var r=u(e),o=arguments.length,i=1,f=l.f,p=c.f;o>i;)for(var m,g=d(arguments[i++]),v=f?h(s(g),f(g)):s(g),y=v.length,b=0;y>b;)m=v[b++],n&&!a(p,g,m)||(r[m]=g[m]);return r}:f},14207:(e,t,r)=>{"use strict";var n,o=r(56276),a=r(3072),i=r(32428),s=r(18094),l=r(15564),c=r(14804),u=r(36846),d="prototype",f="script",p=u("IE_PROTO"),h=function(){},m=function(e){return"<"+f+">"+e+"</"+f+">"},g=function(e){e.write(m("")),e.close();var t=e.parentWindow.Object;return e=null,t},v=function(){try{n=new ActiveXObject("htmlfile")}catch(t){}v="undefined"!=typeof document?document.domain&&n?g(n):function(){var e,t=c("iframe"),r="java"+f+":";return t.style.display="none",l.appendChild(t),t.src=String(r),(e=t.contentWindow.document).open(),e.write(m("document.F=Object")),e.close(),e.F}():g(n);for(var e=i.length;e--;)delete v[d][i[e]];return v()};s[p]=!0,e.exports=Object.create||function(e,t){var r;return null!==e?(h[d]=o(e),r=new h,h[d]=null,r[p]=e):r=v(),void 0===t?r:a.f(r,t)}},3072:(e,t,r)=>{"use strict";var n=r(50771),o=r(95761),a=r(47848),i=r(56276),s=r(90698),l=r(23423);t.f=n&&!o?Object.defineProperties:function(e,t){i(e);for(var r,n=s(t),o=l(t),c=o.length,u=0;c>u;)a.f(e,r=o[u++],n[r]);return e}},47848:(e,t,r)=>{"use strict";var n=r(50771),o=r(93148),a=r(95761),i=r(56276),s=r(7602),l=TypeError,c=Object.defineProperty,u=Object.getOwnPropertyDescriptor,d="enumerable",f="configurable",p="writable";t.f=n?a?function(e,t,r){if(i(e),t=s(t),i(r),"function"===typeof e&&"prototype"===t&&"value"in r&&p in r&&!r[p]){var n=u(e,t);n&&n[p]&&(e[t]=r.value,r={configurable:f in r?r[f]:n[f],enumerable:d in r?r[d]:n[d],writable:!1})}return c(e,t,r)}:c:function(e,t,r){if(i(e),t=s(t),i(r),o)try{return c(e,t,r)}catch(n){}if("get"in r||"set"in r)throw new l("Accessors not supported");return"value"in r&&(e[t]=r.value),e}},54602:(e,t,r)=>{"use strict";var n=r(50771),o=r(21006),a=r(94362),i=r(58605),s=r(90698),l=r(7602),c=r(38224),u=r(93148),d=Object.getOwnPropertyDescriptor;t.f=n?d:function(e,t){if(e=s(e),t=l(t),u)try{return d(e,t)}catch(r){}if(c(e,t))return i(!o(a.f,e,t),e[t])}},75451:(e,t,r)=>{"use strict";var n=r(72851),o=r(90698),a=r(62223).f,i=r(81479),s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){return s&&"Window"===n(e)?function(e){try{return a(e)}catch(t){return i(s)}}(e):a(o(e))}},62223:(e,t,r)=>{"use strict";var n=r(91409),o=r(32428).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return n(e,o)}},98918:(e,t)=>{"use strict";t.f=Object.getOwnPropertySymbols},9984:(e,t,r)=>{"use strict";var n=r(38224),o=r(87758),a=r(88878),i=r(36846),s=r(50354),l=i("IE_PROTO"),c=Object,u=c.prototype;e.exports=s?c.getPrototypeOf:function(e){var t=a(e);if(n(t,l))return t[l];var r=t.constructor;return o(r)&&t instanceof r?r.prototype:t instanceof c?u:null}},24500:(e,t,r)=>{"use strict";var n=r(32495);e.exports=n({}.isPrototypeOf)},91409:(e,t,r)=>{"use strict";var n=r(32495),o=r(38224),a=r(90698),i=r(63624).indexOf,s=r(18094),l=n([].push);e.exports=function(e,t){var r,n=a(e),c=0,u=[];for(r in n)!o(s,r)&&o(n,r)&&l(u,r);for(;t.length>c;)o(n,r=t[c++])&&(~i(u,r)||l(u,r));return u}},23423:(e,t,r)=>{"use strict";var n=r(91409),o=r(32428);e.exports=Object.keys||function(e){return n(e,o)}},94362:(e,t)=>{"use strict";var r={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,o=n&&!r.call({1:2},1);t.f=o?function(e){var t=n(this,e);return!!t&&t.enumerable}:r},75692:(e,t,r)=>{"use strict";var n=r(37835),o=r(87801),a=r(39731),i=r(46511);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,r={};try{(e=n(Object.prototype,"__proto__","set"))(r,[]),t=r instanceof Array}catch(s){}return function(r,n){return a(r),i(n),o(r)?(t?e(r,n):r.__proto__=n,r):r}}():void 0)},26974:(e,t,r)=>{"use strict";var n=r(50771),o=r(24648),a=r(32495),i=r(9984),s=r(23423),l=r(90698),c=a(r(94362).f),u=a([].push),d=n&&o((function(){var e=Object.create(null);return e[2]=2,!c(e,2)})),f=function(e){return function(t){for(var r,o=l(t),a=s(o),f=d&&null===i(o),p=a.length,h=0,m=[];p>h;)r=a[h++],n&&!(f?r in o:c(o,r))||u(m,e?[r,o[r]]:o[r]);return m}};e.exports={entries:f(!0),values:f(!1)}},114:(e,t,r)=>{"use strict";var n=r(47715),o=r(77168);e.exports=n?{}.toString:function(){return"[object "+o(this)+"]"}},52169:(e,t,r)=>{"use strict";var n=r(21006),o=r(87758),a=r(87801),i=TypeError;e.exports=function(e,t){var r,s;if("string"===t&&o(r=e.toString)&&!a(s=n(r,e)))return s;if(o(r=e.valueOf)&&!a(s=n(r,e)))return s;if("string"!==t&&o(r=e.toString)&&!a(s=n(r,e)))return s;throw new i("Can't convert object to primitive value")}},24174:(e,t,r)=>{"use strict";var n=r(20330),o=r(32495),a=r(62223),i=r(98918),s=r(56276),l=o([].concat);e.exports=n("Reflect","ownKeys")||function(e){var t=a.f(s(e)),r=i.f;return r?l(t,r(e)):t}},27466:e=>{"use strict";e.exports={}},39731:(e,t,r)=>{"use strict";var n=r(92644),o=TypeError;e.exports=function(e){if(n(e))throw new o("Can't call method on "+e);return e}},37566:(e,t,r)=>{"use strict";var n=r(9227),o=r(50771),a=Object.getOwnPropertyDescriptor;e.exports=function(e){if(!o)return n[e];var t=a(n,e);return t&&t.value}},42609:(e,t,r)=>{"use strict";var n=r(9227),o=r(48700),a=r(87758),i=r(98708),s=r(85942),l=r(81479),c=r(65343),u=n.Function,d=/MSIE .\./.test(s)||"BUN"===i&&function(){var e=n.Bun.version.split(".");return e.length<3||"0"===e[0]&&(e[1]<3||"3"===e[1]&&"0"===e[2])}();e.exports=function(e,t){var r=t?2:1;return d?function(n,i){var s=c(arguments.length,1)>r,d=a(n)?n:u(n),f=s?l(arguments,r):[],p=s?function(){o(d,this,f)}:d;return t?e(p,i):e(p)}:e}},39284:(e,t,r)=>{"use strict";var n=r(47715),o=r(47848).f,a=r(68742),i=r(38224),s=r(114),l=r(47004)("toStringTag");e.exports=function(e,t,r,c){var u=r?e:e&&e.prototype;u&&(i(u,l)||o(u,l,{configurable:!0,value:t}),c&&!n&&a(u,"toString",s))}},36846:(e,t,r)=>{"use strict";var n=r(79708),o=r(21391),a=n("keys");e.exports=function(e){return a[e]||(a[e]=o(e))}},68836:(e,t,r)=>{"use strict";var n=r(12724),o=r(9227),a=r(47432),i="__core-js_shared__",s=e.exports=o[i]||a(i,{});(s.versions||(s.versions=[])).push({version:"3.39.0",mode:n?"pure":"global",copyright:"\xa9 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.39.0/LICENSE",source:"https://github.com/zloirock/core-js"})},79708:(e,t,r)=>{"use strict";var n=r(68836);e.exports=function(e,t){return n[e]||(n[e]=t||{})}},7842:(e,t,r)=>{"use strict";var n=r(32495),o=r(78630),a=r(69996),i=r(39731),s=n("".charAt),l=n("".charCodeAt),c=n("".slice),u=function(e){return function(t,r){var n,u,d=a(i(t)),f=o(r),p=d.length;return f<0||f>=p?e?"":void 0:(n=l(d,f))<55296||n>56319||f+1===p||(u=l(d,f+1))<56320||u>57343?e?s(d,f):n:e?c(d,f,f+2):u-56320+(n-55296<<10)+65536}};e.exports={codeAt:u(!1),charAt:u(!0)}},33368:(e,t,r)=>{"use strict";var n=r(32495),o=r(24989),a=r(69996),i=r(45478),s=r(39731),l=n(i),c=n("".slice),u=Math.ceil,d=function(e){return function(t,r,n){var i,d,f=a(s(t)),p=o(r),h=f.length,m=void 0===n?" ":a(n);return p<=h||""===m?f:((d=l(m,u((i=p-h)/m.length))).length>i&&(d=c(d,0,i)),e?f+d:d+f)}};e.exports={start:d(!1),end:d(!0)}},53568:(e,t,r)=>{"use strict";var n=r(32495),o=2147483647,a=/[^\0-\u007E]/,i=/[.\u3002\uFF0E\uFF61]/g,s="Overflow: input needs wider integers to process",l=RangeError,c=n(i.exec),u=Math.floor,d=String.fromCharCode,f=n("".charCodeAt),p=n([].join),h=n([].push),m=n("".replace),g=n("".split),v=n("".toLowerCase),y=function(e){return e+22+75*(e<26)},b=function(e,t,r){var n=0;for(e=r?u(e/700):e>>1,e+=u(e/t);e>455;)e=u(e/35),n+=36;return u(n+36*e/(e+38))},w=function(e){var t=[];e=function(e){for(var t=[],r=0,n=e.length;r<n;){var o=f(e,r++);if(o>=55296&&o<=56319&&r<n){var a=f(e,r++);56320===(64512&a)?h(t,((1023&o)<<10)+(1023&a)+65536):(h(t,o),r--)}else h(t,o)}return t}(e);var r,n,a=e.length,i=128,c=0,m=72;for(r=0;r<e.length;r++)(n=e[r])<128&&h(t,d(n));var g=t.length,v=g;for(g&&h(t,"-");v<a;){var w=o;for(r=0;r<e.length;r++)(n=e[r])>=i&&n<w&&(w=n);var x=v+1;if(w-i>u((o-c)/x))throw new l(s);for(c+=(w-i)*x,i=w,r=0;r<e.length;r++){if((n=e[r])<i&&++c>o)throw new l(s);if(n===i){for(var S=c,A=36;;){var k=A<=m?1:A>=m+26?26:A-m;if(S<k)break;var C=S-k,I=36-k;h(t,d(y(k+C%I))),S=u(C/I),A+=36}h(t,d(y(S))),m=b(c,x,v===g),c=0,v++}}c++,i++}return p(t,"")};e.exports=function(e){var t,r,n=[],o=g(m(v(e),i,"."),".");for(t=0;t<o.length;t++)r=o[t],h(n,c(a,r)?"xn--"+w(r):r);return p(n,".")}},45478:(e,t,r)=>{"use strict";var n=r(78630),o=r(69996),a=r(39731),i=RangeError;e.exports=function(e){var t=o(a(this)),r="",s=n(e);if(s<0||s===1/0)throw new i("Wrong number of repetitions");for(;s>0;(s>>>=1)&&(t+=t))1&s&&(r+=t);return r}},59687:(e,t,r)=>{"use strict";var n=r(75741).PROPER,o=r(24648),a=r(52183);e.exports=function(e){return o((function(){return!!a[e]()||"\u200b\x85\u180e"!=="\u200b\x85\u180e"[e]()||n&&a[e].name!==e}))}},67877:(e,t,r)=>{"use strict";var n=r(32495),o=r(39731),a=r(69996),i=r(52183),s=n("".replace),l=RegExp("^["+i+"]+"),c=RegExp("(^|[^"+i+"])["+i+"]+$"),u=function(e){return function(t){var r=a(o(t));return 1&e&&(r=s(r,l,"")),2&e&&(r=s(r,c,"$1")),r}};e.exports={start:u(1),end:u(2),trim:u(3)}},11674:(e,t,r)=>{"use strict";var n=r(9346),o=r(24648),a=r(9227).String;e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol("symbol detection");return!a(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&n&&n<41}))},80583:(e,t,r)=>{"use strict";var n=r(21006),o=r(20330),a=r(47004),i=r(88203);e.exports=function(){var e=o("Symbol"),t=e&&e.prototype,r=t&&t.valueOf,s=a("toPrimitive");t&&!t[s]&&i(t,s,(function(e){return n(r,this)}),{arity:1})}},88207:(e,t,r)=>{"use strict";var n=r(20330),o=r(32495),a=n("Symbol"),i=a.keyFor,s=o(a.prototype.valueOf);e.exports=a.isRegisteredSymbol||function(e){try{return void 0!==i(s(e))}catch(t){return!1}}},50273:(e,t,r)=>{"use strict";for(var n=r(79708),o=r(20330),a=r(32495),i=r(12582),s=r(47004),l=o("Symbol"),c=l.isWellKnownSymbol,u=o("Object","getOwnPropertyNames"),d=a(l.prototype.valueOf),f=n("wks"),p=0,h=u(l),m=h.length;p<m;p++)try{var g=h[p];i(l[g])&&s(g)}catch(v){}e.exports=function(e){if(c&&c(e))return!0;try{for(var t=d(e),r=0,n=u(f),o=n.length;r<o;r++)if(f[n[r]]==t)return!0}catch(v){}return!1}},38495:(e,t,r)=>{"use strict";var n=r(11674);e.exports=n&&!!Symbol.for&&!!Symbol.keyFor},8925:(e,t,r)=>{"use strict";var n=r(78630),o=Math.max,a=Math.min;e.exports=function(e,t){var r=n(e);return r<0?o(r+t,0):a(r,t)}},90698:(e,t,r)=>{"use strict";var n=r(2094),o=r(39731);e.exports=function(e){return n(o(e))}},78630:(e,t,r)=>{"use strict";var n=r(13852);e.exports=function(e){var t=+e;return t!==t||0===t?0:n(t)}},24989:(e,t,r)=>{"use strict";var n=r(78630),o=Math.min;e.exports=function(e){var t=n(e);return t>0?o(t,9007199254740991):0}},88878:(e,t,r)=>{"use strict";var n=r(39731),o=Object;e.exports=function(e){return o(n(e))}},42232:(e,t,r)=>{"use strict";var n=r(21006),o=r(87801),a=r(12582),i=r(40323),s=r(52169),l=r(47004),c=TypeError,u=l("toPrimitive");e.exports=function(e,t){if(!o(e)||a(e))return e;var r,l=i(e,u);if(l){if(void 0===t&&(t="default"),r=n(l,e,t),!o(r)||a(r))return r;throw new c("Can't convert object to primitive value")}return void 0===t&&(t="number"),s(e,t)}},7602:(e,t,r)=>{"use strict";var n=r(42232),o=r(12582);e.exports=function(e){var t=n(e,"string");return o(t)?t:t+""}},47715:(e,t,r)=>{"use strict";var n={};n[r(47004)("toStringTag")]="z",e.exports="[object z]"===String(n)},69996:(e,t,r)=>{"use strict";var n=r(77168),o=String;e.exports=function(e){if("Symbol"===n(e))throw new TypeError("Cannot convert a Symbol value to a string");return o(e)}},34956:e=>{"use strict";var t=String;e.exports=function(e){try{return t(e)}catch(r){return"Object"}}},21391:(e,t,r)=>{"use strict";var n=r(32495),o=0,a=Math.random(),i=n(1..toString);e.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+i(++o+a,36)}},77163:(e,t,r)=>{"use strict";var n=r(24648),o=r(47004),a=r(50771),i=r(12724),s=o("iterator");e.exports=!n((function(){var e=new URL("b?a=1&b=2&c=3","https://a"),t=e.searchParams,r=new URLSearchParams("a=1&a=2&b=3"),n="";return e.pathname="c%20d",t.forEach((function(e,r){t.delete("b"),n+=r+e})),r.delete("a",2),r.delete("b",void 0),i&&(!e.toJSON||!r.has("a",1)||r.has("a",2)||!r.has("a",void 0)||r.has("b"))||!t.size&&(i||!a)||!t.sort||"https://a/c%20d?a=1&c=3"!==e.href||"3"!==t.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!t[s]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("https://\u0442\u0435\u0441\u0442").host||"#%D0%B1"!==new URL("https://a#\u0431").hash||"a1c3"!==n||"x"!==new URL("https://x",void 0).host}))},76851:(e,t,r)=>{"use strict";var n=r(11674);e.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},95761:(e,t,r)=>{"use strict";var n=r(50771),o=r(24648);e.exports=n&&o((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},65343:e=>{"use strict";var t=TypeError;e.exports=function(e,r){if(e<r)throw new t("Not enough arguments");return e}},29587:(e,t,r)=>{"use strict";var n=r(9227),o=r(87758),a=n.WeakMap;e.exports=o(a)&&/native code/.test(String(a))},17098:(e,t,r)=>{"use strict";var n=r(27466),o=r(38224),a=r(46292),i=r(47848).f;e.exports=function(e){var t=n.Symbol||(n.Symbol={});o(t,e)||i(t,e,{value:a.f(e)})}},46292:(e,t,r)=>{"use strict";var n=r(47004);t.f=n},47004:(e,t,r)=>{"use strict";var n=r(9227),o=r(79708),a=r(38224),i=r(21391),s=r(11674),l=r(76851),c=n.Symbol,u=o("wks"),d=l?c.for||c:c&&c.withoutSetter||i;e.exports=function(e){return a(u,e)||(u[e]=s&&a(c,e)?c[e]:d("Symbol."+e)),u[e]}},52183:e=>{"use strict";e.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},20181:(e,t,r)=>{"use strict";var n=r(43119),o=r(24648),a=r(95309),i=r(87801),s=r(88878),l=r(47555),c=r(28532),u=r(26187),d=r(37732),f=r(7156),p=r(47004),h=r(9346),m=p("isConcatSpreadable"),g=h>=51||!o((function(){var e=[];return e[m]=!1,e.concat()[0]!==e})),v=function(e){if(!i(e))return!1;var t=e[m];return void 0!==t?!!t:a(e)};n({target:"Array",proto:!0,arity:1,forced:!g||!f("concat")},{concat:function(e){var t,r,n,o,a,i=s(this),f=d(i,0),p=0;for(t=-1,n=arguments.length;t<n;t++)if(v(a=-1===t?i:arguments[t]))for(o=l(a),c(p+o),r=0;r<o;r++,p++)r in a&&u(f,p,a[r]);else c(p+1),u(f,p++,a);return f.length=p,f}})},55026:(e,t,r)=>{"use strict";var n=r(43119),o=r(92658).every;n({target:"Array",proto:!0,forced:!r(23707)("every")},{every:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}})},77707:(e,t,r)=>{"use strict";var n=r(43119),o=r(92658).filter;n({target:"Array",proto:!0,forced:!r(7156)("filter")},{filter:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}})},28971:(e,t,r)=>{"use strict";var n=r(43119),o=r(92658).findIndex,a=r(20872),i="findIndex",s=!0;i in[]&&Array(1)[i]((function(){s=!1})),n({target:"Array",proto:!0,forced:s},{findIndex:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),a(i)},54894:(e,t,r)=>{"use strict";var n=r(43119),o=r(50926);n({target:"Array",proto:!0,forced:[].forEach!==o},{forEach:o})},76993:(e,t,r)=>{"use strict";var n=r(43119),o=r(77441);n({target:"Array",stat:!0,forced:!r(74797)((function(e){Array.from(e)}))},{from:o})},67592:(e,t,r)=>{"use strict";var n=r(43119),o=r(63624).includes,a=r(24648),i=r(20872);n({target:"Array",proto:!0,forced:a((function(){return!Array(1).includes()}))},{includes:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),i("includes")},15955:(e,t,r)=>{"use strict";var n=r(43119),o=r(91085),a=r(63624).indexOf,i=r(23707),s=o([].indexOf),l=!!s&&1/s([1],1,-0)<0;n({target:"Array",proto:!0,forced:l||!i("indexOf")},{indexOf:function(e){var t=arguments.length>1?arguments[1]:void 0;return l?s(this,e,t)||0:a(this,e,t)}})},82797:(e,t,r)=>{"use strict";r(43119)({target:"Array",stat:!0},{isArray:r(95309)})},89695:(e,t,r)=>{"use strict";var n=r(90698),o=r(20872),a=r(15034),i=r(6080),s=r(47848).f,l=r(60947),c=r(78242),u=r(12724),d=r(50771),f="Array Iterator",p=i.set,h=i.getterFor(f);e.exports=l(Array,"Array",(function(e,t){p(this,{type:f,target:n(e),index:0,kind:t})}),(function(){var e=h(this),t=e.target,r=e.index++;if(!t||r>=t.length)return e.target=null,c(void 0,!0);switch(e.kind){case"keys":return c(r,!1);case"values":return c(t[r],!1)}return c([r,t[r]],!1)}),"values");var m=a.Arguments=a.Array;if(o("keys"),o("values"),o("entries"),!u&&d&&"values"!==m.name)try{s(m,"name",{value:"values"})}catch(g){}},60043:(e,t,r)=>{"use strict";var n=r(43119),o=r(92658).map;n({target:"Array",proto:!0,forced:!r(7156)("map")},{map:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}})},99989:(e,t,r)=>{"use strict";var n=r(43119),o=r(88878),a=r(47555),i=r(46342),s=r(28532);n({target:"Array",proto:!0,arity:1,forced:r(24648)((function(){return 4294967297!==[].push.call({length:4294967296},1)}))||!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(e){return e instanceof TypeError}}()},{push:function(e){var t=o(this),r=a(t),n=arguments.length;s(r+n);for(var l=0;l<n;l++)t[r]=arguments[l],r++;return i(t,r),r}})},76959:(e,t,r)=>{"use strict";var n=r(43119),o=r(76191).left,a=r(23707),i=r(9346);n({target:"Array",proto:!0,forced:!r(37062)&&i>79&&i<83||!a("reduce")},{reduce:function(e){var t=arguments.length;return o(this,e,t,t>1?arguments[1]:void 0)}})},65639:(e,t,r)=>{"use strict";var n=r(43119),o=r(95309),a=r(12168),i=r(87801),s=r(8925),l=r(47555),c=r(90698),u=r(26187),d=r(47004),f=r(7156),p=r(81479),h=f("slice"),m=d("species"),g=Array,v=Math.max;n({target:"Array",proto:!0,forced:!h},{slice:function(e,t){var r,n,d,f=c(this),h=l(f),y=s(e,h),b=s(void 0===t?h:t,h);if(o(f)&&(r=f.constructor,(a(r)&&(r===g||o(r.prototype))||i(r)&&null===(r=r[m]))&&(r=void 0),r===g||void 0===r))return p(f,y,b);for(n=new(void 0===r?g:r)(v(b-y,0)),d=0;y<b;y++,d++)y in f&&u(n,d,f[y]);return n.length=d,n}})},56093:(e,t,r)=>{"use strict";var n=r(43119),o=r(92658).some;n({target:"Array",proto:!0,forced:!r(23707)("some")},{some:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}})},68109:(e,t,r)=>{"use strict";var n=r(43119),o=r(32495),a=r(7035),i=r(88878),s=r(47555),l=r(9243),c=r(69996),u=r(24648),d=r(52205),f=r(23707),p=r(428),h=r(73852),m=r(9346),g=r(55710),v=[],y=o(v.sort),b=o(v.push),w=u((function(){v.sort(void 0)})),x=u((function(){v.sort(null)})),S=f("sort"),A=!u((function(){if(m)return m<70;if(!(p&&p>3)){if(h)return!0;if(g)return g<603;var e,t,r,n,o="";for(e=65;e<76;e++){switch(t=String.fromCharCode(e),e){case 66:case 69:case 70:case 72:r=3;break;case 68:case 71:r=4;break;default:r=2}for(n=0;n<47;n++)v.push({k:t+n,v:r})}for(v.sort((function(e,t){return t.v-e.v})),n=0;n<v.length;n++)t=v[n].k.charAt(0),o.charAt(o.length-1)!==t&&(o+=t);return"DGBEFHACIJK"!==o}}));n({target:"Array",proto:!0,forced:w||!x||!S||!A},{sort:function(e){void 0!==e&&a(e);var t=i(this);if(A)return void 0===e?y(t):y(t,e);var r,n,o=[],u=s(t);for(n=0;n<u;n++)n in t&&b(o,t[n]);for(d(o,function(e){return function(t,r){return void 0===r?-1:void 0===t?1:void 0!==e?+e(t,r)||0:c(t)>c(r)?1:-1}}(e)),r=s(o),n=0;n<r;)t[n]=o[n++];for(;n<u;)l(t,n++);return t}})},43709:(e,t,r)=>{"use strict";var n=r(43119),o=r(88878),a=r(8925),i=r(78630),s=r(47555),l=r(46342),c=r(28532),u=r(37732),d=r(26187),f=r(9243),p=r(7156)("splice"),h=Math.max,m=Math.min;n({target:"Array",proto:!0,forced:!p},{splice:function(e,t){var r,n,p,g,v,y,b=o(this),w=s(b),x=a(e,w),S=arguments.length;for(0===S?r=n=0:1===S?(r=0,n=w-x):(r=S-2,n=m(h(i(t),0),w-x)),c(w+r-n),p=u(b,n),g=0;g<n;g++)(v=x+g)in b&&d(p,g,b[v]);if(p.length=n,r<n){for(g=x;g<w-n;g++)y=g+r,(v=g+n)in b?b[y]=b[v]:f(b,y);for(g=w;g>w-n+r;g--)f(b,g-1)}else if(r>n)for(g=w-n;g>x;g--)y=g+r-1,(v=g+n-1)in b?b[y]=b[v]:f(b,y);for(g=0;g<r;g++)b[g+x]=arguments[g+2];return l(b,w-n+r),p}})},44036:(e,t,r)=>{"use strict";var n=r(43119),o=r(21006),a=r(88878),i=r(42232),s=r(56329),l=r(72851);n({target:"Date",proto:!0,forced:r(24648)((function(){return null!==new Date(NaN).toJSON()||1!==o(Date.prototype.toJSON,{toISOString:function(){return 1}})}))},{toJSON:function(e){var t=a(this),r=i(t,"number");return"number"!=typeof r||isFinite(r)?"toISOString"in t||"Date"!==l(t)?t.toISOString():o(s,t):null}})},6701:()=>{},58463:(e,t,r)=>{"use strict";var n=r(43119),o=r(7269);n({target:"Function",proto:!0,forced:Function.bind!==o},{bind:o})},54725:(e,t,r)=>{"use strict";var n=r(43119),o=r(20330),a=r(48700),i=r(21006),s=r(32495),l=r(24648),c=r(87758),u=r(12582),d=r(81479),f=r(25388),p=r(11674),h=String,m=o("JSON","stringify"),g=s(/./.exec),v=s("".charAt),y=s("".charCodeAt),b=s("".replace),w=s(1..toString),x=/[\uD800-\uDFFF]/g,S=/^[\uD800-\uDBFF]$/,A=/^[\uDC00-\uDFFF]$/,k=!p||l((function(){var e=o("Symbol")("stringify detection");return"[null]"!==m([e])||"{}"!==m({a:e})||"{}"!==m(Object(e))})),C=l((function(){return'"\\udf06\\ud834"'!==m("\udf06\ud834")||'"\\udead"'!==m("\udead")})),I=function(e,t){var r=d(arguments),n=f(t);if(c(n)||void 0!==e&&!u(e))return r[1]=function(e,t){if(c(n)&&(t=i(n,this,h(e),t)),!u(t))return t},a(m,null,r)},E=function(e,t,r){var n=v(r,t-1),o=v(r,t+1);return g(S,e)&&!g(A,o)||g(A,e)&&!g(S,n)?"\\u"+w(y(e,0),16):e};m&&n({target:"JSON",stat:!0,arity:3,forced:k||C},{stringify:function(e,t,r){var n=d(arguments),o=a(k?I:m,null,n);return C&&"string"==typeof o?b(o,x,E):o}})},97732:(e,t,r)=>{"use strict";var n=r(9227);r(39284)(n.JSON,"JSON",!0)},66304:()=>{},95400:(e,t,r)=>{"use strict";var n=r(43119),o=r(86238);n({target:"Object",stat:!0,arity:2,forced:Object.assign!==o},{assign:o})},79553:(e,t,r)=>{"use strict";r(43119)({target:"Object",stat:!0,sham:!r(50771)},{create:r(14207)})},57686:(e,t,r)=>{"use strict";var n=r(43119),o=r(50771),a=r(3072).f;n({target:"Object",stat:!0,forced:Object.defineProperties!==a,sham:!o},{defineProperties:a})},50794:(e,t,r)=>{"use strict";var n=r(43119),o=r(50771),a=r(47848).f;n({target:"Object",stat:!0,forced:Object.defineProperty!==a,sham:!o},{defineProperty:a})},70957:(e,t,r)=>{"use strict";var n=r(43119),o=r(26974).entries;n({target:"Object",stat:!0},{entries:function(e){return o(e)}})},87184:(e,t,r)=>{"use strict";var n=r(43119),o=r(24648),a=r(90698),i=r(54602).f,s=r(50771);n({target:"Object",stat:!0,forced:!s||o((function(){i(1)})),sham:!s},{getOwnPropertyDescriptor:function(e,t){return i(a(e),t)}})},22479:(e,t,r)=>{"use strict";var n=r(43119),o=r(50771),a=r(24174),i=r(90698),s=r(54602),l=r(26187);n({target:"Object",stat:!0,sham:!o},{getOwnPropertyDescriptors:function(e){for(var t,r,n=i(e),o=s.f,c=a(n),u={},d=0;c.length>d;)void 0!==(r=o(n,t=c[d++]))&&l(u,t,r);return u}})},39796:(e,t,r)=>{"use strict";var n=r(43119),o=r(11674),a=r(24648),i=r(98918),s=r(88878);n({target:"Object",stat:!0,forced:!o||a((function(){i.f(1)}))},{getOwnPropertySymbols:function(e){var t=i.f;return t?t(s(e)):[]}})},44642:(e,t,r)=>{"use strict";var n=r(43119),o=r(24648),a=r(88878),i=r(9984),s=r(50354);n({target:"Object",stat:!0,forced:o((function(){i(1)})),sham:!s},{getPrototypeOf:function(e){return i(a(e))}})},66089:(e,t,r)=>{"use strict";var n=r(43119),o=r(88878),a=r(23423);n({target:"Object",stat:!0,forced:r(24648)((function(){a(1)}))},{keys:function(e){return a(o(e))}})},91702:(e,t,r)=>{"use strict";r(43119)({target:"Object",stat:!0},{setPrototypeOf:r(75692)})},84940:()=>{},90271:(e,t,r)=>{"use strict";var n=r(43119),o=r(26974).values;n({target:"Object",stat:!0},{values:function(e){return o(e)}})},43325:(e,t,r)=>{"use strict";var n=r(43119),o=r(7750);n({global:!0,forced:parseInt!==o},{parseInt:o})},81592:(e,t,r)=>{"use strict";var n=r(43119),o=r(20330),a=r(48700),i=r(7269),s=r(65743),l=r(56276),c=r(87801),u=r(14207),d=r(24648),f=o("Reflect","construct"),p=Object.prototype,h=[].push,m=d((function(){function e(){}return!(f((function(){}),[],e)instanceof e)})),g=!d((function(){f((function(){}))})),v=m||g;n({target:"Reflect",stat:!0,forced:v,sham:v},{construct:function(e,t){s(e),l(t);var r=arguments.length<3?e:s(arguments[2]);if(g&&!m)return f(e,t,r);if(e===r){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var n=[null];return a(h,n,t),new(a(i,e,n))}var o=r.prototype,d=u(c(o)?o:p),v=a(e,d,t);return c(v)?v:d}})},39833:()=>{},31118:(e,t,r)=>{"use strict";var n=r(43119),o=r(32495),a=r(8925),i=RangeError,s=String.fromCharCode,l=String.fromCodePoint,c=o([].join);n({target:"String",stat:!0,arity:1,forced:!!l&&1!==l.length},{fromCodePoint:function(e){for(var t,r=[],n=arguments.length,o=0;n>o;){if(t=+arguments[o++],a(t,1114111)!==t)throw new i(t+" is not a valid code point");r[o]=t<65536?s(t):s(55296+((t-=65536)>>10),t%1024+56320)}return c(r,"")}})},33806:(e,t,r)=>{"use strict";var n=r(43119),o=r(32495),a=r(26574),i=r(39731),s=r(69996),l=r(46323),c=o("".indexOf);n({target:"String",proto:!0,forced:!l("includes")},{includes:function(e){return!!~c(s(i(this)),s(a(e)),arguments.length>1?arguments[1]:void 0)}})},24349:(e,t,r)=>{"use strict";var n=r(7842).charAt,o=r(69996),a=r(6080),i=r(60947),s=r(78242),l="String Iterator",c=a.set,u=a.getterFor(l);i(String,"String",(function(e){c(this,{type:l,string:o(e),index:0})}),(function(){var e,t=u(this),r=t.string,o=t.index;return o>=r.length?s(void 0,!0):(e=n(r,o),t.index+=e.length,s(e,!1))}))},919:(e,t,r)=>{"use strict";var n=r(43119),o=r(91085),a=r(54602).f,i=r(24989),s=r(69996),l=r(26574),c=r(39731),u=r(46323),d=r(12724),f=o("".slice),p=Math.min,h=u("startsWith");n({target:"String",proto:!0,forced:!(!d&&!h&&!!function(){var e=a(String.prototype,"startsWith");return e&&!e.writable}())&&!h},{startsWith:function(e){var t=s(c(this));l(e);var r=i(p(arguments.length>1?arguments[1]:void 0,t.length)),n=s(e);return f(t,r,r+n.length)===n}})},33555:(e,t,r)=>{"use strict";var n=r(43119),o=r(67877).trim;n({target:"String",proto:!0,forced:r(59687)("trim")},{trim:function(){return o(this)}})},33209:(e,t,r)=>{"use strict";r(17098)("asyncIterator")},26990:(e,t,r)=>{"use strict";var n=r(43119),o=r(9227),a=r(21006),i=r(32495),s=r(12724),l=r(50771),c=r(11674),u=r(24648),d=r(38224),f=r(24500),p=r(56276),h=r(90698),m=r(7602),g=r(69996),v=r(58605),y=r(14207),b=r(23423),w=r(62223),x=r(75451),S=r(98918),A=r(54602),k=r(47848),C=r(3072),I=r(94362),E=r(88203),D=r(73927),T=r(79708),O=r(36846),M=r(18094),P=r(21391),j=r(47004),R=r(46292),_=r(17098),N=r(80583),L=r(39284),U=r(6080),B=r(92658).forEach,F=O("hidden"),z="Symbol",W="prototype",H=U.set,Y=U.getterFor(z),V=Object[W],G=o.Symbol,Z=G&&G[W],Q=o.RangeError,K=o.TypeError,X=o.QObject,J=A.f,$=k.f,q=x.f,ee=I.f,te=i([].push),re=T("symbols"),ne=T("op-symbols"),oe=T("wks"),ae=!X||!X[W]||!X[W].findChild,ie=function(e,t,r){var n=J(V,t);n&&delete V[t],$(e,t,r),n&&e!==V&&$(V,t,n)},se=l&&u((function(){return 7!==y($({},"a",{get:function(){return $(this,"a",{value:7}).a}})).a}))?ie:$,le=function(e,t){var r=re[e]=y(Z);return H(r,{type:z,tag:e,description:t}),l||(r.description=t),r},ce=function(e,t,r){e===V&&ce(ne,t,r),p(e);var n=m(t);return p(r),d(re,n)?(r.enumerable?(d(e,F)&&e[F][n]&&(e[F][n]=!1),r=y(r,{enumerable:v(0,!1)})):(d(e,F)||$(e,F,v(1,y(null))),e[F][n]=!0),se(e,n,r)):$(e,n,r)},ue=function(e,t){p(e);var r=h(t),n=b(r).concat(he(r));return B(n,(function(t){l&&!a(de,r,t)||ce(e,t,r[t])})),e},de=function(e){var t=m(e),r=a(ee,this,t);return!(this===V&&d(re,t)&&!d(ne,t))&&(!(r||!d(this,t)||!d(re,t)||d(this,F)&&this[F][t])||r)},fe=function(e,t){var r=h(e),n=m(t);if(r!==V||!d(re,n)||d(ne,n)){var o=J(r,n);return!o||!d(re,n)||d(r,F)&&r[F][n]||(o.enumerable=!0),o}},pe=function(e){var t=q(h(e)),r=[];return B(t,(function(e){d(re,e)||d(M,e)||te(r,e)})),r},he=function(e){var t=e===V,r=q(t?ne:h(e)),n=[];return B(r,(function(e){!d(re,e)||t&&!d(V,e)||te(n,re[e])})),n};c||(E(Z=(G=function(){if(f(Z,this))throw new K("Symbol is not a constructor");var e=arguments.length&&void 0!==arguments[0]?g(arguments[0]):void 0,t=P(e),r=function(e){var n=void 0===this?o:this;n===V&&a(r,ne,e),d(n,F)&&d(n[F],t)&&(n[F][t]=!1);var i=v(1,e);try{se(n,t,i)}catch(s){if(!(s instanceof Q))throw s;ie(n,t,i)}};return l&&ae&&se(V,t,{configurable:!0,set:r}),le(t,e)})[W],"toString",(function(){return Y(this).tag})),E(G,"withoutSetter",(function(e){return le(P(e),e)})),I.f=de,k.f=ce,C.f=ue,A.f=fe,w.f=x.f=pe,S.f=he,R.f=function(e){return le(j(e),e)},l&&(D(Z,"description",{configurable:!0,get:function(){return Y(this).description}}),s||E(V,"propertyIsEnumerable",de,{unsafe:!0}))),n({global:!0,constructor:!0,wrap:!0,forced:!c,sham:!c},{Symbol:G}),B(b(oe),(function(e){_(e)})),n({target:z,stat:!0,forced:!c},{useSetter:function(){ae=!0},useSimple:function(){ae=!1}}),n({target:"Object",stat:!0,forced:!c,sham:!l},{create:function(e,t){return void 0===t?y(e):ue(y(e),t)},defineProperty:ce,defineProperties:ue,getOwnPropertyDescriptor:fe}),n({target:"Object",stat:!0,forced:!c},{getOwnPropertyNames:pe}),N(),L(G,z),M[F]=!0},48456:()=>{},83349:(e,t,r)=>{"use strict";var n=r(43119),o=r(20330),a=r(38224),i=r(69996),s=r(79708),l=r(38495),c=s("string-to-symbol-registry"),u=s("symbol-to-string-registry");n({target:"Symbol",stat:!0,forced:!l},{for:function(e){var t=i(e);if(a(c,t))return c[t];var r=o("Symbol")(t);return c[t]=r,u[r]=t,r}})},37624:(e,t,r)=>{"use strict";r(17098)("hasInstance")},28045:(e,t,r)=>{"use strict";r(17098)("isConcatSpreadable")},52278:(e,t,r)=>{"use strict";r(17098)("iterator")},45344:(e,t,r)=>{"use strict";r(26990),r(83349),r(67779),r(54725),r(39796)},67779:(e,t,r)=>{"use strict";var n=r(43119),o=r(38224),a=r(12582),i=r(34956),s=r(79708),l=r(38495),c=s("symbol-to-string-registry");n({target:"Symbol",stat:!0,forced:!l},{keyFor:function(e){if(!a(e))throw new TypeError(i(e)+" is not a symbol");if(o(c,e))return c[e]}})},76269:(e,t,r)=>{"use strict";r(17098)("matchAll")},91983:(e,t,r)=>{"use strict";r(17098)("match")},25282:(e,t,r)=>{"use strict";r(17098)("replace")},81860:(e,t,r)=>{"use strict";r(17098)("search")},10832:(e,t,r)=>{"use strict";r(17098)("species")},50054:(e,t,r)=>{"use strict";r(17098)("split")},15177:(e,t,r)=>{"use strict";var n=r(17098),o=r(80583);n("toPrimitive"),o()},48806:(e,t,r)=>{"use strict";var n=r(20330),o=r(17098),a=r(39284);o("toStringTag"),a(n("Symbol"),"Symbol")},76217:(e,t,r)=>{"use strict";r(17098)("unscopables")},29508:(e,t,r)=>{"use strict";var n=r(47004),o=r(47848).f,a=n("metadata"),i=Function.prototype;void 0===i[a]&&o(i,a,{value:null})},4665:(e,t,r)=>{"use strict";r(17098)("asyncDispose")},22581:(e,t,r)=>{"use strict";r(17098)("customMatcher")},83412:(e,t,r)=>{"use strict";r(17098)("dispose")},30639:(e,t,r)=>{"use strict";r(43119)({target:"Symbol",stat:!0},{isRegisteredSymbol:r(88207)})},93698:(e,t,r)=>{"use strict";r(43119)({target:"Symbol",stat:!0,name:"isRegisteredSymbol"},{isRegistered:r(88207)})},64701:(e,t,r)=>{"use strict";r(43119)({target:"Symbol",stat:!0,forced:!0},{isWellKnownSymbol:r(50273)})},94272:(e,t,r)=>{"use strict";r(43119)({target:"Symbol",stat:!0,name:"isWellKnownSymbol",forced:!0},{isWellKnown:r(50273)})},8275:(e,t,r)=>{"use strict";r(17098)("matcher")},34858:(e,t,r)=>{"use strict";r(17098)("metadataKey")},93752:(e,t,r)=>{"use strict";r(17098)("metadata")},62852:(e,t,r)=>{"use strict";r(17098)("observable")},9691:(e,t,r)=>{"use strict";r(17098)("patternMatch")},4739:(e,t,r)=>{"use strict";r(17098)("replaceAll")},32961:()=>{},20740:(e,t,r)=>{"use strict";r(89695);var n=r(77427),o=r(9227),a=r(39284),i=r(15034);for(var s in n)a(o[s],s),i[s]=i.Array},98078:(e,t,r)=>{"use strict";var n=r(43119),o=r(9227),a=r(42609)(o.setInterval,!0);n({global:!0,bind:!0,forced:o.setInterval!==a},{setInterval:a})},35092:(e,t,r)=>{"use strict";var n=r(43119),o=r(9227),a=r(42609)(o.setTimeout,!0);n({global:!0,bind:!0,forced:o.setTimeout!==a},{setTimeout:a})},38186:(e,t,r)=>{"use strict";r(98078),r(35092)},64469:(e,t,r)=>{"use strict";r(89695),r(31118);var n=r(43119),o=r(9227),a=r(37566),i=r(20330),s=r(21006),l=r(32495),c=r(50771),u=r(77163),d=r(88203),f=r(73927),p=r(27102),h=r(39284),m=r(91745),g=r(6080),v=r(58344),y=r(87758),b=r(38224),w=r(37275),x=r(77168),S=r(56276),A=r(87801),k=r(69996),C=r(14207),I=r(58605),E=r(74528),D=r(50404),T=r(78242),O=r(65343),M=r(47004),P=r(52205),j=M("iterator"),R="URLSearchParams",_=R+"Iterator",N=g.set,L=g.getterFor(R),U=g.getterFor(_),B=a("fetch"),F=a("Request"),z=a("Headers"),W=F&&F.prototype,H=z&&z.prototype,Y=o.TypeError,V=o.encodeURIComponent,G=String.fromCharCode,Z=i("String","fromCodePoint"),Q=parseInt,K=l("".charAt),X=l([].join),J=l([].push),$=l("".replace),q=l([].shift),ee=l([].splice),te=l("".split),re=l("".slice),ne=l(/./.exec),oe=/\+/g,ae=/^[0-9a-f]+$/i,ie=function(e,t){var r=re(e,t,t+2);return ne(ae,r)?Q(r,16):NaN},se=function(e){for(var t=0,r=128;r>0&&0!==(e&r);r>>=1)t++;return t},le=function(e){var t=null;switch(e.length){case 1:t=e[0];break;case 2:t=(31&e[0])<<6|63&e[1];break;case 3:t=(15&e[0])<<12|(63&e[1])<<6|63&e[2];break;case 4:t=(7&e[0])<<18|(63&e[1])<<12|(63&e[2])<<6|63&e[3]}return t>1114111?null:t},ce=function(e){for(var t=(e=$(e,oe," ")).length,r="",n=0;n<t;){var o=K(e,n);if("%"===o){if("%"===K(e,n+1)||n+3>t){r+="%",n++;continue}var a=ie(e,n+1);if(a!==a){r+=o,n++;continue}n+=2;var i=se(a);if(0===i)o=G(a);else{if(1===i||i>4){r+="\ufffd",n++;continue}for(var s=[a],l=1;l<i&&!(++n+3>t||"%"!==K(e,n));){var c=ie(e,n+1);if(c!==c){n+=3;break}if(c>191||c<128)break;J(s,c),n+=2,l++}if(s.length!==i){r+="\ufffd";continue}var u=le(s);null===u?r+="\ufffd":o=Z(u)}}r+=o,n++}return r},ue=/[!'()~]|%20/g,de={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},fe=function(e){return de[e]},pe=function(e){return $(V(e),ue,fe)},he=m((function(e,t){N(this,{type:_,target:L(e).entries,index:0,kind:t})}),R,(function(){var e=U(this),t=e.target,r=e.index++;if(!t||r>=t.length)return e.target=null,T(void 0,!0);var n=t[r];switch(e.kind){case"keys":return T(n.key,!1);case"values":return T(n.value,!1)}return T([n.key,n.value],!1)}),!0),me=function(e){this.entries=[],this.url=null,void 0!==e&&(A(e)?this.parseObject(e):this.parseQuery("string"==typeof e?"?"===K(e,0)?re(e,1):e:k(e)))};me.prototype={type:R,bindURL:function(e){this.url=e,this.update()},parseObject:function(e){var t,r,n,o,a,i,l,c=this.entries,u=D(e);if(u)for(r=(t=E(e,u)).next;!(n=s(r,t)).done;){if(a=(o=E(S(n.value))).next,(i=s(a,o)).done||(l=s(a,o)).done||!s(a,o).done)throw new Y("Expected sequence with length 2");J(c,{key:k(i.value),value:k(l.value)})}else for(var d in e)b(e,d)&&J(c,{key:d,value:k(e[d])})},parseQuery:function(e){if(e)for(var t,r,n=this.entries,o=te(e,"&"),a=0;a<o.length;)(t=o[a++]).length&&(r=te(t,"="),J(n,{key:ce(q(r)),value:ce(X(r,"="))}))},serialize:function(){for(var e,t=this.entries,r=[],n=0;n<t.length;)e=t[n++],J(r,pe(e.key)+"="+pe(e.value));return X(r,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var ge=function(){v(this,ve);var e=N(this,new me(arguments.length>0?arguments[0]:void 0));c||(this.size=e.entries.length)},ve=ge.prototype;if(p(ve,{append:function(e,t){var r=L(this);O(arguments.length,2),J(r.entries,{key:k(e),value:k(t)}),c||this.length++,r.updateURL()},delete:function(e){for(var t=L(this),r=O(arguments.length,1),n=t.entries,o=k(e),a=r<2?void 0:arguments[1],i=void 0===a?a:k(a),s=0;s<n.length;){var l=n[s];if(l.key!==o||void 0!==i&&l.value!==i)s++;else if(ee(n,s,1),void 0!==i)break}c||(this.size=n.length),t.updateURL()},get:function(e){var t=L(this).entries;O(arguments.length,1);for(var r=k(e),n=0;n<t.length;n++)if(t[n].key===r)return t[n].value;return null},getAll:function(e){var t=L(this).entries;O(arguments.length,1);for(var r=k(e),n=[],o=0;o<t.length;o++)t[o].key===r&&J(n,t[o].value);return n},has:function(e){for(var t=L(this).entries,r=O(arguments.length,1),n=k(e),o=r<2?void 0:arguments[1],a=void 0===o?o:k(o),i=0;i<t.length;){var s=t[i++];if(s.key===n&&(void 0===a||s.value===a))return!0}return!1},set:function(e,t){var r=L(this);O(arguments.length,1);for(var n,o=r.entries,a=!1,i=k(e),s=k(t),l=0;l<o.length;l++)(n=o[l]).key===i&&(a?ee(o,l--,1):(a=!0,n.value=s));a||J(o,{key:i,value:s}),c||(this.size=o.length),r.updateURL()},sort:function(){var e=L(this);P(e.entries,(function(e,t){return e.key>t.key?1:-1})),e.updateURL()},forEach:function(e){for(var t,r=L(this).entries,n=w(e,arguments.length>1?arguments[1]:void 0),o=0;o<r.length;)n((t=r[o++]).value,t.key,this)},keys:function(){return new he(this,"keys")},values:function(){return new he(this,"values")},entries:function(){return new he(this,"entries")}},{enumerable:!0}),d(ve,j,ve.entries,{name:"entries"}),d(ve,"toString",(function(){return L(this).serialize()}),{enumerable:!0}),c&&f(ve,"size",{get:function(){return L(this).entries.length},configurable:!0,enumerable:!0}),h(ge,R),n({global:!0,constructor:!0,forced:!u},{URLSearchParams:ge}),!u&&y(z)){var ye=l(H.has),be=l(H.set),we=function(e){if(A(e)){var t,r=e.body;if(x(r)===R)return t=e.headers?new z(e.headers):new z,ye(t,"content-type")||be(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),C(e,{body:I(0,k(r)),headers:I(0,t)})}return e};if(y(B)&&n({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return B(e,arguments.length>1?we(arguments[1]):{})}}),y(F)){var xe=function(e){return v(this,W),new F(e,arguments.length>1?we(arguments[1]):{})};W.constructor=xe,xe.prototype=W,n({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:xe})}}e.exports={URLSearchParams:ge,getState:L}},22286:()=>{},68757:()=>{},599:(e,t,r)=>{"use strict";r(64469)},31112:()=>{},44281:(e,t,r)=>{"use strict";var n=r(43119),o=r(20330),a=r(24648),i=r(65343),s=r(69996),l=r(77163),c=o("URL"),u=l&&a((function(){c.canParse()})),d=a((function(){return 1!==c.canParse.length}));n({target:"URL",stat:!0,forced:!u||d},{canParse:function(e){var t=i(arguments.length,1),r=s(e),n=t<2||void 0===arguments[1]?void 0:s(arguments[1]);try{return!!new c(r,n)}catch(o){return!1}}})},65969:(e,t,r)=>{"use strict";r(24349);var n,o=r(43119),a=r(50771),i=r(77163),s=r(9227),l=r(37275),c=r(32495),u=r(88203),d=r(73927),f=r(58344),p=r(38224),h=r(86238),m=r(77441),g=r(81479),v=r(7842).codeAt,y=r(53568),b=r(69996),w=r(39284),x=r(65343),S=r(64469),A=r(6080),k=A.set,C=A.getterFor("URL"),I=S.URLSearchParams,E=S.getState,D=s.URL,T=s.TypeError,O=s.parseInt,M=Math.floor,P=Math.pow,j=c("".charAt),R=c(/./.exec),_=c([].join),N=c(1..toString),L=c([].pop),U=c([].push),B=c("".replace),F=c([].shift),z=c("".split),W=c("".slice),H=c("".toLowerCase),Y=c([].unshift),V="Invalid scheme",G="Invalid host",Z="Invalid port",Q=/[a-z]/i,K=/[\d+-.a-z]/i,X=/\d/,J=/^0x/i,$=/^[0-7]+$/,q=/^\d+$/,ee=/^[\da-f]+$/i,te=/[\0\t\n\r #%/:<>?@[\\\]^|]/,re=/[\0\t\n\r #/:<>?@[\\\]^|]/,ne=/^[\u0000-\u0020]+/,oe=/(^|[^\u0000-\u0020])[\u0000-\u0020]+$/,ae=/[\t\n\r]/g,ie=function(e){var t,r,n,o;if("number"==typeof e){for(t=[],r=0;r<4;r++)Y(t,e%256),e=M(e/256);return _(t,".")}if("object"==typeof e){for(t="",n=function(e){for(var t=null,r=1,n=null,o=0,a=0;a<8;a++)0!==e[a]?(o>r&&(t=n,r=o),n=null,o=0):(null===n&&(n=a),++o);return o>r?n:t}(e),r=0;r<8;r++)o&&0===e[r]||(o&&(o=!1),n===r?(t+=r?":":"::",o=!0):(t+=N(e[r],16),r<7&&(t+=":")));return"["+t+"]"}return e},se={},le=h({},se,{" ":1,'"':1,"<":1,">":1,"`":1}),ce=h({},le,{"#":1,"?":1,"{":1,"}":1}),ue=h({},ce,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),de=function(e,t){var r=v(e,0);return r>32&&r<127&&!p(t,e)?e:encodeURIComponent(e)},fe={ftp:21,file:null,http:80,https:443,ws:80,wss:443},pe=function(e,t){var r;return 2===e.length&&R(Q,j(e,0))&&(":"===(r=j(e,1))||!t&&"|"===r)},he=function(e){var t;return e.length>1&&pe(W(e,0,2))&&(2===e.length||"/"===(t=j(e,2))||"\\"===t||"?"===t||"#"===t)},me=function(e){return"."===e||"%2e"===H(e)},ge={},ve={},ye={},be={},we={},xe={},Se={},Ae={},ke={},Ce={},Ie={},Ee={},De={},Te={},Oe={},Me={},Pe={},je={},Re={},_e={},Ne={},Le=function(e,t,r){var n,o,a,i=b(e);if(t){if(o=this.parse(i))throw new T(o);this.searchParams=null}else{if(void 0!==r&&(n=new Le(r,!0)),o=this.parse(i,null,n))throw new T(o);(a=E(new I)).bindURL(this),this.searchParams=a}};Le.prototype={type:"URL",parse:function(e,t,r){var o,a,i,s,l,c=this,u=t||ge,d=0,f="",h=!1,v=!1,y=!1;for(e=b(e),t||(c.scheme="",c.username="",c.password="",c.host=null,c.port=null,c.path=[],c.query=null,c.fragment=null,c.cannotBeABaseURL=!1,e=B(e,ne,""),e=B(e,oe,"$1")),e=B(e,ae,""),o=m(e);d<=o.length;){switch(a=o[d],u){case ge:if(!a||!R(Q,a)){if(t)return V;u=ye;continue}f+=H(a),u=ve;break;case ve:if(a&&(R(K,a)||"+"===a||"-"===a||"."===a))f+=H(a);else{if(":"!==a){if(t)return V;f="",u=ye,d=0;continue}if(t&&(c.isSpecial()!==p(fe,f)||"file"===f&&(c.includesCredentials()||null!==c.port)||"file"===c.scheme&&!c.host))return;if(c.scheme=f,t)return void(c.isSpecial()&&fe[c.scheme]===c.port&&(c.port=null));f="","file"===c.scheme?u=Te:c.isSpecial()&&r&&r.scheme===c.scheme?u=be:c.isSpecial()?u=Ae:"/"===o[d+1]?(u=we,d++):(c.cannotBeABaseURL=!0,U(c.path,""),u=Re)}break;case ye:if(!r||r.cannotBeABaseURL&&"#"!==a)return V;if(r.cannotBeABaseURL&&"#"===a){c.scheme=r.scheme,c.path=g(r.path),c.query=r.query,c.fragment="",c.cannotBeABaseURL=!0,u=Ne;break}u="file"===r.scheme?Te:xe;continue;case be:if("/"!==a||"/"!==o[d+1]){u=xe;continue}u=ke,d++;break;case we:if("/"===a){u=Ce;break}u=je;continue;case xe:if(c.scheme=r.scheme,a===n)c.username=r.username,c.password=r.password,c.host=r.host,c.port=r.port,c.path=g(r.path),c.query=r.query;else if("/"===a||"\\"===a&&c.isSpecial())u=Se;else if("?"===a)c.username=r.username,c.password=r.password,c.host=r.host,c.port=r.port,c.path=g(r.path),c.query="",u=_e;else{if("#"!==a){c.username=r.username,c.password=r.password,c.host=r.host,c.port=r.port,c.path=g(r.path),c.path.length--,u=je;continue}c.username=r.username,c.password=r.password,c.host=r.host,c.port=r.port,c.path=g(r.path),c.query=r.query,c.fragment="",u=Ne}break;case Se:if(!c.isSpecial()||"/"!==a&&"\\"!==a){if("/"!==a){c.username=r.username,c.password=r.password,c.host=r.host,c.port=r.port,u=je;continue}u=Ce}else u=ke;break;case Ae:if(u=ke,"/"!==a||"/"!==j(f,d+1))continue;d++;break;case ke:if("/"!==a&&"\\"!==a){u=Ce;continue}break;case Ce:if("@"===a){h&&(f="%40"+f),h=!0,i=m(f);for(var w=0;w<i.length;w++){var x=i[w];if(":"!==x||y){var S=de(x,ue);y?c.password+=S:c.username+=S}else y=!0}f=""}else if(a===n||"/"===a||"?"===a||"#"===a||"\\"===a&&c.isSpecial()){if(h&&""===f)return"Invalid authority";d-=m(f).length+1,f="",u=Ie}else f+=a;break;case Ie:case Ee:if(t&&"file"===c.scheme){u=Me;continue}if(":"!==a||v){if(a===n||"/"===a||"?"===a||"#"===a||"\\"===a&&c.isSpecial()){if(c.isSpecial()&&""===f)return G;if(t&&""===f&&(c.includesCredentials()||null!==c.port))return;if(s=c.parseHost(f))return s;if(f="",u=Pe,t)return;continue}"["===a?v=!0:"]"===a&&(v=!1),f+=a}else{if(""===f)return G;if(s=c.parseHost(f))return s;if(f="",u=De,t===Ee)return}break;case De:if(!R(X,a)){if(a===n||"/"===a||"?"===a||"#"===a||"\\"===a&&c.isSpecial()||t){if(""!==f){var A=O(f,10);if(A>65535)return Z;c.port=c.isSpecial()&&A===fe[c.scheme]?null:A,f=""}if(t)return;u=Pe;continue}return Z}f+=a;break;case Te:if(c.scheme="file","/"===a||"\\"===a)u=Oe;else{if(!r||"file"!==r.scheme){u=je;continue}switch(a){case n:c.host=r.host,c.path=g(r.path),c.query=r.query;break;case"?":c.host=r.host,c.path=g(r.path),c.query="",u=_e;break;case"#":c.host=r.host,c.path=g(r.path),c.query=r.query,c.fragment="",u=Ne;break;default:he(_(g(o,d),""))||(c.host=r.host,c.path=g(r.path),c.shortenPath()),u=je;continue}}break;case Oe:if("/"===a||"\\"===a){u=Me;break}r&&"file"===r.scheme&&!he(_(g(o,d),""))&&(pe(r.path[0],!0)?U(c.path,r.path[0]):c.host=r.host),u=je;continue;case Me:if(a===n||"/"===a||"\\"===a||"?"===a||"#"===a){if(!t&&pe(f))u=je;else if(""===f){if(c.host="",t)return;u=Pe}else{if(s=c.parseHost(f))return s;if("localhost"===c.host&&(c.host=""),t)return;f="",u=Pe}continue}f+=a;break;case Pe:if(c.isSpecial()){if(u=je,"/"!==a&&"\\"!==a)continue}else if(t||"?"!==a)if(t||"#"!==a){if(a!==n&&(u=je,"/"!==a))continue}else c.fragment="",u=Ne;else c.query="",u=_e;break;case je:if(a===n||"/"===a||"\\"===a&&c.isSpecial()||!t&&("?"===a||"#"===a)){if(".."===(l=H(l=f))||"%2e."===l||".%2e"===l||"%2e%2e"===l?(c.shortenPath(),"/"===a||"\\"===a&&c.isSpecial()||U(c.path,"")):me(f)?"/"===a||"\\"===a&&c.isSpecial()||U(c.path,""):("file"===c.scheme&&!c.path.length&&pe(f)&&(c.host&&(c.host=""),f=j(f,0)+":"),U(c.path,f)),f="","file"===c.scheme&&(a===n||"?"===a||"#"===a))for(;c.path.length>1&&""===c.path[0];)F(c.path);"?"===a?(c.query="",u=_e):"#"===a&&(c.fragment="",u=Ne)}else f+=de(a,ce);break;case Re:"?"===a?(c.query="",u=_e):"#"===a?(c.fragment="",u=Ne):a!==n&&(c.path[0]+=de(a,se));break;case _e:t||"#"!==a?a!==n&&("'"===a&&c.isSpecial()?c.query+="%27":c.query+="#"===a?"%23":de(a,se)):(c.fragment="",u=Ne);break;case Ne:a!==n&&(c.fragment+=de(a,le))}d++}},parseHost:function(e){var t,r,n;if("["===j(e,0)){if("]"!==j(e,e.length-1))return G;if(t=function(e){var t,r,n,o,a,i,s,l=[0,0,0,0,0,0,0,0],c=0,u=null,d=0,f=function(){return j(e,d)};if(":"===f()){if(":"!==j(e,1))return;d+=2,u=++c}for(;f();){if(8===c)return;if(":"!==f()){for(t=r=0;r<4&&R(ee,f());)t=16*t+O(f(),16),d++,r++;if("."===f()){if(0===r)return;if(d-=r,c>6)return;for(n=0;f();){if(o=null,n>0){if(!("."===f()&&n<4))return;d++}if(!R(X,f()))return;for(;R(X,f());){if(a=O(f(),10),null===o)o=a;else{if(0===o)return;o=10*o+a}if(o>255)return;d++}l[c]=256*l[c]+o,2!==++n&&4!==n||c++}if(4!==n)return;break}if(":"===f()){if(d++,!f())return}else if(f())return;l[c++]=t}else{if(null!==u)return;d++,u=++c}}if(null!==u)for(i=c-u,c=7;0!==c&&i>0;)s=l[c],l[c--]=l[u+i-1],l[u+--i]=s;else if(8!==c)return;return l}(W(e,1,-1)),!t)return G;this.host=t}else if(this.isSpecial()){if(e=y(e),R(te,e))return G;if(t=function(e){var t,r,n,o,a,i,s,l=z(e,".");if(l.length&&""===l[l.length-1]&&l.length--,(t=l.length)>4)return e;for(r=[],n=0;n<t;n++){if(""===(o=l[n]))return e;if(a=10,o.length>1&&"0"===j(o,0)&&(a=R(J,o)?16:8,o=W(o,8===a?1:2)),""===o)i=0;else{if(!R(10===a?q:8===a?$:ee,o))return e;i=O(o,a)}U(r,i)}for(n=0;n<t;n++)if(i=r[n],n===t-1){if(i>=P(256,5-t))return null}else if(i>255)return null;for(s=L(r),n=0;n<r.length;n++)s+=r[n]*P(256,3-n);return s}(e),null===t)return G;this.host=t}else{if(R(re,e))return G;for(t="",r=m(e),n=0;n<r.length;n++)t+=de(r[n],se);this.host=t}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||"file"===this.scheme},includesCredentials:function(){return""!==this.username||""!==this.password},isSpecial:function(){return p(fe,this.scheme)},shortenPath:function(){var e=this.path,t=e.length;!t||"file"===this.scheme&&1===t&&pe(e[0],!0)||e.length--},serialize:function(){var e=this,t=e.scheme,r=e.username,n=e.password,o=e.host,a=e.port,i=e.path,s=e.query,l=e.fragment,c=t+":";return null!==o?(c+="//",e.includesCredentials()&&(c+=r+(n?":"+n:"")+"@"),c+=ie(o),null!==a&&(c+=":"+a)):"file"===t&&(c+="//"),c+=e.cannotBeABaseURL?i[0]:i.length?"/"+_(i,"/"):"",null!==s&&(c+="?"+s),null!==l&&(c+="#"+l),c},setHref:function(e){var t=this.parse(e);if(t)throw new T(t);this.searchParams.update()},getOrigin:function(){var e=this.scheme,t=this.port;if("blob"===e)try{return new Ue(e.path[0]).origin}catch(r){return"null"}return"file"!==e&&this.isSpecial()?e+"://"+ie(this.host)+(null!==t?":"+t:""):"null"},getProtocol:function(){return this.scheme+":"},setProtocol:function(e){this.parse(b(e)+":",ge)},getUsername:function(){return this.username},setUsername:function(e){var t=m(b(e));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var r=0;r<t.length;r++)this.username+=de(t[r],ue)}},getPassword:function(){return this.password},setPassword:function(e){var t=m(b(e));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var r=0;r<t.length;r++)this.password+=de(t[r],ue)}},getHost:function(){var e=this.host,t=this.port;return null===e?"":null===t?ie(e):ie(e)+":"+t},setHost:function(e){this.cannotBeABaseURL||this.parse(e,Ie)},getHostname:function(){var e=this.host;return null===e?"":ie(e)},setHostname:function(e){this.cannotBeABaseURL||this.parse(e,Ee)},getPort:function(){var e=this.port;return null===e?"":b(e)},setPort:function(e){this.cannotHaveUsernamePasswordPort()||(""===(e=b(e))?this.port=null:this.parse(e,De))},getPathname:function(){var e=this.path;return this.cannotBeABaseURL?e[0]:e.length?"/"+_(e,"/"):""},setPathname:function(e){this.cannotBeABaseURL||(this.path=[],this.parse(e,Pe))},getSearch:function(){var e=this.query;return e?"?"+e:""},setSearch:function(e){""===(e=b(e))?this.query=null:("?"===j(e,0)&&(e=W(e,1)),this.query="",this.parse(e,_e)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var e=this.fragment;return e?"#"+e:""},setHash:function(e){""!==(e=b(e))?("#"===j(e,0)&&(e=W(e,1)),this.fragment="",this.parse(e,Ne)):this.fragment=null},update:function(){this.query=this.searchParams.serialize()||null}};var Ue=function(e){var t=f(this,Be),r=x(arguments.length,1)>1?arguments[1]:void 0,n=k(t,new Le(e,!1,r));a||(t.href=n.serialize(),t.origin=n.getOrigin(),t.protocol=n.getProtocol(),t.username=n.getUsername(),t.password=n.getPassword(),t.host=n.getHost(),t.hostname=n.getHostname(),t.port=n.getPort(),t.pathname=n.getPathname(),t.search=n.getSearch(),t.searchParams=n.getSearchParams(),t.hash=n.getHash())},Be=Ue.prototype,Fe=function(e,t){return{get:function(){return C(this)[e]()},set:t&&function(e){return C(this)[t](e)},configurable:!0,enumerable:!0}};if(a&&(d(Be,"href",Fe("serialize","setHref")),d(Be,"origin",Fe("getOrigin")),d(Be,"protocol",Fe("getProtocol","setProtocol")),d(Be,"username",Fe("getUsername","setUsername")),d(Be,"password",Fe("getPassword","setPassword")),d(Be,"host",Fe("getHost","setHost")),d(Be,"hostname",Fe("getHostname","setHostname")),d(Be,"port",Fe("getPort","setPort")),d(Be,"pathname",Fe("getPathname","setPathname")),d(Be,"search",Fe("getSearch","setSearch")),d(Be,"searchParams",Fe("getSearchParams")),d(Be,"hash",Fe("getHash","setHash"))),u(Be,"toJSON",(function(){return C(this).serialize()}),{enumerable:!0}),u(Be,"toString",(function(){return C(this).serialize()}),{enumerable:!0}),D){var ze=D.createObjectURL,We=D.revokeObjectURL;ze&&u(Ue,"createObjectURL",l(ze,D)),We&&u(Ue,"revokeObjectURL",l(We,D))}w(Ue,"URL"),o({global:!0,constructor:!0,forced:!i,sham:!a},{URL:Ue})},73771:(e,t,r)=>{"use strict";r(65969)},77466:(e,t,r)=>{"use strict";var n=r(43119),o=r(20330),a=r(65343),i=r(69996),s=r(77163),l=o("URL");n({target:"URL",stat:!0,forced:!s},{parse:function(e){var t=a(arguments.length,1),r=i(e),n=t<2||void 0===arguments[1]?void 0:i(arguments[1]);try{return new l(r,n)}catch(o){return null}}})},20555:()=>{},28078:(e,t,r)=>{"use strict";var n=r(17315);e.exports=n},26846:(e,t,r)=>{"use strict";var n=r(98711);e.exports=n},7677:(e,t,r)=>{"use strict";var n=r(90696);e.exports=n},67647:(e,t,r)=>{"use strict";var n=r(7436);r(20740),e.exports=n},74473:(e,t,r)=>{"use strict";var n=r(98166);e.exports=n},62726:(e,t,r)=>{"use strict";var n=r(73537);e.exports=n},80187:(e,t,r)=>{"use strict";var n=r(37910);e.exports=n},38164:(e,t,r)=>{"use strict";var n=r(96671);e.exports=n},11640:(e,t,r)=>{"use strict";var n=r(66103);e.exports=n},43017:(e,t,r)=>{"use strict";var n=r(77168),o=r(38224),a=r(24500),i=r(7677);r(32961);var s=Array.prototype,l={DOMTokenList:!0,NodeList:!0};e.exports=function(e){var t=e.forEach;return e===s||a(s,e)&&t===s.forEach||o(l,n(e))?i:t}},18523:(e,t,r)=>{"use strict";var n=r(37492);e.exports=n},37432:(e,t,r)=>{"use strict";var n=r(41319);e.exports=n},76042:(e,t,r)=>{"use strict";var n=r(34671);e.exports=n},94774:(e,t,r)=>{"use strict";var n=r(86209);e.exports=n},21812:(e,t,r)=>{"use strict";var n=r(65139);e.exports=n},63554:(e,t,r)=>{"use strict";var n=r(55043);e.exports=n},65362:(e,t,r)=>{"use strict";var n=r(99145);e.exports=n},46042:(e,t,r)=>{"use strict";var n=r(23073);e.exports=n},25894:(e,t,r)=>{"use strict";var n=r(10273);e.exports=n},36904:(e,t,r)=>{"use strict";var n=r(92133);e.exports=n},48850:(e,t,r)=>{"use strict";var n=r(62977);e.exports=n},3608:(e,t,r)=>{"use strict";var n=r(88449);e.exports=n},73155:(e,t,r)=>{"use strict";var n=r(19816);e.exports=n},81094:(e,t,r)=>{"use strict";var n=r(78817);e.exports=n},69139:(e,t,r)=>{"use strict";var n=r(62422);e.exports=n},37823:(e,t,r)=>{"use strict";var n=r(69802);e.exports=n},66208:(e,t,r)=>{"use strict";var n=r(49709);e.exports=n},47293:(e,t,r)=>{"use strict";var n=r(95760);e.exports=n},98680:(e,t,r)=>{"use strict";var n=r(26191);e.exports=n},50439:(e,t,r)=>{"use strict";var n=r(65460);e.exports=n},93553:(e,t,r)=>{"use strict";var n=r(47234);e.exports=n},35542:(e,t,r)=>{"use strict";var n=r(53193);e.exports=n},7805:(e,t,r)=>{"use strict";var n=r(30838);e.exports=n},70560:(e,t,r)=>{"use strict";var n=r(59391);e.exports=n},41701:(e,t,r)=>{"use strict";var n=r(59050);e.exports=n},81989:(e,t,r)=>{"use strict";var n=r(79422);e.exports=n},27684:(e,t,r)=>{"use strict";r(38186);var n=r(27466);e.exports=n.setTimeout},17087:(e,t,r)=>{"use strict";var n=r(71382);r(20740),e.exports=n},36841:(e,t,r)=>{"use strict";var n=r(5686);r(20740),e.exports=n},13906:(e,t,r)=>{"use strict";var n=r(84553);e.exports=n},388:(e,t,r)=>{"use strict";var n=r(1152);e.exports=n},12824:(e,t,r)=>{"use strict";r(599),r(22286),r(68757),r(31112);var n=r(27466);e.exports=n.URLSearchParams},1152:(e,t,r)=>{"use strict";r(12824),r(73771),r(44281),r(77466),r(20555);var n=r(27466);e.exports=n.URL},58168:(e,t,r)=>{"use strict";function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},n.apply(null,arguments)}r.d(t,{A:()=>n})},25540:(e,t,r)=>{"use strict";function n(e,t){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},n(e,t)}function o(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,n(e,t)}r.d(t,{A:()=>o})},98587:(e,t,r)=>{"use strict";function n(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.includes(n))continue;r[n]=e[n]}return r}r.d(t,{A:()=>n})},48046:(e,t,r)=>{"use strict";r.r(t),r.d(t,{__addDisposableResource:()=>_,__assign:()=>a,__asyncDelegator:()=>C,__asyncGenerator:()=>k,__asyncValues:()=>I,__await:()=>A,__awaiter:()=>h,__classPrivateFieldGet:()=>P,__classPrivateFieldIn:()=>R,__classPrivateFieldSet:()=>j,__createBinding:()=>g,__decorate:()=>s,__disposeResources:()=>L,__esDecorate:()=>c,__exportStar:()=>v,__extends:()=>o,__generator:()=>m,__importDefault:()=>M,__importStar:()=>O,__makeTemplateObject:()=>E,__metadata:()=>p,__param:()=>l,__propKey:()=>d,__read:()=>b,__rest:()=>i,__rewriteRelativeImportExtension:()=>U,__runInitializers:()=>u,__setFunctionName:()=>f,__spread:()=>w,__spreadArray:()=>S,__spreadArrays:()=>x,__values:()=>y,default:()=>B});var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)};function o(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var a=function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},a.apply(this,arguments)};function i(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r}function s(e,t,r,n){var o,a=arguments.length,i=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(i=(a<3?o(i):a>3?o(t,r,i):o(t,r))||i);return a>3&&i&&Object.defineProperty(t,r,i),i}function l(e,t){return function(r,n){t(r,n,e)}}function c(e,t,r,n,o,a){function i(e){if(void 0!==e&&"function"!==typeof e)throw new TypeError("Function expected");return e}for(var s,l=n.kind,c="getter"===l?"get":"setter"===l?"set":"value",u=!t&&e?n.static?e:e.prototype:null,d=t||(u?Object.getOwnPropertyDescriptor(u,n.name):{}),f=!1,p=r.length-1;p>=0;p--){var h={};for(var m in n)h[m]="access"===m?{}:n[m];for(var m in n.access)h.access[m]=n.access[m];h.addInitializer=function(e){if(f)throw new TypeError("Cannot add initializers after decoration has completed");a.push(i(e||null))};var g=(0,r[p])("accessor"===l?{get:d.get,set:d.set}:d[c],h);if("accessor"===l){if(void 0===g)continue;if(null===g||"object"!==typeof g)throw new TypeError("Object expected");(s=i(g.get))&&(d.get=s),(s=i(g.set))&&(d.set=s),(s=i(g.init))&&o.unshift(s)}else(s=i(g))&&("field"===l?o.unshift(s):d[c]=s)}u&&Object.defineProperty(u,n.name,d),f=!0}function u(e,t,r){for(var n=arguments.length>2,o=0;o<t.length;o++)r=n?t[o].call(e,r):t[o].call(e);return n?r:void 0}function d(e){return"symbol"===typeof e?e:"".concat(e)}function f(e,t,r){return"symbol"===typeof t&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:r?"".concat(r," ",t):t})}function p(e,t){if("object"===typeof Reflect&&"function"===typeof Reflect.metadata)return Reflect.metadata(e,t)}function h(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(t){a(t)}}function s(e){try{l(n.throw(e))}catch(t){a(t)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))}function m(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"===typeof Iterator?Iterator:Object).prototype);return i.next=s(0),i.throw=s(1),i.return=s(2),"function"===typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(l){s=[6,l],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}}var g=Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]};function v(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||g(t,e,r)}function y(e){var t="function"===typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"===typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function b(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i}function w(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(b(arguments[t]));return e}function x(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),o=0;for(t=0;t<r;t++)for(var a=arguments[t],i=0,s=a.length;i<s;i++,o++)n[o]=a[i];return n}function S(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o<a;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))}function A(e){return this instanceof A?(this.v=e,this):new A(e)}function k(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,o=r.apply(e,t||[]),a=[];return n=Object.create(("function"===typeof AsyncIterator?AsyncIterator:Object).prototype),i("next"),i("throw"),i("return",(function(e){return function(t){return Promise.resolve(t).then(e,c)}})),n[Symbol.asyncIterator]=function(){return this},n;function i(e,t){o[e]&&(n[e]=function(t){return new Promise((function(r,n){a.push([e,t,r,n])>1||s(e,t)}))},t&&(n[e]=t(n[e])))}function s(e,t){try{(r=o[e](t)).value instanceof A?Promise.resolve(r.value.v).then(l,c):u(a[0][2],r)}catch(n){u(a[0][3],n)}var r}function l(e){s("next",e)}function c(e){s("throw",e)}function u(e,t){e(t),a.shift(),a.length&&s(a[0][0],a[0][1])}}function C(e){var t,r;return t={},n("next"),n("throw",(function(e){throw e})),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,o){t[n]=e[n]?function(t){return(r=!r)?{value:A(e[n](t)),done:!1}:o?o(t):t}:o}}function I(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=y(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,o){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,o,(t=e[r](t)).done,t.value)}))}}}function E(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var D=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},T=function(e){return T=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},T(e)};function O(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=T(e),n=0;n<r.length;n++)"default"!==r[n]&&g(t,e,r[n]);return D(t,e),t}function M(e){return e&&e.__esModule?e:{default:e}}function P(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"===typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function j(e,t,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"===typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(e,r):o?o.value=r:t.set(e,r),r}function R(e,t){if(null===t||"object"!==typeof t&&"function"!==typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"===typeof e?t===e:e.has(t)}function _(e,t,r){if(null!==t&&void 0!==t){if("object"!==typeof t&&"function"!==typeof t)throw new TypeError("Object expected.");var n,o;if(r){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");n=t[Symbol.asyncDispose]}if(void 0===n){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");n=t[Symbol.dispose],r&&(o=n)}if("function"!==typeof n)throw new TypeError("Object not disposable.");o&&(n=function(){try{o.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:n,async:r})}else r&&e.stack.push({async:!0});return t}var N="function"===typeof SuppressedError?SuppressedError:function(e,t,r){var n=new Error(r);return n.name="SuppressedError",n.error=e,n.suppressed=t,n};function L(e){function t(t){e.error=e.hasError?new N(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}var r,n=0;return function o(){for(;r=e.stack.pop();)try{if(!r.async&&1===n)return n=0,e.stack.push(r),Promise.resolve().then(o);if(r.dispose){var a=r.dispose.call(r.value);if(r.async)return n|=2,Promise.resolve(a).then(o,(function(e){return t(e),o()}))}else n|=1}catch(i){t(i)}if(1===n)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}()}function U(e,t){return"string"===typeof e&&/^\.\.?\//.test(e)?e.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,(function(e,r,n,o,a){return r?t?".jsx":".js":!n||o&&a?n+o+"."+a.toLowerCase()+"js":e})):e}const B={__extends:o,__assign:a,__rest:i,__decorate:s,__param:l,__esDecorate:c,__runInitializers:u,__propKey:d,__setFunctionName:f,__metadata:p,__awaiter:h,__generator:m,__createBinding:g,__exportStar:v,__values:y,__read:b,__spread:w,__spreadArrays:x,__spreadArray:S,__await:A,__asyncGenerator:k,__asyncDelegator:C,__asyncValues:I,__makeTemplateObject:E,__importStar:O,__importDefault:M,__classPrivateFieldGet:P,__classPrivateFieldSet:j,__classPrivateFieldIn:R,__addDisposableResource:_,__disposeResources:L,__rewriteRelativeImportExtension:U}},72004:(e,t,r)=>{"use strict";function n(e){var t,r,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(r=n(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function o(){for(var e,t,r=0,o="",a=arguments.length;r<a;r++)(e=arguments[r])&&(t=n(e))&&(o&&(o+=" "),o+=t);return o}r.d(t,{$:()=>o,A:()=>a});const a=o},69709:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>n}),function(e,t){"function"===typeof define&&define.amd?define([],(function(){return t(e)})):"object"===typeof module&&module.exports?module.exports=t(e):t(e)}("undefined"!==typeof self?self:void 0,(function(e){if("function"!==typeof Promise)throw"Promise support required";var t=e.crypto||e.msCrypto;if(t){var r=t.subtle||t.webkitSubtle;if(r){var n=e.Crypto||t.constructor||Object,o=e.SubtleCrypto||r.constructor||Object,a=(e.CryptoKey||e.Key,e.navigator.userAgent.indexOf("Edge/")>-1),i=!!e.msCrypto&&!a,s=!t.subtle&&!!t.webkitSubtle;if(i||s){var l={KoZIhvcNAQEB:"1.2.840.113549.1.1.1"},c={"1.2.840.113549.1.1.1":"KoZIhvcNAQEB"};if(["generateKey","importKey","unwrapKey"].forEach((function(e){var n=r[e];r[e]=function(o,a,l){var c,u,b,A,k=[].slice.call(arguments);switch(e){case"generateKey":c=m(o),u=a,b=l;break;case"importKey":c=m(l),u=k[3],b=k[4],"jwk"===o&&((a=v(a)).alg||(a.alg=g(c)),a.key_ops||(a.key_ops="oct"!==a.kty?"d"in a?b.filter(S):b.filter(x):b.slice()),k[1]=function(e){var t=v(e);return i&&(t.extractable=t.ext,delete t.ext),p(unescape(encodeURIComponent(JSON.stringify(t)))).buffer}(a));break;case"unwrapKey":c=k[4],u=k[5],b=k[6],k[2]=l._key}if("generateKey"===e&&"HMAC"===c.name&&c.hash)return c.length=c.length||{"SHA-1":512,"SHA-256":512,"SHA-384":1024,"SHA-512":1024}[c.hash.name],r.importKey("raw",t.getRandomValues(new Uint8Array(c.length+7>>3)),c,u,b);if(s&&"generateKey"===e&&"RSASSA-PKCS1-v1_5"===c.name&&(!c.modulusLength||c.modulusLength>=2048))return(o=m(o)).name="RSAES-PKCS1-v1_5",delete o.hash,r.generateKey(o,!0,["encrypt","decrypt"]).then((function(e){return Promise.all([r.exportKey("jwk",e.publicKey),r.exportKey("jwk",e.privateKey)])})).then((function(e){return e[0].alg=e[1].alg=g(c),e[0].key_ops=b.filter(x),e[1].key_ops=b.filter(S),Promise.all([r.importKey("jwk",e[0],c,!0,e[0].key_ops),r.importKey("jwk",e[1],c,u,e[1].key_ops)])})).then((function(e){return{publicKey:e[0],privateKey:e[1]}}));if((s||i&&"SHA-1"===(c.hash||{}).name)&&"importKey"===e&&"jwk"===o&&"HMAC"===c.name&&"oct"===a.kty)return r.importKey("raw",p(f(a.k)),l,k[3],k[4]);if(s&&"importKey"===e&&("spki"===o||"pkcs8"===o))return r.importKey("jwk",function(e){var t=y(e),r=!1;t.length>2&&(r=!0,t.shift());var n={ext:!0};if("1.2.840.113549.1.1.1"!==t[0][0])throw new TypeError("Unsupported key type");var o=["n","e","d","p","q","dp","dq","qi"],a=y(t[1]);r&&a.shift();for(var i=0;i<a.length;i++)a[i][0]||(a[i]=a[i].subarray(1)),n[o[i]]=d(h(a[i]));return n.kty="RSA",n}(a),l,k[3],k[4]);if(i&&"unwrapKey"===e)return r.decrypt(k[3],l,a).then((function(e){return r.importKey(o,e,k[4],k[5],k[6])}));try{A=n.apply(r,k)}catch(C){return Promise.reject(C)}return i&&(A=new Promise((function(e,t){A.onabort=A.onerror=function(e){t(e)},A.oncomplete=function(t){e(t.target.result)}}))),A=A.then((function(e){return"HMAC"===c.name&&(c.length||(c.length=8*e.algorithm.length)),0==c.name.search("RSA")&&(c.modulusLength||(c.modulusLength=(e.publicKey||e).algorithm.modulusLength),c.publicExponent||(c.publicExponent=(e.publicKey||e).algorithm.publicExponent)),e=e.publicKey&&e.privateKey?{publicKey:new w(e.publicKey,c,u,b.filter(x)),privateKey:new w(e.privateKey,c,u,b.filter(S))}:new w(e,c,u,b)}))}})),["exportKey","wrapKey"].forEach((function(e){var t=r[e];r[e]=function(n,o,a){var l,c=[].slice.call(arguments);switch(e){case"exportKey":c[1]=o._key;break;case"wrapKey":c[1]=o._key,c[2]=a._key}if((s||i&&"SHA-1"===(o.algorithm.hash||{}).name)&&"exportKey"===e&&"jwk"===n&&"HMAC"===o.algorithm.name&&(c[0]="raw"),!s||"exportKey"!==e||"spki"!==n&&"pkcs8"!==n||(c[0]="jwk"),i&&"wrapKey"===e)return r.exportKey(n,o).then((function(e){return"jwk"===n&&(e=p(unescape(encodeURIComponent(JSON.stringify(v(e)))))),r.encrypt(c[3],a,e)}));try{l=t.apply(r,c)}catch(u){return Promise.reject(u)}return i&&(l=new Promise((function(e,t){l.onabort=l.onerror=function(e){t(e)},l.oncomplete=function(t){e(t.target.result)}}))),"exportKey"===e&&"jwk"===n&&(l=l.then((function(e){return(s||i&&"SHA-1"===(o.algorithm.hash||{}).name)&&"HMAC"===o.algorithm.name?{kty:"oct",alg:g(o.algorithm),key_ops:o.usages.slice(),ext:!0,k:d(h(e))}:((e=v(e)).alg||(e.alg=g(o.algorithm)),e.key_ops||(e.key_ops="public"===o.type?o.usages.filter(x):"private"===o.type?o.usages.filter(S):o.usages.slice()),e)}))),!s||"exportKey"!==e||"spki"!==n&&"pkcs8"!==n||(l=l.then((function(e){return e=function(e){var t,r=[["",null]],n=!1;if("RSA"!==e.kty)throw new TypeError("Unsupported key type");for(var o=["n","e","d","p","q","dp","dq","qi"],a=[],i=0;i<o.length&&o[i]in e;i++){var s=a[i]=p(f(e[o[i]]));128&s[0]&&(a[i]=new Uint8Array(s.length+1),a[i].set(s,1))}return a.length>2&&(n=!0,a.unshift(new Uint8Array([0]))),r[0][0]="1.2.840.113549.1.1.1",t=a,r.push(new Uint8Array(b(t)).buffer),n?r.unshift(new Uint8Array([0])):r[1]={tag:3,value:r[1]},new Uint8Array(b(r)).buffer}(v(e)),e}))),l}})),["encrypt","decrypt","sign","verify"].forEach((function(e){var t=r[e];r[e]=function(n,o,a,s){if(i&&(!a.byteLength||s&&!s.byteLength))throw new Error("Empy input is not allowed");var l,c=[].slice.call(arguments),u=m(n);if(i&&"decrypt"===e&&"AES-GCM"===u.name){var d=n.tagLength>>3;c[2]=(a.buffer||a).slice(0,a.byteLength-d),n.tag=(a.buffer||a).slice(a.byteLength-d)}c[1]=o._key;try{l=t.apply(r,c)}catch(f){return Promise.reject(f)}return i&&(l=new Promise((function(t,r){l.onabort=l.onerror=function(e){r(e)},l.oncomplete=function(r){r=r.target.result;if("encrypt"===e&&r instanceof AesGcmEncryptResult){var n=r.ciphertext,o=r.tag;(r=new Uint8Array(n.byteLength+o.byteLength)).set(new Uint8Array(n),0),r.set(new Uint8Array(o),n.byteLength),r=r.buffer}t(r)}}))),l}})),i){var u=r.digest;r.digest=function(e,t){if(!t.byteLength)throw new Error("Empy input is not allowed");var n;try{n=u.call(r,e,t)}catch(o){return Promise.reject(o)}return n=new Promise((function(e,t){n.onabort=n.onerror=function(e){t(e)},n.oncomplete=function(t){e(t.target.result)}}))},e.crypto=Object.create(t,{getRandomValues:{value:function(e){return t.getRandomValues(e)}},subtle:{value:r}}),e.CryptoKey=w}s&&(t.subtle=r,e.Crypto=n,e.SubtleCrypto=o,e.CryptoKey=w)}}}function d(e){return btoa(e).replace(/\=+$/,"").replace(/\+/g,"-").replace(/\//g,"_")}function f(e){return e=(e+="===").slice(0,-e.length%4),atob(e.replace(/-/g,"+").replace(/_/g,"/"))}function p(e){for(var t=new Uint8Array(e.length),r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}function h(e){return e instanceof ArrayBuffer&&(e=new Uint8Array(e)),String.fromCharCode.apply(String,e)}function m(e){var t={name:(e.name||e||"").toUpperCase().replace("V","v")};switch(t.name){case"SHA-1":case"SHA-256":case"SHA-384":case"SHA-512":break;case"AES-CBC":case"AES-GCM":case"AES-KW":e.length&&(t.length=e.length);break;case"HMAC":e.hash&&(t.hash=m(e.hash)),e.length&&(t.length=e.length);break;case"RSAES-PKCS1-v1_5":e.publicExponent&&(t.publicExponent=new Uint8Array(e.publicExponent)),e.modulusLength&&(t.modulusLength=e.modulusLength);break;case"RSASSA-PKCS1-v1_5":case"RSA-OAEP":e.hash&&(t.hash=m(e.hash)),e.publicExponent&&(t.publicExponent=new Uint8Array(e.publicExponent)),e.modulusLength&&(t.modulusLength=e.modulusLength);break;default:throw new SyntaxError("Bad algorithm name")}return t}function g(e){return{HMAC:{"SHA-1":"HS1","SHA-256":"HS256","SHA-384":"HS384","SHA-512":"HS512"},"RSASSA-PKCS1-v1_5":{"SHA-1":"RS1","SHA-256":"RS256","SHA-384":"RS384","SHA-512":"RS512"},"RSAES-PKCS1-v1_5":{"":"RSA1_5"},"RSA-OAEP":{"SHA-1":"RSA-OAEP","SHA-256":"RSA-OAEP-256"},"AES-KW":{128:"A128KW",192:"A192KW",256:"A256KW"},"AES-GCM":{128:"A128GCM",192:"A192GCM",256:"A256GCM"},"AES-CBC":{128:"A128CBC",192:"A192CBC",256:"A256CBC"}}[e.name][(e.hash||{}).name||e.length||""]}function v(e){(e instanceof ArrayBuffer||e instanceof Uint8Array)&&(e=JSON.parse(decodeURIComponent(escape(h(e)))));var t={kty:e.kty,alg:e.alg,ext:e.ext||e.extractable};switch(t.kty){case"oct":t.k=e.k;case"RSA":["n","e","d","p","q","dp","dq","qi","oth"].forEach((function(r){r in e&&(t[r]=e[r])}));break;default:throw new TypeError("Unsupported key type")}return t}function y(e,t){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),t||(t={pos:0,end:e.length}),t.end-t.pos<2||t.end>e.length)throw new RangeError("Malformed DER");var r,n=e[t.pos++],o=e[t.pos++];if(o>=128){if(o&=127,t.end-t.pos<o)throw new RangeError("Malformed DER");for(var a=0;o--;)a<<=8,a|=e[t.pos++];o=a}if(t.end-t.pos<o)throw new RangeError("Malformed DER");switch(n){case 2:r=e.subarray(t.pos,t.pos+=o);break;case 3:if(e[t.pos++])throw new Error("Unsupported bit string");o--;case 4:r=new Uint8Array(e.subarray(t.pos,t.pos+=o)).buffer;break;case 5:r=null;break;case 6:var i=btoa(h(e.subarray(t.pos,t.pos+=o)));if(!(i in l))throw new Error("Unsupported OBJECT ID "+i);r=l[i];break;case 48:r=[];for(var s=t.pos+o;t.pos<s;)r.push(y(e,t));break;default:throw new Error("Unsupported DER tag 0x"+n.toString(16))}return r}function b(e,t){t||(t=[]);var r=0,n=0,o=t.length+2;if(t.push(0,0),e instanceof Uint8Array){r=2,n=e.length;for(var a=0;a<n;a++)t.push(e[a])}else if(e instanceof ArrayBuffer){r=4,n=e.byteLength,e=new Uint8Array(e);for(a=0;a<n;a++)t.push(e[a])}else if(null===e)r=5,n=0;else if("string"===typeof e&&e in c){var i=p(atob(c[e]));r=6,n=i.length;for(a=0;a<n;a++)t.push(i[a])}else if(e instanceof Array){for(a=0;a<e.length;a++)b(e[a],t);r=48,n=t.length-o}else{if(!("object"===typeof e&&3===e.tag&&e.value instanceof ArrayBuffer))throw new Error("Unsupported DER value "+e);r=3,n=(e=new Uint8Array(e.value)).byteLength,t.push(0);for(a=0;a<n;a++)t.push(e[a]);n++}if(n>=128){var s=n;n=4;for(t.splice(o,0,s>>24&255,s>>16&255,s>>8&255,255&s);n>1&&!(s>>24);)s<<=8,n--;n<4&&t.splice(o,4-n),n|=128}return t.splice(o-2,2,r,n),t}function w(e,t,r,n){Object.defineProperties(this,{_key:{value:e},type:{value:e.type,enumerable:!0},extractable:{value:void 0===r?e.extractable:r,enumerable:!0},algorithm:{value:void 0===t?e.algorithm:t,enumerable:!0},usages:{value:void 0===n?e.usages:n,enumerable:!0}})}function x(e){return"verify"===e||"encrypt"===e||"wrapKey"===e}function S(e){return"sign"===e||"decrypt"===e||"unwrapKey"===e}}));const n=window.crypto}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var a=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(a.exports,a,a.exports,r),a.loaded=!0,a.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;r.t=function(n,o){if(1&o&&(n=this(n)),8&o)return n;if("object"===typeof n&&n){if(4&o&&n.__esModule)return n;if(16&o&&"function"===typeof n.then)return n}var a=Object.create(null);r.r(a);var i={};e=e||[null,t({}),t([]),t(t)];for(var s=2&o&&n;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>i[e]=()=>n[e]));return i.default=()=>n,r.d(a,i),a}})(),r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="/",(()=>{"use strict";var e={};r.r(e),r.d(e,{scaleBand:()=>FG,scaleDiverging:()=>RJ,scaleDivergingLog:()=>_J,scaleDivergingPow:()=>LJ,scaleDivergingSqrt:()=>UJ,scaleDivergingSymlog:()=>NJ,scaleIdentity:()=>DQ,scaleImplicit:()=>UG,scaleLinear:()=>EQ,scaleLog:()=>LQ,scaleOrdinal:()=>BG,scalePoint:()=>WG,scalePow:()=>GQ,scaleQuantile:()=>oK,scaleQuantize:()=>aK,scaleRadial:()=>KQ,scaleSequential:()=>EJ,scaleSequentialLog:()=>DJ,scaleSequentialPow:()=>OJ,scaleSequentialQuantile:()=>PJ,scaleSequentialSqrt:()=>MJ,scaleSequentialSymlog:()=>TJ,scaleSqrt:()=>ZQ,scaleSymlog:()=>zQ,scaleThreshold:()=>iK,scaleTime:()=>AJ,scaleUtc:()=>kJ,tickFormat:()=>CQ});var t=r(9950),n=r.t(t,2),o=r(1352);const a={sesame_2:"sesame_2",wm_2:"wm_2",ssmbot_1:"ssmbot_1",bike_1:"bike_1",sesame_4:"sesame_4",sesame_5:"sesame_5",ssm_bike2:"bike_2",sesame_5_pro:"sesame_5_pro",ssm_opensensor_1:"open_sensor_1",ssm_touch_pro:"ssm_touch_pro",ssm_touch:"ssm_touch",ble_connector:"BLE_Connector_1",hub_3:"hub_3",remote:"remote",remote_nano:"remote_nano",sesame_5_us:"sesame_5_us",bot_2:"bot_2",sesame_face_pro:"sesame_face_Pro",sesame_face:"sesame_face",sesame_6:"sesame_6",sesame_6_pro:"sesame_6_pro",sesame_face_pro_ai:"sesame_face_pro_ai",sesame_face_ai:"sesame_face_ai",ssm_opensensor_2:"open_sensor_2",ssm_touch_2:"ssm_touch_2",ssm_touch_2_pro:"ssm_touch_2_pro",sesame_face_2:"sesame_face_2",sesame_face_2_pro:"ssm_face_2_pro",sesame_miwa:"sesame_miwa",sesame_face_2_ai:"sesame_face_2_ai",sesame_face_2_pro_ai:"sesame_face_2_pro_ai",sesame_6_pro_slidingdoor:"sesame_6_pro_slidingdoor",ssm_bike3:"bike_3",bot_3:"bot_3",hub3_pro:"hub_3_pro",sesame_face_3:"sesame_face_3"},i={0:a.sesame_2,1:a.wm_2,2:a.ssmbot_1,3:a.bike_1,4:a.sesame_4,5:a.sesame_5,6:a.ssm_bike2,7:a.sesame_5_pro,8:a.ssm_opensensor_1,9:a.ssm_touch_pro,10:a.ssm_touch,11:a.ble_connector,13:a.hub_3,14:a.remote,15:a.remote_nano,16:a.sesame_5_us,17:a.bot_2,18:a.sesame_face_pro,19:a.sesame_face,20:a.sesame_6,21:a.sesame_6_pro,22:a.sesame_face_pro_ai,23:a.sesame_face_ai,24:a.ssm_opensensor_2,25:a.ssm_touch_2,26:a.ssm_touch_2_pro,27:a.sesame_face_2,28:a.sesame_face_2_pro,29:a.sesame_miwa,30:a.sesame_face_2_ai,31:a.sesame_face_2_pro_ai,32:a.sesame_6_pro_slidingdoor,33:a.ssm_bike3,35:a.bot_3,36:a.hub3_pro,37:a.sesame_face_3},s={card:"card",finger:"finger",face:"face",palm:"palm",password:"password"},l={sesameDeviceModel:a,sesameTouchProAuthType:s,loginState:{login:"signIn",loginOut:"signOut",configured:"configured"},cmdCode:{ssmOSUpdate:3,cardPut:14,cardDelete:15,cardSet:18,cardSetFinish:19,fingerPut:24,fingerDelete:25,fingerSet:28,fingerSetFinish:29,passwordPut:34,passwordDelete:35,passwordSet:38,passwordSetFinish:39,SSM2_ITEM_CODE_MECH_STATUS:81,HUB3_ITEM_CODE_LED_DUTY:92,SSM3_ITEM_ADD_SESAME:101,SSM3_ITEM_PUB_KEY_SESAME:102,SSM3_ITEM_REMOVE_SESAME:103,SSM_OS3_CARD_CHANGE:107,SSM_OS3_CARD_DELETE:108,SSM_OS3_CARD_GET:109,SSM_OS3_CARD_NOTIFY:110,SSM_OS3_CARD_LAST:111,SSM_OS3_CARD_FIRST:112,SSM_OS3_CARD_MODE_GET:113,SSM_OS3_CARD_MODE_SET:114,HUB3_MATTER_PAIRING_CODE:137,SSM_OS3_CARD_ADD:140,HUB3_MATTER_PAIRING_WINDOW:153,STP_ITEM_CODE_CARDS_ADD:182,STP_ITEM_CODE_CARDS_DELETE:183,STP_ITEM_CODE_PASSCODES_ADD:184,STP_ITEM_CODE_PASSCODES_DELETE:185,STP_ITEM_CODE_PASSCODE_CHANGE_VALUE:137,SSM_OS3_PASSCODE_CHANGE:123,SSM_OS3_PASSCODE_DELETE:124,SSM_OS3_PASSCODE_GET:125,SSM_OS3_PASSCODE_NOTIFY:126,SSM_OS3_PASSCODE_LAST:127,SSM_OS3_PASSCODE_FIRST:128,SSM_OS3_PASSCODE_MODE_GET:129,SSM_OS3_PASSCODE_MODE_SET:130,SSM_OS3_PASSCODE_ADD:138,HUB3_ITEM_CODE_RELAY_SWITCH:208,HUB3_ITEM_CODE_CLEAR_WIFI_SSID:210},cardMode:{CARD_VERIFY:0,CARD_ENROLL:1},hub3LedDutyOp:{set:1,get:2},hub3RelayId:{relay1:1,relay2:2},hub3RelayAction:{off:0,on:1}};var c,u;(u=c||(c={}))[u.Terminator=0]="Terminator",u[u.Numeric=1]="Numeric",u[u.Alphanumeric=2]="Alphanumeric",u[u.StructuredAppend=3]="StructuredAppend",u[u.Byte=4]="Byte",u[u.Kanji=8]="Kanji",u[u.ECI=7]="ECI";class d{constructor(e,t){this.bytes=[],this.mode=e,this.data=t}getLength(){return this.bytes.length}getLengthInBits(e){const t=this.mode,r=new Error(`illegal mode: ${t}`);if(1<=e&&e<10)switch(t){case c.Numeric:return 10;case c.Alphanumeric:return 9;case c.Byte:case c.Kanji:return 8;default:throw r}else if(e<27)switch(t){case c.Numeric:return 12;case c.Alphanumeric:return 11;case c.Byte:return 16;case c.Kanji:return 10;default:throw r}else{if(!(e<41))throw new Error(`illegal version: ${e}`);switch(t){case c.Numeric:return 14;case c.Alphanumeric:return 13;case c.Byte:return 16;case c.Kanji:return 12;default:throw r}}}}function f(e){let t=0,r="";const{length:n}=e,{fromCharCode:o}=String;for(;t<n;){const n=e[t++];if(n<128)r+=o(n);else if(n>191&&n<224){r+=o((31&n)<<6|63&e[t++])}else if(n>239&&n<365){const a=((7&n)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536;r+=o(55296+(a>>10)),r+=o(56320+(1023&a))}else{r+=o((15&n)<<12|(63&e[t++])<<6|63&e[t++])}}return r}class p extends d{constructor(e,t){if(super(c.Byte,e),this.encoding=-1,"function"===typeof t){const{encoding:r,bytes:n}=t(e);this.bytes=n,this.encoding=r}else this.bytes=function(e){let t=0;const{length:r}=e,n=[];for(let o=0;o<r;o++){let a=e.charCodeAt(o);a<128?n[t++]=a:a<2048?(n[t++]=a>>6|192,n[t++]=63&a|128):55296===(64512&a)&&o+1<r&&56320===(64512&e.charCodeAt(o+1))?(a=65536+((1023&a)<<10)+(1023&e.charCodeAt(++o)),n[t++]=a>>18|240,n[t++]=a>>12&63|128,n[t++]=a>>6&63|128,n[t++]=63&a|128):(n[t++]=a>>12|224,n[t++]=a>>6&63|128,n[t++]=63&a|128)}return n}(e),this.encoding=26}writeTo(e){const{bytes:t}=this;for(const r of t)e.put(r,8)}}const h=[],m=[];for(let r=0;r<256;r++)m[r]=0,h[r]=r<8?1<<r:h[r-4]^h[r-5]^h[r-6]^h[r-8];for(let r=0;r<255;r++)m[h[r]]=r;function g(e){if(e<1)throw new Error(`illegal log: ${e}`);return m[e]}function v(e){for(;e<0;)e+=255;for(;e>=256;)e-=255;return h[e]}class y{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=0,{length:n}=e;for(;r<n&&0===e[r];)r++;n-=r;const o=[];for(let a=0;a<n;a++)o.push(e[r+a]);for(let a=0;a<t;a++)o.push(0);this.num=o}getAt(e){return this.num[e]}getLength(){return this.num.length}multiply(e){const t=[],r=e.getLength(),n=this.getLength(),o=n+r-1;for(let a=0;a<o;a++)t.push(0);for(let a=0;a<n;a++)for(let n=0;n<r;n++)t[a+n]^=v(g(this.getAt(a))+g(e.getAt(n)));return new y(t)}mod(e){const t=e.getLength(),r=this.getLength();if(r-t<0)return this;const n=g(this.getAt(0))-g(e.getAt(0)),o=[];for(let a=0;a<r;a++)o.push(this.getAt(a));for(let a=0;a<t;a++)o[a]^=v(g(e.getAt(a))+n);return new y(o).mod(e)}}const b=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]];function w(e){let t=new y([1]);for(let r=0;r<e;r++)t=t.multiply(new y([1,v(r)]));return t}function x(e){let t=0;for(;0!==e;)t++,e>>>=1;return t}const S=x(7973);const A=x(1335);function k(e,t){const r=e.getMatrixSize();let n=0;for(let o=0;o<r;o++){let a=!1,i=0;for(let s=0;s<r;s++){const r=t?e.isDark(o,s):e.isDark(s,o);r===a?(i++,5===i?n+=3:i>5&&n++):(a=r,i=1)}}return n}function C(e,t,r,n,o){r=Math.max(r,0),n=Math.min(n,e.getMatrixSize());for(let a=r;a<n;a++){if(o?e.isDark(t,a):e.isDark(a,t))return!1}return!0}function I(e){return function(e){return k(e,!0)+k(e,!1)}(e)+function(e){const t=e.getMatrixSize();let r=0;for(let n=0;n<t-1;n++)for(let o=0;o<t-1;o++){const t=e.isDark(n,o);t===e.isDark(n,o+1)&&t===e.isDark(n+1,o)&&t===e.isDark(n+1,o+1)&&(r+=3)}return r}(e)+function(e){const t=e.getMatrixSize();let r=0;for(let n=0;n<t;n++)for(let o=0;o<t;o++)o+6<t&&e.isDark(n,o)&&!e.isDark(n,o+1)&&e.isDark(n,o+2)&&e.isDark(n,o+3)&&e.isDark(n,o+4)&&!e.isDark(n,o+5)&&e.isDark(n,o+6)&&(C(e,n,o-4,o,!0)||C(e,n,o+7,o+11,!0))&&(r+=40),n+6<t&&e.isDark(n,o)&&!e.isDark(n+1,o)&&e.isDark(n+2,o)&&e.isDark(n+3,o)&&e.isDark(n+4,o)&&!e.isDark(n+5,o)&&e.isDark(n+6,o)&&(C(e,o,n-4,n,!1)||C(e,o,n+7,n+11,!1))&&(r+=40);return r}(e)+function(e){const t=e.getMatrixSize();let r=0;for(let o=0;o<t;o++)for(let n=0;n<t;n++)e.isDark(o,n)&&r++;const n=t*t;return 10*Math.floor(Math.abs(20*r-10*n)/n)}(e)}var E,D;(D=E||(E={}))[D.L=1]="L",D[D.M=0]="M",D[D.Q=3]="Q",D[D.H=2]="H";class T{constructor(e,t){this.dataCount=t,this.totalCount=e}getDataCount(){return this.dataCount}getTotalCount(){return this.totalCount}static getRSBlocks(e,t){const r=[],n=T.getRSBlockTable(e,t),o=n.length/3;for(let a=0;a<o;a++){const e=n[3*a+0],t=n[3*a+1],o=n[3*a+2];for(let n=0;n<e;n++)r.push(new T(t,o))}return r}static getRSBlockTable(e,t){switch(t){case E.L:return T.RS_BLOCK_TABLE[4*(e-1)+0];case E.M:return T.RS_BLOCK_TABLE[4*(e-1)+1];case E.Q:return T.RS_BLOCK_TABLE[4*(e-1)+2];case E.H:return T.RS_BLOCK_TABLE[4*(e-1)+3];default:throw new Error(`illegal error correction level: ${t}`)}}}T.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]];class O{constructor(){this.length=0,this.buffer=[]}getBuffer(){return this.buffer}getLengthInBits(){return this.length}getBit(e){return 1===(this.buffer[e/8|0]>>>7-e%8&1)}put(e,t){for(let r=0;r<t;r++)this.putBit(1===(e>>>t-r-1&1))}putBit(e){const{buffer:t}=this;this.length===8*t.length&&t.push(0),e&&(t[this.length/8|0]|=128>>>this.length%8),this.length++}}class M{constructor(e){const t=1<<e,r=t+1;this.bof=t,this.eof=r,this.depth=e,this.reset()}reset(){const e=this.depth+1;this.bits=e,this.size=1<<e,this.codes=new Map,this.unused=this.eof+1}add(e,t){let{unused:r}=this;if(r>4095)return!1;this.codes.set(e<<8|t,r++);let{bits:n,size:o}=this;return r>o&&(o=1<<++n),this.bits=n,this.size=o,this.unused=r,!0}get(e,t){return this.codes.get(e<<8|t)}}class P{constructor(e){this.bits=0,this.buffer=0,this.bytes=[],this.dict=e}write(e){let{bits:t}=this,r=this.buffer|e<<t;t+=this.dict.bits;const{bytes:n}=this;for(;t>=8;)n.push(255&r),r>>=8,t-=8;this.bits=t,this.buffer=r}pipe(e){const{bytes:t}=this;this.bits>0&&t.push(this.buffer),e.writeByte(this.dict.depth);const{length:r}=t;for(let n=0;n<r;){const o=r-n;o>=255?(e.writeByte(255),e.writeBytes(t,n,255),n+=255):(e.writeByte(o),e.writeBytes(t,n,o),n=r)}e.writeByte(0)}}class j{constructor(){this.bytes=[]}writeByte(e){this.bytes.push(255&e)}writeInt16(e){this.bytes.push(255&e,e>>8&255)}writeBytes(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length;const n=this.bytes;for(let o=0;o<r;o++)n.push(255&e[t+o])}}const{fromCharCode:R}=String;function _(e){if((e&=63)>=0){if(e<26)return 65+e;if(e<52)return e-26+97;if(e<62)return e-52+48;if(62===e)return 43;if(63===e)return 47}throw new Error(`illegal char: ${R(e)}`)}class N{constructor(){this.bits=0,this.buffer=0,this.length=0,this.stream=new j}get bytes(){return this.stream.bytes}write(e){let t=this.bits+8;const{stream:r}=this,n=this.buffer<<8|255&e;for(;t>=6;)r.writeByte(_(n>>>t-6)),t-=6;this.length++,this.bits=t,this.buffer=n}close(){const{bits:e,stream:t,length:r}=this;if(e>0&&(t.writeByte(_(this.buffer<<6-e)),this.bits=0,this.buffer=0),r%3!=0){const e=3-r%3;for(let r=0;r<e;r++)t.writeByte(61)}}}class L{constructor(e,t){let{foreground:r=[0,0,0],background:n=[255,255,255]}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.pixels=[],this.width=e,this.height=t,this.foreground=r,this.background=n}encodeImpl(){const e=new j,{width:t,height:r,background:n,foreground:o}=this;return e.writeBytes([71,73,70,56,57,97]),e.writeInt16(t),e.writeInt16(r),e.writeBytes([128,0,0]),e.writeBytes([n[0],n[1],n[2]]),e.writeBytes([o[0],o[1],o[2]]),e.writeByte(44),e.writeInt16(0),e.writeInt16(0),e.writeInt16(t),e.writeInt16(r),e.writeByte(0),function(e,t,r){const n=new M(t),o=new P(n);if(o.write(n.bof),e.length>0){let t=e[0];const{length:r}=e;for(let a=1;a<r;a++){const r=e[a],i=n.get(t,r);null!=i?t=i:(o.write(t),n.add(t,r)||(o.write(n.bof),n.reset()),t=r)}o.write(t)}o.write(n.eof),o.pipe(r)}(this.pixels,2,e),e.writeByte(59),e.bytes}set(e,t,r){this.pixels[t*this.width+e]=r}toDataURL(){const e=this.encodeImpl(),t=new N;for(const o of e)t.write(o);t.close();const r=t.bytes;let n="data:image/gif;base64,";for(const o of r)n+=R(o);return n}}function U(e){switch(e){case 0:return(e,t)=>0===(e+t&1);case 1:return(e,t)=>0===(1&t);case 2:return(e,t)=>e%3===0;case 3:return(e,t)=>(e+t)%3===0;case 4:return(e,t)=>0===((e/3|0)+(t/2|0)&1);case 5:return(e,t)=>(e*t&1)+e*t%3===0;case 6:return(e,t)=>0===((e*t&1)+e*t%3&1);case 7:return(e,t)=>0===(e*t%3+(e+t&1)&1);default:throw new Error(`illegal mask: ${e}`)}}const{toString:B}=Object.prototype;function F(e,t){if(e<0||e>=1e6)throw new Error("byte mode encoding hint out of range");t.put(c.ECI,4),e<128?t.put(e,8):e<16384?(t.put(2,2),t.put(e,14)):(t.put(6,3),t.put(e,21))}function z(e,t,r,n){const o=new O,a=T.getRSBlocks(e,t);for(const s of n){const t=s.mode;r&&t===c.Byte&&F(s.encoding,o),o.put(t,4),o.put(s.getLength(),s.getLengthInBits(e)),s.writeTo(o)}let i=0;for(const s of a)i+=s.getDataCount();return i*=8,[o,a,i]}function W(e,t,r){for(e.getLengthInBits()+4<=r&&e.put(0,4);e.getLengthInBits()%8!==0;)e.putBit(!1);for(;!(e.getLengthInBits()>=r)&&(e.put(236,8),!(e.getLengthInBits()>=r));)e.put(17,8);return function(e,t){let r=0,n=0,o=0;const a=[],i=[],s=t.length,l=e.getBuffer();for(let c=0;c<s;c++){const e=t[c],s=e.getDataCount(),u=e.getTotalCount()-s;n=Math.max(n,s),o=Math.max(o,u),a[c]=[];for(let t=0;t<s;t++)a[c][t]=255&l[t+r];r+=s;const d=w(u),f=d.getLength()-1,p=new y(a[c],f).mod(d),h=p.getLength();i[c]=[];for(let t=0;t<f;t++){const e=t+h-f;i[c][t]=e>=0?p.getAt(e):0}}e=new O;for(let c=0;c<n;c++)for(let t=0;t<s;t++)c<a[t].length&&e.put(a[t][c],8);for(let c=0;c<o;c++)for(let t=0;t<s;t++)c<i[t].length&&e.put(i[t][c],8);return e}(e,t)}class H{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.matrixSize=0,this.chunks=[],this.matrix=[];const{version:t=0,encodingHint:r=!1,errorCorrectionLevel:n=E.L}=e;this.setVersion(t),this.setEncodingHint(r),this.setErrorCorrectionLevel(n)}getMatrix(){return this.matrix}getMatrixSize(){return this.matrixSize}getVersion(){return this.version}setVersion(e){return this.version=Math.min(40,Math.max(0,e|0)),this.auto=0===this.version,this}getErrorCorrectionLevel(){return this.errorCorrectionLevel}setErrorCorrectionLevel(e){switch(e){case E.L:case E.M:case E.Q:case E.H:this.errorCorrectionLevel=e}return this}getEncodingHint(){return this.encodingHint}setEncodingHint(e){return this.encodingHint=e,this}write(e){const{chunks:t}=this;if(e instanceof d)t.push(e);else{if("[object String]"!==B.call(e))throw new Error(`illegal data: ${e}`);t.push(new p(e))}return this}isDark(e,t){return!0===this.matrix[e][t]}setupFinderPattern(e,t){const{matrix:r}=this,n=this.matrixSize;for(let o=-1;o<=7;o++)for(let a=-1;a<=7;a++)e+o<=-1||n<=e+o||t+a<=-1||n<=t+a||(r[e+o][t+a]=0<=o&&o<=6&&(0===a||6===a)||0<=a&&a<=6&&(0===o||6===o)||2<=o&&o<=4&&2<=a&&a<=4)}setupAlignmentPattern(){const{matrix:e}=this,t=(r=this.version,b[r-1]);var r;const{length:n}=t;for(let o=0;o<n;o++)for(let r=0;r<n;r++){const n=t[o],a=t[r];if(null===e[n][a])for(let t=-2;t<=2;t++)for(let r=-2;r<=2;r++)e[n+t][a+r]=-2===t||2===t||-2===r||2===r||0===t&&0===r}}setupTimingPattern(){const{matrix:e}=this,t=this.matrixSize-8;for(let r=8;r<t;r++){const t=r%2===0;null===e[r][6]&&(e[r][6]=t),null===e[6][r]&&(e[6][r]=t)}}setupFormatInfo(e){const{matrix:t}=this,r=function(e){let t=e<<10;for(;x(t)-A>=0;)t^=1335<<x(t)-A;return 21522^(e<<10|t)}(this.errorCorrectionLevel<<3|e),n=this.matrixSize;for(let o=0;o<15;o++){const e=1===(r>>o&1);o<6?t[o][8]=e:o<8?t[o+1][8]=e:t[n-15+o][8]=e,o<8?t[8][n-o-1]=e:o<9?t[8][15-o-1+1]=e:t[8][15-o-1]=e}t[n-8][8]=!0}setupVersionInfo(){if(this.version>=7){const{matrix:e}=this,t=this.matrixSize,r=function(e){let t=e<<12;for(;x(t)-S>=0;)t^=7973<<x(t)-S;return e<<12|t}(this.version);for(let n=0;n<18;n++){const o=1===(r>>n&1);e[n/3|0][n%3+t-8-3]=o,e[n%3+t-8-3][n/3|0]=o}}}setupCodewords(e,t){const{matrix:r}=this,n=this.matrixSize,o=e.getLengthInBits(),a=U(t);let i=0;for(let s=n-1;s>=1;s-=2){6===s&&(s=5);for(let t=0;t<n;t++)for(let l=0;l<2;l++){const c=s-l,u=0===(s+1&2)?n-1-t:t;if(null!==r[u][c])continue;let d=!1;i<o&&(d=e.getBit(i++));a(c,u)&&(d=!d),r[u][c]=d}}}buildMatrix(e,t){const r=[],n=this.matrixSize;for(let o=0;o<n;o++){r[o]=[];for(let e=0;e<n;e++)r[o][e]=null}this.matrix=r,this.setupFinderPattern(0,0),this.setupFinderPattern(n-7,0),this.setupFinderPattern(0,n-7),this.setupAlignmentPattern(),this.setupTimingPattern(),this.setupFormatInfo(t),this.setupVersionInfo(),this.setupCodewords(e,t)}make(){let e,t,r;const{chunks:n,errorCorrectionLevel:o}=this;if(this.auto){let a=1;for(;a<=40&&([e,t,r]=z(a,o,this.encodingHint,n),!(e.getLengthInBits()<=r));a++);const i=e.getLengthInBits();if(i>r)throw new Error(`data overflow: ${i} > ${r}`);this.version=a}else[e,t,r]=z(this.version,o,this.encodingHint,n);this.matrixSize=4*this.version+17;const a=[],i=W(e,t,r);let s=-1,l=Number.MAX_VALUE;for(let c=0;c<8;c++){this.buildMatrix(i,c),a.push(this.matrix);const e=I(this);e<l&&(l=e,s=c)}return this.matrix=a[s],this}toDataURL(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:4*e,r=arguments.length>2?arguments[2]:void 0;e=Math.max(1,e|0),t=Math.max(0,t|0);const n=e*this.matrixSize+2*t,o=t,a=n-t,i=new L(n,n,r);for(let s=0;s<n;s++)for(let t=0;t<n;t++)if(o<=t&&t<a&&o<=s&&s<a){const r=(s-o)/e|0,n=(t-o)/e|0;i.set(t,s,this.isDark(r,n)?1:0)}else i.set(t,s,0);return i.toDataURL()}clear(){this.chunks=[]}}function Y(e,t){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function V(e){return e.reduce(((e,t)=>e+t))}function G(e,t,r,n){const o=[{x:Math.floor(e.x),y:Math.floor(e.y)}],a=Math.abs(t.y-e.y)>Math.abs(t.x-e.x);let i,s,l,c;a?(i=Math.floor(e.y),s=Math.floor(e.x),l=Math.floor(t.y),c=Math.floor(t.x)):(i=Math.floor(e.x),s=Math.floor(e.y),l=Math.floor(t.x),c=Math.floor(t.y));const u=Math.abs(l-i),d=Math.abs(c-s),f=i<l?1:-1,p=s<c?1:-1;let h=!0,m=Math.floor(-u/2);for(let v=i,y=s;v!==l+f;v+=f){const e=a?y:v,t=a?v:y;if(r.get(e,t)!==h&&(h=!h,o.push({x:e,y:t}),o.length===n+1))break;if(m+=d,m>0){if(y===c)break;y+=p,m-=u}}const g=[];for(let v=0;v<n;v++)o[v]&&o[v+1]?g.push(Y(o[v],o[v+1])):g.push(0);return g}function Z(e,t,r,n){const o=t.y-e.y,a=t.x-e.x,i=G(e,t,r,Math.ceil(n/2)),s=G(e,{x:e.x-a,y:e.y-o},r,Math.ceil(n/2)),l=i.shift()+s.shift()-1;return s.concat(l).concat(...i)}function Q(e,t){const r=V(e)/V(t);let n=0;return t.forEach(((t,o)=>{n+=Math.pow(e[o]-t*r,2)})),{averageSize:r,error:n}}function K(e,t,r){try{const n=Z(e,{x:-1,y:e.y},r,t.length),o=Z(e,{x:e.x,y:-1},r,t.length),a=Z(e,{x:Math.max(0,e.x-e.y)-1,y:Math.max(0,e.y-e.x)-1},r,t.length),i=Z(e,{x:Math.min(r.width,e.x+e.y)+1,y:Math.min(r.height,e.y+e.x)+1},r,t.length),s=Q(n,t),l=Q(o,t),c=Q(a,t),u=Q(i,t),d=Math.sqrt(s.error*s.error+l.error*l.error+c.error*c.error+u.error*u.error),f=(s.averageSize+l.averageSize+c.averageSize+u.averageSize)/4;return d+(Math.pow(s.averageSize-f,2)+Math.pow(l.averageSize-f,2)+Math.pow(c.averageSize-f,2)+Math.pow(u.averageSize-f,2))/f}catch(n){return 1/0}}function X(e,t){let r=Math.round(t.x);for(;e.get(r,Math.round(t.y));)r--;let n=Math.round(t.x);for(;e.get(n,Math.round(t.y));)n++;const o=(r+n)/2;let a=Math.round(t.y);for(;e.get(Math.round(o),a);)a--;let i=Math.round(t.y);for(;e.get(Math.round(o),i);)i++;return{x:o,y:(a+i)/2}}function J(e,t,r,n,o){let a,i;try{({dimension:a,moduleSize:i}=function(e,t,r,n){const o=(V(Z(e,r,n,5))/7+V(Z(e,t,n,5))/7+V(Z(r,e,n,5))/7+V(Z(t,e,n,5))/7)/4;if(o<1)throw new Error("invalid module size");const a=Math.round(Y(e,t)/o),i=Math.round(Y(e,r)/o);let s=Math.floor((a+i)/2)+7;switch(s%4){case 0:s++;break;case 2:s--}return{dimension:s,moduleSize:o}}(n,r,o,e))}catch(p){return null}const s=r.x-n.x+o.x,l=r.y-n.y+o.y,c=(Y(n,o)+Y(n,r))/2/i,u=1-3/c,d={x:n.x+u*(s-n.x),y:n.y+u*(l-n.y)},f=t.reduce(((t,r)=>{let{top:n,bottom:o}=r;const a=(n.startX+n.endX+o.startX+o.endX)/4,i=(n.y+o.y+1)/2,s=Math.floor(a),l=Math.floor(i);if(e.get(s,l)){const r=K({x:s,y:l},[1,1,1],e)+Y({x:a,y:i},d);t.push({x:a,y:i,score:r})}return t}),[]).sort(((e,t)=>e.score-t.score));return{alignmentPattern:c>=15&&f.length?f[0]:d,dimension:a}}function q(e){const t=[],r=[];let n=[],o=[];for(let m=0;m<=e.height;m++){let a=0,i=!1,s=[0,0,0,0,0];for(let t=-1;t<=e.width;t++){const r=e.get(t,m);if(r===i)a++;else{s=[s[1],s[2],s[3],s[4],a],a=1,i=r;const e=V(s)/7,l=Math.abs(s[0]-e)<e&&Math.abs(s[1]-e)<e&&Math.abs(s[2]-3*e)<3*e&&Math.abs(s[3]-e)<e&&Math.abs(s[4]-e)<e&&!r,c=V(s.slice(-3))/3,u=Math.abs(s[2]-c)<c&&Math.abs(s[3]-c)<c&&Math.abs(s[4]-c)<c&&r;if(l){const e=t-s[3]-s[4],r=e-s[2],o={startX:r,endX:e,y:m},a=n.filter((t=>r>=t.bottom.startX&&r<=t.bottom.endX||e>=t.bottom.startX&&r<=t.bottom.endX||r<=t.bottom.startX&&e>=t.bottom.endX&&s[2]/(t.bottom.endX-t.bottom.startX)<1.5&&s[2]/(t.bottom.endX-t.bottom.startX)>.5));a.length>0?a[0].bottom=o:n.push({top:o,bottom:o})}if(u){const e=t-s[4],r=e-s[3],n={startX:r,y:m,endX:e},a=o.filter((t=>r>=t.bottom.startX&&r<=t.bottom.endX||e>=t.bottom.startX&&r<=t.bottom.endX||r<=t.bottom.startX&&e>=t.bottom.endX&&s[2]/(t.bottom.endX-t.bottom.startX)<1.5&&s[2]/(t.bottom.endX-t.bottom.startX)>.5));a.length>0?a[0].bottom=n:o.push({top:n,bottom:n})}}}t.push(...n.filter((e=>e.bottom.y!==m&&e.bottom.y-e.top.y>=2))),n=n.filter((e=>e.bottom.y===m)),r.push(...o.filter((e=>e.bottom.y!==m))),o=o.filter((e=>e.bottom.y===m))}t.push(...n.filter((e=>e.bottom.y-e.top.y>=2))),r.push(...o);const a=t.reduce(((t,r)=>{let{top:n,bottom:o}=r;if(o.y-n.y>=2){const r=(n.startX+n.endX+o.startX+o.endX)/4,a=(n.y+o.y+1)/2,i=Math.round(r),s=Math.round(a);if(e.get(i,s)){const l=[n.endX-n.startX,o.endX-o.startX,o.y-n.y+1],c=V(l)/l.length,u=K({x:i,y:s},[1,1,3,1,1],e);t.push({x:r,y:a,size:c,score:u})}}return t}),[]).sort(((e,t)=>e.score-t.score)).reduce(((e,t,r,n)=>{if(r<=4){const o=n.reduce(((e,n,o)=>{let{x:a,y:i,size:s,score:l}=n;return r!==o&&e.push({x:a,y:i,size:s,score:l+Math.pow(s-t.size,2)/t.size}),e}),[]);if(o.length>=2){const r=t.score+o[0].score+o[1].score;e.push({points:[t].concat(o.sort(((e,t)=>e.score-t.score)).slice(0,2)),score:r})}}return e}),[]).sort(((e,t)=>e.score-t.score));if(0===a.length)return null;const{topRight:i,topLeft:s,bottomLeft:l}=function(e,t,r){const n=Y(e,t),o=Y(t,r),a=Y(e,r);let i,s,l;return[l,i,s]=o>=n&&o>=a?[t,e,r]:a>=o&&a>=n?[e,t,r]:[e,r,t],(s.x-i.x)*(l.y-i.y)-(s.y-i.y)*(l.x-i.x)<0&&([l,s]=[s,l]),{bottomLeft:l,topLeft:i,topRight:s}}(a[0].points[0],a[0].points[1],a[0].points[2]),c=[],u=J(e,r,i,s,l);null!==u&&c.push({alignmentPattern:{x:u.alignmentPattern.x,y:u.alignmentPattern.y},bottomLeft:{x:l.x,y:l.y},dimension:u.dimension,topLeft:{x:s.x,y:s.y},topRight:{x:i.x,y:i.y}});const d=X(e,i),f=X(e,s),p=X(e,l),h=J(e,r,d,f,p);return null!==h&&c.push({alignmentPattern:{x:h.alignmentPattern.x,y:h.alignmentPattern.y},bottomLeft:{x:p.x,y:p.y},topLeft:{x:f.x,y:f.y},topRight:{x:d.x,y:d.y},dimension:h.dimension}),0===c.length?null:c}class ee{constructor(e,t){this.data=e,this.width=t,this.height=e.length/t}static createEmpty(e,t){return new ee(new Uint8ClampedArray(e*t),e)}get(e,t){return!(e<0||e>=this.width||t<0||t>=this.height)&&!!this.data[t*this.width+e]}set(e,t,r){this.data[t*this.width+e]=r?1:0}setRegion(e,t,r,n,o){for(let a=t;a<t+n;a++)for(let t=e;t<e+r;t++)this.set(t,a,!!o)}}function te(e,t,r,n){const o=e.x-t.x+r.x-n.x,a=e.y-t.y+r.y-n.y;if(0===o&&0===a)return{a11:t.x-e.x,a12:t.y-e.y,a13:0,a21:r.x-t.x,a22:r.y-t.y,a23:0,a31:e.x,a32:e.y,a33:1};{const i=t.x-r.x,s=n.x-r.x,l=t.y-r.y,c=n.y-r.y,u=i*c-s*l,d=(o*c-s*a)/u,f=(i*a-o*l)/u;return{a11:t.x-e.x+d*t.x,a12:t.y-e.y+d*t.y,a13:d,a21:n.x-e.x+f*n.x,a22:n.y-e.y+f*n.y,a23:f,a31:e.x,a32:e.y,a33:1}}}function re(e,t){const r=function(e,t,r,n){const o=te(e,t,r,n);return{a11:o.a22*o.a33-o.a23*o.a32,a12:o.a13*o.a32-o.a12*o.a33,a13:o.a12*o.a23-o.a13*o.a22,a21:o.a23*o.a31-o.a21*o.a33,a22:o.a11*o.a33-o.a13*o.a31,a23:o.a13*o.a21-o.a11*o.a23,a31:o.a21*o.a32-o.a22*o.a31,a32:o.a12*o.a31-o.a11*o.a32,a33:o.a11*o.a22-o.a12*o.a21}}({x:3.5,y:3.5},{x:t.dimension-3.5,y:3.5},{x:t.dimension-6.5,y:t.dimension-6.5},{x:3.5,y:t.dimension-3.5}),n=te(t.topLeft,t.topRight,t.alignmentPattern,t.bottomLeft),o=(i=r,{a11:(a=n).a11*i.a11+a.a21*i.a12+a.a31*i.a13,a12:a.a12*i.a11+a.a22*i.a12+a.a32*i.a13,a13:a.a13*i.a11+a.a23*i.a12+a.a33*i.a13,a21:a.a11*i.a21+a.a21*i.a22+a.a31*i.a23,a22:a.a12*i.a21+a.a22*i.a22+a.a32*i.a23,a23:a.a13*i.a21+a.a23*i.a22+a.a33*i.a23,a31:a.a11*i.a31+a.a21*i.a32+a.a31*i.a33,a32:a.a12*i.a31+a.a22*i.a32+a.a32*i.a33,a33:a.a13*i.a31+a.a23*i.a32+a.a33*i.a33});var a,i;const s=ee.createEmpty(t.dimension,t.dimension),l=(e,t)=>{const r=o.a13*e+o.a23*t+o.a33;return{x:Math.max(0,(o.a11*e+o.a21*t+o.a31)/r),y:Math.max(0,(o.a12*e+o.a22*t+o.a32)/r)}};for(let c=0;c<t.dimension;c++)for(let r=0;r<t.dimension;r++){const t=l(r+.5,c+.5);s.set(r,c,e.get(Math.floor(t.x),Math.floor(t.y)))}return{matrix:s,mappingFunction:l}}function ne(e,t){return e^t}class oe{constructor(e,t,r){this.primitive=e,this.size=t,this.generatorBase=r,this.expTable=[],this.logTable=[];let n=1;for(let o=0;o<this.size;o++)this.logTable[o]=0,this.expTable[o]=n,n*=2,n>=this.size&&(n=(n^this.primitive)&this.size-1);for(let o=0;o<this.size-1;o++)this.logTable[this.expTable[o]]=o;this.zero=new ae(this,Uint8ClampedArray.from([0])),this.one=new ae(this,Uint8ClampedArray.from([1]))}multiply(e,t){return 0===e||0===t?0:this.expTable[(this.logTable[e]+this.logTable[t])%(this.size-1)]}inverse(e){if(0===e)throw new Error("can't invert 0");return this.expTable[this.size-this.logTable[e]-1]}buildMonomial(e,t){if(e<0)throw new Error("invalid monomial degree less than 0");if(0===t)return this.zero;const r=new Uint8ClampedArray(e+1);return r[0]=t,new ae(this,r)}log(e){if(0===e)throw new Error("can't take log(0)");return this.logTable[e]}exp(e){return this.expTable[e]}}class ae{constructor(e,t){if(0===t.length)throw new Error("no coefficients");this.field=e;const r=t.length;if(r>1&&0===t[0]){let n=1;for(;n<r&&0===t[n];)n++;if(n===r)this.coefficients=e.zero.coefficients;else{this.coefficients=new Uint8ClampedArray(r-n);for(let e=0;e<this.coefficients.length;e++)this.coefficients[e]=t[n+e]}}else this.coefficients=t}degree(){return this.coefficients.length-1}isZero(){return 0===this.coefficients[0]}getCoefficient(e){return this.coefficients[this.coefficients.length-1-e]}addOrSubtract(e){if(this.isZero())return e;if(e.isZero())return this;let t=this.coefficients,r=e.coefficients;t.length>r.length&&([t,r]=[r,t]);const n=new Uint8ClampedArray(r.length),o=r.length-t.length;for(let a=0;a<o;a++)n[a]=r[a];for(let a=o;a<r.length;a++)n[a]=ne(t[a-o],r[a]);return new ae(this.field,n)}multiply(e){if(0===e)return this.field.zero;if(1===e)return this;const t=this.coefficients.length,r=new Uint8ClampedArray(t);for(let n=0;n<t;n++)r[n]=this.field.multiply(this.coefficients[n],e);return new ae(this.field,r)}multiplyPoly(e){if(this.isZero()||e.isZero())return this.field.zero;const t=this.coefficients,r=t.length,n=e.coefficients,o=n.length,a=new Uint8ClampedArray(r+o-1);for(let i=0;i<r;i++){const e=t[i];for(let t=0;t<o;t++)a[i+t]=ne(a[i+t],this.field.multiply(e,n[t]))}return new ae(this.field,a)}multiplyByMonomial(e,t){if(e<0)throw new Error("invalid degree less than 0");if(0===t)return this.field.zero;const r=this.coefficients.length,n=new Uint8ClampedArray(r+e);for(let o=0;o<r;o++)n[o]=this.field.multiply(this.coefficients[o],t);return new ae(this.field,n)}evaluateAt(e){let t=0;if(0===e)return this.getCoefficient(0);const r=this.coefficients.length;if(1===e)return this.coefficients.forEach((e=>{t=ne(t,e)})),t;t=this.coefficients[0];for(let n=1;n<r;n++)t=ne(this.field.multiply(e,t),this.coefficients[n]);return t}}function ie(e,t){const r=new Uint8ClampedArray(e.length);r.set(e);const n=new oe(285,256,0),o=new ae(n,r),a=new Uint8ClampedArray(t);let i=!1;for(let d=0;d<t;d++){const e=o.evaluateAt(n.exp(d+n.generatorBase));a[a.length-1-d]=e,0!==e&&(i=!0)}if(!i)return r;const s=new ae(n,a),l=function(e,t,r,n){t.degree()<r.degree()&&([t,r]=[r,t]);let o=t,a=r,i=e.zero,s=e.one;for(;a.degree()>=n/2;){const t=o,r=i;if(o=a,i=s,o.isZero())return null;a=t;let n=e.zero;const l=o.getCoefficient(o.degree()),c=e.inverse(l);for(;a.degree()>=o.degree()&&!a.isZero();){const t=a.degree()-o.degree(),r=e.multiply(a.getCoefficient(a.degree()),c);n=n.addOrSubtract(e.buildMonomial(t,r)),a=a.addOrSubtract(o.multiplyByMonomial(t,r))}if(s=n.multiplyPoly(i).addOrSubtract(r),a.degree()>=o.degree())return null}const l=s.getCoefficient(0);if(0===l)return null;const c=e.inverse(l);return[s.multiply(c),a.multiply(c)]}(n,n.buildMonomial(t,1),s,t);if(null===l)return null;const c=function(e,t){const r=t.degree();if(1===r)return[t.getCoefficient(1)];let n=0;const o=new Array(r);for(let a=1;a<e.size&&n<r;a++)0===t.evaluateAt(a)&&(o[n]=e.inverse(a),n++);return n!==r?null:o}(n,l[0]);if(null==c)return null;const u=function(e,t,r){const n=r.length,o=new Array(n);for(let a=0;a<n;a++){let i=1;const s=e.inverse(r[a]);for(let t=0;t<n;t++)a!==t&&(i=e.multiply(i,ne(1,e.multiply(r[t],s))));o[a]=e.multiply(t.evaluateAt(s),e.inverse(i)),0!==e.generatorBase&&(o[a]=e.multiply(o[a],s))}return o}(n,l[1],c);for(let d=0;d<c.length;d++){const e=r.length-1-n.log(c[d]);if(e<0)return null;r[e]=ne(r[e],u[d])}return r}const se=[{infoBits:0,versionNumber:1,alignmentPatternCenters:[],errorCorrectionLevels:[{ecCodewordsPerBlock:10,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:7,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:19}]},{ecCodewordsPerBlock:17,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:9}]},{ecCodewordsPerBlock:13,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:13}]}]},{infoBits:0,versionNumber:2,alignmentPatternCenters:[6,18],errorCorrectionLevels:[{ecCodewordsPerBlock:16,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:28}]},{ecCodewordsPerBlock:10,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:34}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:22}]}]},{infoBits:0,versionNumber:3,alignmentPatternCenters:[6,22],errorCorrectionLevels:[{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:44}]},{ecCodewordsPerBlock:15,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:55}]},{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:13}]},{ecCodewordsPerBlock:18,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:17}]}]},{infoBits:0,versionNumber:4,alignmentPatternCenters:[6,26],errorCorrectionLevels:[{ecCodewordsPerBlock:18,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:32}]},{ecCodewordsPerBlock:20,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:80}]},{ecCodewordsPerBlock:16,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:9}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:24}]}]},{infoBits:0,versionNumber:5,alignmentPatternCenters:[6,30],errorCorrectionLevels:[{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:43}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:108}]},{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:11},{numBlocks:2,dataCodewordsPerBlock:12}]},{ecCodewordsPerBlock:18,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:15},{numBlocks:2,dataCodewordsPerBlock:16}]}]},{infoBits:0,versionNumber:6,alignmentPatternCenters:[6,34],errorCorrectionLevels:[{ecCodewordsPerBlock:16,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:27}]},{ecCodewordsPerBlock:18,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:68}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:15}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:19}]}]},{infoBits:31892,versionNumber:7,alignmentPatternCenters:[6,22,38],errorCorrectionLevels:[{ecCodewordsPerBlock:18,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:31}]},{ecCodewordsPerBlock:20,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:78}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:13},{numBlocks:1,dataCodewordsPerBlock:14}]},{ecCodewordsPerBlock:18,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:14},{numBlocks:4,dataCodewordsPerBlock:15}]}]},{infoBits:34236,versionNumber:8,alignmentPatternCenters:[6,24,42],errorCorrectionLevels:[{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:38},{numBlocks:2,dataCodewordsPerBlock:39}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:97}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:14},{numBlocks:2,dataCodewordsPerBlock:15}]},{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:18},{numBlocks:2,dataCodewordsPerBlock:19}]}]},{infoBits:39577,versionNumber:9,alignmentPatternCenters:[6,26,46],errorCorrectionLevels:[{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:36},{numBlocks:2,dataCodewordsPerBlock:37}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:116}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:12},{numBlocks:4,dataCodewordsPerBlock:13}]},{ecCodewordsPerBlock:20,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:16},{numBlocks:4,dataCodewordsPerBlock:17}]}]},{infoBits:42195,versionNumber:10,alignmentPatternCenters:[6,28,50],errorCorrectionLevels:[{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:43},{numBlocks:1,dataCodewordsPerBlock:44}]},{ecCodewordsPerBlock:18,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:68},{numBlocks:2,dataCodewordsPerBlock:69}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:6,dataCodewordsPerBlock:15},{numBlocks:2,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:6,dataCodewordsPerBlock:19},{numBlocks:2,dataCodewordsPerBlock:20}]}]},{infoBits:48118,versionNumber:11,alignmentPatternCenters:[6,30,54],errorCorrectionLevels:[{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:50},{numBlocks:4,dataCodewordsPerBlock:51}]},{ecCodewordsPerBlock:20,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:81}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:12},{numBlocks:8,dataCodewordsPerBlock:13}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:22},{numBlocks:4,dataCodewordsPerBlock:23}]}]},{infoBits:51042,versionNumber:12,alignmentPatternCenters:[6,32,58],errorCorrectionLevels:[{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:6,dataCodewordsPerBlock:36},{numBlocks:2,dataCodewordsPerBlock:37}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:92},{numBlocks:2,dataCodewordsPerBlock:93}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:7,dataCodewordsPerBlock:14},{numBlocks:4,dataCodewordsPerBlock:15}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:20},{numBlocks:6,dataCodewordsPerBlock:21}]}]},{infoBits:55367,versionNumber:13,alignmentPatternCenters:[6,34,62],errorCorrectionLevels:[{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:8,dataCodewordsPerBlock:37},{numBlocks:1,dataCodewordsPerBlock:38}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:107}]},{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:12,dataCodewordsPerBlock:11},{numBlocks:4,dataCodewordsPerBlock:12}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:8,dataCodewordsPerBlock:20},{numBlocks:4,dataCodewordsPerBlock:21}]}]},{infoBits:58893,versionNumber:14,alignmentPatternCenters:[6,26,46,66],errorCorrectionLevels:[{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:40},{numBlocks:5,dataCodewordsPerBlock:41}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:115},{numBlocks:1,dataCodewordsPerBlock:116}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:11,dataCodewordsPerBlock:12},{numBlocks:5,dataCodewordsPerBlock:13}]},{ecCodewordsPerBlock:20,ecBlocks:[{numBlocks:11,dataCodewordsPerBlock:16},{numBlocks:5,dataCodewordsPerBlock:17}]}]},{infoBits:63784,versionNumber:15,alignmentPatternCenters:[6,26,48,70],errorCorrectionLevels:[{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:5,dataCodewordsPerBlock:41},{numBlocks:5,dataCodewordsPerBlock:42}]},{ecCodewordsPerBlock:22,ecBlocks:[{numBlocks:5,dataCodewordsPerBlock:87},{numBlocks:1,dataCodewordsPerBlock:88}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:11,dataCodewordsPerBlock:12},{numBlocks:7,dataCodewordsPerBlock:13}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:5,dataCodewordsPerBlock:24},{numBlocks:7,dataCodewordsPerBlock:25}]}]},{infoBits:68472,versionNumber:16,alignmentPatternCenters:[6,26,50,74],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:7,dataCodewordsPerBlock:45},{numBlocks:3,dataCodewordsPerBlock:46}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:5,dataCodewordsPerBlock:98},{numBlocks:1,dataCodewordsPerBlock:99}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:15},{numBlocks:13,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:15,dataCodewordsPerBlock:19},{numBlocks:2,dataCodewordsPerBlock:20}]}]},{infoBits:70749,versionNumber:17,alignmentPatternCenters:[6,30,54,78],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:10,dataCodewordsPerBlock:46},{numBlocks:1,dataCodewordsPerBlock:47}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:107},{numBlocks:5,dataCodewordsPerBlock:108}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:14},{numBlocks:17,dataCodewordsPerBlock:15}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:22},{numBlocks:15,dataCodewordsPerBlock:23}]}]},{infoBits:76311,versionNumber:18,alignmentPatternCenters:[6,30,56,82],errorCorrectionLevels:[{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:9,dataCodewordsPerBlock:43},{numBlocks:4,dataCodewordsPerBlock:44}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:5,dataCodewordsPerBlock:120},{numBlocks:1,dataCodewordsPerBlock:121}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:14},{numBlocks:19,dataCodewordsPerBlock:15}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:17,dataCodewordsPerBlock:22},{numBlocks:1,dataCodewordsPerBlock:23}]}]},{infoBits:79154,versionNumber:19,alignmentPatternCenters:[6,30,58,86],errorCorrectionLevels:[{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:44},{numBlocks:11,dataCodewordsPerBlock:45}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:113},{numBlocks:4,dataCodewordsPerBlock:114}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:9,dataCodewordsPerBlock:13},{numBlocks:16,dataCodewordsPerBlock:14}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:17,dataCodewordsPerBlock:21},{numBlocks:4,dataCodewordsPerBlock:22}]}]},{infoBits:84390,versionNumber:20,alignmentPatternCenters:[6,34,62,90],errorCorrectionLevels:[{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:41},{numBlocks:13,dataCodewordsPerBlock:42}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:107},{numBlocks:5,dataCodewordsPerBlock:108}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:15,dataCodewordsPerBlock:15},{numBlocks:10,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:15,dataCodewordsPerBlock:24},{numBlocks:5,dataCodewordsPerBlock:25}]}]},{infoBits:87683,versionNumber:21,alignmentPatternCenters:[6,28,50,72,94],errorCorrectionLevels:[{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:17,dataCodewordsPerBlock:42}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:116},{numBlocks:4,dataCodewordsPerBlock:117}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:19,dataCodewordsPerBlock:16},{numBlocks:6,dataCodewordsPerBlock:17}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:17,dataCodewordsPerBlock:22},{numBlocks:6,dataCodewordsPerBlock:23}]}]},{infoBits:92361,versionNumber:22,alignmentPatternCenters:[6,26,50,74,98],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:17,dataCodewordsPerBlock:46}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:111},{numBlocks:7,dataCodewordsPerBlock:112}]},{ecCodewordsPerBlock:24,ecBlocks:[{numBlocks:34,dataCodewordsPerBlock:13}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:7,dataCodewordsPerBlock:24},{numBlocks:16,dataCodewordsPerBlock:25}]}]},{infoBits:96236,versionNumber:23,alignmentPatternCenters:[6,30,54,74,102],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:47},{numBlocks:14,dataCodewordsPerBlock:48}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:121},{numBlocks:5,dataCodewordsPerBlock:122}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:16,dataCodewordsPerBlock:15},{numBlocks:14,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:11,dataCodewordsPerBlock:24},{numBlocks:14,dataCodewordsPerBlock:25}]}]},{infoBits:102084,versionNumber:24,alignmentPatternCenters:[6,28,54,80,106],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:6,dataCodewordsPerBlock:45},{numBlocks:14,dataCodewordsPerBlock:46}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:6,dataCodewordsPerBlock:117},{numBlocks:4,dataCodewordsPerBlock:118}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:30,dataCodewordsPerBlock:16},{numBlocks:2,dataCodewordsPerBlock:17}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:11,dataCodewordsPerBlock:24},{numBlocks:16,dataCodewordsPerBlock:25}]}]},{infoBits:102881,versionNumber:25,alignmentPatternCenters:[6,32,58,84,110],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:8,dataCodewordsPerBlock:47},{numBlocks:13,dataCodewordsPerBlock:48}]},{ecCodewordsPerBlock:26,ecBlocks:[{numBlocks:8,dataCodewordsPerBlock:106},{numBlocks:4,dataCodewordsPerBlock:107}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:22,dataCodewordsPerBlock:15},{numBlocks:13,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:7,dataCodewordsPerBlock:24},{numBlocks:22,dataCodewordsPerBlock:25}]}]},{infoBits:110507,versionNumber:26,alignmentPatternCenters:[6,30,58,86,114],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:19,dataCodewordsPerBlock:46},{numBlocks:4,dataCodewordsPerBlock:47}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:10,dataCodewordsPerBlock:114},{numBlocks:2,dataCodewordsPerBlock:115}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:33,dataCodewordsPerBlock:16},{numBlocks:4,dataCodewordsPerBlock:17}]},{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:28,dataCodewordsPerBlock:22},{numBlocks:6,dataCodewordsPerBlock:23}]}]},{infoBits:110734,versionNumber:27,alignmentPatternCenters:[6,34,62,90,118],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:22,dataCodewordsPerBlock:45},{numBlocks:3,dataCodewordsPerBlock:46}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:8,dataCodewordsPerBlock:122},{numBlocks:4,dataCodewordsPerBlock:123}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:12,dataCodewordsPerBlock:15},{numBlocks:28,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:8,dataCodewordsPerBlock:23},{numBlocks:26,dataCodewordsPerBlock:24}]}]},{infoBits:117786,versionNumber:28,alignmentPatternCenters:[6,26,50,74,98,122],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:45},{numBlocks:23,dataCodewordsPerBlock:46}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:3,dataCodewordsPerBlock:117},{numBlocks:10,dataCodewordsPerBlock:118}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:11,dataCodewordsPerBlock:15},{numBlocks:31,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:24},{numBlocks:31,dataCodewordsPerBlock:25}]}]},{infoBits:119615,versionNumber:29,alignmentPatternCenters:[6,30,54,78,102,126],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:21,dataCodewordsPerBlock:45},{numBlocks:7,dataCodewordsPerBlock:46}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:7,dataCodewordsPerBlock:116},{numBlocks:7,dataCodewordsPerBlock:117}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:19,dataCodewordsPerBlock:15},{numBlocks:26,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:1,dataCodewordsPerBlock:23},{numBlocks:37,dataCodewordsPerBlock:24}]}]},{infoBits:126325,versionNumber:30,alignmentPatternCenters:[6,26,52,78,104,130],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:19,dataCodewordsPerBlock:47},{numBlocks:10,dataCodewordsPerBlock:48}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:5,dataCodewordsPerBlock:115},{numBlocks:10,dataCodewordsPerBlock:116}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:23,dataCodewordsPerBlock:15},{numBlocks:25,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:15,dataCodewordsPerBlock:24},{numBlocks:25,dataCodewordsPerBlock:25}]}]},{infoBits:127568,versionNumber:31,alignmentPatternCenters:[6,30,56,82,108,134],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:46},{numBlocks:29,dataCodewordsPerBlock:47}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:13,dataCodewordsPerBlock:115},{numBlocks:3,dataCodewordsPerBlock:116}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:23,dataCodewordsPerBlock:15},{numBlocks:28,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:42,dataCodewordsPerBlock:24},{numBlocks:1,dataCodewordsPerBlock:25}]}]},{infoBits:133589,versionNumber:32,alignmentPatternCenters:[6,34,60,86,112,138],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:10,dataCodewordsPerBlock:46},{numBlocks:23,dataCodewordsPerBlock:47}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:17,dataCodewordsPerBlock:115}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:19,dataCodewordsPerBlock:15},{numBlocks:35,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:10,dataCodewordsPerBlock:24},{numBlocks:35,dataCodewordsPerBlock:25}]}]},{infoBits:136944,versionNumber:33,alignmentPatternCenters:[6,30,58,86,114,142],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:14,dataCodewordsPerBlock:46},{numBlocks:21,dataCodewordsPerBlock:47}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:17,dataCodewordsPerBlock:115},{numBlocks:1,dataCodewordsPerBlock:116}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:11,dataCodewordsPerBlock:15},{numBlocks:46,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:29,dataCodewordsPerBlock:24},{numBlocks:19,dataCodewordsPerBlock:25}]}]},{infoBits:141498,versionNumber:34,alignmentPatternCenters:[6,34,62,90,118,146],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:14,dataCodewordsPerBlock:46},{numBlocks:23,dataCodewordsPerBlock:47}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:13,dataCodewordsPerBlock:115},{numBlocks:6,dataCodewordsPerBlock:116}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:59,dataCodewordsPerBlock:16},{numBlocks:1,dataCodewordsPerBlock:17}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:44,dataCodewordsPerBlock:24},{numBlocks:7,dataCodewordsPerBlock:25}]}]},{infoBits:145311,versionNumber:35,alignmentPatternCenters:[6,30,54,78,102,126,150],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:12,dataCodewordsPerBlock:47},{numBlocks:26,dataCodewordsPerBlock:48}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:12,dataCodewordsPerBlock:121},{numBlocks:7,dataCodewordsPerBlock:122}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:22,dataCodewordsPerBlock:15},{numBlocks:41,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:39,dataCodewordsPerBlock:24},{numBlocks:14,dataCodewordsPerBlock:25}]}]},{infoBits:150283,versionNumber:36,alignmentPatternCenters:[6,24,50,76,102,128,154],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:6,dataCodewordsPerBlock:47},{numBlocks:34,dataCodewordsPerBlock:48}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:6,dataCodewordsPerBlock:121},{numBlocks:14,dataCodewordsPerBlock:122}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:2,dataCodewordsPerBlock:15},{numBlocks:64,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:46,dataCodewordsPerBlock:24},{numBlocks:10,dataCodewordsPerBlock:25}]}]},{infoBits:152622,versionNumber:37,alignmentPatternCenters:[6,28,54,80,106,132,158],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:29,dataCodewordsPerBlock:46},{numBlocks:14,dataCodewordsPerBlock:47}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:17,dataCodewordsPerBlock:122},{numBlocks:4,dataCodewordsPerBlock:123}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:24,dataCodewordsPerBlock:15},{numBlocks:46,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:49,dataCodewordsPerBlock:24},{numBlocks:10,dataCodewordsPerBlock:25}]}]},{infoBits:158308,versionNumber:38,alignmentPatternCenters:[6,32,58,84,110,136,162],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:13,dataCodewordsPerBlock:46},{numBlocks:32,dataCodewordsPerBlock:47}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:4,dataCodewordsPerBlock:122},{numBlocks:18,dataCodewordsPerBlock:123}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:42,dataCodewordsPerBlock:15},{numBlocks:32,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:48,dataCodewordsPerBlock:24},{numBlocks:14,dataCodewordsPerBlock:25}]}]},{infoBits:161089,versionNumber:39,alignmentPatternCenters:[6,26,54,82,110,138,166],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:40,dataCodewordsPerBlock:47},{numBlocks:7,dataCodewordsPerBlock:48}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:20,dataCodewordsPerBlock:117},{numBlocks:4,dataCodewordsPerBlock:118}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:10,dataCodewordsPerBlock:15},{numBlocks:67,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:43,dataCodewordsPerBlock:24},{numBlocks:22,dataCodewordsPerBlock:25}]}]},{infoBits:167017,versionNumber:40,alignmentPatternCenters:[6,30,58,86,114,142,170],errorCorrectionLevels:[{ecCodewordsPerBlock:28,ecBlocks:[{numBlocks:18,dataCodewordsPerBlock:47},{numBlocks:31,dataCodewordsPerBlock:48}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:19,dataCodewordsPerBlock:118},{numBlocks:6,dataCodewordsPerBlock:119}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:20,dataCodewordsPerBlock:15},{numBlocks:61,dataCodewordsPerBlock:16}]},{ecCodewordsPerBlock:30,ecBlocks:[{numBlocks:34,dataCodewordsPerBlock:24},{numBlocks:34,dataCodewordsPerBlock:25}]}]}];class le{constructor(e){this.byteOffset=0,this.bitOffset=0,this.bytes=e}readBits(e){if(e<1||e>32||e>this.available())throw new Error(`can't read ${e} bits`);let t=0;if(this.bitOffset>0){const r=8-this.bitOffset,n=e<r?e:r,o=r-n,a=255>>8-n<<o;t=(this.bytes[this.byteOffset]&a)>>o,e-=n,this.bitOffset+=n,8===this.bitOffset&&(this.bitOffset=0,this.byteOffset++)}if(e>0){for(;e>=8;)t=t<<8|255&this.bytes[this.byteOffset],this.byteOffset++,e-=8;if(e>0){const r=8-e,n=255>>r<<r;t=t<<e|(this.bytes[this.byteOffset]&n)>>r,this.bitOffset+=e}}return t}available(){return 8*(this.bytes.length-this.byteOffset)-this.bitOffset}}const ce=[[33088,"\u3000\u3001\u3002\uff0c\uff0e\u30fb\uff1a\uff1b\uff1f\uff01\u309b\u309c\xb4\uff40\xa8\uff3e\uffe3\uff3f\u30fd\u30fe\u309d\u309e\u3003\u4edd\u3005\u3006\u3007\u30fc\u2015\u2010\uff0f\uff3c\uff5e\u2225\uff5c\u2026\u2025\u2018\u2019\u201c\u201d\uff08\uff09\u3014\u3015\uff3b\uff3d\uff5b\uff5d\u3008\u3009\u300a\u300b\u300c\u300d\u300e\u300f\u3010\u3011\uff0b\uff0d\xb1\xd7"],[33152,"\xf7\uff1d\u2260\uff1c\uff1e"],[33167,"\uffe5\uff04\uffe0\uffe1\uff05\uff03\uff06\uff0a\uff20\xa7\u2606\u2605"],[33190,"\u203b\u3012\u2192\u2190\u2191\u2193\u3013"],[33226,"\uffe2"],[33359,"\uff10\uff11\uff12\uff13\uff14\uff15\uff16\uff17\uff18\uff19"],[33376,"\uff21\uff22\uff23\uff24\uff25\uff26\uff27\uff28\uff29\uff2a\uff2b\uff2c\uff2d\uff2e\uff2f\uff30\uff31\uff32\uff33\uff34\uff35\uff36\uff37\uff38\uff39\uff3a"],[33409,"\uff41\uff42\uff43\uff44\uff45\uff46\uff47\uff48\uff49\uff4a\uff4b\uff4c\uff4d\uff4e\uff4f\uff50\uff51\uff52\uff53\uff54\uff55\uff56\uff57\uff58\uff59\uff5a"],[33439,"\u3041\u3042\u3043\u3044\u3045\u3046\u3047\u3048\u3049\u304a\u304b\u304c\u304d\u304e\u304f\u3050\u3051\u3052\u3053\u3054\u3055\u3056\u3057\u3058\u3059\u305a\u305b\u305c\u305d\u305e\u305f\u3060\u3061\u3062\u3063\u3064\u3065\u3066\u3067\u3068\u3069\u306a\u306b\u306c\u306d\u306e\u306f\u3070\u3071\u3072\u3073\u3074\u3075\u3076\u3077\u3078\u3079\u307a\u307b\u307c\u307d\u307e\u307f\u3080\u3081\u3082\u3083\u3084\u3085\u3086\u3087\u3088\u3089\u308a\u308b\u308c\u308d\u308e\u308f\u3090\u3091\u3092\u3093"],[33600,"\u30a1\u30a2\u30a3\u30a4\u30a5\u30a6\u30a7\u30a8\u30a9\u30aa\u30ab\u30ac\u30ad\u30ae\u30af\u30b0\u30b1\u30b2\u30b3\u30b4\u30b5\u30b6\u30b7\u30b8\u30b9\u30ba\u30bb\u30bc\u30bd\u30be\u30bf\u30c0\u30c1\u30c2\u30c3\u30c4\u30c5\u30c6\u30c7\u30c8\u30c9\u30ca\u30cb\u30cc\u30cd\u30ce\u30cf\u30d0\u30d1\u30d2\u30d3\u30d4\u30d5\u30d6\u30d7\u30d8\u30d9\u30da\u30db\u30dc\u30dd\u30de\u30df"],[33664,"\u30e0\u30e1\u30e2\u30e3\u30e4\u30e5\u30e6\u30e7\u30e8\u30e9\u30ea\u30eb\u30ec\u30ed\u30ee\u30ef\u30f0\u30f1\u30f2\u30f3\u30f4\u30f5\u30f6"],[33695,"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9"],[33727,"\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9"],[33856,"\u0410\u0411\u0412\u0413\u0414\u0415\u0401\u0416\u0417\u0418\u0419\u041a\u041b\u041c\u041d\u041e\u041f\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042a\u042b\u042c\u042d\u042e\u042f"],[33904,"\u0430\u0431\u0432\u0433\u0434\u0435\u0451\u0436\u0437\u0438\u0439\u043a\u043b\u043c\u043d"],[33920,"\u043e\u043f\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044a\u044b\u044c\u044d\u044e\u044f"],[34688,"\u301d\u301f"],[35136,"\u9662\u9670\u96a0\u97fb\u540b\u53f3\u5b87\u70cf\u7fbd\u8fc2\u96e8\u536f\u9d5c\u7aba\u4e11\u7893\u81fc\u6e26\u5618\u5504\u6b1d\u851a\u9c3b\u59e5\u53a9\u6d66\u74dc\u958f\u5642\u4e91\u904b\u96f2\u834f\u990c\u53e1\u55b6\u5b30\u5f71\u6620\u66f3\u6804\u6c38\u6cf3\u6d29\u745b\u76c8\u7a4e\u9834\u82f1\u885b\u8a60\u92ed\u6db2\u75ab\u76ca\u99c5\u60a6\u8b01\u8d8a\u95b2\u698e\u53ad\u5186"],[35200,"\u5712\u5830\u5944\u5bb4\u5ef6\u6028\u63a9\u63f4\u6cbf\u6f14\u708e\u7114\u7159\u71d5\u733f\u7e01\u8276\u82d1\u8597\u9060\u925b\u9d1b\u5869\u65bc\u6c5a\u7525\u51f9\u592e\u5965\u5f80\u5fdc\u62bc\u65fa\u6a2a\u6b27\u6bb4\u738b\u7fc1\u8956\u9d2c\u9d0e\u9ec4\u5ca1\u6c96\u837b\u5104\u5c4b\u61b6\u81c6\u6876\u7261\u4e59\u4ffa\u5378\u6069\u6e29\u7a4f\u97f3\u4e0b\u5316\u4eee\u4f55\u4f3d\u4fa1\u4f73\u52a0\u53ef\u5609\u590f\u5ac1\u5bb6\u5be1\u79d1\u6687\u679c\u67b6\u6b4c\u6cb3\u706b\u73c2\u798d\u79be\u7a3c\u7b87\u82b1\u82db\u8304\u8377\u83ef\u83d3\u8766\u8ab2\u5629\u8ca8\u8fe6\u904e\u971e\u868a\u4fc4\u5ce8\u6211\u7259\u753b\u81e5\u82bd\u86fe\u8cc0\u96c5\u9913\u99d5\u4ecb\u4f1a\u89e3\u56de\u584a\u58ca\u5efb\u5feb\u602a\u6094\u6062\u61d0\u6212\u62d0\u6539"],[35392,"\u9b41\u6666\u68b0\u6d77\u7070\u754c\u7686\u7d75\u82a5\u87f9\u958b\u968e\u8c9d\u51f1\u52be\u5916\u54b3\u5bb3\u5d16\u6168\u6982\u6daf\u788d\u84cb\u8857\u8a72\u93a7\u9ab8\u6d6c\u99a8\u86d9\u57a3\u67ff\u86ce\u920e\u5283\u5687\u5404\u5ed3\u62e1\u64b9\u683c\u6838\u6bbb\u7372\u78ba\u7a6b\u899a\u89d2\u8d6b\u8f03\u90ed\u95a3\u9694\u9769\u5b66\u5cb3\u697d\u984d\u984e\u639b\u7b20\u6a2b"],[35456,"\u6a7f\u68b6\u9c0d\u6f5f\u5272\u559d\u6070\u62ec\u6d3b\u6e07\u6ed1\u845b\u8910\u8f44\u4e14\u9c39\u53f6\u691b\u6a3a\u9784\u682a\u515c\u7ac3\u84b2\u91dc\u938c\u565b\u9d28\u6822\u8305\u8431\u7ca5\u5208\u82c5\u74e6\u4e7e\u4f83\u51a0\u5bd2\u520a\u52d8\u52e7\u5dfb\u559a\u582a\u59e6\u5b8c\u5b98\u5bdb\u5e72\u5e79\u60a3\u611f\u6163\u61be\u63db\u6562\u67d1\u6853\u68fa\u6b3e\u6b53\u6c57\u6f22\u6f97\u6f45\u74b0\u7518\u76e3\u770b\u7aff\u7ba1\u7c21\u7de9\u7f36\u7ff0\u809d\u8266\u839e\u89b3\u8acc\u8cab\u9084\u9451\u9593\u9591\u95a2\u9665\u97d3\u9928\u8218\u4e38\u542b\u5cb8\u5dcc\u73a9\u764c\u773c\u5ca9\u7feb\u8d0b\u96c1\u9811\u9854\u9858\u4f01\u4f0e\u5371\u559c\u5668\u57fa\u5947\u5b09\u5bc4\u5c90\u5e0c\u5e7e\u5fcc\u63ee\u673a\u65d7\u65e2\u671f\u68cb\u68c4"],[35648,"\u6a5f\u5e30\u6bc5\u6c17\u6c7d\u757f\u7948\u5b63\u7a00\u7d00\u5fbd\u898f\u8a18\u8cb4\u8d77\u8ecc\u8f1d\u98e2\u9a0e\u9b3c\u4e80\u507d\u5100\u5993\u5b9c\u622f\u6280\u64ec\u6b3a\u72a0\u7591\u7947\u7fa9\u87fb\u8abc\u8b70\u63ac\u83ca\u97a0\u5409\u5403\u55ab\u6854\u6a58\u8a70\u7827\u6775\u9ecd\u5374\u5ba2\u811a\u8650\u9006\u4e18\u4e45\u4ec7\u4f11\u53ca\u5438\u5bae\u5f13\u6025\u6551"],[35712,"\u673d\u6c42\u6c72\u6ce3\u7078\u7403\u7a76\u7aae\u7b08\u7d1a\u7cfe\u7d66\u65e7\u725b\u53bb\u5c45\u5de8\u62d2\u62e0\u6319\u6e20\u865a\u8a31\u8ddd\u92f8\u6f01\u79a6\u9b5a\u4ea8\u4eab\u4eac\u4f9b\u4fa0\u50d1\u5147\u7af6\u5171\u51f6\u5354\u5321\u537f\u53eb\u55ac\u5883\u5ce1\u5f37\u5f4a\u602f\u6050\u606d\u631f\u6559\u6a4b\u6cc1\u72c2\u72ed\u77ef\u80f8\u8105\u8208\u854e\u90f7\u93e1\u97ff\u9957\u9a5a\u4ef0\u51dd\u5c2d\u6681\u696d\u5c40\u66f2\u6975\u7389\u6850\u7c81\u50c5\u52e4\u5747\u5dfe\u9326\u65a4\u6b23\u6b3d\u7434\u7981\u79bd\u7b4b\u7dca\u82b9\u83cc\u887f\u895f\u8b39\u8fd1\u91d1\u541f\u9280\u4e5d\u5036\u53e5\u533a\u72d7\u7396\u77e9\u82e6\u8eaf\u99c6\u99c8\u99d2\u5177\u611a\u865e\u55b0\u7a7a\u5076\u5bd3\u9047\u9685\u4e32\u6adb\u91e7\u5c51\u5c48"],[35904,"\u6398\u7a9f\u6c93\u9774\u8f61\u7aaa\u718a\u9688\u7c82\u6817\u7e70\u6851\u936c\u52f2\u541b\u85ab\u8a13\u7fa4\u8ecd\u90e1\u5366\u8888\u7941\u4fc2\u50be\u5211\u5144\u5553\u572d\u73ea\u578b\u5951\u5f62\u5f84\u6075\u6176\u6167\u61a9\u63b2\u643a\u656c\u666f\u6842\u6e13\u7566\u7a3d\u7cfb\u7d4c\u7d99\u7e4b\u7f6b\u830e\u834a\u86cd\u8a08\u8a63\u8b66\u8efd\u981a\u9d8f\u82b8\u8fce\u9be8"],[35968,"\u5287\u621f\u6483\u6fc0\u9699\u6841\u5091\u6b20\u6c7a\u6f54\u7a74\u7d50\u8840\u8a23\u6708\u4ef6\u5039\u5026\u5065\u517c\u5238\u5263\u55a7\u570f\u5805\u5acc\u5efa\u61b2\u61f8\u62f3\u6372\u691c\u6a29\u727d\u72ac\u732e\u7814\u786f\u7d79\u770c\u80a9\u898b\u8b19\u8ce2\u8ed2\u9063\u9375\u967a\u9855\u9a13\u9e78\u5143\u539f\u53b3\u5e7b\u5f26\u6e1b\u6e90\u7384\u73fe\u7d43\u8237\u8a00\u8afa\u9650\u4e4e\u500b\u53e4\u547c\u56fa\u59d1\u5b64\u5df1\u5eab\u5f27\u6238\u6545\u67af\u6e56\u72d0\u7cca\u88b4\u80a1\u80e1\u83f0\u864e\u8a87\u8de8\u9237\u96c7\u9867\u9f13\u4e94\u4e92\u4f0d\u5348\u5449\u543e\u5a2f\u5f8c\u5fa1\u609f\u68a7\u6a8e\u745a\u7881\u8a9e\u8aa4\u8b77\u9190\u4e5e\u9bc9\u4ea4\u4f7c\u4faf\u5019\u5016\u5149\u516c\u529f\u52b9\u52fe\u539a\u53e3\u5411"],[36160,"\u540e\u5589\u5751\u57a2\u597d\u5b54\u5b5d\u5b8f\u5de5\u5de7\u5df7\u5e78\u5e83\u5e9a\u5eb7\u5f18\u6052\u614c\u6297\u62d8\u63a7\u653b\u6602\u6643\u66f4\u676d\u6821\u6897\u69cb\u6c5f\u6d2a\u6d69\u6e2f\u6e9d\u7532\u7687\u786c\u7a3f\u7ce0\u7d05\u7d18\u7d5e\u7db1\u8015\u8003\u80af\u80b1\u8154\u818f\u822a\u8352\u884c\u8861\u8b1b\u8ca2\u8cfc\u90ca\u9175\u9271\u783f\u92fc\u95a4\u964d"],[36224,"\u9805\u9999\u9ad8\u9d3b\u525b\u52ab\u53f7\u5408\u58d5\u62f7\u6fe0\u8c6a\u8f5f\u9eb9\u514b\u523b\u544a\u56fd\u7a40\u9177\u9d60\u9ed2\u7344\u6f09\u8170\u7511\u5ffd\u60da\u9aa8\u72db\u8fbc\u6b64\u9803\u4eca\u56f0\u5764\u58be\u5a5a\u6068\u61c7\u660f\u6606\u6839\u68b1\u6df7\u75d5\u7d3a\u826e\u9b42\u4e9b\u4f50\u53c9\u5506\u5d6f\u5de6\u5dee\u67fb\u6c99\u7473\u7802\u8a50\u9396\u88df\u5750\u5ea7\u632b\u50b5\u50ac\u518d\u6700\u54c9\u585e\u59bb\u5bb0\u5f69\u624d\u63a1\u683d\u6b73\u6e08\u707d\u91c7\u7280\u7815\u7826\u796d\u658e\u7d30\u83dc\u88c1\u8f09\u969b\u5264\u5728\u6750\u7f6a\u8ca1\u51b4\u5742\u962a\u583a\u698a\u80b4\u54b2\u5d0e\u57fc\u7895\u9dfa\u4f5c\u524a\u548b\u643e\u6628\u6714\u67f5\u7a84\u7b56\u7d22\u932f\u685c\u9bad\u7b39\u5319\u518a\u5237"],[36416,"\u5bdf\u62f6\u64ae\u64e6\u672d\u6bba\u85a9\u96d1\u7690\u9bd6\u634c\u9306\u9bab\u76bf\u6652\u4e09\u5098\u53c2\u5c71\u60e8\u6492\u6563\u685f\u71e6\u73ca\u7523\u7b97\u7e82\u8695\u8b83\u8cdb\u9178\u9910\u65ac\u66ab\u6b8b\u4ed5\u4ed4\u4f3a\u4f7f\u523a\u53f8\u53f2\u55e3\u56db\u58eb\u59cb\u59c9\u59ff\u5b50\u5c4d\u5e02\u5e2b\u5fd7\u601d\u6307\u652f\u5b5c\u65af\u65bd\u65e8\u679d\u6b62"],[36480,"\u6b7b\u6c0f\u7345\u7949\u79c1\u7cf8\u7d19\u7d2b\u80a2\u8102\u81f3\u8996\u8a5e\u8a69\u8a66\u8a8c\u8aee\u8cc7\u8cdc\u96cc\u98fc\u6b6f\u4e8b\u4f3c\u4f8d\u5150\u5b57\u5bfa\u6148\u6301\u6642\u6b21\u6ecb\u6cbb\u723e\u74bd\u75d4\u78c1\u793a\u800c\u8033\u81ea\u8494\u8f9e\u6c50\u9e7f\u5f0f\u8b58\u9d2b\u7afa\u8ef8\u5b8d\u96eb\u4e03\u53f1\u57f7\u5931\u5ac9\u5ba4\u6089\u6e7f\u6f06\u75be\u8cea\u5b9f\u8500\u7be0\u5072\u67f4\u829d\u5c61\u854a\u7e1e\u820e\u5199\u5c04\u6368\u8d66\u659c\u716e\u793e\u7d17\u8005\u8b1d\u8eca\u906e\u86c7\u90aa\u501f\u52fa\u5c3a\u6753\u707c\u7235\u914c\u91c8\u932b\u82e5\u5bc2\u5f31\u60f9\u4e3b\u53d6\u5b88\u624b\u6731\u6b8a\u72e9\u73e0\u7a2e\u816b\u8da3\u9152\u9996\u5112\u53d7\u546a\u5bff\u6388\u6a39\u7dac\u9700\u56da\u53ce\u5468"],[36672,"\u5b97\u5c31\u5dde\u4fee\u6101\u62fe\u6d32\u79c0\u79cb\u7d42\u7e4d\u7fd2\u81ed\u821f\u8490\u8846\u8972\u8b90\u8e74\u8f2f\u9031\u914b\u916c\u96c6\u919c\u4ec0\u4f4f\u5145\u5341\u5f93\u620e\u67d4\u6c41\u6e0b\u7363\u7e26\u91cd\u9283\u53d4\u5919\u5bbf\u6dd1\u795d\u7e2e\u7c9b\u587e\u719f\u51fa\u8853\u8ff0\u4fca\u5cfb\u6625\u77ac\u7ae3\u821c\u99ff\u51c6\u5faa\u65ec\u696f\u6b89\u6df3"],[36736,"\u6e96\u6f64\u76fe\u7d14\u5de1\u9075\u9187\u9806\u51e6\u521d\u6240\u6691\u66d9\u6e1a\u5eb6\u7dd2\u7f72\u66f8\u85af\u85f7\u8af8\u52a9\u53d9\u5973\u5e8f\u5f90\u6055\u92e4\u9664\u50b7\u511f\u52dd\u5320\u5347\u53ec\u54e8\u5546\u5531\u5617\u5968\u59be\u5a3c\u5bb5\u5c06\u5c0f\u5c11\u5c1a\u5e84\u5e8a\u5ee0\u5f70\u627f\u6284\u62db\u638c\u6377\u6607\u660c\u662d\u6676\u677e\u68a2\u6a1f\u6a35\u6cbc\u6d88\u6e09\u6e58\u713c\u7126\u7167\u75c7\u7701\u785d\u7901\u7965\u79f0\u7ae0\u7b11\u7ca7\u7d39\u8096\u83d6\u848b\u8549\u885d\u88f3\u8a1f\u8a3c\u8a54\u8a73\u8c61\u8cde\u91a4\u9266\u937e\u9418\u969c\u9798\u4e0a\u4e08\u4e1e\u4e57\u5197\u5270\u57ce\u5834\u58cc\u5b22\u5e38\u60c5\u64fe\u6761\u6756\u6d44\u72b6\u7573\u7a63\u84b8\u8b72\u91b8\u9320\u5631\u57f4\u98fe"],[36928,"\u62ed\u690d\u6b96\u71ed\u7e54\u8077\u8272\u89e6\u98df\u8755\u8fb1\u5c3b\u4f38\u4fe1\u4fb5\u5507\u5a20\u5bdd\u5be9\u5fc3\u614e\u632f\u65b0\u664b\u68ee\u699b\u6d78\u6df1\u7533\u75b9\u771f\u795e\u79e6\u7d33\u81e3\u82af\u85aa\u89aa\u8a3a\u8eab\u8f9b\u9032\u91dd\u9707\u4eba\u4ec1\u5203\u5875\u58ec\u5c0b\u751a\u5c3d\u814e\u8a0a\u8fc5\u9663\u976d\u7b25\u8acf\u9808\u9162\u56f3\u53a8"],[36992,"\u9017\u5439\u5782\u5e25\u63a8\u6c34\u708a\u7761\u7c8b\u7fe0\u8870\u9042\u9154\u9310\u9318\u968f\u745e\u9ac4\u5d07\u5d69\u6570\u67a2\u8da8\u96db\u636e\u6749\u6919\u83c5\u9817\u96c0\u88fe\u6f84\u647a\u5bf8\u4e16\u702c\u755d\u662f\u51c4\u5236\u52e2\u59d3\u5f81\u6027\u6210\u653f\u6574\u661f\u6674\u68f2\u6816\u6b63\u6e05\u7272\u751f\u76db\u7cbe\u8056\u58f0\u88fd\u897f\u8aa0\u8a93\u8acb\u901d\u9192\u9752\u9759\u6589\u7a0e\u8106\u96bb\u5e2d\u60dc\u621a\u65a5\u6614\u6790\u77f3\u7a4d\u7c4d\u7e3e\u810a\u8cac\u8d64\u8de1\u8e5f\u78a9\u5207\u62d9\u63a5\u6442\u6298\u8a2d\u7a83\u7bc0\u8aac\u96ea\u7d76\u820c\u8749\u4ed9\u5148\u5343\u5360\u5ba3\u5c02\u5c16\u5ddd\u6226\u6247\u64b0\u6813\u6834\u6cc9\u6d45\u6d17\u67d3\u6f5c\u714e\u717d\u65cb\u7a7f\u7bad\u7dda"],[37184,"\u7e4a\u7fa8\u817a\u821b\u8239\u85a6\u8a6e\u8cce\u8df5\u9078\u9077\u92ad\u9291\u9583\u9bae\u524d\u5584\u6f38\u7136\u5168\u7985\u7e55\u81b3\u7cce\u564c\u5851\u5ca8\u63aa\u66fe\u66fd\u695a\u72d9\u758f\u758e\u790e\u7956\u79df\u7c97\u7d20\u7d44\u8607\u8a34\u963b\u9061\u9f20\u50e7\u5275\u53cc\u53e2\u5009\u55aa\u58ee\u594f\u723d\u5b8b\u5c64\u531d\u60e3\u60f3\u635c\u6383\u633f\u63bb"],[37248,"\u64cd\u65e9\u66f9\u5de3\u69cd\u69fd\u6f15\u71e5\u4e89\u75e9\u76f8\u7a93\u7cdf\u7dcf\u7d9c\u8061\u8349\u8358\u846c\u84bc\u85fb\u88c5\u8d70\u9001\u906d\u9397\u971c\u9a12\u50cf\u5897\u618e\u81d3\u8535\u8d08\u9020\u4fc3\u5074\u5247\u5373\u606f\u6349\u675f\u6e2c\u8db3\u901f\u4fd7\u5c5e\u8cca\u65cf\u7d9a\u5352\u8896\u5176\u63c3\u5b58\u5b6b\u5c0a\u640d\u6751\u905c\u4ed6\u591a\u592a\u6c70\u8a51\u553e\u5815\u59a5\u60f0\u6253\u67c1\u8235\u6955\u9640\u99c4\u9a28\u4f53\u5806\u5bfe\u8010\u5cb1\u5e2f\u5f85\u6020\u614b\u6234\u66ff\u6cf0\u6ede\u80ce\u817f\u82d4\u888b\u8cb8\u9000\u902e\u968a\u9edb\u9bdb\u4ee3\u53f0\u5927\u7b2c\u918d\u984c\u9df9\u6edd\u7027\u5353\u5544\u5b85\u6258\u629e\u62d3\u6ca2\u6fef\u7422\u8a17\u9438\u6fc1\u8afe\u8338\u51e7\u86f8\u53ea"],[37440,"\u53e9\u4f46\u9054\u8fb0\u596a\u8131\u5dfd\u7aea\u8fbf\u68da\u8c37\u72f8\u9c48\u6a3d\u8ab0\u4e39\u5358\u5606\u5766\u62c5\u63a2\u65e6\u6b4e\u6de1\u6e5b\u70ad\u77ed\u7aef\u7baa\u7dbb\u803d\u80c6\u86cb\u8a95\u935b\u56e3\u58c7\u5f3e\u65ad\u6696\u6a80\u6bb5\u7537\u8ac7\u5024\u77e5\u5730\u5f1b\u6065\u667a\u6c60\u75f4\u7a1a\u7f6e\u81f4\u8718\u9045\u99b3\u7bc9\u755c\u7af9\u7b51\u84c4"],[37504,"\u9010\u79e9\u7a92\u8336\u5ae1\u7740\u4e2d\u4ef2\u5b99\u5fe0\u62bd\u663c\u67f1\u6ce8\u866b\u8877\u8a3b\u914e\u92f3\u99d0\u6a17\u7026\u732a\u82e7\u8457\u8caf\u4e01\u5146\u51cb\u558b\u5bf5\u5e16\u5e33\u5e81\u5f14\u5f35\u5f6b\u5fb4\u61f2\u6311\u66a2\u671d\u6f6e\u7252\u753a\u773a\u8074\u8139\u8178\u8776\u8abf\u8adc\u8d85\u8df3\u929a\u9577\u9802\u9ce5\u52c5\u6357\u76f4\u6715\u6c88\u73cd\u8cc3\u93ae\u9673\u6d25\u589c\u690e\u69cc\u8ffd\u939a\u75db\u901a\u585a\u6802\u63b4\u69fb\u4f43\u6f2c\u67d8\u8fbb\u8526\u7db4\u9354\u693f\u6f70\u576a\u58f7\u5b2c\u7d2c\u722a\u540a\u91e3\u9db4\u4ead\u4f4e\u505c\u5075\u5243\u8c9e\u5448\u5824\u5b9a\u5e1d\u5e95\u5ead\u5ef7\u5f1f\u608c\u62b5\u633a\u63d0\u68af\u6c40\u7887\u798e\u7a0b\u7de0\u8247\u8a02\u8ae6\u8e44\u9013"],[37696,"\u90b8\u912d\u91d8\u9f0e\u6ce5\u6458\u64e2\u6575\u6ef4\u7684\u7b1b\u9069\u93d1\u6eba\u54f2\u5fb9\u64a4\u8f4d\u8fed\u9244\u5178\u586b\u5929\u5c55\u5e97\u6dfb\u7e8f\u751c\u8cbc\u8ee2\u985b\u70b9\u4f1d\u6bbf\u6fb1\u7530\u96fb\u514e\u5410\u5835\u5857\u59ac\u5c60\u5f92\u6597\u675c\u6e21\u767b\u83df\u8ced\u9014\u90fd\u934d\u7825\u783a\u52aa\u5ea6\u571f\u5974\u6012\u5012\u515a\u51ac"],[37760,"\u51cd\u5200\u5510\u5854\u5858\u5957\u5b95\u5cf6\u5d8b\u60bc\u6295\u642d\u6771\u6843\u68bc\u68df\u76d7\u6dd8\u6e6f\u6d9b\u706f\u71c8\u5f53\u75d8\u7977\u7b49\u7b54\u7b52\u7cd6\u7d71\u5230\u8463\u8569\u85e4\u8a0e\u8b04\u8c46\u8e0f\u9003\u900f\u9419\u9676\u982d\u9a30\u95d8\u50cd\u52d5\u540c\u5802\u5c0e\u61a7\u649e\u6d1e\u77b3\u7ae5\u80f4\u8404\u9053\u9285\u5ce0\u9d07\u533f\u5f97\u5fb3\u6d9c\u7279\u7763\u79bf\u7be4\u6bd2\u72ec\u8aad\u6803\u6a61\u51f8\u7a81\u6934\u5c4a\u9cf6\u82eb\u5bc5\u9149\u701e\u5678\u5c6f\u60c7\u6566\u6c8c\u8c5a\u9041\u9813\u5451\u66c7\u920d\u5948\u90a3\u5185\u4e4d\u51ea\u8599\u8b0e\u7058\u637a\u934b\u6962\u99b4\u7e04\u7577\u5357\u6960\u8edf\u96e3\u6c5d\u4e8c\u5c3c\u5f10\u8fe9\u5302\u8cd1\u8089\u8679\u5eff\u65e5\u4e73\u5165"],[37952,"\u5982\u5c3f\u97ee\u4efb\u598a\u5fcd\u8a8d\u6fe1\u79b0\u7962\u5be7\u8471\u732b\u71b1\u5e74\u5ff5\u637b\u649a\u71c3\u7c98\u4e43\u5efc\u4e4b\u57dc\u56a2\u60a9\u6fc3\u7d0d\u80fd\u8133\u81bf\u8fb2\u8997\u86a4\u5df4\u628a\u64ad\u8987\u6777\u6ce2\u6d3e\u7436\u7834\u5a46\u7f75\u82ad\u99ac\u4ff3\u5ec3\u62dd\u6392\u6557\u676f\u76c3\u724c\u80cc\u80ba\u8f29\u914d\u500d\u57f9\u5a92\u6885"],[38016,"\u6973\u7164\u72fd\u8cb7\u58f2\u8ce0\u966a\u9019\u877f\u79e4\u77e7\u8429\u4f2f\u5265\u535a\u62cd\u67cf\u6cca\u767d\u7b94\u7c95\u8236\u8584\u8feb\u66dd\u6f20\u7206\u7e1b\u83ab\u99c1\u9ea6\u51fd\u7bb1\u7872\u7bb8\u8087\u7b48\u6ae8\u5e61\u808c\u7551\u7560\u516b\u9262\u6e8c\u767a\u9197\u9aea\u4f10\u7f70\u629c\u7b4f\u95a5\u9ce9\u567a\u5859\u86e4\u96bc\u4f34\u5224\u534a\u53cd\u53db\u5e06\u642c\u6591\u677f\u6c3e\u6c4e\u7248\u72af\u73ed\u7554\u7e41\u822c\u85e9\u8ca9\u7bc4\u91c6\u7169\u9812\u98ef\u633d\u6669\u756a\u76e4\u78d0\u8543\u86ee\u532a\u5351\u5426\u5983\u5e87\u5f7c\u60b2\u6249\u6279\u62ab\u6590\u6bd4\u6ccc\u75b2\u76ae\u7891\u79d8\u7dcb\u7f77\u80a5\u88ab\u8ab9\u8cbb\u907f\u975e\u98db\u6a0b\u7c38\u5099\u5c3e\u5fae\u6787\u6bd8\u7435\u7709\u7f8e"],[38208,"\u9f3b\u67ca\u7a17\u5339\u758b\u9aed\u5f66\u819d\u83f1\u8098\u5f3c\u5fc5\u7562\u7b46\u903c\u6867\u59eb\u5a9b\u7d10\u767e\u8b2c\u4ff5\u5f6a\u6a19\u6c37\u6f02\u74e2\u7968\u8868\u8a55\u8c79\u5edf\u63cf\u75c5\u79d2\u82d7\u9328\u92f2\u849c\u86ed\u9c2d\u54c1\u5f6c\u658c\u6d5c\u7015\u8ca7\u8cd3\u983b\u654f\u74f6\u4e0d\u4ed8\u57e0\u592b\u5a66\u5bcc\u51a8\u5e03\u5e9c\u6016\u6276\u6577"],[38272,"\u65a7\u666e\u6d6e\u7236\u7b26\u8150\u819a\u8299\u8b5c\u8ca0\u8ce6\u8d74\u961c\u9644\u4fae\u64ab\u6b66\u821e\u8461\u856a\u90e8\u5c01\u6953\u98a8\u847a\u8557\u4f0f\u526f\u5fa9\u5e45\u670d\u798f\u8179\u8907\u8986\u6df5\u5f17\u6255\u6cb8\u4ecf\u7269\u9b92\u5206\u543b\u5674\u58b3\u61a4\u626e\u711a\u596e\u7c89\u7cde\u7d1b\u96f0\u6587\u805e\u4e19\u4f75\u5175\u5840\u5e63\u5e73\u5f0a\u67c4\u4e26\u853d\u9589\u965b\u7c73\u9801\u50fb\u58c1\u7656\u78a7\u5225\u77a5\u8511\u7b86\u504f\u5909\u7247\u7bc7\u7de8\u8fba\u8fd4\u904d\u4fbf\u52c9\u5a29\u5f01\u97ad\u4fdd\u8217\u92ea\u5703\u6355\u6b69\u752b\u88dc\u8f14\u7a42\u52df\u5893\u6155\u620a\u66ae\u6bcd\u7c3f\u83e9\u5023\u4ff8\u5305\u5446\u5831\u5949\u5b9d\u5cf0\u5cef\u5d29\u5e96\u62b1\u6367\u653e\u65b9\u670b"],[38464,"\u6cd5\u6ce1\u70f9\u7832\u7e2b\u80de\u82b3\u840c\u84ec\u8702\u8912\u8a2a\u8c4a\u90a6\u92d2\u98fd\u9cf3\u9d6c\u4e4f\u4ea1\u508d\u5256\u574a\u59a8\u5e3d\u5fd8\u5fd9\u623f\u66b4\u671b\u67d0\u68d2\u5192\u7d21\u80aa\u81a8\u8b00\u8c8c\u8cbf\u927e\u9632\u5420\u982c\u5317\u50d5\u535c\u58a8\u64b2\u6734\u7267\u7766\u7a46\u91e6\u52c3\u6ca1\u6b86\u5800\u5e4c\u5954\u672c\u7ffb\u51e1\u76c6"],[38528,"\u6469\u78e8\u9b54\u9ebb\u57cb\u59b9\u6627\u679a\u6bce\u54e9\u69d9\u5e55\u819c\u6795\u9baa\u67fe\u9c52\u685d\u4ea6\u4fe3\u53c8\u62b9\u672b\u6cab\u8fc4\u4fad\u7e6d\u9ebf\u4e07\u6162\u6e80\u6f2b\u8513\u5473\u672a\u9b45\u5df3\u7b95\u5cac\u5bc6\u871c\u6e4a\u84d1\u7a14\u8108\u5999\u7c8d\u6c11\u7720\u52d9\u5922\u7121\u725f\u77db\u9727\u9d61\u690b\u5a7f\u5a18\u51a5\u540d\u547d\u660e\u76df\u8ff7\u9298\u9cf4\u59ea\u725d\u6ec5\u514d\u68c9\u7dbf\u7dec\u9762\u9eba\u6478\u6a21\u8302\u5984\u5b5f\u6bdb\u731b\u76f2\u7db2\u8017\u8499\u5132\u6728\u9ed9\u76ee\u6762\u52ff\u9905\u5c24\u623b\u7c7e\u8cb0\u554f\u60b6\u7d0b\u9580\u5301\u4e5f\u51b6\u591c\u723a\u8036\u91ce\u5f25\u77e2\u5384\u5f79\u7d04\u85ac\u8a33\u8e8d\u9756\u67f3\u85ae\u9453\u6109\u6108\u6cb9\u7652"],[38720,"\u8aed\u8f38\u552f\u4f51\u512a\u52c7\u53cb\u5ba5\u5e7d\u60a0\u6182\u63d6\u6709\u67da\u6e67\u6d8c\u7336\u7337\u7531\u7950\u88d5\u8a98\u904a\u9091\u90f5\u96c4\u878d\u5915\u4e88\u4f59\u4e0e\u8a89\u8f3f\u9810\u50ad\u5e7c\u5996\u5bb9\u5eb8\u63da\u63fa\u64c1\u66dc\u694a\u69d8\u6d0b\u6eb6\u7194\u7528\u7aaf\u7f8a\u8000\u8449\u84c9\u8981\u8b21\u8e0a\u9065\u967d\u990a\u617e\u6291\u6b32"],[38784,"\u6c83\u6d74\u7fcc\u7ffc\u6dc0\u7f85\u87ba\u88f8\u6765\u83b1\u983c\u96f7\u6d1b\u7d61\u843d\u916a\u4e71\u5375\u5d50\u6b04\u6feb\u85cd\u862d\u89a7\u5229\u540f\u5c65\u674e\u68a8\u7406\u7483\u75e2\u88cf\u88e1\u91cc\u96e2\u9678\u5f8b\u7387\u7acb\u844e\u63a0\u7565\u5289\u6d41\u6e9c\u7409\u7559\u786b\u7c92\u9686\u7adc\u9f8d\u4fb6\u616e\u65c5\u865c\u4e86\u4eae\u50da\u4e21\u51cc\u5bee\u6599\u6881\u6dbc\u731f\u7642\u77ad\u7a1c\u7ce7\u826f\u8ad2\u907c\u91cf\u9675\u9818\u529b\u7dd1\u502b\u5398\u6797\u6dcb\u71d0\u7433\u81e8\u8f2a\u96a3\u9c57\u9e9f\u7460\u5841\u6d99\u7d2f\u985e\u4ee4\u4f36\u4f8b\u51b7\u52b1\u5dba\u601c\u73b2\u793c\u82d3\u9234\u96b7\u96f6\u970a\u9e97\u9f62\u66a6\u6b74\u5217\u52a3\u70c8\u88c2\u5ec9\u604b\u6190\u6f23\u7149\u7c3e\u7df4\u806f"],[38976,"\u84ee\u9023\u932c\u5442\u9b6f\u6ad3\u7089\u8cc2\u8def\u9732\u52b4\u5a41\u5eca\u5f04\u6717\u697c\u6994\u6d6a\u6f0f\u7262\u72fc\u7bed\u8001\u807e\u874b\u90ce\u516d\u9e93\u7984\u808b\u9332\u8ad6\u502d\u548c\u8a71\u6b6a\u8cc4\u8107\u60d1\u67a0\u9df2\u4e99\u4e98\u9c10\u8a6b\u85c1\u8568\u6900\u6e7e\u7897\u8155"],[39071,"\u5f0c\u4e10\u4e15\u4e2a\u4e31\u4e36\u4e3c\u4e3f\u4e42\u4e56\u4e58\u4e82\u4e85\u8c6b\u4e8a\u8212\u5f0d\u4e8e\u4e9e\u4e9f\u4ea0\u4ea2\u4eb0\u4eb3\u4eb6\u4ece\u4ecd\u4ec4\u4ec6\u4ec2\u4ed7\u4ede\u4eed\u4edf\u4ef7\u4f09\u4f5a\u4f30\u4f5b\u4f5d\u4f57\u4f47\u4f76\u4f88\u4f8f\u4f98\u4f7b\u4f69\u4f70\u4f91\u4f6f\u4f86\u4f96\u5118\u4fd4\u4fdf\u4fce\u4fd8\u4fdb\u4fd1\u4fda\u4fd0\u4fe4\u4fe5\u501a\u5028\u5014\u502a\u5025\u5005\u4f1c\u4ff6\u5021\u5029\u502c\u4ffe\u4fef\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505a\u5056\u506c\u5078\u5080\u509a\u5085\u50b4\u50b2"],[39232,"\u50c9\u50ca\u50b3\u50c2\u50d6\u50de\u50e5\u50ed\u50e3\u50ee\u50f9\u50f5\u5109\u5101\u5102\u5116\u5115\u5114\u511a\u5121\u513a\u5137\u513c\u513b\u513f\u5140\u5152\u514c\u5154\u5162\u7af8\u5169\u516a\u516e\u5180\u5182\u56d8\u518c\u5189\u518f\u5191\u5193\u5195\u5196\u51a4\u51a6\u51a2\u51a9\u51aa\u51ab\u51b3\u51b1\u51b2\u51b0\u51b5\u51bd\u51c5\u51c9\u51db\u51e0\u8655\u51e9\u51ed"],[39296,"\u51f0\u51f5\u51fe\u5204\u520b\u5214\u520e\u5227\u522a\u522e\u5233\u5239\u524f\u5244\u524b\u524c\u525e\u5254\u526a\u5274\u5269\u5273\u527f\u527d\u528d\u5294\u5292\u5271\u5288\u5291\u8fa8\u8fa7\u52ac\u52ad\u52bc\u52b5\u52c1\u52cd\u52d7\u52de\u52e3\u52e6\u98ed\u52e0\u52f3\u52f5\u52f8\u52f9\u5306\u5308\u7538\u530d\u5310\u530f\u5315\u531a\u5323\u532f\u5331\u5333\u5338\u5340\u5346\u5345\u4e17\u5349\u534d\u51d6\u535e\u5369\u536e\u5918\u537b\u5377\u5382\u5396\u53a0\u53a6\u53a5\u53ae\u53b0\u53b6\u53c3\u7c12\u96d9\u53df\u66fc\u71ee\u53ee\u53e8\u53ed\u53fa\u5401\u543d\u5440\u542c\u542d\u543c\u542e\u5436\u5429\u541d\u544e\u548f\u5475\u548e\u545f\u5471\u5477\u5470\u5492\u547b\u5480\u5476\u5484\u5490\u5486\u54c7\u54a2\u54b8\u54a5\u54ac\u54c4\u54c8\u54a8"],[39488,"\u54ab\u54c2\u54a4\u54be\u54bc\u54d8\u54e5\u54e6\u550f\u5514\u54fd\u54ee\u54ed\u54fa\u54e2\u5539\u5540\u5563\u554c\u552e\u555c\u5545\u5556\u5557\u5538\u5533\u555d\u5599\u5580\u54af\u558a\u559f\u557b\u557e\u5598\u559e\u55ae\u557c\u5583\u55a9\u5587\u55a8\u55da\u55c5\u55df\u55c4\u55dc\u55e4\u55d4\u5614\u55f7\u5616\u55fe\u55fd\u561b\u55f9\u564e\u5650\u71df\u5634\u5636\u5632\u5638"],[39552,"\u566b\u5664\u562f\u566c\u566a\u5686\u5680\u568a\u56a0\u5694\u568f\u56a5\u56ae\u56b6\u56b4\u56c2\u56bc\u56c1\u56c3\u56c0\u56c8\u56ce\u56d1\u56d3\u56d7\u56ee\u56f9\u5700\u56ff\u5704\u5709\u5708\u570b\u570d\u5713\u5718\u5716\u55c7\u571c\u5726\u5737\u5738\u574e\u573b\u5740\u574f\u5769\u57c0\u5788\u5761\u577f\u5789\u5793\u57a0\u57b3\u57a4\u57aa\u57b0\u57c3\u57c6\u57d4\u57d2\u57d3\u580a\u57d6\u57e3\u580b\u5819\u581d\u5872\u5821\u5862\u584b\u5870\u6bc0\u5852\u583d\u5879\u5885\u58b9\u589f\u58ab\u58ba\u58de\u58bb\u58b8\u58ae\u58c5\u58d3\u58d1\u58d7\u58d9\u58d8\u58e5\u58dc\u58e4\u58df\u58ef\u58fa\u58f9\u58fb\u58fc\u58fd\u5902\u590a\u5910\u591b\u68a6\u5925\u592c\u592d\u5932\u5938\u593e\u7ad2\u5955\u5950\u594e\u595a\u5958\u5962\u5960\u5967\u596c\u5969"],[39744,"\u5978\u5981\u599d\u4f5e\u4fab\u59a3\u59b2\u59c6\u59e8\u59dc\u598d\u59d9\u59da\u5a25\u5a1f\u5a11\u5a1c\u5a09\u5a1a\u5a40\u5a6c\u5a49\u5a35\u5a36\u5a62\u5a6a\u5a9a\u5abc\u5abe\u5acb\u5ac2\u5abd\u5ae3\u5ad7\u5ae6\u5ae9\u5ad6\u5afa\u5afb\u5b0c\u5b0b\u5b16\u5b32\u5ad0\u5b2a\u5b36\u5b3e\u5b43\u5b45\u5b40\u5b51\u5b55\u5b5a\u5b5b\u5b65\u5b69\u5b70\u5b73\u5b75\u5b78\u6588\u5b7a\u5b80"],[39808,"\u5b83\u5ba6\u5bb8\u5bc3\u5bc7\u5bc9\u5bd4\u5bd0\u5be4\u5be6\u5be2\u5bde\u5be5\u5beb\u5bf0\u5bf6\u5bf3\u5c05\u5c07\u5c08\u5c0d\u5c13\u5c20\u5c22\u5c28\u5c38\u5c39\u5c41\u5c46\u5c4e\u5c53\u5c50\u5c4f\u5b71\u5c6c\u5c6e\u4e62\u5c76\u5c79\u5c8c\u5c91\u5c94\u599b\u5cab\u5cbb\u5cb6\u5cbc\u5cb7\u5cc5\u5cbe\u5cc7\u5cd9\u5ce9\u5cfd\u5cfa\u5ced\u5d8c\u5cea\u5d0b\u5d15\u5d17\u5d5c\u5d1f\u5d1b\u5d11\u5d14\u5d22\u5d1a\u5d19\u5d18\u5d4c\u5d52\u5d4e\u5d4b\u5d6c\u5d73\u5d76\u5d87\u5d84\u5d82\u5da2\u5d9d\u5dac\u5dae\u5dbd\u5d90\u5db7\u5dbc\u5dc9\u5dcd\u5dd3\u5dd2\u5dd6\u5ddb\u5deb\u5df2\u5df5\u5e0b\u5e1a\u5e19\u5e11\u5e1b\u5e36\u5e37\u5e44\u5e43\u5e40\u5e4e\u5e57\u5e54\u5e5f\u5e62\u5e64\u5e47\u5e75\u5e76\u5e7a\u9ebc\u5e7f\u5ea0\u5ec1\u5ec2\u5ec8\u5ed0\u5ecf"],[4e4,"\u5ed6\u5ee3\u5edd\u5eda\u5edb\u5ee2\u5ee1\u5ee8\u5ee9\u5eec\u5ef1\u5ef3\u5ef0\u5ef4\u5ef8\u5efe\u5f03\u5f09\u5f5d\u5f5c\u5f0b\u5f11\u5f16\u5f29\u5f2d\u5f38\u5f41\u5f48\u5f4c\u5f4e\u5f2f\u5f51\u5f56\u5f57\u5f59\u5f61\u5f6d\u5f73\u5f77\u5f83\u5f82\u5f7f\u5f8a\u5f88\u5f91\u5f87\u5f9e\u5f99\u5f98\u5fa0\u5fa8\u5fad\u5fbc\u5fd6\u5ffb\u5fe4\u5ff8\u5ff1\u5fdd\u60b3\u5fff\u6021\u6060"],[40064,"\u6019\u6010\u6029\u600e\u6031\u601b\u6015\u602b\u6026\u600f\u603a\u605a\u6041\u606a\u6077\u605f\u604a\u6046\u604d\u6063\u6043\u6064\u6042\u606c\u606b\u6059\u6081\u608d\u60e7\u6083\u609a\u6084\u609b\u6096\u6097\u6092\u60a7\u608b\u60e1\u60b8\u60e0\u60d3\u60b4\u5ff0\u60bd\u60c6\u60b5\u60d8\u614d\u6115\u6106\u60f6\u60f7\u6100\u60f4\u60fa\u6103\u6121\u60fb\u60f1\u610d\u610e\u6147\u613e\u6128\u6127\u614a\u613f\u613c\u612c\u6134\u613d\u6142\u6144\u6173\u6177\u6158\u6159\u615a\u616b\u6174\u616f\u6165\u6171\u615f\u615d\u6153\u6175\u6199\u6196\u6187\u61ac\u6194\u619a\u618a\u6191\u61ab\u61ae\u61cc\u61ca\u61c9\u61f7\u61c8\u61c3\u61c6\u61ba\u61cb\u7f79\u61cd\u61e6\u61e3\u61f6\u61fa\u61f4\u61ff\u61fd\u61fc\u61fe\u6200\u6208\u6209\u620d\u620c\u6214\u621b"],[40256,"\u621e\u6221\u622a\u622e\u6230\u6232\u6233\u6241\u624e\u625e\u6263\u625b\u6260\u6268\u627c\u6282\u6289\u627e\u6292\u6293\u6296\u62d4\u6283\u6294\u62d7\u62d1\u62bb\u62cf\u62ff\u62c6\u64d4\u62c8\u62dc\u62cc\u62ca\u62c2\u62c7\u629b\u62c9\u630c\u62ee\u62f1\u6327\u6302\u6308\u62ef\u62f5\u6350\u633e\u634d\u641c\u634f\u6396\u638e\u6380\u63ab\u6376\u63a3\u638f\u6389\u639f\u63b5\u636b"],[40320,"\u6369\u63be\u63e9\u63c0\u63c6\u63e3\u63c9\u63d2\u63f6\u63c4\u6416\u6434\u6406\u6413\u6426\u6436\u651d\u6417\u6428\u640f\u6467\u646f\u6476\u644e\u652a\u6495\u6493\u64a5\u64a9\u6488\u64bc\u64da\u64d2\u64c5\u64c7\u64bb\u64d8\u64c2\u64f1\u64e7\u8209\u64e0\u64e1\u62ac\u64e3\u64ef\u652c\u64f6\u64f4\u64f2\u64fa\u6500\u64fd\u6518\u651c\u6505\u6524\u6523\u652b\u6534\u6535\u6537\u6536\u6538\u754b\u6548\u6556\u6555\u654d\u6558\u655e\u655d\u6572\u6578\u6582\u6583\u8b8a\u659b\u659f\u65ab\u65b7\u65c3\u65c6\u65c1\u65c4\u65cc\u65d2\u65db\u65d9\u65e0\u65e1\u65f1\u6772\u660a\u6603\u65fb\u6773\u6635\u6636\u6634\u661c\u664f\u6644\u6649\u6641\u665e\u665d\u6664\u6667\u6668\u665f\u6662\u6670\u6683\u6688\u668e\u6689\u6684\u6698\u669d\u66c1\u66b9\u66c9\u66be\u66bc"],[40512,"\u66c4\u66b8\u66d6\u66da\u66e0\u663f\u66e6\u66e9\u66f0\u66f5\u66f7\u670f\u6716\u671e\u6726\u6727\u9738\u672e\u673f\u6736\u6741\u6738\u6737\u6746\u675e\u6760\u6759\u6763\u6764\u6789\u6770\u67a9\u677c\u676a\u678c\u678b\u67a6\u67a1\u6785\u67b7\u67ef\u67b4\u67ec\u67b3\u67e9\u67b8\u67e4\u67de\u67dd\u67e2\u67ee\u67b9\u67ce\u67c6\u67e7\u6a9c\u681e\u6846\u6829\u6840\u684d\u6832\u684e"],[40576,"\u68b3\u682b\u6859\u6863\u6877\u687f\u689f\u688f\u68ad\u6894\u689d\u689b\u6883\u6aae\u68b9\u6874\u68b5\u68a0\u68ba\u690f\u688d\u687e\u6901\u68ca\u6908\u68d8\u6922\u6926\u68e1\u690c\u68cd\u68d4\u68e7\u68d5\u6936\u6912\u6904\u68d7\u68e3\u6925\u68f9\u68e0\u68ef\u6928\u692a\u691a\u6923\u6921\u68c6\u6979\u6977\u695c\u6978\u696b\u6954\u697e\u696e\u6939\u6974\u693d\u6959\u6930\u6961\u695e\u695d\u6981\u696a\u69b2\u69ae\u69d0\u69bf\u69c1\u69d3\u69be\u69ce\u5be8\u69ca\u69dd\u69bb\u69c3\u69a7\u6a2e\u6991\u69a0\u699c\u6995\u69b4\u69de\u69e8\u6a02\u6a1b\u69ff\u6b0a\u69f9\u69f2\u69e7\u6a05\u69b1\u6a1e\u69ed\u6a14\u69eb\u6a0a\u6a12\u6ac1\u6a23\u6a13\u6a44\u6a0c\u6a72\u6a36\u6a78\u6a47\u6a62\u6a59\u6a66\u6a48\u6a38\u6a22\u6a90\u6a8d\u6aa0\u6a84\u6aa2\u6aa3"],[40768,"\u6a97\u8617\u6abb\u6ac3\u6ac2\u6ab8\u6ab3\u6aac\u6ade\u6ad1\u6adf\u6aaa\u6ada\u6aea\u6afb\u6b05\u8616\u6afa\u6b12\u6b16\u9b31\u6b1f\u6b38\u6b37\u76dc\u6b39\u98ee\u6b47\u6b43\u6b49\u6b50\u6b59\u6b54\u6b5b\u6b5f\u6b61\u6b78\u6b79\u6b7f\u6b80\u6b84\u6b83\u6b8d\u6b98\u6b95\u6b9e\u6ba4\u6baa\u6bab\u6baf\u6bb2\u6bb1\u6bb3\u6bb7\u6bbc\u6bc6\u6bcb\u6bd3\u6bdf\u6bec\u6beb\u6bf3\u6bef"],[40832,"\u9ebe\u6c08\u6c13\u6c14\u6c1b\u6c24\u6c23\u6c5e\u6c55\u6c62\u6c6a\u6c82\u6c8d\u6c9a\u6c81\u6c9b\u6c7e\u6c68\u6c73\u6c92\u6c90\u6cc4\u6cf1\u6cd3\u6cbd\u6cd7\u6cc5\u6cdd\u6cae\u6cb1\u6cbe\u6cba\u6cdb\u6cef\u6cd9\u6cea\u6d1f\u884d\u6d36\u6d2b\u6d3d\u6d38\u6d19\u6d35\u6d33\u6d12\u6d0c\u6d63\u6d93\u6d64\u6d5a\u6d79\u6d59\u6d8e\u6d95\u6fe4\u6d85\u6df9\u6e15\u6e0a\u6db5\u6dc7\u6de6\u6db8\u6dc6\u6dec\u6dde\u6dcc\u6de8\u6dd2\u6dc5\u6dfa\u6dd9\u6de4\u6dd5\u6dea\u6dee\u6e2d\u6e6e\u6e2e\u6e19\u6e72\u6e5f\u6e3e\u6e23\u6e6b\u6e2b\u6e76\u6e4d\u6e1f\u6e43\u6e3a\u6e4e\u6e24\u6eff\u6e1d\u6e38\u6e82\u6eaa\u6e98\u6ec9\u6eb7\u6ed3\u6ebd\u6eaf\u6ec4\u6eb2\u6ed4\u6ed5\u6e8f\u6ea5\u6ec2\u6e9f\u6f41\u6f11\u704c\u6eec\u6ef8\u6efe\u6f3f\u6ef2\u6f31\u6eef\u6f32\u6ecc"],[57408,"\u6f3e\u6f13\u6ef7\u6f86\u6f7a\u6f78\u6f81\u6f80\u6f6f\u6f5b\u6ff3\u6f6d\u6f82\u6f7c\u6f58\u6f8e\u6f91\u6fc2\u6f66\u6fb3\u6fa3\u6fa1\u6fa4\u6fb9\u6fc6\u6faa\u6fdf\u6fd5\u6fec\u6fd4\u6fd8\u6ff1\u6fee\u6fdb\u7009\u700b\u6ffa\u7011\u7001\u700f\u6ffe\u701b\u701a\u6f74\u701d\u7018\u701f\u7030\u703e\u7032\u7051\u7063\u7099\u7092\u70af\u70f1\u70ac\u70b8\u70b3\u70ae\u70df\u70cb\u70dd"],[57472,"\u70d9\u7109\u70fd\u711c\u7119\u7165\u7155\u7188\u7166\u7162\u714c\u7156\u716c\u718f\u71fb\u7184\u7195\u71a8\u71ac\u71d7\u71b9\u71be\u71d2\u71c9\u71d4\u71ce\u71e0\u71ec\u71e7\u71f5\u71fc\u71f9\u71ff\u720d\u7210\u721b\u7228\u722d\u722c\u7230\u7232\u723b\u723c\u723f\u7240\u7246\u724b\u7258\u7274\u727e\u7282\u7281\u7287\u7292\u7296\u72a2\u72a7\u72b9\u72b2\u72c3\u72c6\u72c4\u72ce\u72d2\u72e2\u72e0\u72e1\u72f9\u72f7\u500f\u7317\u730a\u731c\u7316\u731d\u7334\u732f\u7329\u7325\u733e\u734e\u734f\u9ed8\u7357\u736a\u7368\u7370\u7378\u7375\u737b\u737a\u73c8\u73b3\u73ce\u73bb\u73c0\u73e5\u73ee\u73de\u74a2\u7405\u746f\u7425\u73f8\u7432\u743a\u7455\u743f\u745f\u7459\u7441\u745c\u7469\u7470\u7463\u746a\u7476\u747e\u748b\u749e\u74a7\u74ca\u74cf\u74d4\u73f1"],[57664,"\u74e0\u74e3\u74e7\u74e9\u74ee\u74f2\u74f0\u74f1\u74f8\u74f7\u7504\u7503\u7505\u750c\u750e\u750d\u7515\u7513\u751e\u7526\u752c\u753c\u7544\u754d\u754a\u7549\u755b\u7546\u755a\u7569\u7564\u7567\u756b\u756d\u7578\u7576\u7586\u7587\u7574\u758a\u7589\u7582\u7594\u759a\u759d\u75a5\u75a3\u75c2\u75b3\u75c3\u75b5\u75bd\u75b8\u75bc\u75b1\u75cd\u75ca\u75d2\u75d9\u75e3\u75de\u75fe\u75ff"],[57728,"\u75fc\u7601\u75f0\u75fa\u75f2\u75f3\u760b\u760d\u7609\u761f\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763b\u7647\u7648\u7646\u765c\u7658\u7661\u7662\u7668\u7669\u766a\u7667\u766c\u7670\u7672\u7676\u7678\u767c\u7680\u7683\u7688\u768b\u768e\u7696\u7693\u7699\u769a\u76b0\u76b4\u76b8\u76b9\u76ba\u76c2\u76cd\u76d6\u76d2\u76de\u76e1\u76e5\u76e7\u76ea\u862f\u76fb\u7708\u7707\u7704\u7729\u7724\u771e\u7725\u7726\u771b\u7737\u7738\u7747\u775a\u7768\u776b\u775b\u7765\u777f\u777e\u7779\u778e\u778b\u7791\u77a0\u779e\u77b0\u77b6\u77b9\u77bf\u77bc\u77bd\u77bb\u77c7\u77cd\u77d7\u77da\u77dc\u77e3\u77ee\u77fc\u780c\u7812\u7926\u7820\u792a\u7845\u788e\u7874\u7886\u787c\u789a\u788c\u78a3\u78b5\u78aa\u78af\u78d1\u78c6\u78cb\u78d4\u78be\u78bc\u78c5\u78ca\u78ec"],[57920,"\u78e7\u78da\u78fd\u78f4\u7907\u7912\u7911\u7919\u792c\u792b\u7940\u7960\u7957\u795f\u795a\u7955\u7953\u797a\u797f\u798a\u799d\u79a7\u9f4b\u79aa\u79ae\u79b3\u79b9\u79ba\u79c9\u79d5\u79e7\u79ec\u79e1\u79e3\u7a08\u7a0d\u7a18\u7a19\u7a20\u7a1f\u7980\u7a31\u7a3b\u7a3e\u7a37\u7a43\u7a57\u7a49\u7a61\u7a62\u7a69\u9f9d\u7a70\u7a79\u7a7d\u7a88\u7a97\u7a95\u7a98\u7a96\u7aa9\u7ac8\u7ab0"],[57984,"\u7ab6\u7ac5\u7ac4\u7abf\u9083\u7ac7\u7aca\u7acd\u7acf\u7ad5\u7ad3\u7ad9\u7ada\u7add\u7ae1\u7ae2\u7ae6\u7aed\u7af0\u7b02\u7b0f\u7b0a\u7b06\u7b33\u7b18\u7b19\u7b1e\u7b35\u7b28\u7b36\u7b50\u7b7a\u7b04\u7b4d\u7b0b\u7b4c\u7b45\u7b75\u7b65\u7b74\u7b67\u7b70\u7b71\u7b6c\u7b6e\u7b9d\u7b98\u7b9f\u7b8d\u7b9c\u7b9a\u7b8b\u7b92\u7b8f\u7b5d\u7b99\u7bcb\u7bc1\u7bcc\u7bcf\u7bb4\u7bc6\u7bdd\u7be9\u7c11\u7c14\u7be6\u7be5\u7c60\u7c00\u7c07\u7c13\u7bf3\u7bf7\u7c17\u7c0d\u7bf6\u7c23\u7c27\u7c2a\u7c1f\u7c37\u7c2b\u7c3d\u7c4c\u7c43\u7c54\u7c4f\u7c40\u7c50\u7c58\u7c5f\u7c64\u7c56\u7c65\u7c6c\u7c75\u7c83\u7c90\u7ca4\u7cad\u7ca2\u7cab\u7ca1\u7ca8\u7cb3\u7cb2\u7cb1\u7cae\u7cb9\u7cbd\u7cc0\u7cc5\u7cc2\u7cd8\u7cd2\u7cdc\u7ce2\u9b3b\u7cef\u7cf2\u7cf4\u7cf6\u7cfa\u7d06"],[58176,"\u7d02\u7d1c\u7d15\u7d0a\u7d45\u7d4b\u7d2e\u7d32\u7d3f\u7d35\u7d46\u7d73\u7d56\u7d4e\u7d72\u7d68\u7d6e\u7d4f\u7d63\u7d93\u7d89\u7d5b\u7d8f\u7d7d\u7d9b\u7dba\u7dae\u7da3\u7db5\u7dc7\u7dbd\u7dab\u7e3d\u7da2\u7daf\u7ddc\u7db8\u7d9f\u7db0\u7dd8\u7ddd\u7de4\u7dde\u7dfb\u7df2\u7de1\u7e05\u7e0a\u7e23\u7e21\u7e12\u7e31\u7e1f\u7e09\u7e0b\u7e22\u7e46\u7e66\u7e3b\u7e35\u7e39\u7e43\u7e37"],[58240,"\u7e32\u7e3a\u7e67\u7e5d\u7e56\u7e5e\u7e59\u7e5a\u7e79\u7e6a\u7e69\u7e7c\u7e7b\u7e83\u7dd5\u7e7d\u8fae\u7e7f\u7e88\u7e89\u7e8c\u7e92\u7e90\u7e93\u7e94\u7e96\u7e8e\u7e9b\u7e9c\u7f38\u7f3a\u7f45\u7f4c\u7f4d\u7f4e\u7f50\u7f51\u7f55\u7f54\u7f58\u7f5f\u7f60\u7f68\u7f69\u7f67\u7f78\u7f82\u7f86\u7f83\u7f88\u7f87\u7f8c\u7f94\u7f9e\u7f9d\u7f9a\u7fa3\u7faf\u7fb2\u7fb9\u7fae\u7fb6\u7fb8\u8b71\u7fc5\u7fc6\u7fca\u7fd5\u7fd4\u7fe1\u7fe6\u7fe9\u7ff3\u7ff9\u98dc\u8006\u8004\u800b\u8012\u8018\u8019\u801c\u8021\u8028\u803f\u803b\u804a\u8046\u8052\u8058\u805a\u805f\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807d\u807f\u8084\u8086\u8085\u809b\u8093\u809a\u80ad\u5190\u80ac\u80db\u80e5\u80d9\u80dd\u80c4\u80da\u80d6\u8109\u80ef\u80f1\u811b\u8129\u8123\u812f\u814b"],[58432,"\u968b\u8146\u813e\u8153\u8151\u80fc\u8171\u816e\u8165\u8166\u8174\u8183\u8188\u818a\u8180\u8182\u81a0\u8195\u81a4\u81a3\u815f\u8193\u81a9\u81b0\u81b5\u81be\u81b8\u81bd\u81c0\u81c2\u81ba\u81c9\u81cd\u81d1\u81d9\u81d8\u81c8\u81da\u81df\u81e0\u81e7\u81fa\u81fb\u81fe\u8201\u8202\u8205\u8207\u820a\u820d\u8210\u8216\u8229\u822b\u8238\u8233\u8240\u8259\u8258\u825d\u825a\u825f\u8264"],[58496,"\u8262\u8268\u826a\u826b\u822e\u8271\u8277\u8278\u827e\u828d\u8292\u82ab\u829f\u82bb\u82ac\u82e1\u82e3\u82df\u82d2\u82f4\u82f3\u82fa\u8393\u8303\u82fb\u82f9\u82de\u8306\u82dc\u8309\u82d9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832f\u832b\u8317\u8318\u8385\u839a\u83aa\u839f\u83a2\u8396\u8323\u838e\u8387\u838a\u837c\u83b5\u8373\u8375\u83a0\u8389\u83a8\u83f4\u8413\u83eb\u83ce\u83fd\u8403\u83d8\u840b\u83c1\u83f7\u8407\u83e0\u83f2\u840d\u8422\u8420\u83bd\u8438\u8506\u83fb\u846d\u842a\u843c\u855a\u8484\u8477\u846b\u84ad\u846e\u8482\u8469\u8446\u842c\u846f\u8479\u8435\u84ca\u8462\u84b9\u84bf\u849f\u84d9\u84cd\u84bb\u84da\u84d0\u84c1\u84c6\u84d6\u84a1\u8521\u84ff\u84f4\u8517\u8518\u852c\u851f\u8515\u8514\u84fc\u8540\u8563\u8558\u8548"],[58688,"\u8541\u8602\u854b\u8555\u8580\u85a4\u8588\u8591\u858a\u85a8\u856d\u8594\u859b\u85ea\u8587\u859c\u8577\u857e\u8590\u85c9\u85ba\u85cf\u85b9\u85d0\u85d5\u85dd\u85e5\u85dc\u85f9\u860a\u8613\u860b\u85fe\u85fa\u8606\u8622\u861a\u8630\u863f\u864d\u4e55\u8654\u865f\u8667\u8671\u8693\u86a3\u86a9\u86aa\u868b\u868c\u86b6\u86af\u86c4\u86c6\u86b0\u86c9\u8823\u86ab\u86d4\u86de\u86e9\u86ec"],[58752,"\u86df\u86db\u86ef\u8712\u8706\u8708\u8700\u8703\u86fb\u8711\u8709\u870d\u86f9\u870a\u8734\u873f\u8737\u873b\u8725\u8729\u871a\u8760\u875f\u8778\u874c\u874e\u8774\u8757\u8768\u876e\u8759\u8753\u8763\u876a\u8805\u87a2\u879f\u8782\u87af\u87cb\u87bd\u87c0\u87d0\u96d6\u87ab\u87c4\u87b3\u87c7\u87c6\u87bb\u87ef\u87f2\u87e0\u880f\u880d\u87fe\u87f6\u87f7\u880e\u87d2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883b\u8844\u8842\u8852\u8859\u885e\u8862\u886b\u8881\u887e\u889e\u8875\u887d\u88b5\u8872\u8882\u8897\u8892\u88ae\u8899\u88a2\u888d\u88a4\u88b0\u88bf\u88b1\u88c3\u88c4\u88d4\u88d8\u88d9\u88dd\u88f9\u8902\u88fc\u88f4\u88e8\u88f2\u8904\u890c\u890a\u8913\u8943\u891e\u8925\u892a\u892b\u8941\u8944\u893b\u8936\u8938\u894c\u891d\u8960\u895e"],[58944,"\u8966\u8964\u896d\u896a\u896f\u8974\u8977\u897e\u8983\u8988\u898a\u8993\u8998\u89a1\u89a9\u89a6\u89ac\u89af\u89b2\u89ba\u89bd\u89bf\u89c0\u89da\u89dc\u89dd\u89e7\u89f4\u89f8\u8a03\u8a16\u8a10\u8a0c\u8a1b\u8a1d\u8a25\u8a36\u8a41\u8a5b\u8a52\u8a46\u8a48\u8a7c\u8a6d\u8a6c\u8a62\u8a85\u8a82\u8a84\u8aa8\u8aa1\u8a91\u8aa5\u8aa6\u8a9a\u8aa3\u8ac4\u8acd\u8ac2\u8ada\u8aeb\u8af3\u8ae7"],[59008,"\u8ae4\u8af1\u8b14\u8ae0\u8ae2\u8af7\u8ade\u8adb\u8b0c\u8b07\u8b1a\u8ae1\u8b16\u8b10\u8b17\u8b20\u8b33\u97ab\u8b26\u8b2b\u8b3e\u8b28\u8b41\u8b4c\u8b4f\u8b4e\u8b49\u8b56\u8b5b\u8b5a\u8b6b\u8b5f\u8b6c\u8b6f\u8b74\u8b7d\u8b80\u8b8c\u8b8e\u8b92\u8b93\u8b96\u8b99\u8b9a\u8c3a\u8c41\u8c3f\u8c48\u8c4c\u8c4e\u8c50\u8c55\u8c62\u8c6c\u8c78\u8c7a\u8c82\u8c89\u8c85\u8c8a\u8c8d\u8c8e\u8c94\u8c7c\u8c98\u621d\u8cad\u8caa\u8cbd\u8cb2\u8cb3\u8cae\u8cb6\u8cc8\u8cc1\u8ce4\u8ce3\u8cda\u8cfd\u8cfa\u8cfb\u8d04\u8d05\u8d0a\u8d07\u8d0f\u8d0d\u8d10\u9f4e\u8d13\u8ccd\u8d14\u8d16\u8d67\u8d6d\u8d71\u8d73\u8d81\u8d99\u8dc2\u8dbe\u8dba\u8dcf\u8dda\u8dd6\u8dcc\u8ddb\u8dcb\u8dea\u8deb\u8ddf\u8de3\u8dfc\u8e08\u8e09\u8dff\u8e1d\u8e1e\u8e10\u8e1f\u8e42\u8e35\u8e30\u8e34\u8e4a"],[59200,"\u8e47\u8e49\u8e4c\u8e50\u8e48\u8e59\u8e64\u8e60\u8e2a\u8e63\u8e55\u8e76\u8e72\u8e7c\u8e81\u8e87\u8e85\u8e84\u8e8b\u8e8a\u8e93\u8e91\u8e94\u8e99\u8eaa\u8ea1\u8eac\u8eb0\u8ec6\u8eb1\u8ebe\u8ec5\u8ec8\u8ecb\u8edb\u8ee3\u8efc\u8efb\u8eeb\u8efe\u8f0a\u8f05\u8f15\u8f12\u8f19\u8f13\u8f1c\u8f1f\u8f1b\u8f0c\u8f26\u8f33\u8f3b\u8f39\u8f45\u8f42\u8f3e\u8f4c\u8f49\u8f46\u8f4e\u8f57\u8f5c"],[59264,"\u8f62\u8f63\u8f64\u8f9c\u8f9f\u8fa3\u8fad\u8faf\u8fb7\u8fda\u8fe5\u8fe2\u8fea\u8fef\u9087\u8ff4\u9005\u8ff9\u8ffa\u9011\u9015\u9021\u900d\u901e\u9016\u900b\u9027\u9036\u9035\u9039\u8ff8\u904f\u9050\u9051\u9052\u900e\u9049\u903e\u9056\u9058\u905e\u9068\u906f\u9076\u96a8\u9072\u9082\u907d\u9081\u9080\u908a\u9089\u908f\u90a8\u90af\u90b1\u90b5\u90e2\u90e4\u6248\u90db\u9102\u9112\u9119\u9132\u9130\u914a\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918b\u9189\u9182\u91a2\u91ab\u91af\u91aa\u91b5\u91b4\u91ba\u91c0\u91c1\u91c9\u91cb\u91d0\u91d6\u91df\u91e1\u91db\u91fc\u91f5\u91f6\u921e\u91ff\u9214\u922c\u9215\u9211\u925e\u9257\u9245\u9249\u9264\u9248\u9295\u923f\u924b\u9250\u929c\u9296\u9293\u929b\u925a\u92cf\u92b9\u92b7\u92e9\u930f\u92fa\u9344\u932e"],[59456,"\u9319\u9322\u931a\u9323\u933a\u9335\u933b\u935c\u9360\u937c\u936e\u9356\u93b0\u93ac\u93ad\u9394\u93b9\u93d6\u93d7\u93e8\u93e5\u93d8\u93c3\u93dd\u93d0\u93c8\u93e4\u941a\u9414\u9413\u9403\u9407\u9410\u9436\u942b\u9435\u9421\u943a\u9441\u9452\u9444\u945b\u9460\u9462\u945e\u946a\u9229\u9470\u9475\u9477\u947d\u945a\u947c\u947e\u9481\u947f\u9582\u9587\u958a\u9594\u9596\u9598\u9599"],[59520,"\u95a0\u95a8\u95a7\u95ad\u95bc\u95bb\u95b9\u95be\u95ca\u6ff6\u95c3\u95cd\u95cc\u95d5\u95d4\u95d6\u95dc\u95e1\u95e5\u95e2\u9621\u9628\u962e\u962f\u9642\u964c\u964f\u964b\u9677\u965c\u965e\u965d\u965f\u9666\u9672\u966c\u968d\u9698\u9695\u9697\u96aa\u96a7\u96b1\u96b2\u96b0\u96b4\u96b6\u96b8\u96b9\u96ce\u96cb\u96c9\u96cd\u894d\u96dc\u970d\u96d5\u96f9\u9704\u9706\u9708\u9713\u970e\u9711\u970f\u9716\u9719\u9724\u972a\u9730\u9739\u973d\u973e\u9744\u9746\u9748\u9742\u9749\u975c\u9760\u9764\u9766\u9768\u52d2\u976b\u9771\u9779\u9785\u977c\u9781\u977a\u9786\u978b\u978f\u9790\u979c\u97a8\u97a6\u97a3\u97b3\u97b4\u97c3\u97c6\u97c8\u97cb\u97dc\u97ed\u9f4f\u97f2\u7adf\u97f6\u97f5\u980f\u980c\u9838\u9824\u9821\u9837\u983d\u9846\u984f\u984b\u986b\u986f\u9870"],[59712,"\u9871\u9874\u9873\u98aa\u98af\u98b1\u98b6\u98c4\u98c3\u98c6\u98e9\u98eb\u9903\u9909\u9912\u9914\u9918\u9921\u991d\u991e\u9924\u9920\u992c\u992e\u993d\u993e\u9942\u9949\u9945\u9950\u994b\u9951\u9952\u994c\u9955\u9997\u9998\u99a5\u99ad\u99ae\u99bc\u99df\u99db\u99dd\u99d8\u99d1\u99ed\u99ee\u99f1\u99f2\u99fb\u99f8\u9a01\u9a0f\u9a05\u99e2\u9a19\u9a2b\u9a37\u9a45\u9a42\u9a40\u9a43"],[59776,"\u9a3e\u9a55\u9a4d\u9a5b\u9a57\u9a5f\u9a62\u9a65\u9a64\u9a69\u9a6b\u9a6a\u9aad\u9ab0\u9abc\u9ac0\u9acf\u9ad1\u9ad3\u9ad4\u9ade\u9adf\u9ae2\u9ae3\u9ae6\u9aef\u9aeb\u9aee\u9af4\u9af1\u9af7\u9afb\u9b06\u9b18\u9b1a\u9b1f\u9b22\u9b23\u9b25\u9b27\u9b28\u9b29\u9b2a\u9b2e\u9b2f\u9b32\u9b44\u9b43\u9b4f\u9b4d\u9b4e\u9b51\u9b58\u9b74\u9b93\u9b83\u9b91\u9b96\u9b97\u9b9f\u9ba0\u9ba8\u9bb4\u9bc0\u9bca\u9bb9\u9bc6\u9bcf\u9bd1\u9bd2\u9be3\u9be2\u9be4\u9bd4\u9be1\u9c3a\u9bf2\u9bf1\u9bf0\u9c15\u9c14\u9c09\u9c13\u9c0c\u9c06\u9c08\u9c12\u9c0a\u9c04\u9c2e\u9c1b\u9c25\u9c24\u9c21\u9c30\u9c47\u9c32\u9c46\u9c3e\u9c5a\u9c60\u9c67\u9c76\u9c78\u9ce7\u9cec\u9cf0\u9d09\u9d08\u9ceb\u9d03\u9d06\u9d2a\u9d26\u9daf\u9d23\u9d1f\u9d44\u9d15\u9d12\u9d41\u9d3f\u9d3e\u9d46\u9d48"],[59968,"\u9d5d\u9d5e\u9d64\u9d51\u9d50\u9d59\u9d72\u9d89\u9d87\u9dab\u9d6f\u9d7a\u9d9a\u9da4\u9da9\u9db2\u9dc4\u9dc1\u9dbb\u9db8\u9dba\u9dc6\u9dcf\u9dc2\u9dd9\u9dd3\u9df8\u9de6\u9ded\u9def\u9dfd\u9e1a\u9e1b\u9e1e\u9e75\u9e79\u9e7d\u9e81\u9e88\u9e8b\u9e8c\u9e92\u9e95\u9e91\u9e9d\u9ea5\u9ea9\u9eb8\u9eaa\u9ead\u9761\u9ecc\u9ece\u9ecf\u9ed0\u9ed4\u9edc\u9ede\u9edd\u9ee0\u9ee5\u9ee8\u9eef"],[60032,"\u9ef4\u9ef6\u9ef7\u9ef9\u9efb\u9efc\u9efd\u9f07\u9f08\u76b7\u9f15\u9f21\u9f2c\u9f3e\u9f4a\u9f52\u9f54\u9f63\u9f5f\u9f60\u9f61\u9f66\u9f67\u9f6c\u9f6a\u9f77\u9f72\u9f76\u9f95\u9f9c\u9fa0\u582f\u69c7\u9059\u7464\u51dc\u7199"]];let ue;function de(){if(!ue){const t={},r={},n=ce.length;for(let o=0;o<n;o++){const n=ce[o],a=n[1],i=a.length;for(var e=0;e<i;e++){const o=n[0]+e,i=a.charAt(e).charCodeAt(0);t[i]=o,r[o]=i}}ue={UTF8_TO_SJIS:t,SJIS_TO_UTF8:r}}return ue}function fe(e){let t=0,r="";const{length:n}=e,{fromCharCode:o}=String,{SJIS_TO_UTF8:a}=de();for(;t<n;){const n=e[t++];if(n<128)r+=o(n);else if(160<=n&&n<=223)r+=o(n+65216);else{const i=a[(n<<8)+e[t++]];r+=null!=i?o(i):"?"}}return r}function pe(e,t){let r="";const n=[],o=[10,12,14][t];let a=e.readBits(o);for(;a>=3;){const t=e.readBits(10);if(t>=1e3)throw new Error("invalid numeric value above 999");const o=Math.floor(t/100),i=Math.floor(t/10)%10,s=t%10;n.push(48+o,48+i,48+s),r+=o.toString()+i.toString()+s.toString(),a-=3}if(2===a){const t=e.readBits(7);if(t>=100)throw new Error("invalid numeric value above 99");const o=Math.floor(t/10),a=t%10;n.push(48+o,48+a),r+=o.toString()+a.toString()}else if(1===a){const t=e.readBits(4);if(t>=10)throw new Error("invalid numeric value above 9");n.push(48+t),r+=t.toString()}return{bytes:n,data:r}}const he=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function me(e,t){const r=[],n=[9,11,13][t];let o="",a=e.readBits(n);for(;a>=2;){const t=e.readBits(11),n=Math.floor(t/45),i=t%45;r.push(he[n].charCodeAt(0),he[i].charCodeAt(0)),o+=he[n]+he[i],a-=2}if(1===a){const t=e.readBits(6);r.push(he[t].charCodeAt(0)),o+=he[t]}return{bytes:r,data:o}}function ge(e,t,r){const n=[],o=[8,16,16][t],a=e.readBits(o);for(let i=0;i<a;i++)n.push(e.readBits(8));return{bytes:n,data:20===r?fe(n):f(n)}}function ve(e,t){let r="";const n=[],{fromCharCode:o}=String,{SJIS_TO_UTF8:a}=de(),i=[8,10,12][t],s=e.readBits(i);for(let l=0;l<s;l++){const t=e.readBits(13);let i=Math.floor(t/192)<<8|t%192;i+=i<7936?33088:49472,n.push(i>>8,255&i);const s=a[i];r+=o(null!=s?s:i)}return{bytes:n,data:r}}function ye(e,t){let r=e^t,n=0;for(;r;)n++,r&=r-1;return n}function be(e,t){return t<<1|+e}const we=[{bits:21522,formatInfo:{errorCorrectionLevel:0,dataMask:0}},{bits:20773,formatInfo:{errorCorrectionLevel:0,dataMask:1}},{bits:24188,formatInfo:{errorCorrectionLevel:0,dataMask:2}},{bits:23371,formatInfo:{errorCorrectionLevel:0,dataMask:3}},{bits:17913,formatInfo:{errorCorrectionLevel:0,dataMask:4}},{bits:16590,formatInfo:{errorCorrectionLevel:0,dataMask:5}},{bits:20375,formatInfo:{errorCorrectionLevel:0,dataMask:6}},{bits:19104,formatInfo:{errorCorrectionLevel:0,dataMask:7}},{bits:30660,formatInfo:{errorCorrectionLevel:1,dataMask:0}},{bits:29427,formatInfo:{errorCorrectionLevel:1,dataMask:1}},{bits:32170,formatInfo:{errorCorrectionLevel:1,dataMask:2}},{bits:30877,formatInfo:{errorCorrectionLevel:1,dataMask:3}},{bits:26159,formatInfo:{errorCorrectionLevel:1,dataMask:4}},{bits:25368,formatInfo:{errorCorrectionLevel:1,dataMask:5}},{bits:27713,formatInfo:{errorCorrectionLevel:1,dataMask:6}},{bits:26998,formatInfo:{errorCorrectionLevel:1,dataMask:7}},{bits:5769,formatInfo:{errorCorrectionLevel:2,dataMask:0}},{bits:5054,formatInfo:{errorCorrectionLevel:2,dataMask:1}},{bits:7399,formatInfo:{errorCorrectionLevel:2,dataMask:2}},{bits:6608,formatInfo:{errorCorrectionLevel:2,dataMask:3}},{bits:1890,formatInfo:{errorCorrectionLevel:2,dataMask:4}},{bits:597,formatInfo:{errorCorrectionLevel:2,dataMask:5}},{bits:3340,formatInfo:{errorCorrectionLevel:2,dataMask:6}},{bits:2107,formatInfo:{errorCorrectionLevel:2,dataMask:7}},{bits:13663,formatInfo:{errorCorrectionLevel:3,dataMask:0}},{bits:12392,formatInfo:{errorCorrectionLevel:3,dataMask:1}},{bits:16177,formatInfo:{errorCorrectionLevel:3,dataMask:2}},{bits:14854,formatInfo:{errorCorrectionLevel:3,dataMask:3}},{bits:9396,formatInfo:{errorCorrectionLevel:3,dataMask:4}},{bits:8579,formatInfo:{errorCorrectionLevel:3,dataMask:5}},{bits:11994,formatInfo:{errorCorrectionLevel:3,dataMask:6}},{bits:11245,formatInfo:{errorCorrectionLevel:3,dataMask:7}}];function xe(e,t,r){const n=e.height,o=U(r.dataMask),a=function(e){const t=17+4*e.versionNumber,r=ee.createEmpty(t,t);r.setRegion(0,0,9,9,!0),r.setRegion(t-8,0,8,9,!0),r.setRegion(0,t-8,9,8,!0);for(const n of e.alignmentPatternCenters)for(const o of e.alignmentPatternCenters)6===n&&6===o||6===n&&o===t-7||n===t-7&&6===o||r.setRegion(n-2,o-2,5,5,!0);return r.setRegion(6,9,1,t-17,!0),r.setRegion(9,6,t-17,1,!0),e.versionNumber>6&&(r.setRegion(t-11,0,3,6,!0),r.setRegion(0,t-11,6,3,!0)),r}(t);let i=0,s=0;const l=[];let c=!0;for(let u=n-1;u>0;u-=2){6===u&&u--;for(let t=0;t<n;t++){const r=c?n-1-t:t;for(let t=0;t<2;t++){const n=u-t;if(!a.get(n,r)){i++;let t=e.get(n,r);o(n,r)&&(t=!t),s=be(t,s),8===i&&(l.push(s),i=0,s=0)}}}c=!c}return l}function Se(e){const t=function(e){const t=e.height,r=Math.floor((t-17)/4);if(r<1)return null;if(r<=6)return se[r-1];let n=0;for(let s=5;s>=0;s--)for(let r=t-9;r>=t-11;r--)n=be(e.get(r,s),n);let o=0;for(let s=5;s>=0;s--)for(let r=t-9;r>=t-11;r--)o=be(e.get(s,r),o);let a=1/0,i=null;for(const s of se){if(s.infoBits===n||s.infoBits===o)return s;let e=ye(n,s.infoBits);e<a&&(i=s,a=e),e=ye(o,s.infoBits),e<a&&(i=s,a=e)}return a<=3?i:null}(e);if(null===t)return null;const r=function(e){let t=0;for(let i=0;i<=8;i++)6!==i&&(t=be(e.get(i,8),t));for(let i=7;i>=0;i--)6!==i&&(t=be(e.get(8,i),t));const r=e.height;let n=0;for(let i=r-1;i>=r-7;i--)n=be(e.get(8,i),n);for(let i=r-8;i<r;i++)n=be(e.get(i,8),n);let o=1/0,a=null;for(const{bits:i,formatInfo:s}of we){if(i===t||i===n)return s;let e=ye(t,i);e<o&&(a=s,o=e),t!==n&&(e=ye(n,i),e<o&&(a=s,o=e))}return o<=3?a:null}(e);if(null===r)return null;const n=function(e,t,r){const n=[],o=t.errorCorrectionLevels[r];let a=0;if(o.ecBlocks.forEach((e=>{for(let t=0;t<e.numBlocks;t++)n.push({numDataCodewords:e.dataCodewordsPerBlock,codewords:[]}),a+=e.dataCodewordsPerBlock+o.ecCodewordsPerBlock})),e.length<a)return null;e=e.slice(0,a);const i=o.ecBlocks[0].dataCodewordsPerBlock;for(let s=0;s<i;s++)for(const t of n)t.codewords.push(e.shift());if(o.ecBlocks.length>1){const t=o.ecBlocks[0].numBlocks,r=o.ecBlocks[1].numBlocks;for(let o=0;o<r;o++)n[t+o].codewords.push(e.shift())}for(;e.length>0;)for(const t of n)t.codewords.push(e.shift());return n}(xe(e,t,r),t,r.errorCorrectionLevel);if(null===n)return null;const o=n.reduce(((e,t)=>e+t.numDataCodewords),0),a=new Uint8ClampedArray(o);let i=0;for(const l of n){const e=ie(l.codewords,l.codewords.length-l.numDataCodewords);if(null===e)return null;for(let t=0;t<l.numDataCodewords;t++)a[i++]=e[t]}try{return function(e,t,r){let n=-1;const o=new le(e),a=t<=9?0:t<=26?1:2,i={data:"",bytes:[],chunks:[],version:t,errorCorrectionLevel:r};for(;o.available()>=4;){const e=o.readBits(4);if(e===c.Terminator)return i;if(e===c.ECI)n=0===o.readBits(1)?o.readBits(7):0===o.readBits(1)?o.readBits(14):0===o.readBits(1)?o.readBits(21):-1;else if(e===c.Numeric){const e=pe(o,a);i.data+=e.data,i.chunks.push({mode:c.Numeric,data:e.data,bytes:e.bytes}),i.bytes.push(...e.bytes)}else if(e===c.Alphanumeric){const e=me(o,a);i.data+=e.data,i.chunks.push({mode:c.Alphanumeric,data:e.data,bytes:e.bytes}),i.bytes.push(...e.bytes)}else if(e===c.StructuredAppend){const e={symbols:[o.readBits(4),o.readBits(4)],parity:o.readBits(8)};i.chunks.push(Object.assign({mode:c.StructuredAppend},e))}else if(e===c.Byte){const e=ge(o,a,n);i.data+=e.data,i.chunks.push({encoding:n,mode:c.Byte,data:e.data,bytes:e.bytes}),i.bytes.push(...e.bytes)}else if(e===c.Kanji){const e=ve(o,a);i.data+=e.data,i.chunks.push({mode:c.Kanji,data:e.data,bytes:e.bytes}),i.bytes.push(...e.bytes)}}return 0===o.available()||0===o.readBits(o.available())?i:null}(a,t.versionNumber,r.errorCorrectionLevel)}catch(s){return null}}function Ae(e){const t=Se(e);if(null!==t)return t;for(let r=0;r<e.width;r++)for(let t=r+1;t<e.height;t++)e.get(r,t)!==e.get(t,r)&&(e.set(r,t,!e.get(r,t)),e.set(t,r,!e.get(t,r)));return Se(e)}function ke(e,t,r){return e<t?t:e>r?r:e}class Ce{constructor(e,t,r){this.width=e;const n=e*t;if(r&&r.length!==n)throw new Error("wrong buffer size");this.data=r||new Uint8ClampedArray(n)}get(e,t){return this.data[t*this.width+e]}set(e,t,r){this.data[t*this.width+e]=r}}function Ie(e){const t=q(e);if(null===t)return null;for(const r of t){const t=re(e,r),n=Ae(t.matrix);if(null!==n){const e=r.dimension;return Object.assign(Object.assign({},n),{location:{topLeft:t.mappingFunction(0,0),topRight:t.mappingFunction(e,0),bottomLeft:t.mappingFunction(0,e),bottomRight:t.mappingFunction(e,e),topLeftFinder:r.topLeft,topRightFinder:r.topRight,bottomLeftFinder:r.bottomLeft,bottomRightAlignment:n.version>1?r.alignmentPattern:null}})}}return null}function Ee(e){e.onload=null,e.onerror=null}class De{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.options=e}setOptions(e){return this.options=Object.assign(Object.assign({},this.options),e),this}decode(e,t,r){const{options:n}=this,{canOverwriteImage:o,greyScaleWeights:a,inversionAttempts:i="attemptBoth"}=n,s="onlyInvert"===i||"invertFirst"===i,l=s||"attemptBoth"===i,{binarized:c,inverted:u}=function(e,t,r,n){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{red:.2126,green:.7152,blue:.0722,useIntegerApproximation:!1},a=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];const i=t*r;if(e.length!==4*i)throw new Error("malformed data passed to binarizer");let s,l=0;a&&(s=new Uint8ClampedArray(e.buffer,l,i),l+=i);const c=new Ce(t,r,s);for(let v=0;v<r;v++)for(let r=0;r<t;r++){const n=4*(v*t+r),a=e[n],i=e[n+1],s=e[n+2],l=o.red*a+o.green*i+o.blue*s;c.set(r,v,o.useIntegerApproximation?l+128>>8:l)}const u=Math.ceil(t/8),d=Math.ceil(r/8),f=u*d;let p;a&&(p=new Uint8ClampedArray(e.buffer,l,f),l+=f);const h=new Ce(u,d,p);for(let v=0;v<d;v++)for(let e=0;e<u;e++){let t=0,r=1/0,n=0;for(let a=0;a<8;a++)for(let o=0;o<8;o++){const i=c.get(8*e+o,8*v+a);t+=i,r=Math.min(r,i),n=Math.max(n,i)}let o=t/Math.pow(8,2);if(n-r<=24&&(o=r/2,v>0&&e>0)){const t=(h.get(e,v-1)+2*h.get(e-1,v)+h.get(e-1,v-1))/4;r<t&&(o=t)}h.set(e,v,o)}let m,g;if(a){const r=new Uint8ClampedArray(e.buffer,l,i);l+=i,m=new ee(r,t)}else m=ee.createEmpty(t,r);if(n)if(a){const r=new Uint8ClampedArray(e.buffer,l,i);g=new ee(r,t)}else g=ee.createEmpty(t,r);for(let v=0;v<d;v++)for(let e=0;e<u;e++){const t=ke(e,2,u-3),r=ke(v,2,d-3);let o=0;for(let e=-2;e<=2;e++)for(let n=-2;n<=2;n++)o+=h.get(t+e,r+n);const a=o/25;for(let i=0;i<8;i++)for(let t=0;t<8;t++){const r=8*e+i,o=8*v+t,s=c.get(r,o);m.set(r,o,s<=a),n&&g.set(r,o,!(s<=a))}}return n?{binarized:m,inverted:g}:{binarized:m}}(e,t,r,l,a,o);let d=Ie(s?u:c);return null===d||"attemptBoth"!==n.inversionAttempts&&"invertFirst"!==n.inversionAttempts||(d=Ie(s?c:u)),d}scan(e){return new Promise(((t,r)=>{const n=new Image;n.crossOrigin="anonymous",n.onload=()=>{Ee(n);const e=n.width,o=n.height,a=document.createElement("canvas"),i=a.getContext("2d");if(null===i)return r(new Error("browser does not support canvas.getContext('2d')"));a.width=e,a.height=o,i.drawImage(n,0,0);const{data:s}=i.getImageData(0,0,e,o),l=this.decode(s,e,o);return null!==l?t(l):r(new Error("failed to decode image"))},n.onerror=()=>{Ee(n),r(new Error(`failed to load image: ${e}`))},n.src=e}))}}var Te=r(93325);const Oe="friend";const Me=i,Pe=e=>{const t=Object.entries(Me).find((t=>{let[r,n]=t;return n===e}));return t?parseInt(t[0],10):null},je=e=>{try{const t=new URLSearchParams(e),r=t.get("sk");if(!r)return null;const n=r.replace(/ /g,"+"),o=Te.hp.from(n,"base64"),a=Te.hp.from(o,"hex"),i=parseInt(a.slice(0,1).toString("hex"),16);let s,l,c,u;return(e=>e-5>=0)(i)?(s=a.slice(1,17).toString("hex"),l=a.slice(17,21).toString("hex"),c=a.slice(21,23).toString("hex"),u=a.slice(23).toString("hex")):(s=a.slice(1,17).toString("hex"),l=a.slice(17,81).toString("hex"),c=a.slice(81,83).toString("hex"),u=a.slice(83,99).toString("hex")),u=u.replace(/(\w{8})(\w{4})(\w{4})(\w{4})(\w{12})/,"$1-$2-$3-$4-$5"),{secretKey:s,keyIndex:c,sesame2PublicKey:l,keyLevel:parseInt(t.get("l")),deviceModel:Me[i],deviceName:t.get("n"),deviceUUID:u.toUpperCase()}}catch(t){return console.error("parseDeviceKeyFromUrl",t),null}};function Re(e){return e.replace(/(\w{8})(\w{4})(\w{4})(\w{4})(\w{12})/,"$1-$2-$3-$4-$5")}const _e=()=>window.crypto&&window.crypto.randomUUID?window.crypto.randomUUID().toUpperCase():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})).toUpperCase(),Ne=()=>_e().replace(/-/g,"");const Le=e=>{if("1"!==new URLSearchParams(window.location.search).get("appHome"))try{const t=document.createElement("iframe");t.style.display="none",t.src=e,document.body.appendChild(t),setTimeout((()=>{t.parentNode&&document.body.removeChild(t)}),100)}catch(o6){}else window.dispatchEvent(new CustomEvent("app-scheme",{detail:e}))},Ue={timestampToTime:function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!e)return"";try{let r;r=10===e.toString().length?new Date(1e3*parseInt(e)):new Date(parseInt(e));let n=r.getFullYear(),o=("0"+(r.getMonth()+1)).slice(-2),a=("0"+r.getDate()).slice(-2),i=r.getHours(),s=i<12?"AM":"PM";i%=12,i=i||12;let l=("0"+r.getMinutes()).slice(-2),c=("0"+r.getSeconds()).slice(-2);return t?`${n}\u5e74${o}\u6708${a}\u65e5 ${i}:${l}:${c} ${s}`:`${s} ${i}:${l}:${c}`}catch(o6){}return""},readUserQrcode:(e,t)=>{e&&(new De).scan(URL.createObjectURL(e)).then((e=>{const r=new URL(e.data),n=new URLSearchParams(r.search),o=n.get("t"),a=n.get(Oe);o===Oe&&a?t(null,{friendID:a.toLowerCase()}):t(null)})).catch((e=>{console.error("\u6570\u636edata",e),t(null)}))},readQrcode:(e,t)=>{e&&(new De).scan(URL.createObjectURL(e)).then((e=>{const r=je(e.data);t(r?null:new Error("parse failed"),r)})).catch((e=>{console.error("readQrcode",e),t(e)}))},readQrcodeUrl:(e,t)=>{e&&(new De).scan(URL.createObjectURL(e)).then((e=>{t(null,e.data)})).catch((e=>{console.error("readQrcodeUrl",e),t(e)}))},parseDeviceKeyFromUrl:je,writeQrcode:(e,t)=>{if(!e)return t(null);const r=new H;r.setErrorCorrectionLevel(E.L),r.write(e).make(),t(r)},hasListObj:(e,t,r)=>e.some((e=>t.some((t=>t[r]===e[r])))),hasObj:(e,t,r)=>e.some((e=>e[r]===t[r])),hexStringToUint8Array:function(e){if(void 0===e||null===e)return[];if(e.length%2!==0)throw new Error("Invalid hexString");const t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2){const n=parseInt(e.substring(r,r+2),16);t[r/2]=n}return t},stringToUint8Array:function(e){return(new TextEncoder).encode(e)},insertUUIDIsolationCharacter:Re,formatCardID:function(e){if("string"!==typeof e||""===e.trim())return"";let t=e.toLowerCase();if(t.length<32){let e=32-t.length;for(let r=0;r<e;r++)t+="f"}return t=Ue.insertUUIDIsolationCharacter(t),t},formatPasscodeID:e=>Array.from(e.toString()).map((e=>("0"+parseInt(e,10).toString(16)).slice(-2))).join("").toUpperCase(),uuidBuffer:function(e){const t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"000c")+e.replace(/-/g,"");return Te.hp.from(t,"hex").toString("base64")},isUUIDV4:e=>{if(!e)return!1;let t=e;if("string"===typeof t&&(t=Te.hp.from(e.replace(/-/g,""),"hex")),16!==t.length)return!1;const r=240&t[6],n=192&t[8];return 64===r&&128===n},buildPayloadModeSet:e=>{let{uuid:t,type:r,insertOn:n}=e;const o={[s.card]:{cmdCode:l.cmdCode.SSM_OS3_CARD_MODE_SET},[s.password]:{cmdCode:l.cmdCode.SSM_OS3_PASSCODE_MODE_SET}}[r];if(!o)return null;let a=new Uint8Array(2);return a[0]=o.cmdCode,a[1]=n?l.cardMode.CARD_ENROLL:l.cardMode.CARD_VERIFY,{topic:`stp${t}cmd`,payload:Te.hp.from(a).toString("base64"),op:o.cmdCode}},buildPayloadCardAdd:e=>{let{cardID:t}=e;if(!t)return"";let r=t.length/2;const n=Ne(),o=n.length/2;let a=new Uint8Array(41);a[0]=l.cmdCode.SSM_OS3_CARD_ADD,a[1]=240,a[2]=128,a[3]=r;const i=Ue.hexStringToUint8Array(t),s=new Uint8Array(16);return s.set(i),a.set(s,4),a[20]=o,a.set(Ue.hexStringToUint8Array(n),21),a},parseHexStrToCardInfo:e=>{try{const t=Ue.hexStringToUint8Array(e);let r=1;const n={};n.cardType=t[r],r+=1,n.id_len=t[r],r+=1,n.cardID=Te.hp.from(t.slice(r,r+n.id_len)).toString("hex").toUpperCase(),r+=n.id_len,n.nameUUIDLen=t[r],r+=1;const o=t.slice(r,r+n.nameUUIDLen);return n.nameUUID=o?Re(Te.hp.from(o).toString("hex")):"",n}catch(t){}return null},parseHexStrToPasscodeInfo:e=>{try{const t=Ue.hexStringToUint8Array(e);let r=2;const n={};n.id_len=t[r],r++,n.passwordID=Te.hp.from(t.slice(r,r+n.id_len)).toString("hex").toUpperCase(),r+=n.id_len,r+=16-n.id_len,n.nameUUIDLen=t[r],r++;const o=t.slice(r,r+n.nameUUIDLen);return n.nameUUID=o?Re(Te.hp.from(o).toString("hex")):"",n}catch(t){return null}},buildPayloadPasscodeAdd:e=>{let{password:t}=e;if(!t)return"";let r=t.length/2;const n=Ne(),o=n.length/2;let a=new Uint8Array(41);a[0]=l.cmdCode.SSM_OS3_PASSCODE_ADD,a[1]=240,a[2]=0,a[3]=r;const i=Ue.hexStringToUint8Array(t),s=new Uint8Array(16);return s.set(i),a.set(s,4),a[20]=o,a.set(Ue.hexStringToUint8Array(n),21),a},convertHexPairsToDecimal:function(e){let t="";e.length%2!==0&&(e="0"+e);for(let r=0;r<e.length;r+=2){const n=e.substring(r,r+2);t+=parseInt(n,16)}return t},generateUserQRCodeBySubUUID:e=>e?`ssm://UI/?t=${Oe}&${Oe}=${e.toUpperCase()}`:"",triggerScheme:Le,triggerBridge:e=>"1"===new URLSearchParams(window.location.search).get("appHome")?(window.dispatchEvent(new CustomEvent("app-command",{detail:e})),!0):window.webkit&&window.webkit.messageHandlers&&window.webkit.messageHandlers.iOSHandler?(window.webkit.messageHandlers.iOSHandler.postMessage(e),!0):!!window.AndroidHandler&&(window.AndroidHandler.postMessage(JSON.stringify(e)),!0),openEnvSnapshot:(e,t,r)=>{const n=new URL(window.location.href);if(n.pathname="/biz/history/env-snapshot",n.searchParams.set("data",e),t){const e=`ssm://UI/webview/open?${new URLSearchParams({url:n.href})}`;Le(e)}else r({pathname:n.pathname,search:n.searchParams.toString()})},generateUUID:_e,generateNoDashUUID:Ne,buildNameUUIDMappedDataList:e=>Array.isArray(e)?e.map((e=>{var t,r;return{...e,name:null!==(t=null!==(r=e.name)&&void 0!==r?r:e.nameUUID)&&void 0!==t?t:"",nameUUID:Ne()}})):[],getProductTypeFromModelName:Pe,getMatterProductTypeFromModelName:e=>{const t=Pe(e);if(null===t)return null;return{1:255,2:255,3:255,4:255,5:0,6:0,7:0,8:255,9:255,10:255,11:255,13:255,14:255,15:255,16:0,17:1,18:255,19:255,20:0,21:0,22:255,23:255,24:255,25:255,26:255,27:255,28:255,30:255,31:255,32:0,33:0,34:0,35:1}[t]},extractCardIDsFromBase64:e=>{const t=Te.hp.from(e,"base64");let r=1;const n=[];for(;r<t.length;){const e=t[r];if(r+=1,r+e>t.length){console.error(`Buffer overflow detected when reading card ID at offset ${r}`);break}const o=t.slice(r,r+e);r+=e;const a=o.toString("hex");let i=a;32===a.length&&(i=`${a.substring(0,8)}${a.substring(8,12)}${a.substring(12,16)}${a.substring(16,20)}${a.substring(20)}`),n.push({cardID:i})}return n.map((e=>e.cardID))},hub3TopicId:e=>{const t=String(e||"");return t.toUpperCase().startsWith("00000000-055A-FD81-0D00-")?t.split("-").pop():t}};var Be,Fe=r(34691),ze=r(50847),We=r.n(ze),He={version:"0.20.3"},Ye=1200,Ve=1252,Ge=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4],Ze={0:1252,1:65001,2:65001,77:1e4,128:932,129:949,130:1361,134:936,136:950,161:1253,162:1254,163:1258,177:1255,178:1256,186:1257,204:1251,222:874,238:1250,255:1252,69:6969},Qe=function(e){-1!=Ge.indexOf(e)&&(Ve=Ze[0]=e)};var Ke=function(e){Ye=e,Qe(e)};function Xe(){Ke(1200),Qe(1252)}function Je(e){for(var t=[],r=0,n=e.length;r<n;++r)t[r]=e.charCodeAt(r);return t}function $e(e){for(var t=[],r=0;r<e.length>>1;++r)t[r]=String.fromCharCode(e.charCodeAt(2*r)+(e.charCodeAt(2*r+1)<<8));return t.join("")}function qe(e){for(var t=[],r=0;r<e.length>>1;++r)t[r]=String.fromCharCode(e.charCodeAt(2*r+1)+(e.charCodeAt(2*r)<<8));return t.join("")}var et=function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1);return 255==t&&254==r?$e(e.slice(2)):254==t&&255==r?qe(e.slice(2)):65279==t?e.slice(1):e},tt=function(e){return String.fromCharCode(e)},rt=function(e){return String.fromCharCode(e)};var nt=null,ot="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function at(e){for(var t="",r=0,n=0,o=0,a=0,i=0,s=0,l=0,c=0;c<e.length;)a=(r=e.charCodeAt(c++))>>2,i=(3&r)<<4|(n=e.charCodeAt(c++))>>4,s=(15&n)<<2|(o=e.charCodeAt(c++))>>6,l=63&o,isNaN(n)?s=l=64:isNaN(o)&&(l=64),t+=ot.charAt(a)+ot.charAt(i)+ot.charAt(s)+ot.charAt(l);return t}function it(e){var t="",r=0,n=0,o=0,a=0,i=0,s=0;"data:"==e.slice(0,5)&&((l=e.slice(0,1024).indexOf(";base64,"))>-1&&(e=e.slice(l+8)));e=e.replace(/[^\w\+\/\=]/g,"");for(var l=0;l<e.length;)r=ot.indexOf(e.charAt(l++))<<2|(a=ot.indexOf(e.charAt(l++)))>>4,t+=String.fromCharCode(r),n=(15&a)<<4|(i=ot.indexOf(e.charAt(l++)))>>2,64!==i&&(t+=String.fromCharCode(n)),o=(3&i)<<6|(s=ot.indexOf(e.charAt(l++))),64!==s&&(t+=String.fromCharCode(o));return t}var st=function(){return"undefined"!==typeof Buffer&&"undefined"!==typeof process&&"undefined"!==typeof process.versions&&!!process.versions.node}(),lt=function(){if("undefined"!==typeof Buffer){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch(o6){e=!0}return e?function(e,t){return t?new Buffer(e,t):new Buffer(e)}:Buffer.from.bind(Buffer)}return function(){}}(),ct=function(){if("undefined"===typeof Buffer)return!1;var e=lt([65,0]);return!!e&&1==e.toString("utf16le").length}();function ut(e){return st?Buffer.alloc?Buffer.alloc(e):new Buffer(e):"undefined"!=typeof Uint8Array?new Uint8Array(e):new Array(e)}function dt(e){return st?Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e):"undefined"!=typeof Uint8Array?new Uint8Array(e):new Array(e)}var ft=function(e){return st?lt(e,"binary"):e.split("").map((function(e){return 255&e.charCodeAt(0)}))};function pt(e){if("undefined"===typeof ArrayBuffer)return ft(e);for(var t=new ArrayBuffer(e.length),r=new Uint8Array(t),n=0;n!=e.length;++n)r[n]=255&e.charCodeAt(n);return t}function ht(e){if(Array.isArray(e))return e.map((function(e){return String.fromCharCode(e)})).join("");for(var t=[],r=0;r<e.length;++r)t[r]=String.fromCharCode(e[r]);return t.join("")}function mt(e){if("undefined"==typeof ArrayBuffer)throw new Error("Unsupported");if(e instanceof ArrayBuffer)return mt(new Uint8Array(e));for(var t=new Array(e.length),r=0;r<e.length;++r)t[r]=e[r];return t}var gt=st?function(e){return Buffer.concat(e.map((function(e){return Buffer.isBuffer(e)?e:lt(e)})))}:function(e){if("undefined"!==typeof Uint8Array){var t=0,r=0;for(t=0;t<e.length;++t)r+=e[t].length;var n=new Uint8Array(r),o=0;for(t=0,r=0;t<e.length;r+=o,++t)o=e[t].length,e[t]instanceof Uint8Array?n.set(e[t],r):"string"==typeof e[t]?n.set(new Uint8Array(ft(e[t])),r):n.set(new Uint8Array(e[t]),r);return n}return[].concat.apply([],e.map((function(e){return Array.isArray(e)?e:[].slice.call(e)})))};var vt=/\u0000/g,yt=/[\u0001-\u0006]/g;function bt(e){for(var t="",r=e.length-1;r>=0;)t+=e.charAt(r--);return t}function wt(e,t){var r=""+e;return r.length>=t?r:Mr("0",t-r.length)+r}function xt(e,t){var r=""+e;return r.length>=t?r:Mr(" ",t-r.length)+r}function St(e,t){var r=""+e;return r.length>=t?r:r+Mr(" ",t-r.length)}var At=Math.pow(2,32);function kt(e,t){return e>At||e<-At?function(e,t){var r=""+Math.round(e);return r.length>=t?r:Mr("0",t-r.length)+r}(e,t):function(e,t){var r=""+e;return r.length>=t?r:Mr("0",t-r.length)+r}(Math.round(e),t)}function Ct(e,t){return t=t||0,e.length>=7+t&&103===(32|e.charCodeAt(t))&&101===(32|e.charCodeAt(t+1))&&110===(32|e.charCodeAt(t+2))&&101===(32|e.charCodeAt(t+3))&&114===(32|e.charCodeAt(t+4))&&97===(32|e.charCodeAt(t+5))&&108===(32|e.charCodeAt(t+6))}var It=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]],Et=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];var Dt={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"\u4e0a\u5348/\u4e0b\u5348 "hh"\u6642"mm"\u5206"ss"\u79d2 "'},Tt={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0},Ot={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};function Mt(e,t,r){for(var n=e<0?-1:1,o=e*n,a=0,i=1,s=0,l=1,c=0,u=0,d=Math.floor(o);c<t&&(s=(d=Math.floor(o))*i+a,u=d*c+l,!(o-d<5e-8));)o=1/(o-d),a=i,i=s,l=c,c=u;if(u>t&&(c>t?(u=l,s=a):(u=c,s=i)),!r)return[0,n*s,u];var f=Math.floor(n*s/u);return[f,n*s-f*u,u]}function Pt(e,t,r){if(e>2958465||e<0)return null;var n=0|(e=function(e){var t=e.toPrecision(16);if(t.indexOf("e")>-1){var r=t.slice(0,t.indexOf("e"));return(r=r.indexOf(".")>-1?r.slice(0,"0."==r.slice(0,2)?17:16):r.slice(0,15)+Mr("0",r.length-15))+t.slice(t.indexOf("e"))}var n=t.indexOf(".")>-1?t.slice(0,"0."==t.slice(0,2)?17:16):t.slice(0,15)+Mr("0",t.length-15);return Number(n)}(e)),o=Math.floor(86400*(e-n)),a=0,i=[],s={D:n,T:o,u:86400*(e-n)-o,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(s.u)<1e-6&&(s.u=0),t&&t.date1904&&(n+=1462),s.u>.9999&&(s.u=0,86400==++o&&(s.T=o=0,++n,++s.D)),60===n)i=r?[1317,10,29]:[1900,2,29],a=3;else if(0===n)i=r?[1317,8,29]:[1900,1,0],a=6;else{n>60&&--n;var l=new Date(1900,0,1);l.setDate(l.getDate()+n-1),i=[l.getFullYear(),l.getMonth()+1,l.getDate()],a=l.getDay(),n<60&&(a=(a+6)%7),r&&(a=function(e,t){t[0]-=581;var r=e.getDay();e<60&&(r=(r+6)%7);return r}(l,i))}return s.y=i[0],s.m=i[1],s.d=i[2],s.S=o%60,o=Math.floor(o/60),s.M=o%60,o=Math.floor(o/60),s.H=o,s.q=a,s}function jt(e){return-1==e.indexOf(".")?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function Rt(e){if(!isFinite(e))return isNaN(e)?"#NUM!":"#DIV/0!";var t,r=Math.floor(Math.log(Math.abs(e))*Math.LOG10E);return t=r>=-4&&r<=-1?e.toPrecision(10+r):Math.abs(r)<=9?function(e){var t=e<0?12:11,r=jt(e.toFixed(12));return r.length<=t||(r=e.toPrecision(10)).length<=t?r:e.toExponential(5)}(e):10===r?e.toFixed(10).substr(0,12):function(e){var t=jt(e.toFixed(11));return t.length>(e<0?12:11)||"0"===t||"-0"===t?e.toPrecision(6):t}(e),jt(function(e){return-1==e.indexOf("E")?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}(t.toUpperCase()))}function _t(e,t){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(0|e)===e?e.toString(10):Rt(e);case"undefined":return"";case"object":if(null==e)return"";if(e instanceof Date)return rr(14,Sr(e,t&&t.date1904),t)}throw new Error("unsupported value in General format: "+e)}function Nt(e,t,r,n){var o,a="",i=0,s=0,l=r.y,c=0;switch(e){case 98:l=r.y+543;case 121:switch(t.length){case 1:case 2:o=l%100,c=2;break;default:o=l%1e4,c=4}break;case 109:switch(t.length){case 1:case 2:o=r.m,c=t.length;break;case 3:return Et[r.m-1][1];case 5:return Et[r.m-1][0];default:return Et[r.m-1][2]}break;case 100:switch(t.length){case 1:case 2:o=r.d,c=t.length;break;case 3:return It[r.q][0];default:return It[r.q][1]}break;case 104:switch(t.length){case 1:case 2:o=1+(r.H+11)%12,c=t.length;break;default:throw"bad hour format: "+t}break;case 72:switch(t.length){case 1:case 2:o=r.H,c=t.length;break;default:throw"bad hour format: "+t}break;case 77:switch(t.length){case 1:case 2:o=r.M,c=t.length;break;default:throw"bad minute format: "+t}break;case 115:if("s"!=t&&"ss"!=t&&".0"!=t&&".00"!=t&&".000"!=t)throw"bad second format: "+t;return 0!==r.u||"s"!=t&&"ss"!=t?(s=n>=2?3===n?1e3:100:1===n?10:1,(i=Math.round(s*(r.S+r.u)))>=60*s&&(i=0),"s"===t?0===i?"0":""+i/s:(a=wt(i,2+n),"ss"===t?a.substr(0,2):"."+a.substr(2,t.length-1))):wt(r.S,t.length);case 90:switch(t){case"[h]":case"[hh]":o=24*r.D+r.H;break;case"[m]":case"[mm]":o=60*(24*r.D+r.H)+r.M;break;case"[s]":case"[ss]":o=60*(60*(24*r.D+r.H)+r.M)+(0==n?Math.round(r.S+r.u):r.S);break;default:throw"bad abstime format: "+t}c=3===t.length?1:2;break;case 101:o=l,c=1}return c>0?wt(o,c):""}function Lt(e){if(e.length<=3)return e;for(var t=e.length%3,r=e.substr(0,t);t!=e.length;t+=3)r+=(r.length>0?",":"")+e.substr(t,3);return r}var Ut=/%/g;function Bt(e,t){var r,n=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(0==t)return"0.0E+0";if(t<0)return"-"+Bt(e,-t);var o=e.indexOf(".");-1===o&&(o=e.indexOf("E"));var a=Math.floor(Math.log(t)*Math.LOG10E)%o;if(a<0&&(a+=o),-1===(r=(t/Math.pow(10,a)).toPrecision(n+1+(o+a)%o)).indexOf("e")){var i=Math.floor(Math.log(t)*Math.LOG10E);for(-1===r.indexOf(".")?r=r.charAt(0)+"."+r.substr(1)+"E+"+(i-r.length+a):r+="E+"+(i-a);"0."===r.substr(0,2);)r=(r=r.charAt(0)+r.substr(2,o)+"."+r.substr(2+o)).replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.");r=r.replace(/\+-/,"-")}r=r.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,(function(e,t,r,n){return t+r+n.substr(0,(o+a)%o)+"."+n.substr(a)+"E"}))}else r=t.toExponential(n);return e.match(/E\+00$/)&&r.match(/e[+-]\d$/)&&(r=r.substr(0,r.length-1)+"0"+r.charAt(r.length-1)),e.match(/E\-/)&&r.match(/e\+/)&&(r=r.replace(/e\+/,"e")),r.replace("e","E")}var Ft=/# (\?+)( ?)\/( ?)(\d+)/;var zt=/^#*0*\.([0#]+)/,Wt=/\)[^)]*[0#]/,Ht=/\(###\) ###\\?-####/;function Yt(e){for(var t,r="",n=0;n!=e.length;++n)switch(t=e.charCodeAt(n)){case 35:break;case 63:r+=" ";break;case 48:r+="0";break;default:r+=String.fromCharCode(t)}return r}function Vt(e,t){var r=Math.pow(10,t);return""+Math.round(e*r)/r}function Gt(e,t){var r=e-Math.floor(e),n=Math.pow(10,t);return t<(""+Math.round(r*n)).length?0:Math.round(r*n)}function Zt(e,t,r){if(40===e.charCodeAt(0)&&!t.match(Wt)){var n=t.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return r>=0?Zt("n",n,r):"("+Zt("n",n,-r)+")"}if(44===t.charCodeAt(t.length-1))return function(e,t,r){for(var n=t.length-1;44===t.charCodeAt(n-1);)--n;return Xt(e,t.substr(0,n),r/Math.pow(10,3*(t.length-n)))}(e,t,r);if(-1!==t.indexOf("%"))return function(e,t,r){var n=t.replace(Ut,""),o=t.length-n.length;return Xt(e,n,r*Math.pow(10,2*o))+Mr("%",o)}(e,t,r);if(-1!==t.indexOf("E"))return Bt(t,r);if(36===t.charCodeAt(0))return"$"+Zt(e,t.substr(" "==t.charAt(1)?2:1),r);var o,a,i,s,l=Math.abs(r),c=r<0?"-":"";if(t.match(/^00+$/))return c+kt(l,t.length);if(t.match(/^[#?]+$/))return"0"===(o=kt(r,0))&&(o=""),o.length>t.length?o:Yt(t.substr(0,t.length-o.length))+o;if(a=t.match(Ft))return function(e,t,r){var n=parseInt(e[4],10),o=Math.round(t*n),a=Math.floor(o/n),i=o-a*n,s=n;return r+(0===a?"":""+a)+" "+(0===i?Mr(" ",e[1].length+1+e[4].length):xt(i,e[1].length)+e[2]+"/"+e[3]+wt(s,e[4].length))}(a,l,c);if(t.match(/^#+0+$/))return c+kt(l,t.length-t.indexOf("0"));if(a=t.match(zt))return o=Vt(r,a[1].length).replace(/^([^\.]+)$/,"$1."+Yt(a[1])).replace(/\.$/,"."+Yt(a[1])).replace(/\.(\d*)$/,(function(e,t){return"."+t+Mr("0",Yt(a[1]).length-t.length)})),-1!==t.indexOf("0.")?o:o.replace(/^0\./,".");if(t=t.replace(/^#+([0.])/,"$1"),a=t.match(/^(0*)\.(#*)$/))return c+Vt(l,a[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,a[1].length?"0.":".");if(a=t.match(/^#{1,3},##0(\.?)$/))return c+Lt(kt(l,0));if(a=t.match(/^#,##0\.([#0]*0)$/))return r<0?"-"+Zt(e,t,-r):Lt(""+(Math.floor(r)+function(e,t){return t<(""+Math.round((e-Math.floor(e))*Math.pow(10,t))).length?1:0}(r,a[1].length)))+"."+wt(Gt(r,a[1].length),a[1].length);if(a=t.match(/^#,#*,#0/))return Zt(e,t.replace(/^#,#*,/,""),r);if(a=t.match(/^([0#]+)(\\?-([0#]+))+$/))return o=bt(Zt(e,t.replace(/[\\-]/g,""),r)),i=0,bt(bt(t.replace(/\\/g,"")).replace(/[0#]/g,(function(e){return i<o.length?o.charAt(i++):"0"===e?"0":""})));if(t.match(Ht))return"("+(o=Zt(e,"##########",r)).substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6);var u="";if(a=t.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))return i=Math.min(a[4].length,7),s=Mt(l,Math.pow(10,i)-1,!1),o=""+c," "==(u=Xt("n",a[1],s[1])).charAt(u.length-1)&&(u=u.substr(0,u.length-1)+"0"),o+=u+a[2]+"/"+a[3],(u=St(s[2],i)).length<a[4].length&&(u=Yt(a[4].substr(a[4].length-u.length))+u),o+=u;if(a=t.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))return i=Math.min(Math.max(a[1].length,a[4].length),7),c+((s=Mt(l,Math.pow(10,i)-1,!0))[0]||(s[1]?"":"0"))+" "+(s[1]?xt(s[1],i)+a[2]+"/"+a[3]+St(s[2],i):Mr(" ",2*i+1+a[2].length+a[3].length));if(a=t.match(/^[#0?]+$/))return o=kt(r,0),t.length<=o.length?o:Yt(t.substr(0,t.length-o.length))+o;if(a=t.match(/^([#0?]+)\.([#0]+)$/)){o=""+r.toFixed(Math.min(a[2].length,10)).replace(/([^0])0+$/,"$1"),i=o.indexOf(".");var d=t.indexOf(".")-i,f=t.length-o.length-d;return Yt(t.substr(0,d)+o+t.substr(t.length-f))}if(a=t.match(/^00,000\.([#0]*0)$/))return i=Gt(r,a[1].length),r<0?"-"+Zt(e,t,-r):Lt(function(e){return e<2147483647&&e>-2147483648?""+(e>=0?0|e:e-1|0):""+Math.floor(e)}(r)).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,(function(e){return"00,"+(e.length<3?wt(0,3-e.length):"")+e}))+"."+wt(i,a[1].length);switch(t){case"###,##0.00":return Zt(e,"#,##0.00",r);case"###,###":case"##,###":case"#,###":var p=Lt(kt(l,0));return"0"!==p?c+p:"";case"###,###.00":return Zt(e,"###,##0.00",r).replace(/^0\./,".");case"#,###.00":return Zt(e,"#,##0.00",r).replace(/^0\./,".")}throw new Error("unsupported format |"+t+"|")}function Qt(e,t){var r,n=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(0==t)return"0.0E+0";if(t<0)return"-"+Qt(e,-t);var o=e.indexOf(".");-1===o&&(o=e.indexOf("E"));var a=Math.floor(Math.log(t)*Math.LOG10E)%o;if(a<0&&(a+=o),!(r=(t/Math.pow(10,a)).toPrecision(n+1+(o+a)%o)).match(/[Ee]/)){var i=Math.floor(Math.log(t)*Math.LOG10E);-1===r.indexOf(".")?r=r.charAt(0)+"."+r.substr(1)+"E+"+(i-r.length+a):r+="E+"+(i-a),r=r.replace(/\+-/,"-")}r=r.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,(function(e,t,r,n){return t+r+n.substr(0,(o+a)%o)+"."+n.substr(a)+"E"}))}else r=t.toExponential(n);return e.match(/E\+00$/)&&r.match(/e[+-]\d$/)&&(r=r.substr(0,r.length-1)+"0"+r.charAt(r.length-1)),e.match(/E\-/)&&r.match(/e\+/)&&(r=r.replace(/e\+/,"e")),r.replace("e","E")}function Kt(e,t,r){if(40===e.charCodeAt(0)&&!t.match(Wt)){var n=t.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return r>=0?Kt("n",n,r):"("+Kt("n",n,-r)+")"}if(44===t.charCodeAt(t.length-1))return function(e,t,r){for(var n=t.length-1;44===t.charCodeAt(n-1);)--n;return Xt(e,t.substr(0,n),r/Math.pow(10,3*(t.length-n)))}(e,t,r);if(-1!==t.indexOf("%"))return function(e,t,r){var n=t.replace(Ut,""),o=t.length-n.length;return Xt(e,n,r*Math.pow(10,2*o))+Mr("%",o)}(e,t,r);if(-1!==t.indexOf("E"))return Qt(t,r);if(36===t.charCodeAt(0))return"$"+Kt(e,t.substr(" "==t.charAt(1)?2:1),r);var o,a,i,s,l=Math.abs(r),c=r<0?"-":"";if(t.match(/^00+$/))return c+wt(l,t.length);if(t.match(/^[#?]+$/))return o=""+r,0===r&&(o=""),o.length>t.length?o:Yt(t.substr(0,t.length-o.length))+o;if(a=t.match(Ft))return function(e,t,r){return r+(0===t?"":""+t)+Mr(" ",e[1].length+2+e[4].length)}(a,l,c);if(t.match(/^#+0+$/))return c+wt(l,t.length-t.indexOf("0"));if(a=t.match(zt))return o=(o=(""+r).replace(/^([^\.]+)$/,"$1."+Yt(a[1])).replace(/\.$/,"."+Yt(a[1]))).replace(/\.(\d*)$/,(function(e,t){return"."+t+Mr("0",Yt(a[1]).length-t.length)})),-1!==t.indexOf("0.")?o:o.replace(/^0\./,".");if(t=t.replace(/^#+([0.])/,"$1"),a=t.match(/^(0*)\.(#*)$/))return c+(""+l).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,a[1].length?"0.":".");if(a=t.match(/^#{1,3},##0(\.?)$/))return c+Lt(""+l);if(a=t.match(/^#,##0\.([#0]*0)$/))return r<0?"-"+Kt(e,t,-r):Lt(""+r)+"."+Mr("0",a[1].length);if(a=t.match(/^#,#*,#0/))return Kt(e,t.replace(/^#,#*,/,""),r);if(a=t.match(/^([0#]+)(\\?-([0#]+))+$/))return o=bt(Kt(e,t.replace(/[\\-]/g,""),r)),i=0,bt(bt(t.replace(/\\/g,"")).replace(/[0#]/g,(function(e){return i<o.length?o.charAt(i++):"0"===e?"0":""})));if(t.match(Ht))return"("+(o=Kt(e,"##########",r)).substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6);var u="";if(a=t.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))return i=Math.min(a[4].length,7),s=Mt(l,Math.pow(10,i)-1,!1),o=""+c," "==(u=Xt("n",a[1],s[1])).charAt(u.length-1)&&(u=u.substr(0,u.length-1)+"0"),o+=u+a[2]+"/"+a[3],(u=St(s[2],i)).length<a[4].length&&(u=Yt(a[4].substr(a[4].length-u.length))+u),o+=u;if(a=t.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))return i=Math.min(Math.max(a[1].length,a[4].length),7),c+((s=Mt(l,Math.pow(10,i)-1,!0))[0]||(s[1]?"":"0"))+" "+(s[1]?xt(s[1],i)+a[2]+"/"+a[3]+St(s[2],i):Mr(" ",2*i+1+a[2].length+a[3].length));if(a=t.match(/^[#0?]+$/))return o=""+r,t.length<=o.length?o:Yt(t.substr(0,t.length-o.length))+o;if(a=t.match(/^([#0]+)\.([#0]+)$/)){o=""+r.toFixed(Math.min(a[2].length,10)).replace(/([^0])0+$/,"$1"),i=o.indexOf(".");var d=t.indexOf(".")-i,f=t.length-o.length-d;return Yt(t.substr(0,d)+o+t.substr(t.length-f))}if(a=t.match(/^00,000\.([#0]*0)$/))return r<0?"-"+Kt(e,t,-r):Lt(""+r).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,(function(e){return"00,"+(e.length<3?wt(0,3-e.length):"")+e}))+"."+wt(0,a[1].length);switch(t){case"###,###":case"##,###":case"#,###":var p=Lt(""+l);return"0"!==p?c+p:"";default:if(t.match(/\.[0#?]*$/))return Kt(e,t.slice(0,t.lastIndexOf(".")),r)+Yt(t.slice(t.lastIndexOf(".")))}throw new Error("unsupported format |"+t+"|")}function Xt(e,t,r){return(0|r)===r?Kt(e,t,r):Zt(e,t,r)}var Jt=/\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/;function $t(e){for(var t=0,r="",n="";t<e.length;)switch(r=e.charAt(t)){case"G":Ct(e,t)&&(t+=6),t++;break;case'"':for(;34!==e.charCodeAt(++t)&&t<e.length;);++t;break;case"\\":case"_":t+=2;break;case"@":++t;break;case"B":case"b":if("1"===e.charAt(t+1)||"2"===e.charAt(t+1))return!0;case"M":case"D":case"Y":case"H":case"S":case"E":case"m":case"d":case"y":case"h":case"s":case"e":case"g":return!0;case"A":case"a":case"\u4e0a":if("A/P"===e.substr(t,3).toUpperCase())return!0;if("AM/PM"===e.substr(t,5).toUpperCase())return!0;if("\u4e0a\u5348/\u4e0b\u5348"===e.substr(t,5).toUpperCase())return!0;++t;break;case"[":for(n=r;"]"!==e.charAt(t++)&&t<e.length;)n+=e.charAt(t);if(n.match(Jt))return!0;break;case".":case"0":case"#":for(;t<e.length&&("0#?.,E+-%".indexOf(r=e.charAt(++t))>-1||"\\"==r&&"-"==e.charAt(t+1)&&"0#".indexOf(e.charAt(t+2))>-1););break;case"?":for(;e.charAt(++t)===r;);break;case"*":++t," "!=e.charAt(t)&&"*"!=e.charAt(t)||++t;break;case"(":case")":++t;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(;t<e.length&&"0123456789".indexOf(e.charAt(++t))>-1;);break;default:++t}return!1}var qt=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function er(e,t){if(null==t)return!1;var r=parseFloat(t[2]);switch(t[1]){case"=":if(e==r)return!0;break;case">":if(e>r)return!0;break;case"<":if(e<r)return!0;break;case"<>":if(e!=r)return!0;break;case">=":if(e>=r)return!0;break;case"<=":if(e<=r)return!0}return!1}function tr(e,t){var r=function(e){for(var t=[],r=!1,n=0,o=0;n<e.length;++n)switch(e.charCodeAt(n)){case 34:r=!r;break;case 95:case 42:case 92:++n;break;case 59:t[t.length]=e.substr(o,n-o),o=n+1}if(t[t.length]=e.substr(o),!0===r)throw new Error("Format |"+e+"| unterminated string ");return t}(e),n=r.length,o=r[n-1].indexOf("@");if(n<4&&o>-1&&--n,r.length>4)throw new Error("cannot find right format for |"+r.join("|")+"|");if("number"!==typeof t)return[4,4===r.length||o>-1?r[r.length-1]:"@"];switch("number"!==typeof t||isFinite(t)||(t=0),r.length){case 1:r=o>-1?["General","General","General",r[0]]:[r[0],r[0],r[0],"@"];break;case 2:r=o>-1?[r[0],r[0],r[0],r[1]]:[r[0],r[1],r[0],"@"];break;case 3:r=o>-1?[r[0],r[1],r[0],r[2]]:[r[0],r[1],r[2],"@"]}var a=t>0?r[0]:t<0?r[1]:r[2];if(-1===r[0].indexOf("[")&&-1===r[1].indexOf("["))return[n,a];if(null!=r[0].match(/\[[=<>]/)||null!=r[1].match(/\[[=<>]/)){var i=r[0].match(qt),s=r[1].match(qt);return er(t,i)?[n,r[0]]:er(t,s)?[n,r[1]]:[n,r[null!=i&&null!=s?2:1]]}return[n,a]}function rr(e,t,r){null==r&&(r={});var n="";switch(typeof e){case"string":n="m/d/yy"==e&&r.dateNF?r.dateNF:e;break;case"number":null==(n=14==e&&r.dateNF?r.dateNF:(null!=r.table?r.table:Dt)[e])&&(n=r.table&&r.table[Tt[e]]||Dt[Tt[e]]),null==n&&(n=Ot[e]||"General")}if(Ct(n,0))return _t(t,r);t instanceof Date&&(t=Sr(t,r.date1904));var o=tr(n,t);if(Ct(o[1]))return _t(t,r);if(!0===t)t="TRUE";else if(!1===t)t="FALSE";else{if(""===t||null==t)return"";if(isNaN(t)&&o[1].indexOf("0")>-1)return"#NUM!";if(!isFinite(t)&&o[1].indexOf("0")>-1)return"#DIV/0!"}return function(e,t,r,n){for(var o,a,i,s=[],l="",c=0,u="",d="t",f="H";c<e.length;)switch(u=e.charAt(c)){case"G":if(!Ct(e,c))throw new Error("unrecognized character "+u+" in "+e);s[s.length]={t:"G",v:"General"},c+=7;break;case'"':for(l="";34!==(i=e.charCodeAt(++c))&&c<e.length;)l+=String.fromCharCode(i);s[s.length]={t:"t",v:l},++c;break;case"\\":var p=e.charAt(++c),h="("===p||")"===p?p:"t";s[s.length]={t:h,v:p},++c;break;case"_":s[s.length]={t:"t",v:" "},c+=2;break;case"@":s[s.length]={t:"T",v:t},++c;break;case"B":case"b":if("1"===e.charAt(c+1)||"2"===e.charAt(c+1)){if(null==o&&null==(o=Pt(t,r,"2"===e.charAt(c+1))))return"";s[s.length]={t:"X",v:e.substr(c,2)},d=u,c+=2;break}case"M":case"D":case"Y":case"H":case"S":case"E":u=u.toLowerCase();case"m":case"d":case"y":case"h":case"s":case"e":case"g":if(t<0)return"";if(null==o&&null==(o=Pt(t,r)))return"";for(l=u;++c<e.length&&e.charAt(c).toLowerCase()===u;)l+=u;"m"===u&&"h"===d.toLowerCase()&&(u="M"),"h"===u&&(u=f),s[s.length]={t:u,v:l},d=u;break;case"A":case"a":case"\u4e0a":var m={t:u,v:u};if(null==o&&(o=Pt(t,r)),"A/P"===e.substr(c,3).toUpperCase()?(null!=o&&(m.v=o.H>=12?e.charAt(c+2):u),m.t="T",f="h",c+=3):"AM/PM"===e.substr(c,5).toUpperCase()?(null!=o&&(m.v=o.H>=12?"PM":"AM"),m.t="T",c+=5,f="h"):"\u4e0a\u5348/\u4e0b\u5348"===e.substr(c,5).toUpperCase()?(null!=o&&(m.v=o.H>=12?"\u4e0b\u5348":"\u4e0a\u5348"),m.t="T",c+=5,f="h"):(m.t="t",++c),null==o&&"T"===m.t)return"";s[s.length]=m,d=u;break;case"[":for(l=u;"]"!==e.charAt(c++)&&c<e.length;)l+=e.charAt(c);if("]"!==l.slice(-1))throw'unterminated "[" block: |'+l+"|";if(l.match(Jt)){if(null==o&&null==(o=Pt(t,r)))return"";s[s.length]={t:"Z",v:l.toLowerCase()},d=l.charAt(1)}else l.indexOf("$")>-1&&(l=(l.match(/\$([^-\[\]]*)/)||[])[1]||"$",$t(e)||(s[s.length]={t:"t",v:l}));break;case".":if(null!=o){for(l=u;++c<e.length&&"0"===(u=e.charAt(c));)l+=u;s[s.length]={t:"s",v:l};break}case"0":case"#":for(l=u;++c<e.length&&"0#?.,E+-%".indexOf(u=e.charAt(c))>-1;)l+=u;s[s.length]={t:"n",v:l};break;case"?":for(l=u;e.charAt(++c)===u;)l+=u;s[s.length]={t:u,v:l},d=u;break;case"*":++c," "!=e.charAt(c)&&"*"!=e.charAt(c)||++c;break;case"(":case")":s[s.length]={t:1===n?"t":u,v:u},++c;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(l=u;c<e.length&&"0123456789".indexOf(e.charAt(++c))>-1;)l+=e.charAt(c);s[s.length]={t:"D",v:l};break;case" ":s[s.length]={t:u,v:u},++c;break;case"$":s[s.length]={t:"t",v:"$"},++c;break;default:if(-1===",$-+/():!^&'~{}<>=\u20acacfijklopqrtuvwxzP".indexOf(u))throw new Error("unrecognized character "+u+" in "+e);s[s.length]={t:"t",v:u},++c}var g,v,y=0,b=0;for(c=s.length-1,d="t";c>=0;--c)switch(s[c].t){case"h":case"H":s[c].t=f,d="h",y<1&&(y=1);break;case"s":(g=s[c].v.match(/\.0+$/))&&(b=Math.max(b,g[0].length-1),y=4),y<3&&(y=3);case"d":case"y":case"e":d=s[c].t;break;case"M":d=s[c].t,y<2&&(y=2);break;case"m":"s"===d&&(s[c].t="M",y<2&&(y=2));break;case"X":break;case"Z":y<1&&s[c].v.match(/[Hh]/)&&(y=1),y<2&&s[c].v.match(/[Mm]/)&&(y=2),y<3&&s[c].v.match(/[Ss]/)&&(y=3)}switch(y){case 0:break;case 1:case 2:case 3:o.u>=.5&&(o.u=0,++o.S),o.S>=60&&(o.S=0,++o.M),o.M>=60&&(o.M=0,++o.H),o.H>=24&&(o.H=0,++o.D,(v=Pt(o.D)).u=o.u,v.S=o.S,v.M=o.M,v.H=o.H,o=v);break;case 4:switch(b){case 1:o.u=Math.round(10*o.u)/10;break;case 2:o.u=Math.round(100*o.u)/100;break;case 3:o.u=Math.round(1e3*o.u)/1e3}o.u>=1&&(o.u=0,++o.S),o.S>=60&&(o.S=0,++o.M),o.M>=60&&(o.M=0,++o.H),o.H>=24&&(o.H=0,++o.D,(v=Pt(o.D)).u=o.u,v.S=o.S,v.M=o.M,v.H=o.H,o=v)}var w,x="";for(c=0;c<s.length;++c)switch(s[c].t){case"t":case"T":case" ":case"D":break;case"X":s[c].v="",s[c].t=";";break;case"d":case"m":case"y":case"h":case"H":case"M":case"s":case"e":case"b":case"Z":s[c].v=Nt(s[c].t.charCodeAt(0),s[c].v,o,b),s[c].t="t";break;case"n":case"?":for(w=c+1;null!=s[w]&&("?"===(u=s[w].t)||"D"===u||(" "===u||"t"===u)&&null!=s[w+1]&&("?"===s[w+1].t||"t"===s[w+1].t&&"/"===s[w+1].v)||"("===s[c].t&&(" "===u||"n"===u||")"===u)||"t"===u&&("/"===s[w].v||" "===s[w].v&&null!=s[w+1]&&"?"==s[w+1].t));)s[c].v+=s[w].v,s[w]={v:"",t:";"},++w;x+=s[c].v,c=w-1;break;case"G":s[c].t="t",s[c].v=_t(t,r)}var S,A,k="";if(x.length>0){40==x.charCodeAt(0)?(S=t<0&&45===x.charCodeAt(0)?-t:t,A=Xt("n",x,S)):(A=Xt("n",x,S=t<0&&n>1?-t:t),S<0&&s[0]&&"t"==s[0].t&&(A=A.substr(1),s[0].v="-"+s[0].v)),w=A.length-1;var C=s.length;for(c=0;c<s.length;++c)if(null!=s[c]&&"t"!=s[c].t&&s[c].v.indexOf(".")>-1){C=c;break}var I=s.length;if(C===s.length&&-1===A.indexOf("E")){for(c=s.length-1;c>=0;--c)null!=s[c]&&-1!=="n?".indexOf(s[c].t)&&(w>=s[c].v.length-1?(w-=s[c].v.length,s[c].v=A.substr(w+1,s[c].v.length)):w<0?s[c].v="":(s[c].v=A.substr(0,w+1),w=-1),s[c].t="t",I=c);w>=0&&I<s.length&&(s[I].v=A.substr(0,w+1)+s[I].v)}else if(C!==s.length&&-1===A.indexOf("E")){for(w=A.indexOf(".")-1,c=C;c>=0;--c)if(null!=s[c]&&-1!=="n?".indexOf(s[c].t)){for(a=s[c].v.indexOf(".")>-1&&c===C?s[c].v.indexOf(".")-1:s[c].v.length-1,k=s[c].v.substr(a+1);a>=0;--a)w>=0&&("0"===s[c].v.charAt(a)||"#"===s[c].v.charAt(a))&&(k=A.charAt(w--)+k);s[c].v=k,s[c].t="t",I=c}for(w>=0&&I<s.length&&(s[I].v=A.substr(0,w+1)+s[I].v),w=A.indexOf(".")+1,c=C;c<s.length;++c)if(null!=s[c]&&(-1!=="n?(".indexOf(s[c].t)||c===C)){for(a=s[c].v.indexOf(".")>-1&&c===C?s[c].v.indexOf(".")+1:0,k=s[c].v.substr(0,a);a<s[c].v.length;++a)w<A.length&&(k+=A.charAt(w++));s[c].v=k,s[c].t="t",I=c}}}for(c=0;c<s.length;++c)null!=s[c]&&"n?".indexOf(s[c].t)>-1&&(S=n>1&&t<0&&c>0&&"-"===s[c-1].v?-t:t,s[c].v=Xt(s[c].t,s[c].v,S),s[c].t="t");var E="";for(c=0;c!==s.length;++c)null!=s[c]&&(E+=s[c].v);return E}(o[1],t,r,o[0])}function nr(e,t){if("number"!=typeof t){t=+t||-1;for(var r=0;r<392;++r)if(void 0!=Dt[r]){if(Dt[r]==e){t=r;break}}else t<0&&(t=r);t<0&&(t=391)}return Dt[t]=e,t}function or(e){for(var t=0;392!=t;++t)void 0!==e[t]&&nr(e[t],t)}function ar(){var e;e||(e={}),e[0]="General",e[1]="0",e[2]="0.00",e[3]="#,##0",e[4]="#,##0.00",e[9]="0%",e[10]="0.00%",e[11]="0.00E+00",e[12]="# ?/?",e[13]="# ??/??",e[14]="m/d/yy",e[15]="d-mmm-yy",e[16]="d-mmm",e[17]="mmm-yy",e[18]="h:mm AM/PM",e[19]="h:mm:ss AM/PM",e[20]="h:mm",e[21]="h:mm:ss",e[22]="m/d/yy h:mm",e[37]="#,##0 ;(#,##0)",e[38]="#,##0 ;[Red](#,##0)",e[39]="#,##0.00;(#,##0.00)",e[40]="#,##0.00;[Red](#,##0.00)",e[45]="mm:ss",e[46]="[h]:mm:ss",e[47]="mmss.0",e[48]="##0.0E+0",e[49]="@",e[56]='"\u4e0a\u5348/\u4e0b\u5348 "hh"\u6642"mm"\u5206"ss"\u79d2 "',Dt=e}var ir={5:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',23:"General",24:"General",25:"General",26:"General",27:"m/d/yy",28:"m/d/yy",29:"m/d/yy",30:"m/d/yy",31:"m/d/yy",32:"h:mm:ss",33:"h:mm:ss",34:"h:mm:ss",35:"h:mm:ss",36:"m/d/yy",41:'_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',50:"m/d/yy",51:"m/d/yy",52:"m/d/yy",53:"m/d/yy",54:"m/d/yy",55:"m/d/yy",56:"m/d/yy",57:"m/d/yy",58:"m/d/yy",59:"0",60:"0.00",61:"#,##0",62:"#,##0.00",63:'"$"#,##0_);\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',67:"0%",68:"0.00%",69:"# ?/?",70:"# ??/??",71:"m/d/yy",72:"m/d/yy",73:"d-mmm-yy",74:"d-mmm",75:"mmm-yy",76:"h:mm",77:"h:mm:ss",78:"m/d/yy h:mm",79:"mm:ss",80:"[h]:mm:ss",81:"mmss.0"},sr=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;var lr={"d.m":"d\\.m"};function cr(e,t){return nr(lr[e]||e,t)}var ur,dr=function(){var e={};e.version="1.2.0";var t=function(){for(var e=0,t=new Array(256),r=0;256!=r;++r)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=r)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[r]=e;return"undefined"!==typeof Int32Array?new Int32Array(t):t}();var r=function(e){var t=0,r=0,n=0,o="undefined"!==typeof Int32Array?new Int32Array(4096):new Array(4096);for(n=0;256!=n;++n)o[n]=e[n];for(n=0;256!=n;++n)for(r=e[n],t=256+n;t<4096;t+=256)r=o[t]=r>>>8^e[255&r];var a=[];for(n=1;16!=n;++n)a[n-1]="undefined"!==typeof Int32Array&&"function"==typeof o.subarray?o.subarray(256*n,256*n+256):o.slice(256*n,256*n+256);return a}(t),n=r[0],o=r[1],a=r[2],i=r[3],s=r[4],l=r[5],c=r[6],u=r[7],d=r[8],f=r[9],p=r[10],h=r[11],m=r[12],g=r[13],v=r[14];return e.table=t,e.bstr=function(e,r){for(var n=~r,o=0,a=e.length;o<a;)n=n>>>8^t[255&(n^e.charCodeAt(o++))];return~n},e.buf=function(e,r){for(var y=~r,b=e.length-15,w=0;w<b;)y=v[e[w++]^255&y]^g[e[w++]^y>>8&255]^m[e[w++]^y>>16&255]^h[e[w++]^y>>>24]^p[e[w++]]^f[e[w++]]^d[e[w++]]^u[e[w++]]^c[e[w++]]^l[e[w++]]^s[e[w++]]^i[e[w++]]^a[e[w++]]^o[e[w++]]^n[e[w++]]^t[e[w++]];for(b+=15;w<b;)y=y>>>8^t[255&(y^e[w++])];return~y},e.str=function(e,r){for(var n=~r,o=0,a=e.length,i=0,s=0;o<a;)(i=e.charCodeAt(o++))<128?n=n>>>8^t[255&(n^i)]:i<2048?n=(n=n>>>8^t[255&(n^(192|i>>6&31))])>>>8^t[255&(n^(128|63&i))]:i>=55296&&i<57344?(i=64+(1023&i),s=1023&e.charCodeAt(o++),n=(n=(n=(n=n>>>8^t[255&(n^(240|i>>8&7))])>>>8^t[255&(n^(128|i>>2&63))])>>>8^t[255&(n^(128|s>>6&15|(3&i)<<4))])>>>8^t[255&(n^(128|63&s))]):n=(n=(n=n>>>8^t[255&(n^(224|i>>12&15))])>>>8^t[255&(n^(128|i>>6&63))])>>>8^t[255&(n^(128|63&i))];return~n},e}(),fr=function(){var e,t={};function r(e){if("/"==e.charAt(e.length-1))return-1===e.slice(0,-1).indexOf("/")?e:r(e.slice(0,-1));var t=e.lastIndexOf("/");return-1===t?e:e.slice(0,t+1)}function n(e){if("/"==e.charAt(e.length-1))return n(e.slice(0,-1));var t=e.lastIndexOf("/");return-1===t?e:e.slice(t+1)}function o(e,t){"string"===typeof t&&(t=new Date(t));var r=t.getHours();r=(r=r<<6|t.getMinutes())<<5|t.getSeconds()>>>1,e.write_shift(2,r);var n=t.getFullYear()-1980;n=(n=n<<4|t.getMonth()+1)<<5|t.getDate(),e.write_shift(2,n)}function a(e){Ko(e,0);for(var t={},r=0;e.l<=e.length-4;){var n=e.read_shift(2),o=e.read_shift(2),a=e.l+o,i={};switch(n){case 21589:1&(r=e.read_shift(1))&&(i.mtime=e.read_shift(4)),o>5&&(2&r&&(i.atime=e.read_shift(4)),4&r&&(i.ctime=e.read_shift(4))),i.mtime&&(i.mt=new Date(1e3*i.mtime));break;case 1:var s=e.read_shift(4),l=e.read_shift(4);i.usz=l*Math.pow(2,32)+s,s=e.read_shift(4),l=e.read_shift(4),i.csz=l*Math.pow(2,32)+s}e.l=a,t[n]=i}return t}function i(){return e||(e=ur)}function s(e,t){if(80==e[0]&&75==e[1])return ne(e,t);if(109==(32|e[0])&&105==(32|e[1]))return function(e,t){if("mime-version:"!=S(e.slice(0,13)).toLowerCase())throw new Error("Unsupported MAD header");var r=t&&t.root||"",n=(st&&Buffer.isBuffer(e)?e.toString("binary"):S(e)).split("\r\n"),o=0,a="";for(o=0;o<n.length;++o)if(a=n[o],/^Content-Location:/i.test(a)&&(a=a.slice(a.indexOf("file")),r||(r=a.slice(0,a.lastIndexOf("/")+1)),a.slice(0,r.length)!=r))for(;r.length>0&&(r=(r=r.slice(0,r.length-1)).slice(0,r.lastIndexOf("/")+1),a.slice(0,r.length)!=r););var i=(n[1]||"").match(/boundary="(.*?)"/);if(!i)throw new Error("MAD cannot find boundary");var s="--"+(i[1]||""),l=[],c=[],u={FileIndex:l,FullPaths:c};f(u);var d,p=0;for(o=0;o<n.length;++o){var h=n[o];h!==s&&h!==s+"--"||(p++&&ce(u,n.slice(d,o),r),d=o)}return u}(e,t);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var r,n,o,a,i,s,p=512,h=[],m=e.slice(0,512);Ko(m,0);var g=function(e){if(80==e[e.l]&&75==e[e.l+1])return[0,0];e.chk(y,"Header Signature: "),e.l+=16;var t=e.read_shift(2,"u");return[e.read_shift(2,"u"),t]}(m);switch(r=g[0]){case 3:p=512;break;case 4:p=4096;break;case 0:if(0==g[1])return ne(e,t);default:throw new Error("Major Version: Expected 3 or 4 saw "+r)}512!==p&&Ko(m=e.slice(0,p),28);var b=e.slice(0,p);!function(e,t){var r=9;switch(e.l+=2,r=e.read_shift(2)){case 9:if(3!=t)throw new Error("Sector Shift: Expected 9 saw "+r);break;case 12:if(4!=t)throw new Error("Sector Shift: Expected 12 saw "+r);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+r)}e.chk("0600","Mini Sector Shift: "),e.chk("000000000000","Reserved: ")}(m,r);var w=m.read_shift(4,"i");if(3===r&&0!==w)throw new Error("# Directory Sectors: Expected 0 saw "+w);m.l+=4,a=m.read_shift(4,"i"),m.l+=4,m.chk("00100000","Mini Stream Cutoff Size: "),i=m.read_shift(4,"i"),n=m.read_shift(4,"i"),s=m.read_shift(4,"i"),o=m.read_shift(4,"i");for(var x=-1,A=0;A<109&&!((x=m.read_shift(4,"i"))<0);++A)h[A]=x;var k=function(e,t){for(var r=Math.ceil(e.length/t)-1,n=[],o=1;o<r;++o)n[o-1]=e.slice(o*t,(o+1)*t);return n[r-1]=e.slice(r*t),n}(e,p);c(s,o,k,p,h);var C=function(e,t,r,n){var o=e.length,a=[],i=[],s=[],l=[],c=n-1,u=0,d=0,f=0,p=0;for(u=0;u<o;++u)if(s=[],(f=u+t)>=o&&(f-=o),!i[f]){l=[];var h=[];for(d=f;d>=0;){h[d]=!0,i[d]=!0,s[s.length]=d,l.push(e[d]);var m=r[Math.floor(4*d/n)];if(n<4+(p=4*d&c))throw new Error("FAT boundary crossed: "+d+" 4 "+n);if(!e[m])break;if(h[d=zo(e[m],p)])break}a[f]={nodes:s,data:go([l])}}return a}(k,a,h,p);a<C.length&&(C[a].name="!Directory"),n>0&&i!==v&&(C[i].name="!MiniFAT"),C[h[0]].name="!FAT",C.fat_addrs=h,C.ssz=p;var I=[],E=[],D=[];!function(e,t,r,n,o,a,i,s){for(var c,f=0,p=n.length?2:0,h=t[e].data,m=0,g=0;m<h.length;m+=128){var y=h.slice(m,m+128);Ko(y,64),g=y.read_shift(2),c=yo(y,0,g-p),n.push(c);var b={name:c,type:y.read_shift(1),color:y.read_shift(1),L:y.read_shift(4,"i"),R:y.read_shift(4,"i"),C:y.read_shift(4,"i"),clsid:y.read_shift(16),state:y.read_shift(4,"i"),start:0,size:0};0!==y.read_shift(2)+y.read_shift(2)+y.read_shift(2)+y.read_shift(2)&&(b.ct=d(y,y.l-8)),0!==y.read_shift(2)+y.read_shift(2)+y.read_shift(2)+y.read_shift(2)&&(b.mt=d(y,y.l-8)),b.start=y.read_shift(4,"i"),b.size=y.read_shift(4,"i"),b.size<0&&b.start<0&&(b.size=b.type=0,b.start=v,b.name=""),5===b.type?(f=b.start,o>0&&f!==v&&(t[f].name="!StreamData")):b.size>=4096?(b.storage="fat",void 0===t[b.start]&&(t[b.start]=u(r,b.start,t.fat_addrs,t.ssz)),t[b.start].name=b.name,b.content=t[b.start].data.slice(0,b.size)):(b.storage="minifat",b.size<0?b.size=0:f!==v&&b.start!==v&&t[f]&&(b.content=l(b,t[f].data,(t[s]||{}).data))),b.content&&Ko(b.content,0),a[c]=b,i.push(b)}}(a,C,k,I,n,{},E,i),function(e,t,r){for(var n=0,o=0,a=0,i=0,s=0,l=r.length,c=[],u=[];n<l;++n)c[n]=u[n]=n,t[n]=r[n];for(;s<u.length;++s)o=e[n=u[s]].L,a=e[n].R,i=e[n].C,c[n]===n&&(-1!==o&&c[o]!==o&&(c[n]=c[o]),-1!==a&&c[a]!==a&&(c[n]=c[a])),-1!==i&&(c[i]=n),-1!==o&&n!=c[n]&&(c[o]=c[n],u.lastIndexOf(o)<s&&u.push(o)),-1!==a&&n!=c[n]&&(c[a]=c[n],u.lastIndexOf(a)<s&&u.push(a));for(n=1;n<l;++n)c[n]===n&&(-1!==a&&c[a]!==a?c[n]=c[a]:-1!==o&&c[o]!==o&&(c[n]=c[o]));for(n=1;n<l;++n)if(0!==e[n].type){if((s=n)!=c[s])do{s=c[s],t[n]=t[s]+"/"+t[n]}while(0!==s&&-1!==c[s]&&s!=c[s]);c[n]=-1}for(t[0]+="/",n=1;n<l;++n)2!==e[n].type&&(t[n]+="/")}(E,D,I),I.shift();var T={FileIndex:E,FullPaths:D};return t&&t.raw&&(T.raw={header:b,sectors:k}),T}function l(e,t,r){for(var n=e.start,o=e.size,a=[],i=n;r&&o>0&&i>=0;)a.push(t.slice(i*g,i*g+g)),o-=g,i=zo(r,4*i);return 0===a.length?Jo(0):gt(a).slice(0,e.size)}function c(e,t,r,n,o){var a=v;if(e===v){if(0!==t)throw new Error("DIFAT chain shorter than expected")}else if(-1!==e){var i=r[e],s=(n>>>2)-1;if(!i)return;for(var l=0;l<s&&(a=zo(i,4*l))!==v;++l)o.push(a);t>=1&&c(zo(i,n-4),t-1,r,n,o)}}function u(e,t,r,n,o){var a=[],i=[];o||(o=[]);var s=n-1,l=0,c=0;for(l=t;l>=0;){o[l]=!0,a[a.length]=l,i.push(e[l]);var u=r[Math.floor(4*l/n)];if(n<4+(c=4*l&s))throw new Error("FAT boundary crossed: "+l+" 4 "+n);if(!e[u])break;l=zo(e[u],c)}return{nodes:a,data:go([i])}}function d(e,t){return new Date(1e3*(Fo(e,t+4)/1e7*Math.pow(2,32)+Fo(e,t)/1e7-11644473600))}function f(e,t){var r=t||{},n=r.root||"Root Entry";if(e.FullPaths||(e.FullPaths=[]),e.FileIndex||(e.FileIndex=[]),e.FullPaths.length!==e.FileIndex.length)throw new Error("inconsistent CFB structure");0===e.FullPaths.length&&(e.FullPaths[0]=n+"/",e.FileIndex[0]={name:n,type:5}),r.CLSID&&(e.FileIndex[0].clsid=r.CLSID),function(e){var t="\x01Sh33tJ5";if(fr.find(e,"/"+t))return;var r=Jo(4);r[0]=55,r[1]=r[3]=50,r[2]=54,e.FileIndex.push({name:t,type:2,content:r,size:4,L:69,R:69,C:69}),e.FullPaths.push(e.FullPaths[0]+t),p(e)}(e)}function p(e,t){f(e);for(var o=!1,a=!1,i=e.FullPaths.length-1;i>=0;--i){var s=e.FileIndex[i];switch(s.type){case 0:a?o=!0:(e.FileIndex.pop(),e.FullPaths.pop());break;case 1:case 2:case 5:a=!0,isNaN(s.R*s.L*s.C)&&(o=!0),s.R>-1&&s.L>-1&&s.R==s.L&&(o=!0);break;default:o=!0}}if(o||t){var l=new Date(1987,1,19),c=0,u=Object.create?Object.create(null):{},d=[];for(i=0;i<e.FullPaths.length;++i)u[e.FullPaths[i]]=!0,0!==e.FileIndex[i].type&&d.push([e.FullPaths[i],e.FileIndex[i]]);for(i=0;i<d.length;++i){var p=r(d[i][0]);for(a=u[p];!a;){for(;r(p)&&!u[r(p)];)p=r(p);d.push([p,{name:n(p).replace("/",""),type:1,clsid:w,ct:l,mt:l,content:null}]),u[p]=!0,a=u[p=r(d[i][0])]}}for(d.sort((function(e,t){return function(e,t){for(var r=e.split("/"),n=t.split("/"),o=0,a=0,i=Math.min(r.length,n.length);o<i;++o){if(a=r[o].length-n[o].length)return a;if(r[o]!=n[o])return r[o]<n[o]?-1:1}return r.length-n.length}(e[0],t[0])})),e.FullPaths=[],e.FileIndex=[],i=0;i<d.length;++i)e.FullPaths[i]=d[i][0],e.FileIndex[i]=d[i][1];for(i=0;i<d.length;++i){var h=e.FileIndex[i],m=e.FullPaths[i];if(h.name=n(m).replace("/",""),h.L=h.R=h.C=-(h.color=1),h.size=h.content?h.content.length:0,h.start=0,h.clsid=h.clsid||w,0===i)h.C=d.length>1?1:-1,h.size=0,h.type=5;else if("/"==m.slice(-1)){for(c=i+1;c<d.length&&r(e.FullPaths[c])!=m;++c);for(h.C=c>=d.length?-1:c,c=i+1;c<d.length&&r(e.FullPaths[c])!=r(m);++c);h.R=c>=d.length?-1:c,h.type=1}else r(e.FullPaths[i+1]||"")==r(m)&&(h.R=i+1),h.type=2}}}function h(e,t){var r=t||{};if("mad"==r.fileType)return function(e,t){for(var r=t||{},n=r.boundary||"SheetJS",o=["MIME-Version: 1.0",'Content-Type: multipart/related; boundary="'+(n="------="+n).slice(2)+'"',"","",""],a=e.FullPaths[0],i=a,s=e.FileIndex[0],l=1;l<e.FullPaths.length;++l)if(i=e.FullPaths[l].slice(a.length),(s=e.FileIndex[l]).size&&s.content&&"\x01Sh33tJ5"!=i){i=i.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7E-\xFF]/g,(function(e){return"_x"+e.charCodeAt(0).toString(16)+"_"})).replace(/[\u0080-\uFFFF]/g,(function(e){return"_u"+e.charCodeAt(0).toString(16)+"_"}));for(var c=s.content,u=st&&Buffer.isBuffer(c)?c.toString("binary"):S(c),d=0,f=Math.min(1024,u.length),p=0,h=0;h<=f;++h)(p=u.charCodeAt(h))>=32&&p<128&&++d;var m=d>=4*f/5;o.push(n),o.push("Content-Location: "+(r.root||"file:///C:/SheetJS/")+i),o.push("Content-Transfer-Encoding: "+(m?"quoted-printable":"base64")),o.push("Content-Type: "+ie(s,i)),o.push(""),o.push(m?le(u):se(u))}return o.push(n+"--\r\n"),o.join("\r\n")}(e,r);if(p(e),"zip"===r.fileType)return function(e,t){var r=t||{},n=[],a=[],i=Jo(1),s=r.compression?8:0,l=0;0;var c=0,u=0,d=0,f=0,p=e.FullPaths[0],h=p,m=e.FileIndex[0],g=[],v=0;for(c=1;c<e.FullPaths.length;++c)if(h=e.FullPaths[c].slice(p.length),(m=e.FileIndex[c]).size&&m.content&&(!Array.isArray(m.content)||0!=m.content.length)&&"\x01Sh33tJ5"!=h){var y=d,b=Jo(h.length);for(u=0;u<h.length;++u)b.write_shift(1,127&h.charCodeAt(u));b=b.slice(0,b.l),g[f]="string"==typeof m.content?dr.bstr(m.content,0):dr.buf(m.content,0);var w="string"==typeof m.content?ft(m.content):m.content;8==s&&(w=A(w)),(i=Jo(30)).write_shift(4,67324752),i.write_shift(2,20),i.write_shift(2,l),i.write_shift(2,s),m.mt?o(i,m.mt):i.write_shift(4,0),i.write_shift(-4,8&l?0:g[f]),i.write_shift(4,8&l?0:w.length),i.write_shift(4,8&l?0:m.content.length),i.write_shift(2,b.length),i.write_shift(2,0),d+=i.length,n.push(i),d+=b.length,n.push(b),d+=w.length,n.push(w),8&l&&((i=Jo(12)).write_shift(-4,g[f]),i.write_shift(4,w.length),i.write_shift(4,m.content.length),d+=i.l,n.push(i)),(i=Jo(46)).write_shift(4,33639248),i.write_shift(2,0),i.write_shift(2,20),i.write_shift(2,l),i.write_shift(2,s),i.write_shift(4,0),i.write_shift(-4,g[f]),i.write_shift(4,w.length),i.write_shift(4,m.content.length),i.write_shift(2,b.length),i.write_shift(2,0),i.write_shift(2,0),i.write_shift(2,0),i.write_shift(2,0),i.write_shift(4,0),i.write_shift(4,y),v+=i.l,a.push(i),v+=b.length,a.push(b),++f}return i=Jo(22),i.write_shift(4,101010256),i.write_shift(2,0),i.write_shift(2,0),i.write_shift(2,f),i.write_shift(2,f),i.write_shift(4,v),i.write_shift(4,d),i.write_shift(2,0),gt([gt(n),gt(a),i])}(e,r);var n=function(e){for(var t=0,r=0,n=0;n<e.FileIndex.length;++n){var o=e.FileIndex[n];if(o.content){var a=o.content.length;a>0&&(a<4096?t+=a+63>>6:r+=a+511>>9)}}for(var i=e.FullPaths.length+3>>2,s=t+127>>7,l=(t+7>>3)+r+i+s,c=l+127>>7,u=c<=109?0:Math.ceil((c-109)/127);l+c+u+127>>7>c;)u=++c<=109?0:Math.ceil((c-109)/127);var d=[1,u,c,s,i,r,t,0];return e.FileIndex[0].size=t<<6,d[7]=(e.FileIndex[0].start=d[0]+d[1]+d[2]+d[3]+d[4]+d[5])+(d[6]+7>>3),d}(e),a=Jo(n[7]<<9),i=0,s=0;for(i=0;i<8;++i)a.write_shift(1,b[i]);for(i=0;i<8;++i)a.write_shift(2,0);for(a.write_shift(2,62),a.write_shift(2,3),a.write_shift(2,65534),a.write_shift(2,9),a.write_shift(2,6),i=0;i<3;++i)a.write_shift(2,0);for(a.write_shift(4,0),a.write_shift(4,n[2]),a.write_shift(4,n[0]+n[1]+n[2]+n[3]-1),a.write_shift(4,0),a.write_shift(4,4096),a.write_shift(4,n[3]?n[0]+n[1]+n[2]-1:v),a.write_shift(4,n[3]),a.write_shift(-4,n[1]?n[0]-1:v),a.write_shift(4,n[1]),i=0;i<109;++i)a.write_shift(-4,i<n[2]?n[1]+i:-1);if(n[1])for(s=0;s<n[1];++s){for(;i<236+127*s;++i)a.write_shift(-4,i<n[2]?n[1]+i:-1);a.write_shift(-4,s===n[1]-1?v:s+1)}var l=function(e){for(s+=e;i<s-1;++i)a.write_shift(-4,i+1);e&&(++i,a.write_shift(-4,v))};for(s=i=0,s+=n[1];i<s;++i)a.write_shift(-4,x.DIFSECT);for(s+=n[2];i<s;++i)a.write_shift(-4,x.FATSECT);l(n[3]),l(n[4]);for(var c=0,u=0,d=e.FileIndex[0];c<e.FileIndex.length;++c)(d=e.FileIndex[c]).content&&((u=d.content.length)<4096||(d.start=s,l(u+511>>9)));for(l(n[6]+7>>3);511&a.l;)a.write_shift(-4,x.ENDOFCHAIN);for(s=i=0,c=0;c<e.FileIndex.length;++c)(d=e.FileIndex[c]).content&&(!(u=d.content.length)||u>=4096||(d.start=s,l(u+63>>6)));for(;511&a.l;)a.write_shift(-4,x.ENDOFCHAIN);for(i=0;i<n[4]<<2;++i){var f=e.FullPaths[i];if(f&&0!==f.length){d=e.FileIndex[i],0===i&&(d.start=d.size?d.start-1:v);var h=0===i&&r.root||d.name;if(h.length>31&&(console.error("Name "+h+" will be truncated to "+h.slice(0,31)),h=h.slice(0,31)),u=2*(h.length+1),a.write_shift(64,h,"utf16le"),a.write_shift(2,u),a.write_shift(1,d.type),a.write_shift(1,d.color),a.write_shift(-4,d.L),a.write_shift(-4,d.R),a.write_shift(-4,d.C),d.clsid)a.write_shift(16,d.clsid,"hex");else for(c=0;c<4;++c)a.write_shift(4,0);a.write_shift(4,d.state||0),a.write_shift(4,0),a.write_shift(4,0),a.write_shift(4,0),a.write_shift(4,0),a.write_shift(4,d.start),a.write_shift(4,d.size),a.write_shift(4,0)}else{for(c=0;c<17;++c)a.write_shift(4,0);for(c=0;c<3;++c)a.write_shift(4,-1);for(c=0;c<12;++c)a.write_shift(4,0)}}for(i=1;i<e.FileIndex.length;++i)if((d=e.FileIndex[i]).size>=4096)if(a.l=d.start+1<<9,st&&Buffer.isBuffer(d.content))d.content.copy(a,a.l,0,d.size),a.l+=d.size+511&-512;else{for(c=0;c<d.size;++c)a.write_shift(1,d.content[c]);for(;511&c;++c)a.write_shift(1,0)}for(i=1;i<e.FileIndex.length;++i)if((d=e.FileIndex[i]).size>0&&d.size<4096)if(st&&Buffer.isBuffer(d.content))d.content.copy(a,a.l,0,d.size),a.l+=d.size+63&-64;else{for(c=0;c<d.size;++c)a.write_shift(1,d.content[c]);for(;63&c;++c)a.write_shift(1,0)}if(st)a.l=a.length;else for(;a.l<a.length;)a.write_shift(1,0);return a}t.version="1.2.2";var m,g=64,v=-2,y="d0cf11e0a1b11ae1",b=[208,207,17,224,161,177,26,225],w="00000000000000000000000000000000",x={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN:v,FREESECT:-1,HEADER_SIGNATURE:y,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID:w,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};function S(e){for(var t=new Array(e.length),r=0;r<e.length;++r)t[r]=String.fromCharCode(e[r]);return t.join("")}function A(e){return m?m.deflateRawSync(e):Q(e)}var k=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],C=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],I=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577];function E(e){var t=139536&(e<<1|e<<11)|558144&(e<<5|e<<15);return 255&(t>>16|t>>8|t)}for(var D="undefined"!==typeof Uint8Array,T=D?new Uint8Array(256):[],O=0;O<256;++O)T[O]=E(O);function M(e,t){var r=T[255&e];return t<=8?r>>>8-t:(r=r<<8|T[e>>8&255],t<=16?r>>>16-t:(r=r<<8|T[e>>16&255])>>>24-t)}function P(e,t){var r=7&t,n=t>>>3;return(e[n]|(r<=6?0:e[n+1]<<8))>>>r&3}function j(e,t){var r=7&t,n=t>>>3;return(e[n]|(r<=5?0:e[n+1]<<8))>>>r&7}function R(e,t){var r=7&t,n=t>>>3;return(e[n]|(r<=3?0:e[n+1]<<8))>>>r&31}function _(e,t){var r=7&t,n=t>>>3;return(e[n]|(r<=1?0:e[n+1]<<8))>>>r&127}function N(e,t,r){var n=7&t,o=t>>>3,a=(1<<r)-1,i=e[o]>>>n;return r<8-n?i&a:(i|=e[o+1]<<8-n,r<16-n?i&a:(i|=e[o+2]<<16-n,r<24-n?i&a:(i|=e[o+3]<<24-n)&a))}function L(e,t,r){var n=7&t,o=t>>>3;return n<=5?e[o]|=(7&r)<<n:(e[o]|=r<<n&255,e[o+1]=(7&r)>>8-n),t+3}function U(e,t,r){return r=(1&r)<<(7&t),e[t>>>3]|=r,t+1}function B(e,t,r){var n=t>>>3;return r<<=7&t,e[n]|=255&r,r>>>=8,e[n+1]=r,t+8}function F(e,t,r){var n=t>>>3;return r<<=7&t,e[n]|=255&r,r>>>=8,e[n+1]=255&r,e[n+2]=r>>>8,t+16}function z(e,t){var r=e.length,n=2*r>t?2*r:t+5,o=0;if(r>=t)return e;if(st){var a=dt(n);if(e.copy)e.copy(a);else for(;o<e.length;++o)a[o]=e[o];return a}if(D){var i=new Uint8Array(n);if(i.set)i.set(e);else for(;o<r;++o)i[o]=e[o];return i}return e.length=n,e}function W(e){for(var t=new Array(e),r=0;r<e;++r)t[r]=0;return t}function H(e,t,r){var n=1,o=0,a=0,i=0,s=0,l=e.length,c=D?new Uint16Array(32):W(32);for(a=0;a<32;++a)c[a]=0;for(a=l;a<r;++a)e[a]=0;l=e.length;var u=D?new Uint16Array(l):W(l);for(a=0;a<l;++a)c[o=e[a]]++,n<o&&(n=o),u[a]=0;for(c[0]=0,a=1;a<=n;++a)c[a+16]=s=s+c[a-1]<<1;for(a=0;a<l;++a)0!=(s=e[a])&&(u[a]=c[s+16]++);var d=0;for(a=0;a<l;++a)if(0!=(d=e[a]))for(s=M(u[a],n)>>n-d,i=(1<<n+4-d)-1;i>=0;--i)t[s|i<<d]=15&d|a<<4;return n}var Y=D?new Uint16Array(512):W(512),V=D?new Uint16Array(32):W(32);if(!D){for(var G=0;G<512;++G)Y[G]=0;for(G=0;G<32;++G)V[G]=0}!function(){for(var e=[],t=0;t<32;t++)e.push(5);H(e,V,32);var r=[];for(t=0;t<=143;t++)r.push(8);for(;t<=255;t++)r.push(9);for(;t<=279;t++)r.push(7);for(;t<=287;t++)r.push(8);H(r,Y,288)}();var Z=function(){for(var e=D?new Uint8Array(32768):[],t=0,r=0;t<I.length-1;++t)for(;r<I[t+1];++r)e[r]=t;for(;r<32768;++r)e[r]=29;var n=D?new Uint8Array(259):[];for(t=0,r=0;t<C.length-1;++t)for(;r<C[t+1];++r)n[r]=t;return function(t,r){return t.length<8?function(e,t){for(var r=0;r<e.length;){var n=Math.min(65535,e.length-r),o=r+n==e.length;for(t.write_shift(1,+o),t.write_shift(2,n),t.write_shift(2,65535&~n);n-- >0;)t[t.l++]=e[r++]}return t.l}(t,r):function(t,r){for(var o=0,a=0,i=D?new Uint16Array(32768):[];a<t.length;){var s=Math.min(65535,t.length-a);if(s<10){for(7&(o=L(r,o,+!(a+s!=t.length)))&&(o+=8-(7&o)),r.l=o/8|0,r.write_shift(2,s),r.write_shift(2,65535&~s);s-- >0;)r[r.l++]=t[a++];o=8*r.l}else{o=L(r,o,+!(a+s!=t.length)+2);for(var l=0;s-- >0;){var c=t[a],u=-1,d=0;if((u=i[l=32767&(l<<5^c)])&&((u|=-32768&a)>a&&(u-=32768),u<a))for(;t[u+d]==t[a+d]&&d<250;)++d;if(d>2){(c=n[d])<=22?o=B(r,o,T[c+1]>>1)-1:(B(r,o,3),B(r,o+=5,T[c-23]>>5),o+=3);var f=c<8?0:c-4>>2;f>0&&(F(r,o,d-C[c]),o+=f),c=e[a-u],o=B(r,o,T[c]>>3),o-=3;var p=c<4?0:c-2>>1;p>0&&(F(r,o,a-u-I[c]),o+=p);for(var h=0;h<d;++h)i[l]=32767&a,l=32767&(l<<5^t[a]),++a;s-=d-1}else c<=143?c+=48:o=U(r,o,1),o=B(r,o,T[c]),i[l]=32767&a,++a}o=B(r,o,0)-1}}return r.l=(o+7)/8|0,r.l}(t,r)}}();function Q(e){var t=Jo(50+Math.floor(1.1*e.length)),r=Z(e,t);return t.slice(0,r)}var K=D?new Uint16Array(32768):W(32768),X=D?new Uint16Array(32768):W(32768),J=D?new Uint16Array(128):W(128),$=1,q=1;function ee(e,t){var r=R(e,t)+257,n=R(e,t+=5)+1,o=function(e,t){var r=7&t,n=t>>>3;return(e[n]|(r<=4?0:e[n+1]<<8))>>>r&15}(e,t+=5)+4;t+=4;for(var a=0,i=D?new Uint8Array(19):W(19),s=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],l=1,c=D?new Uint8Array(8):W(8),u=D?new Uint8Array(8):W(8),d=i.length,f=0;f<o;++f)i[k[f]]=a=j(e,t),l<a&&(l=a),c[a]++,t+=3;var p=0;for(c[0]=0,f=1;f<=l;++f)u[f]=p=p+c[f-1]<<1;for(f=0;f<d;++f)0!=(p=i[f])&&(s[f]=u[p]++);var h=0;for(f=0;f<d;++f)if(0!=(h=i[f])){p=T[s[f]]>>8-h;for(var m=(1<<7-h)-1;m>=0;--m)J[p|m<<h]=7&h|f<<3}var g=[];for(l=1;g.length<r+n;)switch(t+=7&(p=J[_(e,t)]),p>>>=3){case 16:for(a=3+P(e,t),t+=2,p=g[g.length-1];a-- >0;)g.push(p);break;case 17:for(a=3+j(e,t),t+=3;a-- >0;)g.push(0);break;case 18:for(a=11+_(e,t),t+=7;a-- >0;)g.push(0);break;default:g.push(p),l<p&&(l=p)}var v=g.slice(0,r),y=g.slice(r);for(f=r;f<286;++f)v[f]=0;for(f=n;f<30;++f)y[f]=0;return $=H(v,K,286),q=H(y,X,30),t}function te(e,t){var r=function(e,t){if(3==e[0]&&!(3&e[1]))return[ut(t),2];for(var r=0,n=0,o=dt(t||1<<18),a=0,i=o.length>>>0,s=0,l=0;0==(1&n);)if(n=j(e,r),r+=3,n>>>1!=0)for(n>>1==1?(s=9,l=5):(r=ee(e,r),s=$,l=q);;){!t&&i<a+32767&&(i=(o=z(o,a+32767)).length);var c=N(e,r,s),u=n>>>1==1?Y[c]:K[c];if(r+=15&u,0===((u>>>=4)>>>8&255))o[a++]=u;else{if(256==u)break;var d=(u-=257)<8?0:u-4>>2;d>5&&(d=0);var f=a+C[u];d>0&&(f+=N(e,r,d),r+=d),c=N(e,r,l),r+=15&(u=n>>>1==1?V[c]:X[c]);var p=(u>>>=4)<4?0:u-2>>1,h=I[u];for(p>0&&(h+=N(e,r,p),r+=p),!t&&i<f&&(i=(o=z(o,f+100)).length);a<f;)o[a]=o[a-h],++a}}else{7&r&&(r+=8-(7&r));var m=e[r>>>3]|e[1+(r>>>3)]<<8;if(r+=32,m>0)for(!t&&i<a+m&&(i=(o=z(o,a+m)).length);m-- >0;)o[a++]=e[r>>>3],r+=8}return t?[o,r+7>>>3]:[o.slice(0,a),r+7>>>3]}(e.slice(e.l||0),t);return e.l+=r[1],r[0]}function re(e,t){if(!e)throw new Error(t);"undefined"!==typeof console&&console.error(t)}function ne(e,t){var r=e;Ko(r,0);var n={FileIndex:[],FullPaths:[]};f(n,{root:t.root});for(var o=r.length-4;(80!=r[o]||75!=r[o+1]||5!=r[o+2]||6!=r[o+3])&&o>=0;)--o;r.l=o+4,r.l+=4;var i=r.read_shift(2);r.l+=6;var s=r.read_shift(4);for(r.l=s,o=0;o<i;++o){r.l+=20;var l=r.read_shift(4),c=r.read_shift(4),u=r.read_shift(2),d=r.read_shift(2),p=r.read_shift(2);r.l+=8;var h=r.read_shift(4),m=a(r.slice(r.l+u,r.l+u+d));r.l+=u+d+p;var g=r.l;r.l=h+4,m&&m[1]&&((m[1]||{}).usz&&(c=m[1].usz),(m[1]||{}).csz&&(l=m[1].csz)),oe(r,l,c,n,m),r.l=g}return n}function oe(e,t,r,n,o){e.l+=2;var i=e.read_shift(2),s=e.read_shift(2),l=function(e){var t=65535&e.read_shift(2),r=65535&e.read_shift(2),n=new Date,o=31&r,a=15&(r>>>=5);r>>>=4,n.setMilliseconds(0),n.setFullYear(r+1980),n.setMonth(a-1),n.setDate(o);var i=31&t,s=63&(t>>>=5);return t>>>=6,n.setHours(t),n.setMinutes(s),n.setSeconds(i<<1),n}(e);if(8257&i)throw new Error("Unsupported ZIP encryption");e.read_shift(4);for(var c=e.read_shift(4),u=e.read_shift(4),d=e.read_shift(2),f=e.read_shift(2),p="",h=0;h<d;++h)p+=String.fromCharCode(e[e.l++]);if(f){var g=a(e.slice(e.l,e.l+f));(g[21589]||{}).mt&&(l=g[21589].mt),(g[1]||{}).usz&&(u=g[1].usz),(g[1]||{}).csz&&(c=g[1].csz),o&&((o[21589]||{}).mt&&(l=o[21589].mt),(o[1]||{}).usz&&(u=o[1].usz),(o[1]||{}).csz&&(c=o[1].csz))}e.l+=f;var v=e.slice(e.l,e.l+c);switch(s){case 8:v=function(e,t){if(!m)return te(e,t);var r=new(0,m.InflateRaw),n=r._processChunk(e.slice(e.l),r._finishFlushFlag);return e.l+=r.bytesRead,n}(e,u);break;case 0:e.l+=c;break;default:throw new Error("Unsupported ZIP Compression method "+s)}var y=!1;8&i&&(134695760==e.read_shift(4)&&(e.read_shift(4),y=!0),c=e.read_shift(4),u=e.read_shift(4)),c!=t&&re(y,"Bad compressed size: "+t+" != "+c),u!=r&&re(y,"Bad uncompressed size: "+r+" != "+u),ue(n,p,v,{unsafe:!0,mt:l})}var ae={htm:"text/html",xml:"text/xml",gif:"image/gif",jpg:"image/jpeg",png:"image/png",mso:"application/x-mso",thmx:"application/vnd.ms-officetheme",sh33tj5:"application/octet-stream"};function ie(e,t){if(e.ctype)return e.ctype;var r=e.name||"",n=r.match(/\.([^\.]+)$/);return n&&ae[n[1]]||t&&(n=(r=t).match(/[\.\\]([^\.\\])+$/))&&ae[n[1]]?ae[n[1]]:"application/octet-stream"}function se(e){for(var t=at(e),r=[],n=0;n<t.length;n+=76)r.push(t.slice(n,n+76));return r.join("\r\n")+"\r\n"}function le(e){var t=e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7E-\xFF=]/g,(function(e){var t=e.charCodeAt(0).toString(16).toUpperCase();return"="+(1==t.length?"0"+t:t)}));"\n"==(t=t.replace(/ $/gm,"=20").replace(/\t$/gm,"=09")).charAt(0)&&(t="=0D"+t.slice(1));for(var r=[],n=(t=t.replace(/\r(?!\n)/gm,"=0D").replace(/\n\n/gm,"\n=0A").replace(/([^\r\n])\n/gm,"$1=0A")).split("\r\n"),o=0;o<n.length;++o){var a=n[o];if(0!=a.length)for(var i=0;i<a.length;){var s=76,l=a.slice(i,i+s);"="==l.charAt(s-1)?s--:"="==l.charAt(s-2)?s-=2:"="==l.charAt(s-3)&&(s-=3),l=a.slice(i,i+s),(i+=s)<a.length&&(l+="="),r.push(l)}else r.push("")}return r.join("\r\n")}function ce(e,t,r){for(var n,o="",a="",i="",s=0;s<10;++s){var l=t[s];if(!l||l.match(/^\s*$/))break;var c=l.match(/^([^:]*?):\s*([^\s].*)$/);if(c)switch(c[1].toLowerCase()){case"content-location":o=c[2].trim();break;case"content-type":i=c[2].trim();break;case"content-transfer-encoding":a=c[2].trim()}}switch(++s,a.toLowerCase()){case"base64":n=ft(it(t.slice(s).join("")));break;case"quoted-printable":n=function(e){for(var t=[],r=0;r<e.length;++r){for(var n=e[r];r<=e.length&&"="==n.charAt(n.length-1);)n=n.slice(0,n.length-1)+e[++r];t.push(n)}for(var o=0;o<t.length;++o)t[o]=t[o].replace(/[=][0-9A-Fa-f]{2}/g,(function(e){return String.fromCharCode(parseInt(e.slice(1),16))}));return ft(t.join("\r\n"))}(t.slice(s));break;default:throw new Error("Unsupported Content-Transfer-Encoding "+a)}var u=ue(e,o.slice(r.length),n,{unsafe:!0});i&&(u.ctype=i)}function ue(e,t,r,o){var a=o&&o.unsafe;a||f(e);var i=!a&&fr.find(e,t);if(!i){var s=e.FullPaths[0];t.slice(0,s.length)==s?s=t:("/"!=s.slice(-1)&&(s+="/"),s=(s+t).replace("//","/")),i={name:n(t),type:2},e.FileIndex.push(i),e.FullPaths.push(s),a||fr.utils.cfb_gc(e)}return i.content=r,i.size=r?r.length:0,o&&(o.CLSID&&(i.clsid=o.CLSID),o.mt&&(i.mt=o.mt),o.ct&&(i.ct=o.ct)),i}return t.find=function(e,t){var r=e.FullPaths.map((function(e){return e.toUpperCase()})),n=r.map((function(e){var t=e.split("/");return t[t.length-("/"==e.slice(-1)?2:1)]})),o=!1;47===t.charCodeAt(0)?(o=!0,t=r[0].slice(0,-1)+t):o=-1!==t.indexOf("/");var a=t.toUpperCase(),i=!0===o?r.indexOf(a):n.indexOf(a);if(-1!==i)return e.FileIndex[i];var s=!a.match(yt);for(a=a.replace(vt,""),s&&(a=a.replace(yt,"!")),i=0;i<r.length;++i){if((s?r[i].replace(yt,"!"):r[i]).replace(vt,"")==a)return e.FileIndex[i];if((s?n[i].replace(yt,"!"):n[i]).replace(vt,"")==a)return e.FileIndex[i]}return null},t.read=function(t,r){var n=r&&r.type;switch(n||st&&Buffer.isBuffer(t)&&(n="buffer"),n||"base64"){case"file":return function(t,r){return i(),s(e.readFileSync(t),r)}(t,r);case"base64":return s(ft(it(t)),r);case"binary":return s(ft(t),r)}return s(t,r)},t.parse=s,t.write=function(t,r){var n=h(t,r);switch(r&&r.type||"buffer"){case"file":return i(),e.writeFileSync(r.filename,n),n;case"binary":return"string"==typeof n?n:S(n);case"base64":return at("string"==typeof n?n:S(n));case"buffer":if(st)return Buffer.isBuffer(n)?n:lt(n);case"array":return"string"==typeof n?ft(n):n}return n},t.writeFile=function(t,r,n){i();var o=h(t,n);e.writeFileSync(r,o)},t.utils={cfb_new:function(e){var t={};return f(t,e),t},cfb_add:ue,cfb_del:function(e,t){f(e);var r=fr.find(e,t);if(r)for(var n=0;n<e.FileIndex.length;++n)if(e.FileIndex[n]==r)return e.FileIndex.splice(n,1),e.FullPaths.splice(n,1),!0;return!1},cfb_mov:function(e,t,r){f(e);var o=fr.find(e,t);if(o)for(var a=0;a<e.FileIndex.length;++a)if(e.FileIndex[a]==o)return e.FileIndex[a].name=n(r),e.FullPaths[a]=r,!0;return!1},cfb_gc:function(e){p(e,!0)},ReadShift:Ho,CheckField:Qo,prep_blob:Ko,bconcat:gt,use_zlib:function(e){try{var t=new(0,e.InflateRaw);if(t._processChunk(new Uint8Array([3,0]),t._finishFlushFlag),!t.bytesRead)throw new Error("zlib does not expose bytesRead");m=e}catch(o6){console.error("cannot use native zlib: "+(o6.message||o6))}},_deflateRaw:Q,_inflateRaw:te,consts:x},t}();function pr(e){return"string"===typeof e?pt(e):Array.isArray(e)?function(e){if("undefined"===typeof Uint8Array)throw new Error("Unsupported");return new Uint8Array(e)}(e):e}function hr(e,t,r){if("undefined"!==typeof ur&&ur.writeFileSync)return r?ur.writeFileSync(e,t,r):ur.writeFileSync(e,t);if("undefined"!==typeof Deno){if(r&&"string"==typeof t)switch(r){case"utf8":t=new TextEncoder(r).encode(t);break;case"binary":t=pt(t);break;default:throw new Error("Unsupported encoding "+r)}return Deno.writeFileSync(e,t)}var n="utf8"==r?_n(t):t;if("undefined"!==typeof IE_SaveFile)return IE_SaveFile(n,e);if("undefined"!==typeof Blob){var o=new Blob([pr(n)],{type:"application/octet-stream"});if("undefined"!==typeof navigator&&navigator.msSaveBlob)return navigator.msSaveBlob(o,e);if("undefined"!==typeof saveAs)return saveAs(o,e);if("undefined"!==typeof URL&&"undefined"!==typeof document&&document.createElement&&URL.createObjectURL){var a=URL.createObjectURL(o);if("object"===typeof chrome&&"function"==typeof(chrome.downloads||{}).download)return URL.revokeObjectURL&&"undefined"!==typeof setTimeout&&setTimeout((function(){URL.revokeObjectURL(a)}),6e4),chrome.downloads.download({url:a,filename:e,saveAs:!0});var i=document.createElement("a");if(null!=i.download)return i.download=e,i.href=a,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL&&"undefined"!==typeof setTimeout&&setTimeout((function(){URL.revokeObjectURL(a)}),6e4),a}else if("undefined"!==typeof URL&&!URL.createObjectURL&&"object"===typeof chrome){var s="data:application/octet-stream;base64,"+function(e){for(var t="",r=0,n=0,o=0,a=0,i=0,s=0,l=0,c=0;c<e.length;)a=(r=e[c++])>>2,i=(3&r)<<4|(n=e[c++])>>4,s=(15&n)<<2|(o=e[c++])>>6,l=63&o,isNaN(n)?s=l=64:isNaN(o)&&(l=64),t+=ot.charAt(a)+ot.charAt(i)+ot.charAt(s)+ot.charAt(l);return t}(new Uint8Array(pr(n)));return chrome.downloads.download({url:s,filename:e,saveAs:!0})}}if("undefined"!==typeof $&&"undefined"!==typeof File&&"undefined"!==typeof Folder)try{var l=File(e);return l.open("w"),l.encoding="binary",Array.isArray(t)&&(t=ht(t)),l.write(t),l.close(),t}catch(o6){if(!o6.message||-1==o6.message.indexOf("onstruct"))throw o6}throw new Error("cannot save file "+e)}function mr(e){for(var t=Object.keys(e),r=[],n=0;n<t.length;++n)Object.prototype.hasOwnProperty.call(e,t[n])&&r.push(t[n]);return r}function gr(e,t){for(var r=[],n=mr(e),o=0;o!==n.length;++o)null==r[e[n[o]][t]]&&(r[e[n[o]][t]]=n[o]);return r}function vr(e){for(var t=[],r=mr(e),n=0;n!==r.length;++n)t[e[r[n]]]=r[n];return t}function yr(e){for(var t=[],r=mr(e),n=0;n!==r.length;++n)t[e[r[n]]]=parseInt(r[n],10);return t}var br=Date.UTC(1899,11,30,0,0,0),wr=Date.UTC(1899,11,31,0,0,0),xr=Date.UTC(1904,0,1,0,0,0);function Sr(e,t){var r=(e.getTime()-br)/864e5;return t?(r-=1462)<-1402?r-1:r:r<60?r-1:r}function Ar(e){if(e>=60&&e<61)return e;var t=new Date;return t.setTime(24*(e>60?e:e+1)*60*60*1e3+br),t}function kr(e){var t=0,r=0,n=!1,o=e.match(/P([0-9\.]+Y)?([0-9\.]+M)?([0-9\.]+D)?T([0-9\.]+H)?([0-9\.]+M)?([0-9\.]+S)?/);if(!o)throw new Error("|"+e+"| is not an ISO8601 Duration");for(var a=1;a!=o.length;++a)if(o[a]){switch(r=1,a>3&&(n=!0),o[a].slice(o[a].length-1)){case"Y":throw new Error("Unsupported ISO Duration Field: "+o[a].slice(o[a].length-1));case"D":r*=24;case"H":r*=60;case"M":if(!n)throw new Error("Unsupported ISO Duration Field: M");r*=60}t+=r*parseInt(o[a],10)}return t}var Cr=/^(\d+):(\d+)(:\d+)?(\.\d+)?$/,Ir=/^(\d+)-(\d+)-(\d+)$/,Er=/^(\d+)-(\d+)-(\d+)[T ](\d+):(\d+)(:\d+)?(\.\d+)?$/;function Dr(e,t){if(e instanceof Date)return e;var r=e.match(Cr);return r?new Date((t?xr:wr)+1e3*(60*(60*parseInt(r[1],10)+parseInt(r[2],10))+(r[3]?parseInt(r[3].slice(1),10):0))+(r[4]?parseInt((r[4]+"000").slice(1,4),10):0)):(r=e.match(Ir))?new Date(Date.UTC(+r[1],+r[2]-1,+r[3],0,0,0,0)):(r=e.match(Er))?new Date(Date.UTC(+r[1],+r[2]-1,+r[3],+r[4],+r[5],r[6]&&parseInt(r[6].slice(1),10)||0,r[7]&&parseInt((r[7]+"0000").slice(1,4),10)||0)):new Date(e)}function Tr(e,t){if(st&&Buffer.isBuffer(e)){if(t&&ct){if(255==e[0]&&254==e[1])return _n(e.slice(2).toString("utf16le"));if(254==e[1]&&255==e[2])return _n(qe(e.slice(2).toString("binary")))}return e.toString("binary")}if("undefined"!==typeof TextDecoder)try{if(t){if(255==e[0]&&254==e[1])return _n(new TextDecoder("utf-16le").decode(e.slice(2)));if(254==e[0]&&255==e[1])return _n(new TextDecoder("utf-16be").decode(e.slice(2)))}var r={"\u20ac":"\x80","\u201a":"\x82","\u0192":"\x83","\u201e":"\x84","\u2026":"\x85","\u2020":"\x86","\u2021":"\x87","\u02c6":"\x88","\u2030":"\x89","\u0160":"\x8a","\u2039":"\x8b","\u0152":"\x8c","\u017d":"\x8e","\u2018":"\x91","\u2019":"\x92","\u201c":"\x93","\u201d":"\x94","\u2022":"\x95","\u2013":"\x96","\u2014":"\x97","\u02dc":"\x98","\u2122":"\x99","\u0161":"\x9a","\u203a":"\x9b","\u0153":"\x9c","\u017e":"\x9e","\u0178":"\x9f"};return Array.isArray(e)&&(e=new Uint8Array(e)),new TextDecoder("latin1").decode(e).replace(/[\u20ac\u201a\u0192\u201e\u2026\u2020\u2021\u02c6\u2030\u0160\u2039\u0152\u017d\u2018\u2019\u201c\u201d\u2022\u2013\u2014\u02dc\u2122\u0161\u203a\u0153\u017e\u0178]/g,(function(e){return r[e]||e}))}catch(o6){}var n=[],o=0;try{for(o=0;o<e.length-65536;o+=65536)n.push(String.fromCharCode.apply(0,e.slice(o,o+65536)));n.push(String.fromCharCode.apply(0,e.slice(o)))}catch(o6){try{for(;o<e.length-16384;o+=16384)n.push(String.fromCharCode.apply(0,e.slice(o,o+16384)));n.push(String.fromCharCode.apply(0,e.slice(o)))}catch(o6){for(;o!=e.length;++o)n.push(String.fromCharCode(e[o]))}}return n.join("")}function Or(e){if("undefined"!=typeof JSON&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if("object"!=typeof e||null==e)return e;if(e instanceof Date)return new Date(e.getTime());var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=Or(e[r]));return t}function Mr(e,t){for(var r="";r.length<t;)r+=e;return r}function Pr(e){var t=Number(e);if(!isNaN(t))return isFinite(t)?t:NaN;if(!/\d/.test(e))return t;var r=1,n=e.replace(/([\d]),([\d])/g,"$1$2").replace(/[$]/g,"").replace(/[%]/g,(function(){return r*=100,""}));return isNaN(t=Number(n))?(n=n.replace(/[(]([^()]*)[)]/,(function(e,t){return r=-r,t})),isNaN(t=Number(n))?t:t/r):t/r}var jr=/^(0?\d|1[0-2])(?:|:([0-5]?\d)(?:|(\.\d+)(?:|:([0-5]?\d))|:([0-5]?\d)(|\.\d+)))\s+([ap])m?$/,Rr=/^([01]?\d|2[0-3])(?:|:([0-5]?\d)(?:|(\.\d+)(?:|:([0-5]?\d))|:([0-5]?\d)(|\.\d+)))$/,_r=/^(\d+)-(\d+)-(\d+)[T ](\d+):(\d+)(:\d+)(\.\d+)?[Z]?$/,Nr=-177984e5==new Date("6/9/69 00:00 UTC").valueOf();var Lr=["january","february","march","april","may","june","july","august","september","october","november","december"];function Ur(e){if(_r.test(e))return-1==e.indexOf("Z")?zr(new Date(e)):new Date(e);var t=e.toLowerCase(),r=t.replace(/\s+/g," ").trim(),n=r.match(jr);if(n)return function(e){return e[2]?e[3]?e[4]?new Date(Date.UTC(1899,11,31,+e[1]%12+("p"==e[7]?12:0),+e[2],+e[4],1e3*parseFloat(e[3]))):new Date(Date.UTC(1899,11,31,"p"==e[7]?12:0,+e[1],+e[2],1e3*parseFloat(e[3]))):e[5]?new Date(Date.UTC(1899,11,31,+e[1]%12+("p"==e[7]?12:0),+e[2],+e[5],e[6]?1e3*parseFloat(e[6]):0)):new Date(Date.UTC(1899,11,31,+e[1]%12+("p"==e[7]?12:0),+e[2],0,0)):new Date(Date.UTC(1899,11,31,+e[1]%12+("p"==e[7]?12:0),0,0,0))}(n);if(n=r.match(Rr))return function(e){return e[2]?e[3]?e[4]?new Date(Date.UTC(1899,11,31,+e[1],+e[2],+e[4],1e3*parseFloat(e[3]))):new Date(Date.UTC(1899,11,31,0,+e[1],+e[2],1e3*parseFloat(e[3]))):e[5]?new Date(Date.UTC(1899,11,31,+e[1],+e[2],+e[5],e[6]?1e3*parseFloat(e[6]):0)):new Date(Date.UTC(1899,11,31,+e[1],+e[2],0,0)):new Date(Date.UTC(1899,11,31,+e[1],0,0,0))}(n);if(n=r.match(Er))return new Date(Date.UTC(+n[1],+n[2]-1,+n[3],+n[4],+n[5],n[6]&&parseInt(n[6].slice(1),10)||0,n[7]&&parseInt((n[7]+"0000").slice(1,4),10)||0));var o=new Date(Nr&&-1==e.indexOf("UTC")?e+" UTC":e),a=new Date(NaN),i=o.getYear(),s=(o.getMonth(),o.getDate());if(isNaN(s))return a;if(t.match(/jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec/)){if((t=t.replace(/[^a-z]/g,"").replace(/([^a-z]|^)[ap]m?([^a-z]|$)/,"")).length>3&&-1==Lr.indexOf(t))return a}else if(t.replace(/[ap]m?/,"").match(/[a-z]/))return a;return i<0||i>8099||e.match(/[^-0-9:,\/\\\ ]/)?a:o}var Br=function(){var e=5=="abacaba".split(/(:?b)/i).length;return function(t,r,n){if(e||"string"==typeof r)return t.split(r);for(var o=t.split(r),a=[o[0]],i=1;i<o.length;++i)a.push(n),a.push(o[i]);return a}}();function Fr(e){return new Date(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds())}function zr(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()))}function Wr(e){var t=e.slice(0,1024).indexOf("<!DOCTYPE");if(-1==t)return e;var r=e.match(/<[\w]/);return r?e.slice(0,t)+e.slice(r.index):e}function Hr(e,t,r){for(var n=[],o=e.indexOf(t);o>-1;){var a=e.indexOf(r,o+t.length);if(-1==a)break;n.push(e.slice(o,a+r.length)),o=e.indexOf(t,a+r.length)}return n.length>0?n:null}function Yr(e,t,r){var n=[],o=0,a=e.indexOf(t);if(-1==a)return e;for(;a>-1;){n.push(e.slice(o,a));var i=e.indexOf(r,a+t.length);if(-1==i)break;-1==(a=e.indexOf(t,o=i+r.length))&&n.push(e.slice(o))}return n.join("")}var Vr={" ":1,"\t":1,"\r":1,"\n":1,">":1};function Gr(e,t){for(var r=e.indexOf("<"+t),n=t.length+1,o=e.length;r>=0&&r<=o-n&&!Vr[e.charAt(r+n)];)r=e.indexOf("<"+t,r+1);if(-1===r)return null;var a=e.indexOf(">",r+t.length);if(-1===a)return null;var i="</"+t+">",s=e.indexOf(i,a);return-1==s?null:[e.slice(r,s+i.length),e.slice(a+1,s)]}var Zr=function(){var e={};return function(t,r){var n=e[r];n||(e[r]=n=[new RegExp("<(?:\\w+:)?"+r+"\\b[^<>]*>","g"),new RegExp("</(?:\\w+:)?"+r+">","g")]),n[0].lastIndex=n[1].lastIndex=0;var o=n[0].exec(t);if(!o)return null;var a=o.index,i=n[0].lastIndex;if(n[1].lastIndex=n[0].lastIndex,!(o=n[1].exec(t)))return null;var s=o.index,l=n[1].lastIndex;return[t.slice(a,l),t.slice(i,s)]}}(),Qr=function(){var e={};return function(t,r){var n,o=[],a=e[r];for(a||(e[r]=a=[new RegExp("<(?:\\w+:)?"+r+"\\b[^<>]*>","g"),new RegExp("</(?:\\w+:)?"+r+">","g")]),a[0].lastIndex=a[1].lastIndex=0;n=a[0].exec(t);){var i=n.index;if(a[1].lastIndex=a[0].lastIndex,!(n=a[1].exec(t)))return null;var s=a[1].lastIndex;o.push(t.slice(i,s)),a[0].lastIndex=a[1].lastIndex}return 0==o.length?null:o}}(),Kr=function(){var e={};return function(t,r){var n,o=[],a=e[r];a||(e[r]=a=[new RegExp("<(?:\\w+:)?"+r+"\\b[^<>]*>","g"),new RegExp("</(?:\\w+:)?"+r+">","g")]),a[0].lastIndex=a[1].lastIndex=0;for(var i=0,s=0;n=a[0].exec(t);){if(i=n.index,o.push(t.slice(s,i)),s=i,a[1].lastIndex=a[0].lastIndex,!(n=a[1].exec(t)))return null;s=a[1].lastIndex,a[0].lastIndex=a[1].lastIndex}return o.push(t.slice(s)),0==o.length?"":o.join("")}}(),Xr=function(){var e={};return function(t,r){var n,o=[],a=e[r];for(a||(e[r]=a=[new RegExp("<"+r+"\\b[^<>]*>","ig"),new RegExp("</"+r+">","ig")]),a[0].lastIndex=a[1].lastIndex=0;n=a[0].exec(t);){var i=n.index;if(a[1].lastIndex=a[0].lastIndex,!(n=a[1].exec(t)))return null;var s=a[1].lastIndex;o.push(t.slice(i,s)),a[0].lastIndex=a[1].lastIndex}return 0==o.length?null:o}}();function Jr(e){return e?e.content&&e.type?Tr(e.content,!0):e.data?et(e.data):e.asNodeBuffer&&st?et(e.asNodeBuffer().toString("binary")):e.asBinary?et(e.asBinary()):e._data&&e._data.getContent?et(Tr(Array.prototype.slice.call(e._data.getContent(),0))):null:null}function $r(e){if(!e)return null;if(e.data)return Je(e.data);if(e.asNodeBuffer&&st)return e.asNodeBuffer();if(e._data&&e._data.getContent){var t=e._data.getContent();return"string"==typeof t?Je(t):Array.prototype.slice.call(t)}return e.content&&e.type?e.content:null}function qr(e,t){for(var r=e.FullPaths||mr(e.files),n=t.toLowerCase().replace(/[\/]/g,"\\"),o=n.replace(/\\/g,"/"),a=0;a<r.length;++a){var i=r[a].replace(/^Root Entry[\/]/,"").toLowerCase();if(n==i||o==i)return e.files?e.files[r[a]]:e.FileIndex[a]}return null}function en(e,t){var r=qr(e,t);if(null==r)throw new Error("Cannot find file "+t+" in zip");return r}function tn(e,t,r){if(!r)return(n=en(e,t))&&".bin"===n.name.slice(-4)?$r(n):Jr(n);var n;if(!t)return null;try{return tn(e,t)}catch(o6){return null}}function rn(e,t,r){if(!r)return Jr(en(e,t));if(!t)return null;try{return rn(e,t)}catch(o6){return null}}function nn(e,t,r){if(!r)return $r(en(e,t));if(!t)return null;try{return nn(e,t)}catch(o6){return null}}function on(e){for(var t=e.FullPaths||mr(e.files),r=[],n=0;n<t.length;++n)"/"!=t[n].slice(-1)&&r.push(t[n].replace(/^Root Entry[\/]/,""));return r.sort()}function an(e,t,r){if(e.FullPaths){var n;if(Array.isArray(r)&&"string"==typeof r[0]&&(r=r.join("")),"string"==typeof r)return n=st?lt(r):function(e){for(var t=[],r=0,n=e.length+250,o=ut(e.length+255),a=0;a<e.length;++a){var i=e.charCodeAt(a);if(i<128)o[r++]=i;else if(i<2048)o[r++]=192|i>>6&31,o[r++]=128|63&i;else if(i>=55296&&i<57344){i=64+(1023&i);var s=1023&e.charCodeAt(++a);o[r++]=240|i>>8&7,o[r++]=128|i>>2&63,o[r++]=128|s>>6&15|(3&i)<<4,o[r++]=128|63&s}else o[r++]=224|i>>12&15,o[r++]=128|i>>6&63,o[r++]=128|63&i;r>n&&(t.push(o.slice(0,r)),r=0,o=ut(65535),n=65530)}return t.push(o.slice(0,r)),gt(t)}(r),fr.utils.cfb_add(e,t,n);fr.utils.cfb_add(e,t,r)}else e.file(t,r)}function sn(){return fr.utils.cfb_new()}function ln(e,t){switch(t.type){case"base64":return fr.read(e,{type:"base64"});case"binary":return fr.read(e,{type:"binary"});case"buffer":case"array":return fr.read(e,{type:"buffer"})}throw new Error("Unrecognized type "+t.type)}function cn(e,t){if("/"==e.charAt(0))return e.slice(1);var r=t.split("/");"/"!=t.slice(-1)&&r.pop();for(var n=e.split("/");0!==n.length;){var o=n.shift();".."===o?r.pop():"."!==o&&r.push(o)}return r.join("/")}var un='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r\n',dn=/\s([^"\s?>\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g,fn=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?<>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'"<>\s=]+))*\s*[\/\?]?>/gm,pn=un.match(fn)?fn:/<[^<>]*>/g,hn=/<\w*:/,mn=/<(\/?)\w+:/;function gn(e,t,r){for(var n={},o=0,a=0;o!==e.length&&(32!==(a=e.charCodeAt(o))&&10!==a&&13!==a);++o);if(t||(n[0]=e.slice(0,o)),o===e.length)return n;var i=e.match(dn),s=0,l="",c=0,u="",d="",f=1;if(i)for(c=0;c!=i.length;++c){for(d=i[c].slice(1),a=0;a!=d.length&&61!==d.charCodeAt(a);++a);for(u=d.slice(0,a).trim();32==d.charCodeAt(a+1);)++a;for(f=34==(o=d.charCodeAt(a+1))||39==o?1:0,l=d.slice(a+1+f,d.length-f),s=0;s!=u.length&&58!==u.charCodeAt(s);++s);if(s===u.length)u.indexOf("_")>0&&(u=u.slice(0,u.indexOf("_"))),n[u]=l,r||(n[u.toLowerCase()]=l);else{var p=(5===s&&"xmlns"===u.slice(0,5)?"xmlns":"")+u.slice(s+1);if(n[p]&&"ext"==u.slice(s-3,s))continue;n[p]=l,r||(n[p.toLowerCase()]=l)}}return n}function vn(e,t,r){for(var n={},o=0,a=0;o!==e.length&&(32!==(a=e.charCodeAt(o))&&10!==a&&13!==a);++o);if(t||(n[0]=e.slice(0,o)),o===e.length)return n;var i=e.match(dn),s="",l=0,c="",u="",d=1;if(i)for(l=0;l!=i.length;++l){for(u=i[l].slice(1),a=0;a!=u.length&&61!==u.charCodeAt(a);++a);for(c=u.slice(0,a).trim();32==u.charCodeAt(a+1);)++a;d=34==(o=u.charCodeAt(a+1))||39==o?1:0,s=u.slice(a+1+d,u.length-d),c.indexOf("_")>0&&(c=c.slice(0,c.indexOf("_"))),n[c]=s,r||(n[c.toLowerCase()]=s)}return n}function yn(e){return e.replace(mn,"<$1")}var bn={"&quot;":'"',"&apos;":"'","&gt;":">","&lt;":"<","&amp;":"&"},wn=vr(bn),xn=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,t=/_x([\da-fA-F]{4})_/gi;function r(n){var o=n+"",a=o.indexOf("<![CDATA[");if(-1==a)return o.replace(e,(function(e,t){return bn[e]||String.fromCharCode(parseInt(t,e.indexOf("x")>-1?16:10))||e})).replace(t,(function(e,t){return String.fromCharCode(parseInt(t,16))}));var i=o.indexOf("]]>");return r(o.slice(0,a))+o.slice(a+9,i)+r(o.slice(i+3))}return function(e,t){var n=r(e);return t?n.replace(/\r\n/g,"\n"):n}}(),Sn=/[&<>'"]/g,An=/[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;function kn(e){return(e+"").replace(Sn,(function(e){return wn[e]})).replace(An,(function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"}))}function Cn(e){return kn(e).replace(/ /g,"_x0020_")}var In=/[\u0000-\u001f]/g;function En(e){return(e+"").replace(Sn,(function(e){return wn[e]})).replace(/\n/g,"<br/>").replace(In,(function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"}))}var Dn=function(){var e=/&#(\d+);/g;function t(e,t){return String.fromCharCode(parseInt(t,10))}return function(r){return r.replace(e,t)}}();function Tn(e){switch(e){case 1:case!0:case"1":case"true":return!0;case 0:case!1:case"0":case"false":return!1}return!1}function On(e){for(var t="",r=0,n=0,o=0,a=0,i=0,s=0;r<e.length;)(n=e.charCodeAt(r++))<128?t+=String.fromCharCode(n):(o=e.charCodeAt(r++),n>191&&n<224?(i=(31&n)<<6,i|=63&o,t+=String.fromCharCode(i)):(a=e.charCodeAt(r++),n<240?t+=String.fromCharCode((15&n)<<12|(63&o)<<6|63&a):(s=((7&n)<<18|(63&o)<<12|(63&a)<<6|63&(i=e.charCodeAt(r++)))-65536,t+=String.fromCharCode(55296+(s>>>10&1023)),t+=String.fromCharCode(56320+(1023&s)))));return t}function Mn(e){var t,r,n,o=ut(2*e.length),a=1,i=0,s=0;for(r=0;r<e.length;r+=a)a=1,(n=e.charCodeAt(r))<128?t=n:n<224?(t=64*(31&n)+(63&e.charCodeAt(r+1)),a=2):n<240?(t=4096*(15&n)+64*(63&e.charCodeAt(r+1))+(63&e.charCodeAt(r+2)),a=3):(a=4,t=262144*(7&n)+4096*(63&e.charCodeAt(r+1))+64*(63&e.charCodeAt(r+2))+(63&e.charCodeAt(r+3)),s=55296+((t-=65536)>>>10&1023),t=56320+(1023&t)),0!==s&&(o[i++]=255&s,o[i++]=s>>>8,s=0),o[i++]=t%256,o[i++]=t>>>8;return o.slice(0,i).toString("ucs2")}function Pn(e){return lt(e,"binary").toString("utf8")}var jn="foo bar baz\xe2\x98\x83\xf0\x9f\x8d\xa3",Rn=st&&(Pn(jn)==On(jn)&&Pn||Mn(jn)==On(jn)&&Mn)||On,_n=st?function(e){return lt(e,"utf8").toString("binary")}:function(e){for(var t=[],r=0,n=0,o=0;r<e.length;)switch(n=e.charCodeAt(r++),!0){case n<128:t.push(String.fromCharCode(n));break;case n<2048:t.push(String.fromCharCode(192+(n>>6))),t.push(String.fromCharCode(128+(63&n)));break;case n>=55296&&n<57344:n-=55296,o=e.charCodeAt(r++)-56320+(n<<10),t.push(String.fromCharCode(240+(o>>18&7))),t.push(String.fromCharCode(144+(o>>12&63))),t.push(String.fromCharCode(128+(o>>6&63))),t.push(String.fromCharCode(128+(63&o)));break;default:t.push(String.fromCharCode(224+(n>>12))),t.push(String.fromCharCode(128+(n>>6&63))),t.push(String.fromCharCode(128+(63&n)))}return t.join("")},Nn=function(){var e=[["nbsp"," "],["middot","\xb7"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map((function(e){return[new RegExp("&"+e[0]+";","ig"),e[1]]}));return function(t){for(var r=t.replace(/^[\t\n\r ]+/,"").replace(/(^|[^\t\n\r ])[\t\n\r ]+$/,"$1").replace(/>\s+/g,">").replace(/\b\s+</g,"<").replace(/[\t\n\r ]+/g," ").replace(/<\s*[bB][rR]\s*\/?>/g,"\n").replace(/<[^<>]*>/g,""),n=0;n<e.length;++n)r=r.replace(e[n][0],e[n][1]);return r}}(),Ln=/<\/?(?:vt:)?variant>/g,Un=/<(?:vt:)([^<"'>]*)>([\s\S]*)</;function Bn(e,t){var r=gn(e),n=Qr(e,r.baseType)||[],o=[];if(n.length!=r.size){if(t.WTF)throw new Error("unexpected vector length "+n.length+" != "+r.size);return o}return n.forEach((function(e){var t=e.replace(Ln,"").match(Un);t&&o.push({v:Rn(t[2]),t:t[1]})})),o}var Fn=/(^\s|\s$|\n)/;function zn(e,t){return"<"+e+(t.match(Fn)?' xml:space="preserve"':"")+">"+t+"</"+e+">"}function Wn(e){return mr(e).map((function(t){return" "+t+'="'+e[t]+'"'})).join("")}function Hn(e,t,r){return"<"+e+(null!=r?Wn(r):"")+(null!=t?(t.match(Fn)?' xml:space="preserve"':"")+">"+t+"</"+e:"/")+">"}function Yn(e,t){try{return e.toISOString().replace(/\.\d*/,"")}catch(o6){if(t)throw o6}return""}function Vn(e){if(st&&Buffer.isBuffer(e))return e.toString("utf8");if("string"===typeof e)return e;if("undefined"!==typeof Uint8Array&&e instanceof Uint8Array)return Rn(ht(mt(e)));throw new Error("Bad input format: expected Buffer or string")}var Gn=/<([\/]?)([^\s?><!\/:"]*:|)([^\s?<>:\/"]+)(?:\s+[^<>=?"'\s]+="[^"]*?")*\s*[\/]?>/gm,Zn="http://schemas.openxmlformats.org/package/2006/metadata/core-properties",Qn="http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",Kn="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",Xn="http://schemas.openxmlformats.org/package/2006/content-types",Jn="http://schemas.openxmlformats.org/package/2006/relationships",$n="http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",qn="http://purl.org/dc/elements/1.1/",eo="http://purl.org/dc/terms/",to="http://purl.org/dc/dcmitype/",ro="http://schemas.openxmlformats.org/officeDocument/2006/relationships",no="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",oo="http://www.w3.org/2001/XMLSchema-instance",ao="http://www.w3.org/2001/XMLSchema",io=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"],so="urn:schemas-microsoft-com:office:office",lo="urn:schemas-microsoft-com:office:excel",co="urn:schemas-microsoft-com:office:spreadsheet",uo="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",fo="http://macVmlSchemaUri",po="urn:schemas-microsoft-com:vml",ho="http://www.w3.org/TR/REC-html40";var mo=function(e){for(var t=[],r=0;r<e[0].length;++r)if(e[0][r])for(var n=0,o=e[0][r].length;n<o;n+=10240)t.push.apply(t,e[0][r].slice(n,n+10240));return t},go=st?function(e){return e[0].length>0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map((function(e){return Buffer.isBuffer(e)?e:lt(e)}))):mo(e)}:mo,vo=function(e,t,r){for(var n=[],o=t;o<r;o+=2)n.push(String.fromCharCode(Uo(e,o)));return n.join("").replace(vt,"")},yo=st?function(e,t,r){return Buffer.isBuffer(e)&&ct?e.toString("utf16le",t,r).replace(vt,""):vo(e,t,r)}:vo,bo=function(e,t,r){for(var n=[],o=t;o<t+r;++o)n.push(("0"+e[o].toString(16)).slice(-2));return n.join("")},wo=st?function(e,t,r){return Buffer.isBuffer(e)?e.toString("hex",t,t+r):bo(e,t,r)}:bo,xo=function(e,t,r){for(var n=[],o=t;o<r;o++)n.push(String.fromCharCode(Lo(e,o)));return n.join("")},So=st?function(e,t,r){return Buffer.isBuffer(e)?e.toString("utf8",t,r):xo(e,t,r)}:xo,Ao=function(e,t){var r=Fo(e,t);return r>0?So(e,t+4,t+4+r-1):""},ko=Ao,Co=function(e,t){var r=Fo(e,t);return r>0?So(e,t+4,t+4+r-1):""},Io=Co,Eo=function(e,t){var r=2*Fo(e,t);return r>0?So(e,t+4,t+4+r-1):""},Do=Eo,To=function(e,t){var r=Fo(e,t);return r>0?yo(e,t+4,t+4+r):""},Oo=To,Mo=function(e,t){var r=Fo(e,t);return r>0?So(e,t+4,t+4+r):""},Po=Mo,jo=function(e,t){return function(e,t){for(var r=1-2*(e[t+7]>>>7),n=((127&e[t+7])<<4)+(e[t+6]>>>4&15),o=15&e[t+6],a=5;a>=0;--a)o=256*o+e[t+a];return 2047==n?0==o?r*(1/0):NaN:(0==n?n=-1022:(n-=1023,o+=Math.pow(2,52)),r*Math.pow(2,n-52)*o)}(e,t)},Ro=jo,_o=function(e){return Array.isArray(e)||"undefined"!==typeof Uint8Array&&e instanceof Uint8Array};function No(){yo=function(e,t,r){return Be.utils.decode(1200,e.slice(t,r)).replace(vt,"")},So=function(e,t,r){return Be.utils.decode(65001,e.slice(t,r))},ko=function(e,t){var r=Fo(e,t);return r>0?Be.utils.decode(Ve,e.slice(t+4,t+4+r-1)):""},Io=function(e,t){var r=Fo(e,t);return r>0?Be.utils.decode(Ye,e.slice(t+4,t+4+r-1)):""},Do=function(e,t){var r=2*Fo(e,t);return r>0?Be.utils.decode(1200,e.slice(t+4,t+4+r-1)):""},Oo=function(e,t){var r=Fo(e,t);return r>0?Be.utils.decode(1200,e.slice(t+4,t+4+r)):""},Po=function(e,t){var r=Fo(e,t);return r>0?Be.utils.decode(65001,e.slice(t+4,t+4+r)):""}}st&&(ko=function(e,t){if(!Buffer.isBuffer(e))return Ao(e,t);var r=e.readUInt32LE(t);return r>0?e.toString("utf8",t+4,t+4+r-1):""},Io=function(e,t){if(!Buffer.isBuffer(e))return Co(e,t);var r=e.readUInt32LE(t);return r>0?e.toString("utf8",t+4,t+4+r-1):""},Do=function(e,t){if(!Buffer.isBuffer(e)||!ct)return Eo(e,t);var r=2*e.readUInt32LE(t);return e.toString("utf16le",t+4,t+4+r-1)},Oo=function(e,t){if(!Buffer.isBuffer(e)||!ct)return To(e,t);var r=e.readUInt32LE(t);return e.toString("utf16le",t+4,t+4+r)},Po=function(e,t){if(!Buffer.isBuffer(e))return Mo(e,t);var r=e.readUInt32LE(t);return e.toString("utf8",t+4,t+4+r)},Ro=function(e,t){return Buffer.isBuffer(e)?e.readDoubleLE(t):jo(e,t)},_o=function(e){return Buffer.isBuffer(e)||Array.isArray(e)||"undefined"!==typeof Uint8Array&&e instanceof Uint8Array}),"undefined"!==typeof Be&&No();var Lo=function(e,t){return e[t]},Uo=function(e,t){return 256*e[t+1]+e[t]},Bo=function(e,t){var r=256*e[t+1]+e[t];return r<32768?r:-1*(65535-r+1)},Fo=function(e,t){return e[t+3]*(1<<24)+(e[t+2]<<16)+(e[t+1]<<8)+e[t]},zo=function(e,t){return e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]},Wo=function(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]};function Ho(e,t){var r,n,o,a,i,s,l="",c=[];switch(t){case"dbcs":if(s=this.l,st&&Buffer.isBuffer(this)&&ct)l=this.slice(this.l,this.l+2*e).toString("utf16le");else for(i=0;i<e;++i)l+=String.fromCharCode(Uo(this,s)),s+=2;e*=2;break;case"utf8":l=So(this,this.l,this.l+e);break;case"utf16le":e*=2,l=yo(this,this.l,this.l+e);break;case"wstr":if("undefined"===typeof Be)return Ho.call(this,e,"dbcs");l=Be.utils.decode(Ye,this.slice(this.l,this.l+2*e)),e*=2;break;case"lpstr-ansi":l=ko(this,this.l),e=4+Fo(this,this.l);break;case"lpstr-cp":l=Io(this,this.l),e=4+Fo(this,this.l);break;case"lpwstr":l=Do(this,this.l),e=4+2*Fo(this,this.l);break;case"lpp4":e=4+Fo(this,this.l),l=Oo(this,this.l),2&e&&(e+=2);break;case"8lpp4":e=4+Fo(this,this.l),l=Po(this,this.l),3&e&&(e+=4-(3&e));break;case"cstr":for(e=0,l="";0!==(o=Lo(this,this.l+e++));)c.push(tt(o));l=c.join("");break;case"_wstr":for(e=0,l="";0!==(o=Uo(this,this.l+e));)c.push(tt(o)),e+=2;e+=2,l=c.join("");break;case"dbcs-cont":for(l="",s=this.l,i=0;i<e;++i){if(this.lens&&-1!==this.lens.indexOf(s))return o=Lo(this,s),this.l=s+1,a=Ho.call(this,e-i,o?"dbcs-cont":"sbcs-cont"),c.join("")+a;c.push(tt(Uo(this,s))),s+=2}l=c.join(""),e*=2;break;case"cpstr":if("undefined"!==typeof Be){l=Be.utils.decode(Ye,this.slice(this.l,this.l+e));break}case"sbcs-cont":for(l="",s=this.l,i=0;i!=e;++i){if(this.lens&&-1!==this.lens.indexOf(s))return o=Lo(this,s),this.l=s+1,a=Ho.call(this,e-i,o?"dbcs-cont":"sbcs-cont"),c.join("")+a;c.push(tt(Lo(this,s))),s+=1}l=c.join("");break;default:switch(e){case 1:return r=Lo(this,this.l),this.l++,r;case 2:return r=("i"===t?Bo:Uo)(this,this.l),this.l+=2,r;case 4:case-4:return"i"===t||0===(128&this[this.l+3])?(r=(e>0?zo:Wo)(this,this.l),this.l+=4,r):(n=Fo(this,this.l),this.l+=4,n);case 8:case-8:if("f"===t)return n=8==e?Ro(this,this.l):Ro([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0),this.l+=8,n;e=8;case 16:l=wo(this,this.l,e)}}return this.l+=e,l}var Yo=function(e,t,r){e[r]=255&t,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24&255},Vo=function(e,t,r){e[r]=255&t,e[r+1]=t>>8&255,e[r+2]=t>>16&255,e[r+3]=t>>24&255},Go=function(e,t,r){e[r]=255&t,e[r+1]=t>>>8&255};function Zo(e,t,r){var n=0,o=0;if("dbcs"===r){for(o=0;o!=t.length;++o)Go(this,t.charCodeAt(o),this.l+2*o);n=2*t.length}else if("sbcs"===r||"cpstr"==r)if("undefined"!==typeof Be&&874==Ve){for(o=0;o!=t.length;++o){var a=Be.utils.encode(Ve,t.charAt(o));this[this.l+o]=a[0]}n=t.length}else if("undefined"!==typeof Be&&"cpstr"==r){if((a=Be.utils.encode(Ye,t)).length==t.length)for(o=0;o<t.length;++o)0==a[o]&&0!=t.charCodeAt(o)&&(a[o]=95);if(a.length==2*t.length)for(o=0;o<t.length;++o)0==a[2*o]&&0==a[2*o+1]&&0!=t.charCodeAt(o)&&(a[2*o]=95);for(o=0;o<a.length;++o)this[this.l+o]=a[o];n=a.length}else{for(t=t.replace(/[^\x00-\x7F]/g,"_"),o=0;o!=t.length;++o)this[this.l+o]=255&t.charCodeAt(o);n=t.length}else{if("hex"===r){for(;o<e;++o)this[this.l++]=parseInt(t.slice(2*o,2*o+2),16)||0;return this}if("utf16le"===r){var i=Math.min(this.l+e,this.length);for(o=0;o<Math.min(t.length,e);++o){var s=t.charCodeAt(o);this[this.l++]=255&s,this[this.l++]=s>>8}for(;this.l<i;)this[this.l++]=0;return this}switch(e){case 1:n=1,this[this.l]=255&t;break;case 2:n=2,this[this.l]=255&t,t>>>=8,this[this.l+1]=255&t;break;case 3:n=3,this[this.l]=255&t,t>>>=8,this[this.l+1]=255&t,t>>>=8,this[this.l+2]=255&t;break;case 4:n=4,Yo(this,t,this.l);break;case 8:if(n=8,"f"===r){!function(e,t,r){var n=(t<0||1/t==-1/0?1:0)<<7,o=0,a=0,i=n?-t:t;isFinite(i)?0==i?o=a=0:(o=Math.floor(Math.log(i)/Math.LN2),a=i*Math.pow(2,52-o),o<=-1023&&(!isFinite(a)||a<Math.pow(2,52))?o=-1022:(a-=Math.pow(2,52),o+=1023)):(o=2047,a=isNaN(t)?26985:0);for(var s=0;s<=5;++s,a/=256)e[r+s]=255&a;e[r+6]=(15&o)<<4|15&a,e[r+7]=o>>4|n}(this,t,this.l);break}case 16:break;case-4:n=4,Vo(this,t,this.l)}}return this.l+=n,this}function Qo(e,t){var r=wo(this,this.l,e.length>>1);if(r!==e)throw new Error(t+"Expected "+e+" saw "+r);this.l+=e.length>>1}function Ko(e,t){e.l=t,e.read_shift=Ho,e.chk=Qo,e.write_shift=Zo}function Xo(e,t){e.l+=t}function Jo(e){var t=ut(e);return Ko(t,0),t}function $o(e,t,r){if(e){var n,o,a;Ko(e,e.l||0);for(var i=e.length,s=0,l=0;e.l<i;){128&(s=e.read_shift(1))&&(s=(127&s)+((127&e.read_shift(1))<<7));var c=of[s]||of[65535];for(a=127&(n=e.read_shift(1)),o=1;o<4&&128&n;++o)a+=(127&(n=e.read_shift(1)))<<7*o;l=e.l+a;var u=c.f&&c.f(e,a,r);if(e.l=l,t(u,c,s))return}}}function qo(){var e=[],t=st?16384:2048,r=(st&&Jo(t).copy,function(e){var t=Jo(e);return Ko(t,0),t}),n=r(t),o=function(){n&&(n.l&&(n.length>n.l&&((n=n.slice(0,n.l)).l=n.length),n.length>0&&e.push(n)),n=null)},a=function(e){return n&&e<n.length-n.l?n:(o(),n=r(Math.max(e+1,t)))};return{next:a,push:function(e){o(),null==(n=e).l&&(n.l=n.length),a(t)},end:function(){return o(),gt(e)},_bufs:e,end2:function(){return o(),e}}}function ea(e,t,r,n){var o,a=+t;if(!isNaN(a)){n||(n=of[a].p||(r||[]).length||0),o=1+(a>=128?1:0)+1,n>=128&&++o,n>=16384&&++o,n>=2097152&&++o;var i=e.next(o);a<=127?i.write_shift(1,a):(i.write_shift(1,128+(127&a)),i.write_shift(1,a>>7));for(var s=0;4!=s;++s){if(!(n>=128)){i.write_shift(1,n);break}i.write_shift(1,128+(127&n)),n>>=7}n>0&&_o(r)&&e.push(r)}}function ta(e,t,r){var n=Or(e);if(t.s?(n.cRel&&(n.c+=t.s.c),n.rRel&&(n.r+=t.s.r)):(n.cRel&&(n.c+=t.c),n.rRel&&(n.r+=t.r)),!r||r.biff<12){for(;n.c>=256;)n.c-=256;for(;n.r>=65536;)n.r-=65536}return n}function ra(e,t,r){var n=Or(e);return n.s=ta(n.s,t.s,r),n.e=ta(n.e,t.s,r),n}function na(e,t){if(e.cRel&&e.c<0)for(e=Or(e);e.c<0;)e.c+=t>8?16384:256;if(e.rRel&&e.r<0)for(e=Or(e);e.r<0;)e.r+=t>8?1048576:t>5?65536:16384;var r=ua(e);return e.cRel||null==e.cRel||(r=r.replace(/^([A-Z])/,"$$$1")),e.rRel||null==e.rRel||(r=function(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}(r)),r}function oa(e,t){return 0!=e.s.r||e.s.rRel||e.e.r!=(t.biff>=12?1048575:t.biff>=8?65536:16384)||e.e.rRel?0!=e.s.c||e.s.cRel||e.e.c!=(t.biff>=12?16383:255)||e.e.cRel?na(e.s,t.biff)+":"+na(e.e,t.biff):(e.s.rRel?"":"$")+ia(e.s.r)+":"+(e.e.rRel?"":"$")+ia(e.e.r):(e.s.cRel?"":"$")+la(e.s.c)+":"+(e.e.cRel?"":"$")+la(e.e.c)}function aa(e){return parseInt(e.replace(/\$(\d+)$/,"$1"),10)-1}function ia(e){return""+(e+1)}function sa(e){for(var t=e.replace(/^\$([A-Z])/,"$1"),r=0,n=0;n!==t.length;++n)r=26*r+t.charCodeAt(n)-64;return r-1}function la(e){if(e<0)throw new Error("invalid column "+e);var t="";for(++e;e;e=Math.floor((e-1)/26))t=String.fromCharCode((e-1)%26+65)+t;return t}function ca(e){for(var t=0,r=0,n=0;n<e.length;++n){var o=e.charCodeAt(n);o>=48&&o<=57?t=10*t+(o-48):o>=65&&o<=90&&(r=26*r+(o-64))}return{c:r-1,r:t-1}}function ua(e){for(var t=e.c+1,r="";t;t=(t-1)/26|0)r=String.fromCharCode((t-1)%26+65)+r;return r+(e.r+1)}function da(e){var t=e.indexOf(":");return-1==t?{s:ca(e),e:ca(e)}:{s:ca(e.slice(0,t)),e:ca(e.slice(t+1))}}function fa(e,t){return"undefined"===typeof t||"number"===typeof t?fa(e.s,e.e):("string"!==typeof e&&(e=ua(e)),"string"!==typeof t&&(t=ua(t)),e==t?e:e+":"+t)}function pa(e){var t=da(e);return"$"+la(t.s.c)+"$"+ia(t.s.r)+":$"+la(t.e.c)+"$"+ia(t.e.r)}function ha(e,t){if(!e&&!(t&&t.biff<=5&&t.biff>=2))throw new Error("empty sheet name");return/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e)?"'"+e.replace(/'/g,"''")+"'":e}function ma(e){var t={s:{c:0,r:0},e:{c:0,r:0}},r=0,n=0,o=0,a=e.length;for(r=0;n<a&&!((o=e.charCodeAt(n)-64)<1||o>26);++n)r=26*r+o;for(t.s.c=--r,r=0;n<a&&!((o=e.charCodeAt(n)-48)<0||o>9);++n)r=10*r+o;if(t.s.r=--r,n===a||10!=o)return t.e.c=t.s.c,t.e.r=t.s.r,t;for(++n,r=0;n!=a&&!((o=e.charCodeAt(n)-64)<1||o>26);++n)r=26*r+o;for(t.e.c=--r,r=0;n!=a&&!((o=e.charCodeAt(n)-48)<0||o>9);++n)r=10*r+o;return t.e.r=--r,t}function ga(e,t){var r="d"==e.t&&t instanceof Date;if(null!=e.z)try{return e.w=rr(e.z,r?Sr(t):t)}catch(o6){}try{return e.w=rr((e.XF||{}).numFmtId||(r?14:0),r?Sr(t):t)}catch(o6){return""+t}}function va(e,t,r){return null==e||null==e.t||"z"==e.t?"":void 0!==e.w?e.w:("d"==e.t&&!e.z&&r&&r.dateNF&&(e.z=r.dateNF),"e"==e.t?ri[e.v]||e.v:ga(e,void 0==t?e.v:t))}function ya(e,t){var r=t&&t.sheet?t.sheet:"Sheet1",n={};return n[r]=e,{SheetNames:[r],Sheets:n}}function ba(e,t,r){var n=r||{},o=e?null!=e["!data"]:n.dense;var a=e||(o?{"!data":[]}:{});o&&!a["!data"]&&(a["!data"]=[]);var i=0,s=0;if(a&&null!=n.origin)if("number"==typeof n.origin)i=n.origin;else{var l="string"==typeof n.origin?ca(n.origin):n.origin;i=l.r,s=l.c}var c={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(a["!ref"]){var u=ma(a["!ref"]);c.s.c=u.s.c,c.s.r=u.s.r,c.e.c=Math.max(c.e.c,u.e.c),c.e.r=Math.max(c.e.r,u.e.r),-1==i&&(c.e.r=i=a["!ref"]?u.e.r+1:0)}else c.s.c=c.e.c=c.s.r=c.e.r=0;for(var d=[],f=!1,p=0;p!=t.length;++p)if(t[p]){if(!Array.isArray(t[p]))throw new Error("aoa_to_sheet expects an array of arrays");var h=i+p;o&&(a["!data"][h]||(a["!data"][h]=[]),d=a["!data"][h]);for(var m=t[p],g=0;g!=m.length;++g)if("undefined"!==typeof m[g]){var v={v:m[g],t:""},y=s+g;if(c.s.r>h&&(c.s.r=h),c.s.c>y&&(c.s.c=y),c.e.r<h&&(c.e.r=h),c.e.c<y&&(c.e.c=y),f=!0,!m[g]||"object"!==typeof m[g]||Array.isArray(m[g])||m[g]instanceof Date)if(Array.isArray(v.v)&&(v.f=m[g][1],v.v=v.v[0]),null===v.v)if(v.f)v.t="n";else if(n.nullError)v.t="e",v.v=0;else{if(!n.sheetStubs)continue;v.t="z"}else"number"===typeof v.v?isFinite(v.v)?v.t="n":isNaN(v.v)?(v.t="e",v.v=15):(v.t="e",v.v=7):"boolean"===typeof v.v?v.t="b":v.v instanceof Date?(v.z=n.dateNF||Dt[14],n.UTC||(v.v=zr(v.v)),n.cellDates?(v.t="d",v.w=rr(v.z,Sr(v.v,n.date1904))):(v.t="n",v.v=Sr(v.v,n.date1904),v.w=rr(v.z,v.v))):v.t="s";else v=m[g];if(o)d[y]&&d[y].z&&(v.z=d[y].z),d[y]=v;else{var b=la(y)+(h+1);a[b]&&a[b].z&&(v.z=a[b].z),a[b]=v}}}return f&&c.s.c<104e5&&(a["!ref"]=fa(c)),a}function wa(e,t){return ba(null,e,t)}function xa(e,t){return t||(t=Jo(4)),t.write_shift(4,e),t}function Sa(e){var t=e.read_shift(4);return 0===t?"":e.read_shift(t,"dbcs")}function Aa(e,t){var r=!1;return null==t&&(r=!0,t=Jo(4+2*e.length)),t.write_shift(4,e.length),e.length>0&&t.write_shift(0,e,"dbcs"),r?t.slice(0,t.l):t}function ka(e){return{ich:e.read_shift(2),ifnt:e.read_shift(2)}}function Ca(e,t){var r=e.l,n=e.read_shift(1),o=Sa(e),a=[],i={t:o,h:o};if(0!==(1&n)){for(var s=e.read_shift(4),l=0;l!=s;++l)a.push(ka(e));i.r=a}else i.r=[{ich:0,ifnt:0}];return e.l=r+t,i}var Ia=Ca;function Ea(e,t){var r=!1;return null==t&&(r=!0,t=Jo(23+4*e.t.length)),t.write_shift(1,1),Aa(e.t,t),t.write_shift(4,1),function(e,t){t||(t=Jo(4)),t.write_shift(2,e.ich||0),t.write_shift(2,e.ifnt||0)}({ich:0,ifnt:0},t),r?t.slice(0,t.l):t}function Da(e){var t=e.read_shift(4),r=e.read_shift(2);return r+=e.read_shift(1)<<16,e.l++,{c:t,iStyleRef:r}}function Ta(e,t){return null==t&&(t=Jo(8)),t.write_shift(-4,e.c),t.write_shift(3,e.iStyleRef||e.s),t.write_shift(1,0),t}function Oa(e){var t=e.read_shift(2);return t+=e.read_shift(1)<<16,e.l++,{c:-1,iStyleRef:t}}function Ma(e,t){return null==t&&(t=Jo(4)),t.write_shift(3,e.iStyleRef||e.s),t.write_shift(1,0),t}var Pa=Sa,ja=Aa;function Ra(e){var t=e.read_shift(4);return 0===t||4294967295===t?"":e.read_shift(t,"dbcs")}function _a(e,t){var r=!1;return null==t&&(r=!0,t=Jo(127)),t.write_shift(4,e.length>0?e.length:4294967295),e.length>0&&t.write_shift(0,e,"dbcs"),r?t.slice(0,t.l):t}var Na=Sa,La=Ra,Ua=_a;function Ba(e){var t=e.slice(e.l,e.l+4),r=1&t[0],n=2&t[0];e.l+=4;var o=0===n?Ro([0,0,0,0,252&t[0],t[1],t[2],t[3]],0):zo(t,0)>>2;return r?o/100:o}function Fa(e,t){null==t&&(t=Jo(4));var r=0,n=0,o=100*e;if(e==(0|e)&&e>=-(1<<29)&&e<1<<29?n=1:o==(0|o)&&o>=-(1<<29)&&o<1<<29&&(n=1,r=1),!n)throw new Error("unsupported RkNumber "+e);t.write_shift(-4,((r?o:e)<<2)+(r+2))}function za(e){var t={s:{},e:{}};return t.s.r=e.read_shift(4),t.e.r=e.read_shift(4),t.s.c=e.read_shift(4),t.e.c=e.read_shift(4),t}var Wa=za,Ha=function(e,t){return t||(t=Jo(16)),t.write_shift(4,e.s.r),t.write_shift(4,e.e.r),t.write_shift(4,e.s.c),t.write_shift(4,e.e.c),t};function Ya(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e.read_shift(8,"f")}function Va(e,t){return(t||Jo(8)).write_shift(8,e,"f")}function Ga(e,t){if(t||(t=Jo(8)),!e||e.auto)return t.write_shift(4,0),t.write_shift(4,0),t;null!=e.index?(t.write_shift(1,2),t.write_shift(1,e.index)):null!=e.theme?(t.write_shift(1,6),t.write_shift(1,e.theme)):(t.write_shift(1,5),t.write_shift(1,0));var r=e.tint||0;if(r>0?r*=32767:r<0&&(r*=32768),t.write_shift(2,r),e.rgb&&null==e.theme){var n=e.rgb||"FFFFFF";"number"==typeof n&&(n=("000000"+n.toString(16)).slice(-6)),t.write_shift(1,parseInt(n.slice(0,2),16)),t.write_shift(1,parseInt(n.slice(2,4),16)),t.write_shift(1,parseInt(n.slice(4,6),16)),t.write_shift(1,255)}else t.write_shift(2,0),t.write_shift(1,0),t.write_shift(1,0);return t}function Za(e,t){var r=e.read_shift(4);switch(r){case 0:return"";case 4294967295:case 4294967294:return{2:"BITMAP",3:"METAFILEPICT",8:"DIB",14:"ENHMETAFILE"}[e.read_shift(4)]||""}if(r>400)throw new Error("Unsupported Clipboard: "+r.toString(16));return e.l-=4,e.read_shift(0,1==t?"lpstr":"lpwstr")}var Qa=80,Ka=[Qa,81],Xa={1:{n:"CodePage",t:2},2:{n:"Category",t:Qa},3:{n:"PresentationFormat",t:Qa},4:{n:"ByteCount",t:3},5:{n:"LineCount",t:3},6:{n:"ParagraphCount",t:3},7:{n:"SlideCount",t:3},8:{n:"NoteCount",t:3},9:{n:"HiddenCount",t:3},10:{n:"MultimediaClipCount",t:3},11:{n:"ScaleCrop",t:11},12:{n:"HeadingPairs",t:4108},13:{n:"TitlesOfParts",t:4126},14:{n:"Manager",t:Qa},15:{n:"Company",t:Qa},16:{n:"LinksUpToDate",t:11},17:{n:"CharacterCount",t:3},19:{n:"SharedDoc",t:11},22:{n:"HyperlinksChanged",t:11},23:{n:"AppVersion",t:3,p:"version"},24:{n:"DigSig",t:65},26:{n:"ContentType",t:Qa},27:{n:"ContentStatus",t:Qa},28:{n:"Language",t:Qa},29:{n:"Version",t:Qa},255:{},2147483648:{n:"Locale",t:19},2147483651:{n:"Behavior",t:19},1919054434:{}},Ja={1:{n:"CodePage",t:2},2:{n:"Title",t:Qa},3:{n:"Subject",t:Qa},4:{n:"Author",t:Qa},5:{n:"Keywords",t:Qa},6:{n:"Comments",t:Qa},7:{n:"Template",t:Qa},8:{n:"LastAuthor",t:Qa},9:{n:"RevNumber",t:Qa},10:{n:"EditTime",t:64},11:{n:"LastPrinted",t:64},12:{n:"CreatedDate",t:64},13:{n:"ModifiedDate",t:64},14:{n:"PageCount",t:3},15:{n:"WordCount",t:3},16:{n:"CharCount",t:3},17:{n:"Thumbnail",t:71},18:{n:"Application",t:Qa},19:{n:"DocSecurity",t:3},255:{},2147483648:{n:"Locale",t:19},2147483651:{n:"Behavior",t:19},1919054434:{}},$a={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"},qa=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function ei(e){return e.map((function(e){return[e>>16&255,e>>8&255,255&e]}))}var ti=Or(ei([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,0,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])),ri={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"},ni={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255},oi=["_xlnm.Consolidate_Area","_xlnm.Auto_Open","_xlnm.Auto_Close","_xlnm.Extract","_xlnm.Database","_xlnm.Criteria","_xlnm.Print_Area","_xlnm.Print_Titles","_xlnm.Recorder","_xlnm.Data_Form","_xlnm.Auto_Activate","_xlnm.Auto_Deactivate","_xlnm.Sheet_Title","_xlnm._FilterDatabase"],ai={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"},ii={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function si(e,t,r){var n,o=function(e){for(var t=[],r=mr(e),n=0;n!==r.length;++n)null==t[e[r[n]]]&&(t[e[r[n]]]=[]),t[e[r[n]]].push(r[n]);return t}(ai),a=[];r||(a[a.length]=un,a[a.length]=Hn("Types",null,{xmlns:Xn,"xmlns:xsd":ao,"xmlns:xsi":oo}),a=a.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map((function(e){return Hn("Default",null,{Extension:e[0],ContentType:e[1]})}))));var i=function(r){e[r]&&e[r].length>0&&(n=e[r][0],a[a.length]=Hn("Override",null,{PartName:("/"==n[0]?"":"/")+n,ContentType:ii[r][t.bookType]||ii[r].xlsx}))},s=function(r){(e[r]||[]).forEach((function(e){a[a.length]=Hn("Override",null,{PartName:("/"==e[0]?"":"/")+e,ContentType:ii[r][t.bookType]||ii[r].xlsx})}))},l=function(t){(e[t]||[]).forEach((function(e){a[a.length]=Hn("Override",null,{PartName:("/"==e[0]?"":"/")+e,ContentType:o[t][0]})}))};return i("workbooks"),s("sheets"),s("charts"),l("themes"),["strs","styles"].forEach(i),["coreprops","extprops","custprops"].forEach(l),l("vba"),l("comments"),l("threadedcomments"),l("drawings"),s("metadata"),l("people"),!r&&a.length>2&&(a[a.length]="</Types>",a[1]=a[1].replace("/>",">")),a.join("")}var li={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",CONN:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function ci(e){var t=e.lastIndexOf("/");return e.slice(0,t+1)+"_rels/"+e.slice(t+1)+".rels"}function ui(e,t){var r={"!id":{}};if(!e)return r;"/"!==t.charAt(0)&&(t="/"+t);var n={};return(e.match(pn)||[]).forEach((function(e){var o=gn(e);if("<Relationship"===o[0]){var a={};a.Type=o.Type,a.Target=xn(o.Target),a.Id=o.Id,o.TargetMode&&(a.TargetMode=o.TargetMode);var i="External"===o.TargetMode?o.Target:cn(o.Target,t);r[i]=a,n[o.Id]=a}})),r["!id"]=n,r}function di(e){var t=[un,Hn("Relationships",null,{xmlns:Jn})];return mr(e["!id"]).forEach((function(r){t[t.length]=Hn("Relationship",null,e["!id"][r])})),t.length>2&&(t[t.length]="</Relationships>",t[1]=t[1].replace("/>",">")),t.join("")}function fi(e,t,r,n,o,a){if(o||(o={}),e["!id"]||(e["!id"]={}),e["!idx"]||(e["!idx"]=1),t<0)for(t=e["!idx"];e["!id"]["rId"+t];++t);if(e["!idx"]=t+1,o.Id="rId"+t,o.Type=n,o.Target=r,a?o.TargetMode=a:[li.HLINK,li.XPATH,li.XMISS].indexOf(o.Type)>-1&&(o.TargetMode="External"),e["!id"][o.Id])throw new Error("Cannot rewrite rId "+t);return e["!id"][o.Id]=o,e[("/"+o.Target).replace("//","/")]=o,t}function pi(e,t,r){return['  <rdf:Description rdf:about="'+e+'">\n','    <rdf:type rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/'+(r||"odf")+"#"+t+'"/>\n',"  </rdf:Description>\n"].join("")}function hi(e,t){return'<office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xlink="http://www.w3.org/1999/xlink" office:version="1.2"><office:meta><meta:generator>SheetJS '+He.version+"</meta:generator></office:meta></office:document-meta>"}var mi=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];function gi(e){var t={};e=Rn(e);for(var r=0;r<mi.length;++r){var n=mi[r],o=Gr(e,n[0]);null!=o&&o.length>0&&(t[n[1]]=xn(o[1])),"date"===n[2]&&t[n[1]]&&(t[n[1]]=Dr(t[n[1]]))}return t}function vi(e,t,r,n,o){null==o[e]&&null!=t&&""!==t&&(o[e]=t,t=kn(t),n[n.length]=r?Hn(e,t,r):zn(e,t))}function yi(e,t){var r=t||{},n=[un,Hn("cp:coreProperties",null,{"xmlns:cp":Zn,"xmlns:dc":qn,"xmlns:dcterms":eo,"xmlns:dcmitype":to,"xmlns:xsi":oo})],o={};if(!e&&!r.Props)return n.join("");e&&(null!=e.CreatedDate&&vi("dcterms:created","string"===typeof e.CreatedDate?e.CreatedDate:Yn(e.CreatedDate,r.WTF),{"xsi:type":"dcterms:W3CDTF"},n,o),null!=e.ModifiedDate&&vi("dcterms:modified","string"===typeof e.ModifiedDate?e.ModifiedDate:Yn(e.ModifiedDate,r.WTF),{"xsi:type":"dcterms:W3CDTF"},n,o));for(var a=0;a!=mi.length;++a){var i=mi[a],s=r.Props&&null!=r.Props[i[1]]?r.Props[i[1]]:e?e[i[1]]:null;!0===s?s="1":!1===s?s="0":"number"==typeof s&&(s=String(s)),null!=s&&vi(i[0],s,null,n,o)}return n.length>2&&(n[n.length]="</cp:coreProperties>",n[1]=n[1].replace("/>",">")),n.join("")}var bi=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]],wi=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function xi(e,t,r,n){var o=[];if("string"==typeof e)o=Bn(e,n);else for(var a=0;a<e.length;++a)o=o.concat(e[a].map((function(e){return{v:e}})));var i="string"==typeof t?Bn(t,n).map((function(e){return e.v})):t,s=0,l=0;if(i.length>0)for(var c=0;c!==o.length;c+=2){switch(l=+o[c+1].v,o[c].v){case"Worksheets":case"\u5de5\u4f5c\u8868":case"\u041b\u0438\u0441\u0442\u044b":case"\u0623\u0648\u0631\u0627\u0642 \u0627\u0644\u0639\u0645\u0644":case"\u30ef\u30fc\u30af\u30b7\u30fc\u30c8":case"\u05d2\u05dc\u05d9\u05d5\u05e0\u05d5\u05ea \u05e2\u05d1\u05d5\u05d3\u05d4":case"Arbeitsbl\xe4tter":case"\xc7al\u0131\u015fma Sayfalar\u0131":case"Feuilles de calcul":case"Fogli di lavoro":case"Folhas de c\xe1lculo":case"Planilhas":case"Regneark":case"Hojas de c\xe1lculo":case"Werkbladen":r.Worksheets=l,r.SheetNames=i.slice(s,s+l);break;case"Named Ranges":case"Rangos con nombre":case"\u540d\u524d\u4ed8\u304d\u4e00\u89a7":case"Benannte Bereiche":case"Navngivne omr\xe5der":r.NamedRanges=l,r.DefinedNames=i.slice(s,s+l);break;case"Charts":case"Diagramme":r.Chartsheets=l,r.ChartNames=i.slice(s,s+l)}s+=l}}function Si(e){var t=[],r=Hn;return e||(e={}),e.Application="SheetJS",t[t.length]=un,t[t.length]=Hn("Properties",null,{xmlns:Kn,"xmlns:vt":no}),bi.forEach((function(n){if(void 0!==e[n[1]]){var o;switch(n[2]){case"string":o=kn(String(e[n[1]]));break;case"bool":o=e[n[1]]?"true":"false"}void 0!==o&&(t[t.length]=r(n[0],o))}})),t[t.length]=r("HeadingPairs",r("vt:vector",r("vt:variant","<vt:lpstr>Worksheets</vt:lpstr>")+r("vt:variant",r("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"})),t[t.length]=r("TitlesOfParts",r("vt:vector",e.SheetNames.map((function(e){return"<vt:lpstr>"+kn(e)+"</vt:lpstr>"})).join(""),{size:e.Worksheets,baseType:"lpstr"})),t.length>2&&(t[t.length]="</Properties>",t[1]=t[1].replace("/>",">")),t.join("")}var Ai=/<[^<>]+>[^<]*/g;function ki(e){var t=[un,Hn("Properties",null,{xmlns:Qn,"xmlns:vt":no})];if(!e)return t.join("");var r=1;return mr(e).forEach((function(n){++r,t[t.length]=Hn("property",function(e,t){switch(typeof e){case"string":var r=Hn("vt:lpwstr",kn(e));return t&&(r=r.replace(/&quot;/g,"_x0022_")),r;case"number":return Hn((0|e)==e?"vt:i4":"vt:r8",kn(String(e)));case"boolean":return Hn("vt:bool",e?"true":"false")}if(e instanceof Date)return Hn("vt:filetime",Yn(e));throw new Error("Unable to serialize "+e)}(e[n],!0),{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid:r,name:kn(n)})})),t.length>2&&(t[t.length]="</Properties>",t[1]=t[1].replace("/>",">")),t.join("")}var Ci,Ii={Title:"Title",Subject:"Subject",Author:"Author",Keywords:"Keywords",Comments:"Description",LastAuthor:"LastAuthor",RevNumber:"Revision",Application:"AppName",LastPrinted:"LastPrinted",CreatedDate:"Created",ModifiedDate:"LastSaved",Category:"Category",Manager:"Manager",Company:"Company",AppVersion:"Version",ContentStatus:"ContentStatus",Identifier:"Identifier",Language:"Language"};function Ei(e,t,r){Ci||(Ci=vr(Ii)),e[t=Ci[t]||t]=r}function Di(e){var t=e.read_shift(4),r=e.read_shift(4);return new Date(1e3*(r/1e7*Math.pow(2,32)+t/1e7-11644473600)).toISOString().replace(/\.000/,"")}function Ti(e,t,r){return 31===t?function(e,t,r){var n=e.read_shift(0,"lpwstr");return r&&(e.l+=4-(n.length+1&3)&3),n}(e):function(e,t,r){var n=e.l,o=e.read_shift(0,"lpstr-cp");if(r)for(;e.l-n&3;)++e.l;return o}(e,0,r)}function Oi(e,t,r){return Ti(e,t,!1===r?0:4)}function Mi(e){var t=e.l,r=Ri(e,81);return 0==e[e.l]&&0==e[e.l+1]&&e.l-t&2&&(e.l+=2),[r,Ri(e,3)]}function Pi(e,t){for(var r=e.read_shift(4),n={},o=0;o!=r;++o){var a=e.read_shift(4),i=e.read_shift(4);n[a]=e.read_shift(i,1200===t?"utf16le":"utf8").replace(vt,"").replace(yt,"!"),1200===t&&i%2&&(e.l+=2)}return 3&e.l&&(e.l=e.l>>3<<2),n}function ji(e){var t=e.read_shift(4),r=e.slice(e.l,e.l+t);return e.l+=t,(3&t)>0&&(e.l+=4-(3&t)&3),r}function Ri(e,t,r){var n,o=e.read_shift(2),a=r||{};if(e.l+=2,12!==t&&o!==t&&-1===Ka.indexOf(t)&&(4126!=(65534&t)||4126!=(65534&o)))throw new Error("Expected type "+t+" saw "+o);switch(12===t?o:t){case 2:return n=e.read_shift(2,"i"),a.raw||(e.l+=2),n;case 3:return n=e.read_shift(4,"i");case 11:return 0!==e.read_shift(4);case 19:return n=e.read_shift(4);case 30:case 31:e.l+=4,val=Oi(e,e[e.l-4]).replace(/(^|[^\u0000])\u0000+$/,"$1");break;case 64:return Di(e);case 65:return ji(e);case 71:return function(e){var t={};return t.Size=e.read_shift(4),e.l+=t.Size+3-(t.Size-1)%4,t}(e);case 80:return Oi(e,o,!a.raw).replace(vt,"");case 81:return function(e,t){if(!t)throw new Error("VtUnalignedString must have positive length");return Ti(e,t,0)}(e,o).replace(vt,"");case 4108:return function(e){for(var t=e.read_shift(4),r=[],n=0;n<t/2;++n)r.push(Mi(e));return r}(e);case 4126:case 4127:return 4127==o?function(e){for(var t=e.read_shift(4),r=[],n=0;n!=t;++n){var o=e.l;r[n]=e.read_shift(0,"lpwstr").replace(vt,""),e.l-o&2&&(e.l+=2)}return r}(e):function(e){for(var t=e.read_shift(4),r=[],n=0;n!=t;++n)r[n]=e.read_shift(0,"lpstr-cp").replace(vt,"");return r}(e);default:throw new Error("TypedPropertyValue unrecognized type "+t+" "+o)}}function _i(e,t){var r=Jo(4),n=Jo(4);switch(r.write_shift(4,80==e?31:e),e){case 3:n.write_shift(-4,t);break;case 5:(n=Jo(8)).write_shift(8,t,"f");break;case 11:n.write_shift(4,t?1:0);break;case 64:n=function(e){var t=("string"==typeof e?new Date(Date.parse(e)):e).getTime()/1e3+11644473600,r=t%Math.pow(2,32),n=(t-r)/Math.pow(2,32);n*=1e7;var o=(r*=1e7)/Math.pow(2,32)|0;o>0&&(r%=Math.pow(2,32),n+=o);var a=Jo(8);return a.write_shift(4,r),a.write_shift(4,n),a}(t);break;case 31:case 80:for((n=Jo(4+2*(t.length+1)+(t.length%2?0:2))).write_shift(4,t.length+1),n.write_shift(0,t,"dbcs");n.l!=n.length;)n.write_shift(1,0);break;default:throw new Error("TypedPropertyValue unrecognized type "+e+" "+t)}return gt([r,n])}function Ni(e,t){var r=e.l,n=e.read_shift(4),o=e.read_shift(4),a=[],i=0,s=0,l=-1,c={};for(i=0;i!=o;++i){var u=e.read_shift(4),d=e.read_shift(4);a[i]=[u,d+r]}a.sort((function(e,t){return e[1]-t[1]}));var f={};for(i=0;i!=o;++i){if(e.l!==a[i][1]){var p=!0;if(i>0&&t)switch(t[a[i-1][0]].t){case 2:e.l+2===a[i][1]&&(e.l+=2,p=!1);break;case 80:case 4108:e.l<=a[i][1]&&(e.l=a[i][1],p=!1)}if((!t||0==i)&&e.l<=a[i][1]&&(p=!1,e.l=a[i][1]),p)throw new Error("Read Error: Expected address "+a[i][1]+" at "+e.l+" :"+i)}if(t){if(0==a[i][0]&&a.length>i+1&&a[i][1]==a[i+1][1])continue;var h=t[a[i][0]];if(f[h.n]=Ri(e,h.t,{raw:!0}),"version"===h.p&&(f[h.n]=String(f[h.n]>>16)+"."+("0000"+String(65535&f[h.n])).slice(-4)),"CodePage"==h.n)switch(f[h.n]){case 0:f[h.n]=1252;case 874:case 932:case 936:case 949:case 950:case 1250:case 1251:case 1253:case 1254:case 1255:case 1256:case 1257:case 1258:case 1e4:case 1200:case 1201:case 1252:case 65e3:case-536:case 65001:case-535:Ke(s=f[h.n]>>>0&65535);break;default:throw new Error("Unsupported CodePage: "+f[h.n])}}else if(1===a[i][0]){if(s=f.CodePage=Ri(e,2),Ke(s),-1!==l){var m=e.l;e.l=a[l][1],c=Pi(e,s),e.l=m}}else if(0===a[i][0]){if(0===s){l=i,e.l=a[i+1][1];continue}c=Pi(e,s)}else{var g,v=c[a[i][0]];switch(e[e.l]){case 65:e.l+=4,g=ji(e);break;case 30:case 31:e.l+=4,g=Oi(e,e[e.l-4]).replace(/(^|[^\u0000])\u0000+$/,"$1");break;case 3:e.l+=4,g=e.read_shift(4,"i");break;case 19:e.l+=4,g=e.read_shift(4);break;case 5:e.l+=4,g=e.read_shift(8,"f");break;case 11:e.l+=4,g=Hi(e,4);break;case 64:e.l+=4,g=Dr(Di(e));break;default:throw new Error("unparsed value: "+e[e.l])}f[v]=g}}return e.l=r+n,f}var Li=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function Ui(e){switch(typeof e){case"boolean":return 11;case"number":return(0|e)==e?3:5;case"string":return 31;case"object":if(e instanceof Date)return 64}return-1}function Bi(e,t,r){var n=Jo(8),o=[],a=[],i=8,s=0,l=Jo(8),c=Jo(8);if(l.write_shift(4,2),l.write_shift(4,1200),c.write_shift(4,1),a.push(l),o.push(c),i+=8+l.length,!t){(c=Jo(8)).write_shift(4,0),o.unshift(c);var u=[Jo(4)];for(u[0].write_shift(4,e.length),s=0;s<e.length;++s){var d=e[s][0];for((l=Jo(8+2*(d.length+1)+(d.length%2?0:2))).write_shift(4,s+2),l.write_shift(4,d.length+1),l.write_shift(0,d,"dbcs");l.l!=l.length;)l.write_shift(1,0);u.push(l)}l=gt(u),a.unshift(l),i+=8+l.length}for(s=0;s<e.length;++s)if((!t||t[e[s][0]])&&!(Li.indexOf(e[s][0])>-1||wi.indexOf(e[s][0])>-1)&&null!=e[s][1]){var f=e[s][1],p=0;if(t){var h=r[p=+t[e[s][0]]];if("version"==h.p&&"string"==typeof f){var m=f.split(".");f=(+m[0]<<16)+(+m[1]||0)}l=_i(h.t,f)}else{var g=Ui(f);-1==g&&(g=31,f=String(f)),l=_i(g,f)}a.push(l),(c=Jo(8)).write_shift(4,t?p:2+s),o.push(c),i+=8+l.length}var v=8*(a.length+1);for(s=0;s<a.length;++s)o[s].write_shift(4,v),v+=a[s].length;return n.write_shift(4,i),n.write_shift(4,a.length),gt([n].concat(o).concat(a))}function Fi(e,t,r){var n=e.content;if(!n)return{};Ko(n,0);var o,a,i,s,l=0;n.chk("feff","Byte Order: "),n.read_shift(2);var c=n.read_shift(4),u=n.read_shift(16);if(u!==fr.utils.consts.HEADER_CLSID&&u!==r)throw new Error("Bad PropertySet CLSID "+u);if(1!==(o=n.read_shift(4))&&2!==o)throw new Error("Unrecognized #Sets: "+o);if(a=n.read_shift(16),s=n.read_shift(4),1===o&&s!==n.l)throw new Error("Length mismatch: "+s+" !== "+n.l);2===o&&(i=n.read_shift(16),l=n.read_shift(4));var d,f=Ni(n,t),p={SystemIdentifier:c};for(var h in f)p[h]=f[h];if(p.FMTID=a,1===o)return p;if(l-n.l==2&&(n.l+=2),n.l!==l)throw new Error("Length mismatch 2: "+n.l+" !== "+l);try{d=Ni(n,null)}catch(o6){}for(h in d)p[h]=d[h];return p.FMTID=[a,i],p}function zi(e,t,r,n,o,a){var i=Jo(o?68:48),s=[i];i.write_shift(2,65534),i.write_shift(2,0),i.write_shift(4,842412599),i.write_shift(16,fr.utils.consts.HEADER_CLSID,"hex"),i.write_shift(4,o?2:1),i.write_shift(16,t,"hex"),i.write_shift(4,o?68:48);var l=Bi(e,r,n);if(s.push(l),o){var c=Bi(o,null,null);i.write_shift(16,a,"hex"),i.write_shift(4,68+l.length),s.push(c)}return gt(s)}function Wi(e,t){return e.read_shift(t),null}function Hi(e,t){return 1===e.read_shift(t)}function Yi(e,t){return t||(t=Jo(2)),t.write_shift(2,+!!e),t}function Vi(e){return e.read_shift(2,"u")}function Gi(e,t){return t||(t=Jo(2)),t.write_shift(2,e),t}function Zi(e,t){return function(e,t,r){for(var n=[],o=e.l+t;e.l<o;)n.push(r(e,o-e.l));if(o!==e.l)throw new Error("Slurp error");return n}(e,t,Vi)}function Qi(e){var t=e.read_shift(1);return 1===e.read_shift(1)?t:1===t}function Ki(e,t,r){return r||(r=Jo(2)),r.write_shift(1,"e"==t?+e:+!!e),r.write_shift(1,"e"==t?1:0),r}function Xi(e,t,r){var n=e.read_shift(r&&r.biff>=12?2:1),o="sbcs-cont",a=Ye;(r&&r.biff>=8&&(Ye=1200),r&&8!=r.biff)?12==r.biff&&(o="wstr"):e.read_shift(1)&&(o="dbcs-cont");r.biff>=2&&r.biff<=5&&(o="cpstr");var i=n?e.read_shift(n,o):"";return Ye=a,i}function Ji(e){var t=Ye;Ye=1200;var r,n=e.read_shift(2),o=e.read_shift(1),a=4&o,i=8&o,s=1+(1&o),l=0,c={};i&&(l=e.read_shift(2)),a&&(r=e.read_shift(4));var u=2==s?"dbcs-cont":"sbcs-cont",d=0===n?"":e.read_shift(n,u);return i&&(e.l+=4*l),a&&(e.l+=r),c.t=d,i||(c.raw="<t>"+c.t+"</t>",c.r=c.t),Ye=t,c}function $i(e){var t=e.t||"",r=Jo(3);r.write_shift(2,t.length),r.write_shift(1,1);var n=Jo(2*t.length);return n.write_shift(2*t.length,t,"utf16le"),gt([r,n])}function qi(e,t,r){if(r){if(r.biff>=2&&r.biff<=5)return e.read_shift(t,"cpstr");if(r.biff>=12)return e.read_shift(t,"dbcs-cont")}return 0===e.read_shift(1)?e.read_shift(t,"sbcs-cont"):e.read_shift(t,"dbcs-cont")}function es(e,t,r){var n=e.read_shift(r&&2==r.biff?1:2);return 0===n?(e.l++,""):qi(e,n,r)}function ts(e,t,r){if(r.biff>5)return es(e,0,r);var n=e.read_shift(1);return 0===n?(e.l++,""):e.read_shift(n,r.biff<=4||!e.lens?"cpstr":"sbcs-cont")}function rs(e,t,r){return r||(r=Jo(3+2*e.length)),r.write_shift(2,e.length),r.write_shift(1,1),r.write_shift(31,e,"utf16le"),r}function ns(e,t){var r=e.read_shift(16);switch(r){case"e0c9ea79f9bace118c8200aa004ba90b":return function(e){var t=e.read_shift(4),r=e.l,n=!1;t>24&&(e.l+=t-24,"795881f43b1d7f48af2c825dc4852763"===e.read_shift(16)&&(n=!0),e.l=r);var o=e.read_shift((n?t-24:t)>>1,"utf16le").replace(vt,"");return n&&(e.l+=24),o}(e);case"0303000000000000c000000000000046":return function(e){for(var t=e.read_shift(2),r="";t-- >0;)r+="../";var n=e.read_shift(0,"lpstr-ansi");if(e.l+=2,57005!=e.read_shift(2))throw new Error("Bad FileMoniker");if(0===e.read_shift(4))return r+n.replace(/\\/g,"/");var o=e.read_shift(4);if(3!=e.read_shift(2))throw new Error("Bad FileMoniker");return r+e.read_shift(o>>1,"utf16le").replace(vt,"")}(e);default:throw new Error("Unsupported Moniker "+r)}}function os(e){var t=e.read_shift(4);return t>0?e.read_shift(t,"utf16le").replace(vt,""):""}function as(e,t){t||(t=Jo(6+2*e.length)),t.write_shift(4,1+e.length);for(var r=0;r<e.length;++r)t.write_shift(2,e.charCodeAt(r));return t.write_shift(2,0),t}function is(e){var t=Jo(512),r=0,n=e.Target;"file://"==n.slice(0,7)&&(n=n.slice(7));var o=n.indexOf("#"),a=o>-1?31:23;switch(n.charAt(0)){case"#":a=28;break;case".":a&=-3}t.write_shift(4,2),t.write_shift(4,a);var i=[8,6815827,6619237,4849780,83];for(r=0;r<i.length;++r)t.write_shift(4,i[r]);if(28==a)as(n=n.slice(1),t);else if(2&a){for(i="e0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),r=0;r<i.length;++r)t.write_shift(1,parseInt(i[r],16));var s=o>-1?n.slice(0,o):n;for(t.write_shift(4,2*(s.length+1)),r=0;r<s.length;++r)t.write_shift(2,s.charCodeAt(r));t.write_shift(2,0),8&a&&as(o>-1?n.slice(o+1):"",t)}else{for(i="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" "),r=0;r<i.length;++r)t.write_shift(1,parseInt(i[r],16));for(var l=0;"../"==n.slice(3*l,3*l+3)||"..\\"==n.slice(3*l,3*l+3);)++l;for(t.write_shift(2,l),t.write_shift(4,n.length-3*l+1),r=0;r<n.length-3*l;++r)t.write_shift(1,255&n.charCodeAt(r+3*l));for(t.write_shift(1,0),t.write_shift(2,65535),t.write_shift(2,57005),r=0;r<6;++r)t.write_shift(4,0)}return t.slice(0,t.l)}function ss(e){return[e.read_shift(1),e.read_shift(1),e.read_shift(1),e.read_shift(1)]}function ls(e,t){var r=ss(e);return r[3]=0,r}function cs(e,t,r){var n={r:e.read_shift(2),c:e.read_shift(2),ixfe:0};if(r&&2==r.biff||7==t){var o=e.read_shift(1);n.ixfe=63&o,e.l+=2}else n.ixfe=e.read_shift(2);return n}function us(e,t,r,n){return n||(n=Jo(6)),n.write_shift(2,e),n.write_shift(2,t),n.write_shift(2,r||0),n}function ds(e,t,r){var n=r.biff>8?4:2;return[e.read_shift(n),e.read_shift(n,"i"),e.read_shift(n,"i")]}function fs(e){return[e.read_shift(2),Ba(e)]}function ps(e){var t=e.read_shift(2),r=e.read_shift(2);return{s:{c:e.read_shift(2),r:t},e:{c:e.read_shift(2),r:r}}}function hs(e,t){return t||(t=Jo(8)),t.write_shift(2,e.s.r),t.write_shift(2,e.e.r),t.write_shift(2,e.s.c),t.write_shift(2,e.e.c),t}function ms(e){var t=e.read_shift(2),r=e.read_shift(2);return{s:{c:e.read_shift(1),r:t},e:{c:e.read_shift(1),r:r}}}var gs=ms;function vs(e){e.l+=4;var t=e.read_shift(2),r=e.read_shift(2),n=e.read_shift(2);return e.l+=12,[r,t,n]}function ys(e){e.l+=2,e.l+=e.read_shift(2)}var bs={0:ys,4:ys,5:ys,6:ys,7:function(e){return e.l+=4,e.cf=e.read_shift(2),{}},8:ys,9:ys,10:ys,11:ys,12:ys,13:function(e){var t={};return e.l+=4,e.l+=16,t.fSharedNote=e.read_shift(2),e.l+=4,t},14:ys,15:ys,16:ys,17:ys,18:ys,19:ys,20:ys,21:vs};function ws(e,t){var r={BIFFVer:0,dt:0};switch(r.BIFFVer=e.read_shift(2),(t-=2)>=2&&(r.dt=e.read_shift(2),e.l-=2),r.BIFFVer){case 1536:case 1280:case 1024:case 768:case 512:case 2:case 7:break;default:if(t>6)throw new Error("Unexpected BIFF Ver "+r.BIFFVer)}return e.read_shift(t),r}function xs(e,t,r){var n=1536,o=16;switch(r.bookType){case"biff8":case"xla":break;case"biff5":n=1280,o=8;break;case"biff4":n=4,o=6;break;case"biff3":n=3,o=6;break;case"biff2":n=2,o=4;break;default:throw new Error("unsupported BIFF version")}var a=Jo(o);return a.write_shift(2,n),a.write_shift(2,t),o>4&&a.write_shift(2,29282),o>6&&a.write_shift(2,1997),o>8&&(a.write_shift(2,49161),a.write_shift(2,1),a.write_shift(2,1798),a.write_shift(2,0)),a}function Ss(e,t){var r=!t||t.biff>=8?2:1,n=Jo(8+r*e.name.length);n.write_shift(4,e.pos),n.write_shift(1,e.hs||0),n.write_shift(1,e.dt),n.write_shift(1,e.name.length),t.biff>=8&&n.write_shift(1,1),n.write_shift(r*e.name.length,e.name,t.biff<8?"sbcs":"utf16le");var o=n.slice(0,n.l);return o.l=n.l,o}function As(e,t,r){var n=0;r&&2==r.biff||(n=e.read_shift(2));var o=e.read_shift(2);return r&&2==r.biff&&(n=1-(o>>15),o&=32767),[{Unsynced:1&n,DyZero:(2&n)>>1,ExAsc:(4&n)>>2,ExDsc:(8&n)>>3},o]}function ks(e,t,r,n){var o=r&&5==r.biff;n||(n=Jo(o?3+t.length:5+2*t.length)),n.write_shift(2,e),n.write_shift(o?1:2,t.length),o||n.write_shift(1,1),n.write_shift((o?1:2)*t.length,t,o?"sbcs":"utf16le");var a=n.length>n.l?n.slice(0,n.l):n;return null==a.l&&(a.l=a.length),a}var Cs=ts;function Is(e,t,r){var n=e.l+t,o=8!=r.biff&&r.biff?2:4,a=e.read_shift(o),i=e.read_shift(o),s=e.read_shift(2),l=e.read_shift(2);return e.l=n,{s:{r:a,c:s},e:{r:i,c:l}}}function Es(e,t,r,n){var o=r&&5==r.biff;n||(n=Jo(o?16:20)),n.write_shift(2,0),e.style?(n.write_shift(2,e.numFmtId||0),n.write_shift(2,65524)):(n.write_shift(2,e.numFmtId||0),n.write_shift(2,t<<4));var a=0;return e.numFmtId>0&&o&&(a|=1024),n.write_shift(4,a),n.write_shift(4,0),o||n.write_shift(4,0),n.write_shift(2,0),n}function Ds(e){var t=Jo(12);return t.l++,t.write_shift(1,e.numFmtId),t.l+=10,t}var Ts=Ds;function Os(e,t,r,n,o,a){var i=Jo(8);return us(e,t,n,i),Ki(r,a,i),i}var Ms=function(e,t,r){return 0===t?"":ts(e,0,r)};function Ps(e,t,r){var n,o=e.read_shift(2),a={fBuiltIn:1&o,fWantAdvise:o>>>1&1,fWantPict:o>>>2&1,fOle:o>>>3&1,fOleLink:o>>>4&1,cf:o>>>5&1023,fIcon:o>>>15&1};return 14849===r.sbcch&&(n=function(e,t,r){e.l+=4,t-=4;var n=e.l+t,o=Xi(e,0,r),a=e.read_shift(2);if(a!==(n-=e.l))throw new Error("Malformed AddinUdf: padding = "+n+" != "+a);return e.l+=a,o}(e,t-2,r)),a.body=n||e.read_shift(t-2),"string"===typeof n&&(a.Name=n),a}function js(e,t,r){var n=e.l+t,o=e.read_shift(2),a=e.read_shift(1),i=e.read_shift(1),s=e.read_shift(r&&2==r.biff?1:2),l=0;(!r||r.biff>=5)&&(5!=r.biff&&(e.l+=2),l=e.read_shift(2),5==r.biff&&(e.l+=2),e.l+=4);var c=qi(e,i,r);32&o&&(c=oi[c.charCodeAt(0)]);var u=n-e.l;r&&2==r.biff&&--u;var d=n!=e.l&&0!==s&&u>0?function(e,t,r,n){var o,a=e.l+t,i=Wc(e,n,r);a!==e.l&&(o=zc(e,a-e.l,i,r));return[i,o]}(e,u,r,s):[];return{chKey:a,Name:c,itab:l,rgce:d}}function Rs(e,t,r){if(r.biff<8)return _s(e,t,r);if(!(r.biff>8)&&t==e[e.l]+(3==e[e.l+1]?1:0)+1)return _s(e,t,r);for(var n=[],o=e.l+t,a=e.read_shift(r.biff>8?4:2);0!==a--;)n.push(ds(e,r.biff,r));if(e.l!=o)throw new Error("Bad ExternSheet: "+e.l+" != "+o);return n}function _s(e,t,r){3==e[e.l+1]&&e[e.l]++;var n=Xi(e,0,r);return 3==n.charCodeAt(0)?n.slice(1):n}function Ns(e,t,r){var n=gs(e,6);switch(r.biff){case 2:e.l++,t-=7;break;case 3:case 4:e.l+=2,t-=8;break;default:e.l+=6,t-=12}return[n,Kc(e,t,r)]}function Ls(e,t,r,n){var o=Jo(6+(n||e.length));return o.write_shift(2,t),o.write_shift(2,r),o.write_shift(2,n||e.length),o.write_shift(e.length,e,"sbcs"),o}var Us={8:function(e,t){var r=e.l+t;e.l+=10;var n=e.read_shift(2);e.l+=4,e.l+=2,e.l+=2,e.l+=2,e.l+=4;var o=e.read_shift(1);return e.l+=o,e.l=r,{fmt:n}}};function Bs(e){var t=Jo(24),r=ca(e[0]);t.write_shift(2,r.r),t.write_shift(2,r.r),t.write_shift(2,r.c),t.write_shift(2,r.c);for(var n="d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),o=0;o<16;++o)t.write_shift(1,parseInt(n[o],16));return gt([t,is(e[1])])}function Fs(e){var t=e[1].Tooltip,r=Jo(10+2*(t.length+1));r.write_shift(2,2048);var n=ca(e[0]);r.write_shift(2,n.r),r.write_shift(2,n.r),r.write_shift(2,n.c),r.write_shift(2,n.c);for(var o=0;o<t.length;++o)r.write_shift(2,t.charCodeAt(o));return r.write_shift(2,0),r}function zs(e,t,r){if(!r.cellStyles)return Xo(e,t);var n=r&&r.biff>=12?4:2,o=e.read_shift(n),a=e.read_shift(n),i=e.read_shift(n),s=e.read_shift(n),l=e.read_shift(2);2==n&&(e.l+=2);var c={s:o,e:a,w:i,ixfe:s,flags:l};return(r.biff>=5||!r.biff)&&(c.level=l>>8&7),c}var Ws=cs,Hs=Zi,Ys=es;function Vs(e,t,r,n,o){return e||(e=Jo(7)),e.write_shift(2,t),e.write_shift(2,r),e.write_shift(1,n||0),e.write_shift(1,o||0),e.write_shift(1,0),e}var Gs=[2,3,48,49,131,139,140,245],Zs=function(){var e={1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127,8:865,9:437,10:850,11:437,13:437,14:850,15:437,16:850,17:437,18:850,19:932,20:850,21:437,22:850,23:865,24:437,25:437,26:850,27:437,28:863,29:850,31:852,34:852,35:852,36:860,37:850,38:866,55:850,64:852,77:936,78:949,79:950,80:874,87:1252,88:1252,89:1252,108:863,134:737,135:852,136:857,204:1257,255:16969},t=vr({1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127});function r(t,r){var n=r||{};n.dateNF||(n.dateNF="yyyymmdd");var o=wa(function(t,r){var n=[],o=ut(1);switch(r.type){case"base64":o=ft(it(t));break;case"binary":o=ft(t);break;case"buffer":case"array":o=t}Ko(o,0);var a=o.read_shift(1),i=!!(136&a),s=!1,l=!1;switch(a){case 2:case 3:case 131:case 139:case 245:break;case 48:case 49:s=!0,i=!0;break;case 140:l=!0;break;default:throw new Error("DBF Unsupported Version: "+a.toString(16))}var c=0,u=521;2==a&&(c=o.read_shift(2)),o.l+=3,2!=a&&(c=o.read_shift(4)),c>1048576&&(c=1e6),2!=a&&(u=o.read_shift(2));var d=o.read_shift(2),f=r.codepage||1252;2!=a&&(o.l+=16,o.read_shift(1),0!==o[o.l]&&(f=e[o[o.l]]),o.l+=1,o.l+=2),l&&(o.l+=36);for(var p=[],h={},m=Math.min(o.length,2==a?521:u-10-(s?264:0)),g=l?32:11;o.l<m&&13!=o[o.l];)switch((h={}).name=("undefined"!==typeof Be?Be.utils.decode(f,o.slice(o.l,o.l+g)):ht(o.slice(o.l,o.l+g))).replace(/[\u0000\r\n][\S\s]*$/g,""),o.l+=g,h.type=String.fromCharCode(o.read_shift(1)),2==a||l||(h.offset=o.read_shift(4)),h.len=o.read_shift(1),2==a&&(h.offset=o.read_shift(2)),h.dec=o.read_shift(1),h.name.length&&p.push(h),2!=a&&(o.l+=l?13:14),h.type){case"B":s&&8==h.len||!r.WTF||console.log("Skipping "+h.name+":"+h.type);break;case"G":case"P":r.WTF&&console.log("Skipping "+h.name+":"+h.type);break;case"+":case"0":case"@":case"C":case"D":case"F":case"I":case"L":case"M":case"N":case"O":case"T":case"Y":break;default:throw new Error("Unknown Field Type: "+h.type)}if(13!==o[o.l]&&(o.l=u-1),13!==o.read_shift(1))throw new Error("DBF Terminator not found "+o.l+" "+o[o.l]);o.l=u;var v=0,y=0;for(n[0]=[],y=0;y!=p.length;++y)n[0][y]=p[y].name;for(;c-- >0;)if(42!==o[o.l])for(++o.l,n[++v]=[],y=0,y=0;y!=p.length;++y){var b=o.slice(o.l,o.l+p[y].len);o.l+=p[y].len,Ko(b,0);var w="undefined"!==typeof Be?Be.utils.decode(f,b):ht(b);switch(p[y].type){case"C":w.trim().length&&(n[v][y]=w.replace(/([^\s])\s+$/,"$1"));break;case"D":8===w.length?(n[v][y]=new Date(Date.UTC(+w.slice(0,4),+w.slice(4,6)-1,+w.slice(6,8),0,0,0,0)),r&&r.UTC||(n[v][y]=Fr(n[v][y]))):n[v][y]=w;break;case"F":n[v][y]=parseFloat(w.trim());break;case"+":case"I":n[v][y]=l?2147483648^b.read_shift(-4,"i"):b.read_shift(4,"i");break;case"L":switch(w.trim().toUpperCase()){case"Y":case"T":n[v][y]=!0;break;case"N":case"F":n[v][y]=!1;break;case"":case"\0":case"?":break;default:throw new Error("DBF Unrecognized L:|"+w+"|")}break;case"M":if(!i)throw new Error("DBF Unexpected MEMO for type "+a.toString(16));n[v][y]="##MEMO##"+(l?parseInt(w.trim(),10):b.read_shift(4));break;case"N":(w=w.replace(/\u0000/g,"").trim())&&"."!=w&&(n[v][y]=+w||0);break;case"@":n[v][y]=new Date(b.read_shift(-8,"f")-621356832e5);break;case"T":var x=b.read_shift(4),S=b.read_shift(4);if(0==x&&0==S)break;n[v][y]=new Date(864e5*(x-2440588)+S),r&&r.UTC||(n[v][y]=Fr(n[v][y]));break;case"Y":n[v][y]=b.read_shift(4,"i")/1e4+b.read_shift(4,"i")/1e4*Math.pow(2,32);break;case"O":n[v][y]=-b.read_shift(-8,"f");break;case"B":if(s&&8==p[y].len){n[v][y]=b.read_shift(8,"f");break}case"G":case"P":b.l+=p[y].len;break;case"0":if("_NullFlags"===p[y].name)break;default:throw new Error("DBF Unsupported data type "+p[y].type)}}else o.l+=d;if(2!=a&&o.l<o.length&&26!=o[o.l++])throw new Error("DBF EOF Marker missing "+(o.l-1)+" of "+o.length+" "+o[o.l-1].toString(16));return r&&r.sheetRows&&(n=n.slice(0,r.sheetRows)),r.DBF=p,n}(t,n),n);return o["!cols"]=n.DBF.map((function(e){return{wch:e.len,DBF:e}})),delete n.DBF,o}var n={B:8,C:250,L:1,D:8,"?":0,"":0};return{to_workbook:function(e,t){try{var n=ya(r(e,t),t);return n.bookType="dbf",n}catch(o6){if(t&&t.WTF)throw o6}return{SheetNames:[],Sheets:{}}},to_sheet:r,from_sheet:function(r,o){if(!r["!ref"])throw new Error("Cannot export empty sheet to DBF");var a=o||{},i=Ye;if(+a.codepage>=0&&Ke(+a.codepage),"string"==a.type)throw new Error("Cannot write DBF to JS string");var s=qo(),l=th(r,{header:1,raw:!0,cellDates:!0}),c=l[0],u=l.slice(1),d=r["!cols"]||[],f=0,p=0,h=0,m=1;for(f=0;f<c.length;++f)if(((d[f]||{}).DBF||{}).name)c[f]=d[f].DBF.name,++h;else if(null!=c[f]){if(++h,"number"===typeof c[f]&&(c[f]=c[f].toString(10)),"string"!==typeof c[f])throw new Error("DBF Invalid column name "+c[f]+" |"+typeof c[f]+"|");if(c.indexOf(c[f])!==f)for(p=0;p<1024;++p)if(-1==c.indexOf(c[f]+"_"+p)){c[f]+="_"+p;break}}var g=ma(r["!ref"]),v=[],y=[],b=[];for(f=0;f<=g.e.c-g.s.c;++f){var w="",x="",S=0,A=[];for(p=0;p<u.length;++p)null!=u[p][f]&&A.push(u[p][f]);if(0!=A.length&&null!=c[f]){for(p=0;p<A.length;++p){switch(typeof A[p]){case"number":x="B";break;case"string":default:x="C";break;case"boolean":x="L";break;case"object":x=A[p]instanceof Date?"D":"C"}S=Math.max(S,("undefined"!==typeof Be&&"string"==typeof A[p]?Be.utils.encode(Ve,A[p]):String(A[p])).length),w=w&&w!=x?"C":x}S>250&&(S=250),"C"==(x=((d[f]||{}).DBF||{}).type)&&d[f].DBF.len>S&&(S=d[f].DBF.len),"B"==w&&"N"==x&&(w="N",b[f]=d[f].DBF.dec,S=d[f].DBF.len),y[f]="C"==w||"N"==x?S:n[w]||0,m+=y[f],v[f]=w}else v[f]="?"}var k=s.next(32);for(k.write_shift(4,318902576),k.write_shift(4,u.length),k.write_shift(2,296+32*h),k.write_shift(2,m),f=0;f<4;++f)k.write_shift(4,0);var C=+t[Ye]||3;for(k.write_shift(4,C<<8),e[C]!=+a.codepage&&(a.codepage&&console.error("DBF Unsupported codepage "+Ye+", using 1252"),Ye=1252),f=0,p=0;f<c.length;++f)if(null!=c[f]){var I=s.next(32),E=(c[f].slice(-10)+"\0\0\0\0\0\0\0\0\0\0\0").slice(0,11);I.write_shift(1,E,"sbcs"),I.write_shift(1,"?"==v[f]?"C":v[f],"sbcs"),I.write_shift(4,p),I.write_shift(1,y[f]||n[v[f]]||0),I.write_shift(1,b[f]||0),I.write_shift(1,2),I.write_shift(4,0),I.write_shift(1,0),I.write_shift(4,0),I.write_shift(4,0),p+=y[f]||n[v[f]]||0}var D=s.next(264);for(D.write_shift(4,13),f=0;f<65;++f)D.write_shift(4,0);for(f=0;f<u.length;++f){var T=s.next(m);for(T.write_shift(1,0),p=0;p<c.length;++p)if(null!=c[p])switch(v[p]){case"L":T.write_shift(1,null==u[f][p]?63:u[f][p]?84:70);break;case"B":T.write_shift(8,u[f][p]||0,"f");break;case"N":var O="0";for("number"==typeof u[f][p]&&(O=u[f][p].toFixed(b[p]||0)),O.length>y[p]&&(O=O.slice(0,y[p])),h=0;h<y[p]-O.length;++h)T.write_shift(1,32);T.write_shift(1,O,"sbcs");break;case"D":u[f][p]?(T.write_shift(4,("0000"+u[f][p].getFullYear()).slice(-4),"sbcs"),T.write_shift(2,("00"+(u[f][p].getMonth()+1)).slice(-2),"sbcs"),T.write_shift(2,("00"+u[f][p].getDate()).slice(-2),"sbcs")):T.write_shift(8,"00000000","sbcs");break;case"C":var M=T.l,P=String(null!=u[f][p]?u[f][p]:"").slice(0,y[p]);for(T.write_shift(1,P,"cpstr"),M+=y[p]-T.l,h=0;h<M;++h)T.write_shift(1,32)}}return Ye=i,s.next(1).write_shift(1,26),s.end()}}}(),Qs=function(){var e={AA:"\xc0",BA:"\xc1",CA:"\xc2",DA:195,HA:"\xc4",JA:197,AE:"\xc8",BE:"\xc9",CE:"\xca",HE:"\xcb",AI:"\xcc",BI:"\xcd",CI:"\xce",HI:"\xcf",AO:"\xd2",BO:"\xd3",CO:"\xd4",DO:213,HO:"\xd6",AU:"\xd9",BU:"\xda",CU:"\xdb",HU:"\xdc",Aa:"\xe0",Ba:"\xe1",Ca:"\xe2",Da:227,Ha:"\xe4",Ja:229,Ae:"\xe8",Be:"\xe9",Ce:"\xea",He:"\xeb",Ai:"\xec",Bi:"\xed",Ci:"\xee",Hi:"\xef",Ao:"\xf2",Bo:"\xf3",Co:"\xf4",Do:245,Ho:"\xf6",Au:"\xf9",Bu:"\xfa",Cu:"\xfb",Hu:"\xfc",KC:"\xc7",Kc:"\xe7",q:"\xe6",z:"\u0153",a:"\xc6",j:"\u0152",DN:209,Dn:241,Hy:255,S:169,c:170,R:174,"B ":180,0:176,1:177,2:178,3:179,5:181,6:182,7:183,Q:185,k:186,b:208,i:216,l:222,s:240,y:248,"!":161,'"':162,"#":163,"(":164,"%":165,"'":167,"H ":168,"+":171,";":187,"<":188,"=":189,">":190,"?":191,"{":223},t=new RegExp("\x1bN("+mr(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1").replace("{","\\{")+"|\\|)","gm");try{t=new RegExp("\x1bN("+mr(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm")}catch(o6){}var r=function(t,r){var n=e[r];return"number"==typeof n?rt(n):n},n=function(e,t,r){var n=t.charCodeAt(0)-32<<4|r.charCodeAt(0)-48;return 59==n?e:rt(n)};e["|"]=254;function o(e,o){var a,i=e.split(/[\n\r]+/),s=-1,l=-1,c=0,u=0,d=[],f=[],p=null,h={},m=[],g=[],v=[],y=0,b={Workbook:{WBProps:{},Names:[]}};for(+o.codepage>=0&&Ke(+o.codepage);c!==i.length;++c){y=0;var w,x=i[c].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,n).replace(t,r),S=x.replace(/;;/g,"\0").split(";").map((function(e){return e.replace(/\u0000/g,";")})),A=S[0];if(x.length>0)switch(A){case"ID":case"E":case"B":case"W":break;case"O":for(u=1;u<S.length;++u)if("V"===S[u].charAt(0)){var k=parseInt(S[u].slice(1),10);k>=1&&k<=4&&(b.Workbook.WBProps.date1904=!0)}break;case"P":if("P"===S[1].charAt(0))f.push(x.slice(3).replace(/;;/g,";"));break;case"NN":var C={Sheet:0};for(u=1;u<S.length;++u)switch(S[u].charAt(0)){case"N":C.Name=S[u].slice(1);break;case"E":C.Ref=(o&&o.sheet||"Sheet1")+"!"+gc(S[u].slice(1))}b.Workbook.Names.push(C);break;case"C":var I=!1,E=!1,D=!1,T=!1,O=-1,M=-1,P="",j="z",R="";for(u=1;u<S.length;++u)switch(S[u].charAt(0)){case"A":R=S[u].slice(1);break;case"X":l=parseInt(S[u].slice(1),10)-1,E=!0;break;case"Y":for(s=parseInt(S[u].slice(1),10)-1,E||(l=0),a=d.length;a<=s;++a)d[a]=[];break;case"K":'"'===(w=S[u].slice(1)).charAt(0)?(w=w.slice(1,w.length-1),j="s"):"TRUE"===w||"FALSE"===w?(w="TRUE"===w,j="b"):"#"==w.charAt(0)&&null!=ni[w]?(j="e",w=ni[w]):isNaN(Pr(w))||(w=Pr(w),j="n",null!==p&&$t(p)&&o.cellDates&&(j="number"==typeof(w=Ar(b.Workbook.WBProps.date1904?w+1462:w))?"n":"d")),"undefined"!==typeof Be&&"string"==typeof w&&"string"!=(o||{}).type&&(o||{}).codepage&&(w=Be.utils.decode(o.codepage,w)),I=!0;break;case"E":T=!0,P=gc(S[u].slice(1),{r:s,c:l});break;case"S":D=!0;break;case"G":break;case"R":O=parseInt(S[u].slice(1),10)-1;break;case"C":M=parseInt(S[u].slice(1),10)-1;break;default:if(o&&o.WTF)throw new Error("SYLK bad record "+x)}if(I&&(d[s][l]?(d[s][l].t=j,d[s][l].v=w):d[s][l]={t:j,v:w},p&&(d[s][l].z=p),!1!==o.cellText&&p&&(d[s][l].w=rr(d[s][l].z,d[s][l].v,{date1904:b.Workbook.WBProps.date1904})),p=null),D){if(T)throw new Error("SYLK shared formula cannot have own formula");var _=O>-1&&d[O][M];if(!_||!_[1])throw new Error("SYLK shared formula cannot find base");P=bc(_[1],{r:s-O,c:l-M})}P&&(d[s][l]?d[s][l].f=P:d[s][l]={t:"n",f:P}),R&&(d[s][l]||(d[s][l]={t:"z"}),d[s][l].c=[{a:"SheetJSYLK",t:R}]);break;case"F":var N=0;for(u=1;u<S.length;++u)switch(S[u].charAt(0)){case"X":l=parseInt(S[u].slice(1),10)-1,++N;break;case"Y":for(s=parseInt(S[u].slice(1),10)-1,a=d.length;a<=s;++a)d[a]=[];break;case"M":y=parseInt(S[u].slice(1),10)/20;break;case"F":case"G":case"S":case"D":case"N":break;case"P":p=f[parseInt(S[u].slice(1),10)];break;case"W":for(v=S[u].slice(1).split(" "),a=parseInt(v[0],10);a<=parseInt(v[1],10);++a)y=parseInt(v[2],10),g[a-1]=0===y?{hidden:!0}:{wch:y};break;case"C":g[l=parseInt(S[u].slice(1),10)-1]||(g[l]={});break;case"R":m[s=parseInt(S[u].slice(1),10)-1]||(m[s]={}),y>0?(m[s].hpt=y,m[s].hpx=_l(y)):0===y&&(m[s].hidden=!0);break;default:if(o&&o.WTF)throw new Error("SYLK bad record "+x)}N<1&&(p=null);break;default:if(o&&o.WTF)throw new Error("SYLK bad record "+x)}}return m.length>0&&(h["!rows"]=m),g.length>0&&(h["!cols"]=g),g.forEach((function(e){Pl(e)})),o&&o.sheetRows&&(d=d.slice(0,o.sheetRows)),[d,h,b]}function a(e,t,r,n,o,a){var i="C;Y"+(r+1)+";X"+(n+1)+";K";switch(e.t){case"n":i+=isFinite(e.v)?e.v||0:ri[isNaN(e.v)?36:7],e.f&&!e.F&&(i+=";E"+yc(e.f,{r:r,c:n}));break;case"b":i+=e.v?"TRUE":"FALSE";break;case"e":i+=e.w||ri[e.v]||e.v;break;case"d":i+=Sr(Dr(e.v,a),a);break;case"s":i+='"'+(null==e.v?"":String(e.v)).replace(/"/g,"").replace(/;/g,";;")+'"'}return i}function i(e,t,r){var n="C;Y"+(t+1)+";X"+(r+1)+";A";return n+=e.map((function(e){return e.t})).join("").replace(/\n/g,"\x1b :").replace(/\r/g,"\x1b =")}return{to_workbook:function(e,t){var r=function(e,t){switch(t.type){case"base64":return o(it(e),t);case"binary":return o(e,t);case"buffer":return o(st&&Buffer.isBuffer(e)?e.toString("binary"):ht(e),t);case"array":return o(Tr(e),t)}throw new Error("Unrecognized type "+t.type)}(e,t),n=r[0],a=r[1],i=r[2],s=Or(t);s.date1904=(((i||{}).Workbook||{}).WBProps||{}).date1904;var l=wa(n,s);mr(a).forEach((function(e){l[e]=a[e]}));var c=ya(l,t);return mr(i).forEach((function(e){c[e]=i[e]})),c.bookType="sylk",c},from_sheet:function(e,t,r){t||(t={}),t._formats=["General"];var n,o=["ID;PSheetJS;N;E"],s=[],l=ma(e["!ref"]||"A1"),c=null!=e["!data"],u="\r\n",d=(((r||{}).Workbook||{}).WBProps||{}).date1904;o.push("P;PGeneral");var f,p=l.s.r,h=l.s.c,m=[];if(e["!ref"])for(p=l.s.r;p<=l.e.r;++p)if(!c||e["!data"][p]){for(m=[],h=l.s.c;h<=l.e.c;++h)(n=c?e["!data"][p][h]:e[la(h)+ia(p)])&&n.c&&m.push(i(n.c,p,h));m.length&&s.push(m.join(u))}if(e["!ref"])for(p=l.s.r;p<=l.e.r;++p)if(!c||e["!data"][p]){for(m=[],h=l.s.c;h<=l.e.c;++h)if((n=c?e["!data"][p][h]:e[la(h)+ia(p)])&&(null!=n.v||n.f&&!n.F)){if("General"!=(n.z||("d"==n.t?Dt[14]:"General"))){var g=t._formats.indexOf(n.z);-1==g&&(t._formats.push(n.z),g=t._formats.length-1,o.push("P;P"+n.z.replace(/;/g,";;"))),m.push("F;P"+g+";Y"+(p+1)+";X"+(h+1))}m.push(a(n,0,p,h,0,d))}s.push(m.join(u))}return o.push("F;P0;DG0G8;M255"),e["!cols"]&&(f=o,e["!cols"].forEach((function(e,t){var r="F;W"+(t+1)+" "+(t+1)+" ";e.hidden?r+="0":("number"!=typeof e.width||e.wpx||(e.wpx=El(e.width)),"number"!=typeof e.wpx||e.wch||(e.wch=Dl(e.wpx)),"number"==typeof e.wch&&(r+=Math.round(e.wch)))," "!=r.charAt(r.length-1)&&f.push(r)}))),e["!rows"]&&function(e,t){t.forEach((function(t,r){var n="F;";t.hidden?n+="M0;":t.hpt?n+="M"+20*t.hpt+";":t.hpx&&(n+="M"+20*Rl(t.hpx)+";"),n.length>2&&e.push(n+"R"+(r+1))}))}(o,e["!rows"]),e["!ref"]&&o.push("B;Y"+(l.e.r-l.s.r+1)+";X"+(l.e.c-l.s.c+1)+";D"+[l.s.c,l.s.r,l.e.c,l.e.r].join(" ")),o.push("O;L;D;B"+(d?";V4":"")+";K47;G100 0.001"),delete t._formats,o.join(u)+u+s.join(u)+u+"E"+u}}}(),Ks=function(){function e(e,t){for(var r=e.split("\n"),n=-1,o=-1,a=0,i=[];a!==r.length;++a)if("BOT"!==r[a].trim()){if(!(n<0)){for(var s=r[a].trim().split(","),l=s[0],c=s[1],u=r[++a]||"";1&(u.match(/["]/g)||[]).length&&a<r.length-1;)u+="\n"+r[++a];switch(u=u.trim(),+l){case-1:if("BOT"===u){i[++n]=[],o=0;continue}if("EOD"!==u)throw new Error("Unrecognized DIF special command "+u);break;case 0:"TRUE"===u?i[n][o]=!0:"FALSE"===u?i[n][o]=!1:isNaN(Pr(c))?isNaN(Ur(c).getDate())?i[n][o]=c:(i[n][o]=Dr(c),t&&t.UTC||(i[n][o]=Fr(i[n][o]))):i[n][o]=Pr(c),++o;break;case 1:(u=(u=u.slice(1,u.length-1)).replace(/""/g,'"'))&&u.match(/^=".*"$/)&&(u=u.slice(2,-1)),i[n][o++]=""!==u?u:null}if("EOD"===u)break}}else i[++n]=[],o=0;return t&&t.sheetRows&&(i=i.slice(0,t.sheetRows)),i}function t(t,r){return wa(function(t,r){switch(r.type){case"base64":return e(it(t),r);case"binary":return e(t,r);case"buffer":return e(st&&Buffer.isBuffer(t)?t.toString("binary"):ht(t),r);case"array":return e(Tr(t),r)}throw new Error("Unrecognized type "+r.type)}(t,r),r)}function r(e,t){return"0,"+String(e)+"\r\n"+t}function n(e){return'1,0\r\n"'+e.replace(/"/g,'""')+'"'}return{to_workbook:function(e,r){var n=ya(t(e,r),r);return n.bookType="dif",n},to_sheet:t,from_sheet:function(e){if(!e["!ref"])throw new Error("Cannot export empty sheet to DIF");for(var t=ma(e["!ref"]),o=null!=e["!data"],a=['TABLE\r\n0,1\r\n"sheetjs"\r\n',"VECTORS\r\n0,"+(t.e.r-t.s.r+1)+'\r\n""\r\n',"TUPLES\r\n0,"+(t.e.c-t.s.c+1)+'\r\n""\r\n','DATA\r\n0,0\r\n""\r\n'],i=t.s.r;i<=t.e.r;++i){for(var s=o?e["!data"][i]:[],l="-1,0\r\nBOT\r\n",c=t.s.c;c<=t.e.c;++c){var u=o?s&&s[c]:e[ua({r:i,c:c})];if(null!=u){switch(u.t){case"n":null!=u.w?l+="0,"+u.w+"\r\nV":null!=u.v?l+=r(u.v,"V"):null==u.f||u.F?l+='1,0\r\n""':l+=n("="+u.f);break;case"b":l+=u.v?r(1,"TRUE"):r(0,"FALSE");break;case"s":l+=n(isNaN(+u.v)?u.v:'="'+u.v+'"');break;case"d":u.w||(u.w=rr(u.z||Dt[14],Sr(Dr(u.v)))),l+=r(u.w,"V");break;default:l+='1,0\r\n""'}l+="\r\n"}else l+='1,0\r\n""\r\n'}a.push(l)}return a.join("")+"-1,0\r\nEOD"}}}(),Xs=function(){function e(e){return e.replace(/\\/g,"\\b").replace(/:/g,"\\c").replace(/\n/g,"\\n")}function t(e,t){return wa(function(e,t){for(var r=e.split("\n"),n=-1,o=-1,a=0,i=[];a!==r.length;++a){var s=r[a].trim().split(":");if("cell"===s[0]){var l=ca(s[1]);if(i.length<=l.r)for(n=i.length;n<=l.r;++n)i[n]||(i[n]=[]);switch(n=l.r,o=l.c,s[2]){case"t":i[n][o]=s[3].replace(/\\b/g,"\\").replace(/\\c/g,":").replace(/\\n/g,"\n");break;case"v":i[n][o]=+s[3];break;case"vtf":var c=s[s.length-1];case"vtc":"nl"===s[3]?i[n][o]=!!+s[4]:i[n][o]="#"==s[s.length-1].charAt(0)?{t:"e",v:ni[s[s.length-1]]}:+s[4],"vtf"==s[2]&&(i[n][o]=[i[n][o],c])}}}return t&&t.sheetRows&&(i=i.slice(0,t.sheetRows)),i}(e,t),t)}var r=["socialcalc:version:1.5","MIME-Version: 1.0","Content-Type: multipart/mixed; boundary=SocialCalcSpreadsheetControlSave"].join("\n"),n=["--SocialCalcSpreadsheetControlSave","Content-type: text/plain; charset=UTF-8"].join("\n")+"\n",o=["# SocialCalc Spreadsheet Control Save","part:sheet"].join("\n"),a="--SocialCalcSpreadsheetControlSave--";function i(t){if(!t||!t["!ref"])return"";for(var r,n=[],o=[],a="",i=da(t["!ref"]),s=null!=t["!data"],l=i.s.r;l<=i.e.r;++l)for(var c=i.s.c;c<=i.e.c;++c)if(a=ua({r:l,c:c}),(r=s?(t["!data"][l]||[])[c]:t[a])&&null!=r.v&&"z"!==r.t){switch(o=["cell",a,"t"],r.t){case"s":o.push(e(r.v));break;case"b":o[2]="vt"+(r.f?"f":"c"),o[3]="nl",o[4]=r.v?"1":"0",o[5]=e(r.f||(r.v?"TRUE":"FALSE"));break;case"d":var u=Sr(Dr(r.v));o[2]="vtc",o[3]="nd",o[4]=""+u,o[5]=r.w||rr(r.z||Dt[14],u);break;case"n":isFinite(r.v)?r.f?(o[2]="vtf",o[3]="n",o[4]=r.v,o[5]=e(r.f)):(o[2]="v",o[3]=r.v):(o[2]="vt"+(r.f?"f":"c"),o[3]="e"+ri[isNaN(r.v)?36:7],o[4]="0",o[5]=r.f||o[3].slice(1),o[6]="e",o[7]=o[3].slice(1));break;case"e":continue}n.push(o.join(":"))}return n.push("sheet:c:"+(i.e.c-i.s.c+1)+":r:"+(i.e.r-i.s.r+1)+":tvf:1"),n.push("valueformat:1:text-wiki"),n.join("\n")}return{to_workbook:function(e,r){return ya(t(e,r),r)},to_sheet:t,from_sheet:function(e){return[r,n,o,n,i(e),a].join("\n")}}}(),Js=function(){function e(e,t,r,n,o){o.raw?t[r][n]=e:""===e||("TRUE"===e?t[r][n]=!0:"FALSE"===e?t[r][n]=!1:isNaN(Pr(e))?isNaN(Ur(e).getDate())?35==e.charCodeAt(0)&&null!=ni[e]?t[r][n]={t:"e",v:ni[e],w:e}:t[r][n]=e:t[r][n]=Dr(e):t[r][n]=Pr(e))}var t={44:",",9:"\t",59:";",124:"|"},r={44:3,9:2,59:1,124:0};function n(e){for(var n={},o=!1,a=0,i=0;a<e.length;++a)34==(i=e.charCodeAt(a))?o=!o:!o&&i in t&&(n[i]=(n[i]||0)+1);for(a in i=[],n)Object.prototype.hasOwnProperty.call(n,a)&&i.push([n[a],a]);if(!i.length)for(a in n=r)Object.prototype.hasOwnProperty.call(n,a)&&i.push([n[a],a]);return i.sort((function(e,t){return e[0]-t[0]||r[e[1]]-r[t[1]]})),t[i.pop()[1]]||44}function o(e,t){var r=t||{},o="";var a={};r.dense&&(a["!data"]=[]);var i={s:{c:0,r:0},e:{c:0,r:0}};"sep="==e.slice(0,4)?13==e.charCodeAt(5)&&10==e.charCodeAt(6)?(o=e.charAt(4),e=e.slice(7)):13==e.charCodeAt(5)||10==e.charCodeAt(5)?(o=e.charAt(4),e=e.slice(6)):o=n(e.slice(0,1024)):o=r&&r.FS?r.FS:n(e.slice(0,1024));var s=0,l=0,c=0,u=0,d=0,f=o.charCodeAt(0),p=!1,h=0,m=e.charCodeAt(0),g=null!=r.dateNF?function(e){var t="number"==typeof e?Dt[e]:e;return t=t.replace(sr,"(\\d+)"),sr.lastIndex=0,new RegExp("^"+t+"$")}(r.dateNF):null;function v(){var t=e.slice(u,d);"\r"==t.slice(-1)&&(t=t.slice(0,-1));var n={};if('"'==t.charAt(0)&&'"'==t.charAt(t.length-1)&&(t=t.slice(1,-1).replace(/""/g,'"')),!1!==r.cellText&&(n.w=t),0===t.length)n.t="z";else if(r.raw)n.t="s",n.v=t;else if(0===t.trim().length)n.t="s",n.v=t;else if(61==t.charCodeAt(0))34==t.charCodeAt(1)&&34==t.charCodeAt(t.length-1)?(n.t="s",n.v=t.slice(2,-1).replace(/""/g,'"')):1!=t.length?(n.t="s",n.f=t.slice(1),n.v=t):(n.t="s",n.v=t);else if("TRUE"==t)n.t="b",n.v=!0;else if("FALSE"==t)n.t="b",n.v=!1;else if(isNaN(c=Pr(t)))if(!isNaN((c=Ur(t)).getDate())||g&&t.match(g)){if(n.z=r.dateNF||Dt[14],g&&t.match(g)){var o=function(e,t,r){var n=-1,o=-1,a=-1,i=-1,s=-1,l=-1;(t.match(sr)||[]).forEach((function(e,t){var c=parseInt(r[t+1],10);switch(e.toLowerCase().charAt(0)){case"y":n=c;break;case"d":a=c;break;case"h":i=c;break;case"s":l=c;break;case"m":i>=0?s=c:o=c}})),sr.lastIndex=0,l>=0&&-1==s&&o>=0&&(s=o,o=-1);var c=(""+(n>=0?n:(new Date).getFullYear())).slice(-4)+"-"+("00"+(o>=1?o:1)).slice(-2)+"-"+("00"+(a>=1?a:1)).slice(-2);7==c.length&&(c="0"+c),8==c.length&&(c="20"+c);var u=("00"+(i>=0?i:0)).slice(-2)+":"+("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2);return-1==i&&-1==s&&-1==l?c:-1==n&&-1==o&&-1==a?u:c+"T"+u}(0,r.dateNF,t.match(g)||[]);c=Dr(o),r&&!1===r.UTC&&(c=Fr(c))}else r&&!1===r.UTC?c=Fr(c):!1!==r.cellText&&r.dateNF&&(n.w=rr(n.z,c));r.cellDates?(n.t="d",n.v=c):(n.t="n",n.v=Sr(c)),r.cellNF||delete n.z}else 35==t.charCodeAt(0)&&null!=ni[t]?(n.t="e",n.w=t,n.v=ni[t]):(n.t="s",n.v=t);else n.t="n",n.v=c;if("z"==n.t||(r.dense?(a["!data"][s]||(a["!data"][s]=[]),a["!data"][s][l]=n):a[ua({c:l,r:s})]=n),u=d+1,m=e.charCodeAt(u),i.e.c<l&&(i.e.c=l),i.e.r<s&&(i.e.r=s),h==f)++l;else if(l=0,++s,r.sheetRows&&r.sheetRows<=s)return!0}e:for(;d<e.length;++d)switch(h=e.charCodeAt(d)){case 34:34===m&&(p=!p);break;case 13:if(p)break;10==e.charCodeAt(d+1)&&++d;case f:case 10:if(!p&&v())break e}return d-u>0&&v(),a["!ref"]=fa(i),a}function a(t,r){return r&&r.PRN?r.FS||"sep="==t.slice(0,4)||t.indexOf("\t")>=0||t.indexOf(",")>=0||t.indexOf(";")>=0?o(t,r):wa(function(t,r){var n=r||{},o=[];if(!t||0===t.length)return o;for(var a=t.split(/[\r\n]/),i=a.length-1;i>=0&&0===a[i].length;)--i;for(var s=10,l=0,c=0;c<=i;++c)-1==(l=a[c].indexOf(" "))?l=a[c].length:l++,s=Math.max(s,l);for(c=0;c<=i;++c){o[c]=[];var u=0;for(e(a[c].slice(0,s).trim(),o,c,u,n),u=1;u<=(a[c].length-s)/10+1;++u)e(a[c].slice(s+10*(u-1),s+10*u).trim(),o,c,u,n)}return n.sheetRows&&(o=o.slice(0,n.sheetRows)),o}(t,r),r):o(t,r)}function i(e,t){var r="",n="string"==t.type?[0,0,0,0]:Fp(e,t);switch(t.type){case"base64":r=it(e);break;case"binary":case"string":r=e;break;case"buffer":r=65001==t.codepage?e.toString("utf8"):t.codepage&&"undefined"!==typeof Be?Be.utils.decode(t.codepage,e):st&&Buffer.isBuffer(e)?e.toString("binary"):ht(e);break;case"array":r=Tr(e);break;default:throw new Error("Unrecognized type "+t.type)}return 239==n[0]&&187==n[1]&&191==n[2]?r=Rn(r.slice(3)):"string"!=t.type&&"buffer"!=t.type&&65001==t.codepage?r=Rn(r):"binary"==t.type&&"undefined"!==typeof Be&&t.codepage&&(r=Be.utils.decode(t.codepage,Be.utils.encode(28591,r))),"socialcalc:version:"==r.slice(0,19)?Xs.to_sheet("string"==t.type?r:Rn(r),t):a(r,t)}return{to_workbook:function(e,t){return ya(i(e,t),t)},to_sheet:i,from_sheet:function(e){var t=[];if(!e["!ref"])return"";for(var r,n=ma(e["!ref"]),o=null!=e["!data"],a=n.s.r;a<=n.e.r;++a){for(var i=[],s=n.s.c;s<=n.e.c;++s){var l=ua({r:a,c:s});if((r=o?(e["!data"][a]||[])[s]:e[l])&&null!=r.v){for(var c=(r.w||(va(r),r.w)||"").slice(0,10);c.length<10;)c+=" ";i.push(c+(0===s?" ":""))}else i.push("          ")}t.push(i.join(""))}return t.join("\n")}}}();var $s=function(){function e(e,t,r){if(e){Ko(e,e.l||0);for(var n=r.Enum||y;e.l<e.length;){var o=e.read_shift(2),a=n[o]||n[65535],i=e.read_shift(2),s=e.l+i,l=a.f&&a.f(e,i,r);if(e.l=s,t(l,a,o))return}}}var t=["mmmm","dd-mmm-yyyy","dd-mmm","mmm-yyyy","@","mm/dd","hh:mm:ss AM/PM","hh:mm AM/PM","mm/dd/yyyy","mm/dd","hh:mm:ss","hh:mm"];function r(r,n){if(!r)return r;var o=n||{};var a={},i="Sheet1",s="",l=0,c={},u=[],d=[],f=[];o.dense&&(f=a["!data"]=[]);var p={s:{r:0,c:0},e:{r:0,c:0}},h=o.sheetRows||0,m={};if(81==r[4]&&80==r[5]&&87==r[6])return function(e,t){Ko(e,0);var r=t||{};0;var n={};r.dense&&(n["!data"]=[]);var o=[],a="",i={s:{r:-1,c:-1},e:{r:-1,c:-1}},s=0,l=0,c=0,u=0,d={SheetNames:[],Sheets:{}},f=[];e:for(;e.l<e.length;){var p=e.read_shift(2),h=e.read_shift(2),m=e.slice(e.l,e.l+h);switch(Ko(m,0),p){case 1:if(962023505!=m.read_shift(4))throw"Bad QPW9 BOF!";break;case 2:break e;case 8:case 1025:case 1026:case 1032:default:break;case 10:for(var g=m.read_shift(4),v=(m.length-m.l)/g|0,y=0;y<g;++y){var b=m.l+v,S={};m.l+=2,S.numFmtId=m.read_shift(2),w[S.numFmtId]&&(S.z=w[S.numFmtId]),m.l=b,f.push(S)}break;case 1031:for(m.l+=12;m.l<m.length;)s=m.read_shift(2),l=m.read_shift(1),o.push(m.read_shift(s,"cstr"));break;case 1537:var A=m.read_shift(2);n={},r.dense&&(n["!data"]=[]),i.s.c=m.read_shift(2),i.e.c=m.read_shift(2),i.s.r=m.read_shift(4),i.e.r=m.read_shift(4),m.l+=4,m.l+2<m.length&&(s=m.read_shift(2),l=m.read_shift(1),a=0==s?"":m.read_shift(s,"cstr")),a||(a=la(A));break;case 1538:if(i.s.c>255||i.s.r>999999)break;i.e.c<i.s.c&&(i.e.c=i.s.c),i.e.r<i.s.r&&(i.e.r=i.s.r),n["!ref"]=fa(i),ch(d,n,a);break;case 2561:c=m.read_shift(2),i.e.c<c&&(i.e.c=c),i.s.c>c&&(i.s.c=c),u=m.read_shift(4),i.s.r>u&&(i.s.r=u),u=m.read_shift(4),i.e.r<u&&(i.e.r=u);break;case 3073:u=m.read_shift(4),s=m.read_shift(4),i.s.r>u&&(i.s.r=u),i.e.r<u+s-1&&(i.e.r=u+s-1);for(var k=la(c);m.l<m.length;){var C={t:"z"},I=m.read_shift(1),E=-1;128&I&&(E=m.read_shift(2));var D=64&I?m.read_shift(2)-1:0;switch(31&I){case 0:case 1:break;case 2:C={t:"n",v:m.read_shift(2)};break;case 3:C={t:"n",v:m.read_shift(2,"i")};break;case 4:C={t:"n",v:Ba(m)};break;case 5:C={t:"n",v:m.read_shift(8,"f")};break;case 7:C={t:"s",v:o[l=m.read_shift(4)-1]};break;case 8:C={t:"n",v:m.read_shift(8,"f")},m.l+=2,m.l+=4,isNaN(C.v)&&(C={t:"e",v:15});break;default:throw"Unrecognized QPW cell type "+(31&I)}-1!=E&&(f[E-1]||{}).z&&(C.z=f[E-1].z);var T=0;if(32&I)switch(31&I){case 2:case 7:T=m.read_shift(2);break;case 3:T=m.read_shift(2,"i");break;default:throw"Unsupported delta for QPW cell type "+(31&I)}if(r.sheetStubs||"z"!=C.t){var O=Or(C);"n"==C.t&&C.z&&$t(C.z)&&r.cellDates&&(O.v=Ar(C.v),O.t="number"==typeof O.v?"n":"d"),null!=n["!data"]?(n["!data"][u]||(n["!data"][u]=[]),n["!data"][u][c]=O):n[k+ia(u)]=O}for(++u,--s;D-- >0&&s>=0;){if(32&I)switch(31&I){case 2:C={t:"n",v:C.v+T&65535};break;case 3:(C={t:"n",v:C.v+T&65535}).v>32767&&(C.v-=65536);break;case 7:C={t:"s",v:o[l=l+T>>>0]};break;default:throw"Cannot apply delta for QPW cell type "+(31&I)}else switch(31&I){case 1:C={t:"z"};break;case 2:C={t:"n",v:m.read_shift(2)};break;case 7:C={t:"s",v:o[l=m.read_shift(4)-1]};break;default:throw"Cannot apply repeat for QPW cell type "+(31&I)}(r.sheetStubs||"z"!=C.t)&&(null!=n["!data"]?(n["!data"][u]||(n["!data"][u]=[]),n["!data"][u][c]=C):n[k+ia(u)]=C),++u,--s}}break;case 3074:c=m.read_shift(2),u=m.read_shift(4);var M=x(m);null!=n["!data"]?(n["!data"][u]||(n["!data"][u]=[]),n["!data"][u][c]={t:"s",v:M}):n[la(c)+ia(u)]={t:"s",v:M}}e.l+=h}return d}(r,n);if(0==r[2]&&(8==r[3]||9==r[3])&&r.length>=16&&5==r[14]&&108===r[15])throw new Error("Unsupported Works 3 for Mac file");if(2==r[2])o.Enum=y,e(r,(function(e,r,n){switch(n){case 0:o.vers=e,e>=4096&&(o.qpro=!0);break;case 255:o.vers=e,o.works=!0;break;case 6:p=e;break;case 204:e&&(s=e);break;case 222:s=e;break;case 15:case 51:(!o.qpro&&!o.works||51==n)&&e[1].v.charCodeAt(0)<48&&(e[1].v=e[1].v.slice(1)),(o.works||o.works2)&&(e[1].v=e[1].v.replace(/\r\n/g,"\n"));case 13:case 14:case 16:112==(112&e[2])&&(15&e[2])>1&&(15&e[2])<15&&(e[1].z=o.dateNF||t[(15&e[2])-1]||Dt[14],o.cellDates&&(e[1].v=Ar(e[1].v),e[1].t="number"==typeof e[1].v?"n":"d")),o.qpro&&e[3]>l&&(a["!ref"]=fa(p),c[i]=a,u.push(i),a={},o.dense&&(f=a["!data"]=[]),p={s:{r:0,c:0},e:{r:0,c:0}},l=e[3],i=s||"Sheet"+(l+1),s="");var d=o.dense?(f[e[0].r]||[])[e[0].c]:a[ua(e[0])];if(d){d.t=e[1].t,d.v=e[1].v,null!=e[1].z&&(d.z=e[1].z),null!=e[1].f&&(d.f=e[1].f),m=d;break}o.dense?(f[e[0].r]||(f[e[0].r]=[]),f[e[0].r][e[0].c]=e[1]):a[ua(e[0])]=e[1],m=e[1];break;case 21509:o.works2=!0;break;case 21506:5281==e&&(m.z="hh:mm:ss",o.cellDates&&"n"==m.t&&(m.v=Ar(m.v),m.t="number"==typeof m.v?"n":"d"))}}),o);else{if(26!=r[2]&&14!=r[2])throw new Error("Unrecognized LOTUS BOF "+r[2]);o.Enum=b,14==r[2]&&(o.qpro=!0,r.l=0),e(r,(function(e,t,r){switch(r){case 204:i=e;break;case 22:e[1].v.charCodeAt(0)<48&&(e[1].v=e[1].v.slice(1)),e[1].v=e[1].v.replace(/\x0F./g,(function(e){return String.fromCharCode(e.charCodeAt(1)-32)})).replace(/\r\n/g,"\n");case 23:case 24:case 25:case 37:case 39:case 40:if(e[3]>l&&(a["!ref"]=fa(p),c[i]=a,u.push(i),a={},o.dense&&(f=a["!data"]=[]),p={s:{r:0,c:0},e:{r:0,c:0}},l=e[3],i="Sheet"+(l+1)),h>0&&e[0].r>=h)break;o.dense?(f[e[0].r]||(f[e[0].r]=[]),f[e[0].r][e[0].c]=e[1]):a[ua(e[0])]=e[1],p.e.c<e[0].c&&(p.e.c=e[0].c),p.e.r<e[0].r&&(p.e.r=e[0].r);break;case 27:e[14e3]&&(d[e[14e3][0]]=e[14e3][1]);break;case 1537:d[e[0]]=e[1],e[0]==l&&(i=e[1])}}),o)}if(a["!ref"]=fa(p),c[s||i]=a,u.push(s||i),!d.length)return{SheetNames:u,Sheets:c};for(var g={},v=[],S=0;S<d.length;++S)c[u[S]]?(v.push(d[S]||u[S]),g[d[S]]=c[d[S]]||c[u[S]]):(v.push(d[S]),g[d[S]]={"!ref":"A1"});return{SheetNames:v,Sheets:g}}function n(e,t,r){var n=[{c:0,r:0},{t:"n",v:0},0,0];return r.qpro&&20768!=r.vers?(n[0].c=e.read_shift(1),n[3]=e.read_shift(1),n[0].r=e.read_shift(2),e.l+=2):r.works?(n[0].c=e.read_shift(2),n[0].r=e.read_shift(2),n[2]=e.read_shift(2)):(n[2]=e.read_shift(1),n[0].c=e.read_shift(2),n[0].r=e.read_shift(2)),n}function o(e){return e.z&&$t(e.z)?240|(t.indexOf(e.z)+1||2):255}function a(e,t,r){var n=Jo(7+r.length);n.write_shift(1,255),n.write_shift(2,t),n.write_shift(2,e),n.write_shift(1,39);for(var o=0;o<n.length;++o){var a=r.charCodeAt(o);n.write_shift(1,a>=128?95:a)}return n.write_shift(1,0),n}function i(e,t,r){var n=Jo(7);return n.write_shift(1,o(r)),n.write_shift(2,t),n.write_shift(2,e),n.write_shift(2,r.v,"i"),n}function s(e,t,r){var n=Jo(13);return n.write_shift(1,o(r)),n.write_shift(2,t),n.write_shift(2,e),n.write_shift(8,r.v,"f"),n}function l(e,t,r){var n=32768&t;return t=(n?e:0)+((t&=-32769)>=8192?t-16384:t),(n?"":"$")+(r?la(t):ia(t))}var c={31:["NA",0],33:["ABS",1],34:["TRUNC",1],35:["SQRT",1],36:["LOG",1],37:["LN",1],38:["PI",0],39:["SIN",1],40:["COS",1],41:["TAN",1],42:["ATAN2",2],43:["ATAN",1],44:["ASIN",1],45:["ACOS",1],46:["EXP",1],47:["MOD",2],49:["ISNA",1],50:["ISERR",1],51:["FALSE",0],52:["TRUE",0],53:["RAND",0],54:["DATE",3],63:["ROUND",2],64:["TIME",3],68:["ISNUMBER",1],69:["ISTEXT",1],70:["LEN",1],71:["VALUE",1],73:["MID",3],74:["CHAR",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],102:["UPPER",1],103:["LOWER",1],107:["PROPER",1],109:["TRIM",1],111:["T",1]},u=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function d(e){var t=[{c:0,r:0},{t:"n",v:0},0];return t[0].r=e.read_shift(2),t[3]=e[e.l++],t[0].c=e[e.l++],t}function f(e,t,r,n){var o=Jo(6+n.length);o.write_shift(2,e),o.write_shift(1,r),o.write_shift(1,t),o.write_shift(1,39);for(var a=0;a<n.length;++a){var i=n.charCodeAt(a);o.write_shift(1,i>=128?95:i)}return o.write_shift(1,0),o}function p(e,t){var r=d(e),n=e.read_shift(4),o=e.read_shift(4),a=e.read_shift(2);if(65535==a)return 0===n&&3221225472===o?(r[1].t="e",r[1].v=15):0===n&&3489660928===o?(r[1].t="e",r[1].v=42):r[1].v=0,r;var i=32768&a;return a=(32767&a)-16446,r[1].v=(1-2*i)*(o*Math.pow(2,a+32)+n*Math.pow(2,a)),r}function h(e,t,r,n){var o=Jo(14);if(o.write_shift(2,e),o.write_shift(1,r),o.write_shift(1,t),0==n)return o.write_shift(4,0),o.write_shift(4,0),o.write_shift(2,65535),o;var a,i=0,s=0,l=0;return n<0&&(i=1,n=-n),s=0|Math.log2(n),0==(2147483648&(l=(n/=Math.pow(2,s-31))>>>0))&&(++s,l=(n/=2)>>>0),n-=l,l|=2147483648,l>>>=0,a=(n*=Math.pow(2,32))>>>0,o.write_shift(4,a),o.write_shift(4,l),s+=16383+(i?32768:0),o.write_shift(2,s),o}function m(e,t){var r=d(e),n=e.read_shift(8,"f");return r[1].v=n,r}function g(e,t){return 0==e[e.l+t-1]?e.read_shift(t,"cstr"):""}function v(e,t){var r=Jo(5+e.length);r.write_shift(2,14e3),r.write_shift(2,t);for(var n=0;n<e.length;++n){var o=e.charCodeAt(n);r[r.l++]=o>127?95:o}return r[r.l++]=0,r}var y={0:{n:"BOF",f:Vi},1:{n:"EOF"},2:{n:"CALCMODE"},3:{n:"CALCORDER"},4:{n:"SPLIT"},5:{n:"SYNC"},6:{n:"RANGE",f:function(e,t,r){var n={s:{c:0,r:0},e:{c:0,r:0}};return 8==t&&r.qpro?(n.s.c=e.read_shift(1),e.l++,n.s.r=e.read_shift(2),n.e.c=e.read_shift(1),e.l++,n.e.r=e.read_shift(2),n):(n.s.c=e.read_shift(2),n.s.r=e.read_shift(2),12==t&&r.qpro&&(e.l+=2),n.e.c=e.read_shift(2),n.e.r=e.read_shift(2),12==t&&r.qpro&&(e.l+=2),65535==n.s.c&&(n.s.c=n.e.c=n.s.r=n.e.r=0),n)}},7:{n:"WINDOW1"},8:{n:"COLW1"},9:{n:"WINTWO"},10:{n:"COLW2"},11:{n:"NAME"},12:{n:"BLANK"},13:{n:"INTEGER",f:function(e,t,r){var o=n(e,0,r);return o[1].v=e.read_shift(2,"i"),o}},14:{n:"NUMBER",f:function(e,t,r){var o=n(e,0,r);return o[1].v=e.read_shift(8,"f"),o}},15:{n:"LABEL",f:function(e,t,r){var o=e.l+t,a=n(e,0,r);if(a[1].t="s",20768==(65534&r.vers)){e.l++;var i=e.read_shift(1);return a[1].v=e.read_shift(i,"utf8"),a}return r.qpro&&e.l++,a[1].v=e.read_shift(o-e.l,"cstr"),a}},16:{n:"FORMULA",f:function(e,t,r){var o=e.l+t,a=n(e,0,r);if(a[1].v=e.read_shift(8,"f"),r.qpro)e.l=o;else{var i=e.read_shift(2);!function(e,t){Ko(e,0);var r=[],n=0,o="",a="",i="",s="";for(;e.l<e.length;){var d=e[e.l++];switch(d){case 0:r.push(e.read_shift(8,"f"));break;case 1:a=l(t[0].c,e.read_shift(2),!0),o=l(t[0].r,e.read_shift(2),!1),r.push(a+o);break;case 2:var f=l(t[0].c,e.read_shift(2),!0),p=l(t[0].r,e.read_shift(2),!1);a=l(t[0].c,e.read_shift(2),!0),o=l(t[0].r,e.read_shift(2),!1),r.push(f+p+":"+a+o);break;case 3:if(e.l<e.length)return void console.error("WK1 premature formula end");break;case 4:r.push("("+r.pop()+")");break;case 5:r.push(e.read_shift(2));break;case 6:for(var h="";d=e[e.l++];)h+=String.fromCharCode(d);r.push('"'+h.replace(/"/g,'""')+'"');break;case 8:r.push("-"+r.pop());break;case 23:r.push("+"+r.pop());break;case 22:r.push("NOT("+r.pop()+")");break;case 20:case 21:s=r.pop(),i=r.pop(),r.push(["AND","OR"][d-20]+"("+i+","+s+")");break;default:if(d<32&&u[d])s=r.pop(),i=r.pop(),r.push(i+u[d]+s);else{if(!c[d])return d<=7?console.error("WK1 invalid opcode "+d.toString(16)):d<=24?console.error("WK1 unsupported op "+d.toString(16)):d<=30?console.error("WK1 invalid opcode "+d.toString(16)):d<=115?console.error("WK1 unsupported function opcode "+d.toString(16)):console.error("WK1 unrecognized opcode "+d.toString(16));if(69==(n=c[d][1])&&(n=e[e.l++]),n>r.length)return void console.error("WK1 bad formula parse 0x"+d.toString(16)+":|"+r.join("|")+"|");var m=r.slice(-n);r.length-=n,r.push(c[d][0]+"("+m.join(",")+")")}}}1==r.length?t[1].f=""+r[0]:console.error("WK1 bad formula parse |"+r.join("|")+"|")}(e.slice(e.l,e.l+i),a),e.l+=i}return a}},24:{n:"TABLE"},25:{n:"ORANGE"},26:{n:"PRANGE"},27:{n:"SRANGE"},28:{n:"FRANGE"},29:{n:"KRANGE1"},32:{n:"HRANGE"},35:{n:"KRANGE2"},36:{n:"PROTEC"},37:{n:"FOOTER"},38:{n:"HEADER"},39:{n:"SETUP"},40:{n:"MARGINS"},41:{n:"LABELFMT"},42:{n:"TITLES"},43:{n:"SHEETJS"},45:{n:"GRAPH"},46:{n:"NGRAPH"},47:{n:"CALCCOUNT"},48:{n:"UNFORMATTED"},49:{n:"CURSORW12"},50:{n:"WINDOW"},51:{n:"STRING",f:function(e,t,r){var o=e.l+t,a=n(e,0,r);if(a[1].t="s",20768==r.vers){var i=e.read_shift(1);return a[1].v=e.read_shift(i,"utf8"),a}return a[1].v=e.read_shift(o-e.l,"cstr"),a}},55:{n:"PASSWORD"},56:{n:"LOCKED"},60:{n:"QUERY"},61:{n:"QUERYNAME"},62:{n:"PRINT"},63:{n:"PRINTNAME"},64:{n:"GRAPH2"},65:{n:"GRAPHNAME"},66:{n:"ZOOM"},67:{n:"SYMSPLIT"},68:{n:"NSROWS"},69:{n:"NSCOLS"},70:{n:"RULER"},71:{n:"NNAME"},72:{n:"ACOMM"},73:{n:"AMACRO"},74:{n:"PARSE"},102:{n:"PRANGES??"},103:{n:"RRANGES??"},104:{n:"FNAME??"},105:{n:"MRANGES??"},204:{n:"SHEETNAMECS",f:g},222:{n:"SHEETNAMELP",f:function(e,t){var r=e[e.l++];r>t-1&&(r=t-1);for(var n="";n.length<r;)n+=String.fromCharCode(e[e.l++]);return n}},255:{n:"BOF",f:Vi},21506:{n:"WKSNF",f:Vi},65535:{n:""}},b={0:{n:"BOF"},1:{n:"EOF"},2:{n:"PASSWORD"},3:{n:"CALCSET"},4:{n:"WINDOWSET"},5:{n:"SHEETCELLPTR"},6:{n:"SHEETLAYOUT"},7:{n:"COLUMNWIDTH"},8:{n:"HIDDENCOLUMN"},9:{n:"USERRANGE"},10:{n:"SYSTEMRANGE"},11:{n:"ZEROFORCE"},12:{n:"SORTKEYDIR"},13:{n:"FILESEAL"},14:{n:"DATAFILLNUMS"},15:{n:"PRINTMAIN"},16:{n:"PRINTSTRING"},17:{n:"GRAPHMAIN"},18:{n:"GRAPHSTRING"},19:{n:"??"},20:{n:"ERRCELL"},21:{n:"NACELL"},22:{n:"LABEL16",f:function(e,t){var r=d(e);return r[1].t="s",r[1].v=e.read_shift(t-4,"cstr"),r}},23:{n:"NUMBER17",f:p},24:{n:"NUMBER18",f:function(e,t){var r=d(e);r[1].v=e.read_shift(2);var n=r[1].v>>1;if(1&r[1].v)switch(7&n){case 0:n=5e3*(n>>3);break;case 1:n=500*(n>>3);break;case 2:n=(n>>3)/20;break;case 3:n=(n>>3)/200;break;case 4:n=(n>>3)/2e3;break;case 5:n=(n>>3)/2e4;break;case 6:n=(n>>3)/16;break;case 7:n=(n>>3)/64}return r[1].v=n,r}},25:{n:"FORMULA19",f:function(e,t){var r=p(e);return e.l+=t-14,r}},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:function(e,t){for(var r={},n=e.l+t;e.l<n;){var o=e.read_shift(2);if(14e3==o){for(r[o]=[0,""],r[o][0]=e.read_shift(2);e[e.l];)r[o][1]+=String.fromCharCode(e[e.l]),e.l++;e.l++}}return r}},28:{n:"DTLABELMISC"},29:{n:"DTLABELCELL"},30:{n:"GRAPHWINDOW"},31:{n:"CPA"},32:{n:"LPLAUTO"},33:{n:"QUERY"},34:{n:"HIDDENSHEET"},35:{n:"??"},37:{n:"NUMBER25",f:function(e,t){var r=d(e),n=e.read_shift(4);return r[1].v=n>>6,r}},38:{n:"??"},39:{n:"NUMBER27",f:m},40:{n:"FORMULA28",f:function(e,t){var r=m(e);return e.l+=t-12,r}},142:{n:"??"},147:{n:"??"},150:{n:"??"},151:{n:"??"},152:{n:"??"},153:{n:"??"},154:{n:"??"},155:{n:"??"},156:{n:"??"},163:{n:"??"},174:{n:"??"},175:{n:"??"},176:{n:"??"},177:{n:"??"},184:{n:"??"},185:{n:"??"},186:{n:"??"},187:{n:"??"},188:{n:"??"},195:{n:"??"},201:{n:"??"},204:{n:"SHEETNAMECS",f:g},205:{n:"??"},206:{n:"??"},207:{n:"??"},208:{n:"??"},256:{n:"??"},259:{n:"??"},260:{n:"??"},261:{n:"??"},262:{n:"??"},263:{n:"??"},265:{n:"??"},266:{n:"??"},267:{n:"??"},268:{n:"??"},270:{n:"??"},271:{n:"??"},384:{n:"??"},389:{n:"??"},390:{n:"??"},393:{n:"??"},396:{n:"??"},512:{n:"??"},514:{n:"??"},513:{n:"??"},516:{n:"??"},517:{n:"??"},640:{n:"??"},641:{n:"??"},642:{n:"??"},643:{n:"??"},644:{n:"??"},645:{n:"??"},646:{n:"??"},647:{n:"??"},648:{n:"??"},658:{n:"??"},659:{n:"??"},660:{n:"??"},661:{n:"??"},662:{n:"??"},665:{n:"??"},666:{n:"??"},768:{n:"??"},772:{n:"??"},1537:{n:"SHEETINFOQP",f:function(e,t,r){if(r.qpro&&!(t<21)){var n=e.read_shift(1);return e.l+=17,e.l+=1,e.l+=2,[n,e.read_shift(t-21,"cstr")]}}},1600:{n:"??"},1602:{n:"??"},1793:{n:"??"},1794:{n:"??"},1795:{n:"??"},1796:{n:"??"},1920:{n:"??"},2048:{n:"??"},2049:{n:"??"},2052:{n:"??"},2688:{n:"??"},10998:{n:"??"},12849:{n:"??"},28233:{n:"??"},28484:{n:"??"},65535:{n:""}},w={5:"dd-mmm-yy",6:"dd-mmm",7:"mmm-yy",8:"mm/dd/yy",10:"hh:mm:ss AM/PM",11:"hh:mm AM/PM",14:"dd-mmm-yyyy",15:"mmm-yyyy",34:"0.00",50:"0.00;[Red]0.00",66:"0.00;(0.00)",82:"0.00;[Red](0.00)",162:'"$"#,##0.00;\\("$"#,##0.00\\)',288:"0%",304:"0E+00",320:"# ?/?"};function x(e){var t=e.read_shift(2),r=e.read_shift(1);if(0!=r)throw"unsupported QPW string type "+r.toString(16);return e.read_shift(t,"sbcs-cont")}return{sheet_to_wk1:function(e,t){var r=t||{};if(+r.codepage>=0&&Ke(+r.codepage),"string"==r.type)throw new Error("Cannot write WK1 to JS string");var n=qo();if(!e["!ref"])throw new Error("Cannot export empty sheet to WK1");var o=ma(e["!ref"]),l=null!=e["!data"],c=[];sf(n,0,function(e){var t=Jo(2);return t.write_shift(2,e),t}(1030)),sf(n,6,function(e){var t=Jo(8);return t.write_shift(2,e.s.c),t.write_shift(2,e.s.r),t.write_shift(2,e.e.c),t.write_shift(2,e.e.r),t}(o));for(var u=Math.min(o.e.r,8191),d=o.s.c;d<=o.e.c;++d)c[d]=la(d);for(var f=o.s.r;f<=u;++f){var p=ia(f);for(d=o.s.c;d<=o.e.c;++d){var h=l?(e["!data"][f]||[])[d]:e[c[d]+p];if(h&&"z"!=h.t)switch(h.t){case"n":(0|h.v)==h.v&&h.v>=-32768&&h.v<=32767?sf(n,13,i(f,d,h)):sf(n,14,s(f,d,h));break;case"d":var m=Sr(h.v);(0|m)==m&&m>=-32768&&m<=32767?sf(n,13,i(f,d,{t:"n",v:m,z:h.z||Dt[14]})):sf(n,14,s(f,d,{t:"n",v:m,z:h.z||Dt[14]}));break;default:sf(n,15,a(f,d,va(h).slice(0,239)))}}}return sf(n,1),n.end()},book_to_wk3:function(e,t){var r=t||{};if(+r.codepage>=0&&Ke(+r.codepage),"string"==r.type)throw new Error("Cannot write WK3 to JS string");var n=qo();sf(n,0,function(e){var t=Jo(26);t.write_shift(2,4096),t.write_shift(2,4),t.write_shift(4,0);for(var r=0,n=0,o=0,a=0;a<e.SheetNames.length;++a){var i=e.SheetNames[a],s=e.Sheets[i];if(s&&s["!ref"]){++o;var l=da(s["!ref"]);r<l.e.r&&(r=l.e.r),n<l.e.c&&(n=l.e.c)}}r>8191&&(r=8191);return t.write_shift(2,r),t.write_shift(1,o),t.write_shift(1,n),t.write_shift(2,0),t.write_shift(2,0),t.write_shift(1,1),t.write_shift(1,2),t.write_shift(4,0),t.write_shift(4,0),t}(e));for(var o=0,a=0;o<e.SheetNames.length;++o)(e.Sheets[e.SheetNames[o]]||{})["!ref"]&&sf(n,27,v(e.SheetNames[o],a++));var i=0;for(o=0;o<e.SheetNames.length;++o){var s=e.Sheets[e.SheetNames[o]];if(s&&s["!ref"]){for(var l=ma(s["!ref"]),c=null!=s["!data"],u=[],d=Math.min(l.e.r,8191),p=l.s.r;p<=d;++p)for(var m=ia(p),g=l.s.c;g<=l.e.c;++g){p===l.s.r&&(u[g]=la(g));var y=u[g]+m,b=c?(s["!data"][p]||[])[g]:s[y];if(b&&"z"!=b.t)if("n"==b.t)sf(n,23,h(p,g,i,b.v));else sf(n,22,f(p,g,i,va(b).slice(0,239)))}++i}}return sf(n,1),n.end()},to_workbook:function(e,t){switch(t.type){case"base64":return r(ft(it(e)),t);case"binary":return r(ft(e),t);case"buffer":case"array":return r(e,t)}throw"Unsupported type "+t.type}}}();var qs=function(){function e(e){var t=Zr(e,"t");if(!t)return{t:"s",v:""};var r={t:"s",v:xn(t[1])},n=Zr(e,"rPr");return n&&(r.s=function(e){var t={},r=e.match(pn),n=0,o=!1;if(r)for(;n!=r.length;++n){var a=gn(r[n]);switch(a[0].replace(/<\w*:/g,"<")){case"<condense":case"<extend":break;case"<shadow":if(!a.val)break;case"<shadow>":case"<shadow/>":t.shadow=1;break;case"</shadow>":break;case"<charset":if("1"==a.val)break;t.cp=Ze[parseInt(a.val,10)];break;case"<outline":if(!a.val)break;case"<outline>":case"<outline/>":t.outline=1;break;case"</outline>":break;case"<rFont":t.name=a.val;break;case"<sz":t.sz=a.val;break;case"<strike":if(!a.val)break;case"<strike>":case"<strike/>":t.strike=1;break;case"</strike>":break;case"<u":if(!a.val)break;switch(a.val){case"double":t.uval="double";break;case"singleAccounting":t.uval="single-accounting";break;case"doubleAccounting":t.uval="double-accounting"}case"<u>":case"<u/>":t.u=1;break;case"</u>":break;case"<b":if("0"==a.val)break;case"<b>":case"<b/>":t.b=1;break;case"</b>":break;case"<i":if("0"==a.val)break;case"<i>":case"<i/>":t.i=1;break;case"</i>":break;case"<color":a.rgb&&(t.color=a.rgb.slice(2,8));break;case"<color>":case"<color/>":case"</color>":break;case"<family":t.family=a.val;break;case"<family>":case"<family/>":case"</family>":break;case"<vertAlign":t.valign=a.val;break;case"<vertAlign>":case"<vertAlign/>":case"</vertAlign>":case"<scheme":case"<scheme>":case"<scheme/>":case"</scheme>":case"<extLst":case"<extLst>":case"</extLst>":break;case"<ext":o=!0;break;case"</ext>":o=!1;break;default:if(47!==a[0].charCodeAt(1)&&!o)throw new Error("Unrecognized rich format "+a[0])}}return t}(n[1])),r}var t=/<(?:\w+:)?r>/g,r=/<\/(?:\w+:)?r>/;return function(n){return n.replace(t,"").split(r).map(e).filter((function(e){return e.v}))}}(),el=function(){var e=/(\r\n|\n)/g;function t(t){var r=[[],t.v,[]];return t.v?(t.s&&function(e,t,r){var n=[];e.u&&n.push("text-decoration: underline;"),e.uval&&n.push("text-underline-style:"+e.uval+";"),e.sz&&n.push("font-size:"+e.sz+"pt;"),e.outline&&n.push("text-effect: outline;"),e.shadow&&n.push("text-shadow: auto;"),t.push('<span style="'+n.join("")+'">'),e.b&&(t.push("<b>"),r.push("</b>")),e.i&&(t.push("<i>"),r.push("</i>")),e.strike&&(t.push("<s>"),r.push("</s>"));var o=e.valign||"";"superscript"==o||"super"==o?o="sup":"subscript"==o&&(o="sub"),""!=o&&(t.push("<"+o+">"),r.push("</"+o+">")),r.push("</span>")}(t.s,r[0],r[2]),r[0].join("")+r[1].replace(e,"<br/>")+r[2].join("")):""}return function(e){return e.map(t).join("")}}(),tl=/<(?:\w+:)?t\b[^<>]*>([^<]*)<\/(?:\w+:)?t>/g,rl=/<(?:\w+:)?r\b[^<>]*>/;function nl(e,t){var r=!t||t.cellHTML,n={};return e?(e.match(/^\s*<(?:\w+:)?t[^>]*>/)?(n.t=xn(Rn(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""),!0),n.r=Rn(e),r&&(n.h=En(n.t))):e.match(rl)&&(n.r=Rn(e),n.t=xn(Rn((Kr(e,"rPh").match(tl)||[]).join("").replace(pn,"")),!0),r&&(n.h=el(qs(n.r)))),n):{t:""}}var ol=/<(?:\w+:)?(?:si|sstItem)>/g,al=/<\/(?:\w+:)?(?:si|sstItem)>/;var il=/^\s|\s$|[\t\n\r]/;var sl=function(e,t){var r=!1;return null==t&&(r=!0,t=Jo(15+4*e.t.length)),t.write_shift(1,0),Aa(e.t,t),r?t.slice(0,t.l):t};function ll(e){var t=qo();ea(t,159,function(e,t){return t||(t=Jo(8)),t.write_shift(4,e.Count),t.write_shift(4,e.Unique),t}(e));for(var r=0;r<e.length;++r)ea(t,19,sl(e[r]));return ea(t,160),t.end()}function cl(e){if("undefined"!==typeof Be)return Be.utils.encode(Ve,e);for(var t=[],r=e.split(""),n=0;n<r.length;++n)t[n]=r[n].charCodeAt(0);return t}function ul(e,t){var r={};return r.Major=e.read_shift(2),r.Minor=e.read_shift(2),t>=4&&(e.l+=t-4),r}function dl(e){for(var t=e.read_shift(4),r=e.l+t-4,n={},o=e.read_shift(4),a=[];o-- >0;)a.push({t:e.read_shift(4),v:e.read_shift(0,"lpp4")});if(n.name=e.read_shift(0,"lpp4"),n.comps=a,e.l!=r)throw new Error("Bad DataSpaceMapEntry: "+e.l+" != "+r);return n}function fl(e){var t=function(e){var t={};return e.read_shift(4),e.l+=4,t.id=e.read_shift(0,"lpp4"),t.name=e.read_shift(0,"lpp4"),t.R=ul(e,4),t.U=ul(e,4),t.W=ul(e,4),t}(e);if(t.ename=e.read_shift(0,"8lpp4"),t.blksz=e.read_shift(4),t.cmode=e.read_shift(4),4!=e.read_shift(4))throw new Error("Bad !Primary record");return t}function pl(e,t){var r=e.l+t,n={};n.Flags=63&e.read_shift(4),e.l+=4,n.AlgID=e.read_shift(4);var o=!1;switch(n.AlgID){case 26126:case 26127:case 26128:o=36==n.Flags;break;case 26625:o=4==n.Flags;break;case 0:o=16==n.Flags||4==n.Flags||36==n.Flags;break;default:throw"Unrecognized encryption algorithm: "+n.AlgID}if(!o)throw new Error("Encryption Flags/AlgID mismatch");return n.AlgIDHash=e.read_shift(4),n.KeySize=e.read_shift(4),n.ProviderType=e.read_shift(4),e.l+=8,n.CSPName=e.read_shift(r-e.l>>1,"utf16le"),e.l=r,n}function hl(e,t){var r={},n=e.l+t;return e.l+=4,r.Salt=e.slice(e.l,e.l+16),e.l+=16,r.Verifier=e.slice(e.l,e.l+16),e.l+=16,e.read_shift(4),r.VerifierHash=e.slice(e.l,n),e.l=n,r}function ml(e){if(36!=(63&e.read_shift(4)))throw new Error("EncryptionInfo mismatch");var t=e.read_shift(4);return{t:"Std",h:pl(e,t),v:hl(e,e.length-e.l)}}function gl(){throw new Error("File is password-protected: ECMA-376 Extensible")}function vl(e){var t=["saltSize","blockSize","keyBits","hashSize","cipherAlgorithm","cipherChaining","hashAlgorithm","saltValue"];e.l+=4;var r=e.read_shift(e.length-e.l,"utf8"),n={};return r.replace(pn,(function(e){var r=gn(e);switch(yn(r[0])){case"<?xml":case"<encryption":case"</encryption>":case"</keyEncryptors>":case"</keyEncryptor>":break;case"<keyData":t.forEach((function(e){n[e]=r[e]}));break;case"<dataIntegrity":n.encryptedHmacKey=r.encryptedHmacKey,n.encryptedHmacValue=r.encryptedHmacValue;break;case"<keyEncryptors>":case"<keyEncryptors":n.encs=[];break;case"<keyEncryptor":n.uri=r.uri;break;case"<encryptedKey":n.encs.push(r);break;default:throw r[0]}})),n}function yl(e){var t,r,n=0,o=cl(e),a=o.length+1;for((t=ut(a))[0]=o.length,r=1;r!=a;++r)t[r]=o[r-1];for(r=a-1;r>=0;--r)n=((0===(16384&n)?0:1)|n<<1&32767)^t[r];return 52811^n}var bl=function(){var e=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0],t=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163],r=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628],n=function(e,t){return 255&((r=e^t)/2|128*r);var r};return function(o){for(var a,i,s,l=cl(o),c=function(e){for(var n=t[e.length-1],o=104,a=e.length-1;a>=0;--a)for(var i=e[a],s=0;7!=s;++s)64&i&&(n^=r[o]),i*=2,--o;return n}(l),u=l.length,d=ut(16),f=0;16!=f;++f)d[f]=0;for(1===(1&u)&&(a=c>>8,d[u]=n(e[0],a),--u,a=255&c,i=l[l.length-1],d[u]=n(i,a));u>0;)a=c>>8,d[--u]=n(l[u],a),a=255&c,d[--u]=n(l[u],a);for(u=15,s=15-l.length;s>0;)a=c>>8,d[u]=n(e[s],a),--s,a=255&c,d[--u]=n(l[u],a),--u,--s;return d}}(),wl=function(e){var t=0,r=bl(e);return function(e){var n=function(e,t,r,n,o){var a,i;for(o||(o=t),n||(n=bl(e)),a=0;a!=t.length;++a)i=t[a],i=255&((i^=n[r])>>5|i<<3),o[a]=i,++r;return[o,r,n]}("",e,t,r);return t=n[1],n[0]}};function xl(e,t,r){var n=r||{};return n.Info=e.read_shift(2),e.l-=2,1===n.Info?n.Data=function(e){var t={},r=t.EncryptionVersionInfo=ul(e,4);if(1!=r.Major||1!=r.Minor)throw"unrecognized version code "+r.Major+" : "+r.Minor;return t.Salt=e.read_shift(16),t.EncryptedVerifier=e.read_shift(16),t.EncryptedVerifierHash=e.read_shift(16),t}(e):n.Data=function(e,t){var r={},n=r.EncryptionVersionInfo=ul(e,4);if(t-=4,2!=n.Minor)throw new Error("unrecognized minor version code: "+n.Minor);if(n.Major>4||n.Major<2)throw new Error("unrecognized major version code: "+n.Major);r.Flags=e.read_shift(4),t-=4;var o=e.read_shift(4);return t-=4,r.EncryptionHeader=pl(e,o),t-=o,r.EncryptionVerifier=hl(e,t),r}(e,t),n}function Sl(e,t){var r=t||{},n={},o=r.dense;o&&(n["!data"]=[]);var a=Hr(e,"\\trowd","\\row");if(!a)throw new Error("RTF missing table");var i={s:{c:0,r:0},e:{c:0,r:a.length-1}},s=[];return a.forEach((function(e,t){o&&(s=n["!data"][t]=[]);for(var a,l=/\\[\w\-]+\b/g,c=0,u=-1,d=[];null!=(a=l.exec(e));){var f=e.slice(c,l.lastIndex-a[0].length);switch(32==f.charCodeAt(0)&&(f=f.slice(1)),f.length&&d.push(f),a[0]){case"\\cell":if(++u,d.length){var p={v:d.join(""),t:"s"};"TRUE"==p.v||"FALSE"==p.v?(p.v="TRUE"==p.v,p.t="b"):isNaN(Pr(p.v))?null!=ni[p.v]&&(p.t="e",p.w=p.v,p.v=ni[p.v]):(p.t="n",!1!==r.cellText&&(p.w=p.v),p.v=Pr(p.v)),o?s[u]=p:n[ua({r:t,c:u})]=p}d=[];break;case"\\par":d.push("\n")}c=l.lastIndex}u>i.e.c&&(i.e.c=u)})),n["!ref"]=fa(i),n}function Al(e,t){var r=ya(function(e,t){switch(t.type){case"base64":return Sl(it(e),t);case"binary":return Sl(e,t);case"buffer":return Sl(st&&Buffer.isBuffer(e)?e.toString("binary"):ht(e),t);case"array":return Sl(Tr(e),t)}throw new Error("Unrecognized type "+t.type)}(e,t),t);return r.bookType="rtf",r}function kl(e){for(var t=0,r=1;3!=t;++t)r=256*r+(e[t]>255?255:e[t]<0?0:e[t]);return r.toString(16).toUpperCase().slice(1)}function Cl(e,t){if(0===t)return e;var r=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,o=Math.max(t,r,n),a=Math.min(t,r,n),i=o-a;if(0===i)return[0,0,t];var s,l=0,c=o+a;switch(s=i/(c>1?2-c:c),o){case t:l=((r-n)/i+6)%6;break;case r:l=(n-t)/i+2;break;case n:l=(t-r)/i+4}return[l/6,s,c/2]}(function(e){var t=e.slice("#"===e[0]?1:0).slice(0,6);return[parseInt(t.slice(0,2),16),parseInt(t.slice(2,4),16),parseInt(t.slice(4,6),16)]}(e));return r[2]=t<0?r[2]*(1+t):1-(1-r[2])*(1-t),kl(function(e){var t,r=e[0],n=e[1],o=e[2],a=2*n*(o<.5?o:1-o),i=o-a/2,s=[i,i,i],l=6*r;if(0!==n)switch(0|l){case 0:case 6:t=a*l,s[0]+=a,s[1]+=t;break;case 1:t=a*(2-l),s[0]+=t,s[1]+=a;break;case 2:t=a*(l-2),s[1]+=a,s[2]+=t;break;case 3:t=a*(4-l),s[1]+=t,s[2]+=a;break;case 4:t=a*(l-4),s[2]+=a,s[0]+=t;break;case 5:t=a*(6-l),s[2]+=t,s[0]+=a}for(var c=0;3!=c;++c)s[c]=Math.round(255*s[c]);return s}(r))}var Il=6;function El(e){return Math.floor((e+Math.round(128/Il)/256)*Il)}function Dl(e){return Math.floor((e-5)/Il*100+.5)/100}function Tl(e){return Math.round((e*Il+5)/Il*256)/256}function Ol(e){return Tl(Dl(El(e)))}function Ml(e){var t=Math.abs(e-Ol(e)),r=Il;if(t>.005)for(Il=1;Il<15;++Il)Math.abs(e-Ol(e))<=t&&(t=Math.abs(e-Ol(e)),r=Il);Il=r}function Pl(e){e.width?(e.wpx=El(e.width),e.wch=Dl(e.wpx),e.MDW=Il):e.wpx?(e.wch=Dl(e.wpx),e.width=Tl(e.wch),e.MDW=Il):"number"==typeof e.wch&&(e.width=Tl(e.wch),e.wpx=El(e.width),e.MDW=Il),e.customWidth&&delete e.customWidth}var jl=96;function Rl(e){return 96*e/jl}function _l(e){return e*jl/96}var Nl={None:"none",Solid:"solid",Gray50:"mediumGray",Gray75:"darkGray",Gray25:"lightGray",HorzStripe:"darkHorizontal",VertStripe:"darkVertical",ReverseDiagStripe:"darkDown",DiagStripe:"darkUp",DiagCross:"darkGrid",ThickDiagCross:"darkTrellis",ThinHorzStripe:"lightHorizontal",ThinVertStripe:"lightVertical",ThinReverseDiagStripe:"lightDown",ThinHorzCross:"lightGrid"};var Ll=["numFmtId","fillId","fontId","borderId","xfId"],Ul=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];var Bl=function(){return function(e,t,r){var n,o={};return e?(e=Wr(Yr(e,"\x3c!--","--\x3e")),(n=Zr(e,"numFmts"))&&function(e,t,r){t.NumberFmt=[];for(var n=mr(Dt),o=0;o<n.length;++o)t.NumberFmt[n[o]]=Dt[n[o]];var a=e.match(pn);if(a)for(o=0;o<a.length;++o){var i=gn(a[o]);switch(yn(i[0])){case"<numFmts":case"</numFmts>":case"<numFmts/>":case"<numFmts>":case"</numFmt>":break;case"<numFmt":var s=xn(Rn(i.formatCode)),l=parseInt(i.numFmtId,10);if(t.NumberFmt[l]=s,l>0){if(l>392){for(l=392;l>60&&null!=t.NumberFmt[l];--l);t.NumberFmt[l]=s}cr(s,l)}break;default:if(r.WTF)throw new Error("unrecognized "+i[0]+" in numFmts")}}}(n[0],o,r),(n=Zr(e,"fonts"))&&function(e,t,r,n){t.Fonts=[];var o={},a=!1;(e.match(pn)||[]).forEach((function(e){var i=gn(e);switch(yn(i[0])){case"<fonts":case"<fonts>":case"</fonts>":case"<font":case"<font>":case"<name/>":case"</name>":case"</b>":case"</b":case"</i>":case"</i":case"</u>":case"</u":case"</strike>":case"</strike":case"</outline>":case"</outline":case"</shadow>":case"</shadow":case"</condense>":case"</condense":case"</extend>":case"</extend":case"<sz/>":case"</sz>":case"</sz":case"<vertAlign/>":case"</vertAlign>":case"</vertAlign":case"<family/>":case"</family>":case"</family":case"<scheme/>":case"</scheme>":case"</scheme":case"<charset/>":case"</charset>":case"</charset":case"<color/>":case"</color>":case"</color":case"<extLst":case"<extLst>":case"</extLst>":break;case"</font>":case"<font/>":t.Fonts.push(o),o={};break;case"<name":i.val&&(o.name=Rn(i.val));break;case"<b":o.bold=i.val?Tn(i.val):1;break;case"<b/>":o.bold=1;break;case"<i":o.italic=i.val?Tn(i.val):1;break;case"<i/>":o.italic=1;break;case"<u":switch(i.val){case"none":o.underline=0;break;case"single":o.underline=1;break;case"double":o.underline=2;break;case"singleAccounting":o.underline=33;break;case"doubleAccounting":o.underline=34}break;case"<u/>":o.underline=1;break;case"<strike":o.strike=i.val?Tn(i.val):1;break;case"<strike/>":o.strike=1;break;case"<outline":o.outline=i.val?Tn(i.val):1;break;case"<outline/>":o.outline=1;break;case"<shadow":o.shadow=i.val?Tn(i.val):1;break;case"<shadow/>":o.shadow=1;break;case"<condense":o.condense=i.val?Tn(i.val):1;break;case"<condense/>":o.condense=1;break;case"<extend":o.extend=i.val?Tn(i.val):1;break;case"<extend/>":o.extend=1;break;case"<sz":i.val&&(o.sz=+i.val);break;case"<vertAlign":i.val&&(o.vertAlign=i.val);break;case"<family":i.val&&(o.family=parseInt(i.val,10));break;case"<scheme":i.val&&(o.scheme=i.val);break;case"<charset":if("1"==i.val)break;i.codepage=Ze[parseInt(i.val,10)];break;case"<color":if(o.color||(o.color={}),i.auto&&(o.color.auto=Tn(i.auto)),i.rgb)o.color.rgb=i.rgb.slice(-6);else if(i.indexed){o.color.index=parseInt(i.indexed,10);var s=ti[o.color.index];81==o.color.index&&(s=ti[1]),s||(s=ti[1]),o.color.rgb=s[0].toString(16)+s[1].toString(16)+s[2].toString(16)}else i.theme&&(o.color.theme=parseInt(i.theme,10),i.tint&&(o.color.tint=parseFloat(i.tint)),i.theme&&r.themeElements&&r.themeElements.clrScheme&&(o.color.rgb=Cl(r.themeElements.clrScheme[o.color.theme].rgb,o.color.tint||0)));break;case"<AlternateContent":case"<ext":a=!0;break;case"</AlternateContent>":case"</AlternateContent":case"</ext>":a=!1;break;default:if(n&&n.WTF&&!a)throw new Error("unrecognized "+i[0]+" in fonts")}}))}(n[0],o,t,r),(n=Zr(e,"fills"))&&function(e,t,r,n){t.Fills=[];var o={},a=!1;(e.match(pn)||[]).forEach((function(e){var r=gn(e);switch(yn(r[0])){case"<fills":case"<fills>":case"</fills>":case"</fill>":case"<gradientFill>":case"<patternFill/>":case"</patternFill>":case"<bgColor/>":case"</bgColor>":case"<fgColor/>":case"</fgColor>":case"<stop":case"<stop/>":case"</stop>":case"<color":case"<color/>":case"</color>":case"<extLst":case"<extLst>":case"</extLst>":break;case"<fill>":case"<fill":case"<fill/>":o={},t.Fills.push(o);break;case"<gradientFill":case"</gradientFill>":t.Fills.push(o),o={};break;case"<patternFill":case"<patternFill>":r.patternType&&(o.patternType=r.patternType);break;case"<bgColor":o.bgColor||(o.bgColor={}),r.indexed&&(o.bgColor.indexed=parseInt(r.indexed,10)),r.theme&&(o.bgColor.theme=parseInt(r.theme,10)),r.tint&&(o.bgColor.tint=parseFloat(r.tint)),r.rgb&&(o.bgColor.rgb=r.rgb.slice(-6));break;case"<fgColor":o.fgColor||(o.fgColor={}),r.theme&&(o.fgColor.theme=parseInt(r.theme,10)),r.tint&&(o.fgColor.tint=parseFloat(r.tint)),null!=r.rgb&&(o.fgColor.rgb=r.rgb.slice(-6));break;case"<ext":a=!0;break;case"</ext>":a=!1;break;default:if(n&&n.WTF&&!a)throw new Error("unrecognized "+r[0]+" in fills")}}))}(n[0],o,0,r),(n=Zr(e,"borders"))&&function(e,t,r,n){t.Borders=[];var o={},a=!1;(e.match(pn)||[]).forEach((function(e){var r=gn(e);switch(yn(r[0])){case"<borders":case"<borders>":case"</borders>":case"</border>":case"<left/>":case"<left":case"<left>":case"</left>":case"<right/>":case"<right":case"<right>":case"</right>":case"<top/>":case"<top":case"<top>":case"</top>":case"<bottom/>":case"<bottom":case"<bottom>":case"</bottom>":case"<diagonal":case"<diagonal>":case"<diagonal/>":case"</diagonal>":case"<horizontal":case"<horizontal>":case"<horizontal/>":case"</horizontal>":case"<vertical":case"<vertical>":case"<vertical/>":case"</vertical>":case"<start":case"<start>":case"<start/>":case"</start>":case"<end":case"<end>":case"<end/>":case"</end>":case"<color":case"<color>":case"<color/>":case"</color>":case"<extLst":case"<extLst>":case"</extLst>":break;case"<border":case"<border>":case"<border/>":o={},r.diagonalUp&&(o.diagonalUp=Tn(r.diagonalUp)),r.diagonalDown&&(o.diagonalDown=Tn(r.diagonalDown)),t.Borders.push(o);break;case"<ext":a=!0;break;case"</ext>":a=!1;break;default:if(n&&n.WTF&&!a)throw new Error("unrecognized "+r[0]+" in borders")}}))}(n[0],o,0,r),(n=Zr(e,"cellXfs"))&&function(e,t,r){var n;t.CellXf=[];var o=!1;(e.match(pn)||[]).forEach((function(e){var a=gn(e),i=0;switch(yn(a[0])){case"<cellXfs":case"<cellXfs>":case"<cellXfs/>":case"</cellXfs>":case"</xf>":case"</alignment>":case"<protection":case"<protection>":case"</protection>":case"<protection/>":case"<extLst":case"<extLst>":case"</extLst>":break;case"<xf":case"<xf/>":case"<xf>":for(delete(n=a)[0],i=0;i<Ll.length;++i)n[Ll[i]]&&(n[Ll[i]]=parseInt(n[Ll[i]],10));for(i=0;i<Ul.length;++i)n[Ul[i]]&&(n[Ul[i]]=Tn(n[Ul[i]]));if(t.NumberFmt&&n.numFmtId>392)for(i=392;i>60;--i)if(t.NumberFmt[n.numFmtId]==t.NumberFmt[i]){n.numFmtId=i;break}t.CellXf.push(n);break;case"<alignment":case"<alignment/>":case"<alignment>":var s={};a.vertical&&(s.vertical=a.vertical),a.horizontal&&(s.horizontal=a.horizontal),null!=a.textRotation&&(s.textRotation=a.textRotation),a.indent&&(s.indent=a.indent),a.wrapText&&(s.wrapText=Tn(a.wrapText)),n.alignment=s;break;case"<AlternateContent":case"<AlternateContent>":case"<ext":o=!0;break;case"</AlternateContent>":case"</ext>":o=!1;break;default:if(r&&r.WTF&&!o)throw new Error("unrecognized "+a[0]+" in cellXfs")}}))}(n[0],o,r),o):o}}();function Fl(e,t){var r,n=[un,Hn("styleSheet",null,{xmlns:io[0],"xmlns:vt":no})];return e.SSF&&null!=(r=function(e){var t=["<numFmts>"];return[[5,8],[23,26],[41,44],[50,392]].forEach((function(r){for(var n=r[0];n<=r[1];++n)null!=e[n]&&(t[t.length]=Hn("numFmt",null,{numFmtId:n,formatCode:kn(e[n])}))})),1===t.length?"":(t[t.length]="</numFmts>",t[0]=Hn("numFmts",null,{count:t.length-2}).replace("/>",">"),t.join(""))}(e.SSF))&&(n[n.length]=r),n[n.length]='<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>',n[n.length]='<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>',n[n.length]='<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>',n[n.length]='<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>',(r=function(e){var t=[];return t[t.length]=Hn("cellXfs",null),e.forEach((function(e){t[t.length]=Hn("xf",null,e)})),t[t.length]="</cellXfs>",2===t.length?"":(t[0]=Hn("cellXfs",null,{count:t.length-2}).replace("/>",">"),t.join(""))}(t.cellXfs))&&(n[n.length]=r),n[n.length]='<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>',n[n.length]='<dxfs count="0"/>',n[n.length]='<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>',n.length>2&&(n[n.length]="</styleSheet>",n[1]=n[1].replace("/>",">")),n.join("")}function zl(e,t,r){r||(r=Jo(6+4*t.length)),r.write_shift(2,e),Aa(t,r);var n=r.length>r.l?r.slice(0,r.l):r;return null==r.l&&(r.l=r.length),n}function Wl(e,t){t||(t=Jo(153)),t.write_shift(2,20*e.sz),function(e,t){t||(t=Jo(2));var r=(e.italic?2:0)|(e.strike?8:0)|(e.outline?16:0)|(e.shadow?32:0)|(e.condense?64:0)|(e.extend?128:0);t.write_shift(1,r),t.write_shift(1,0)}(e,t),t.write_shift(2,e.bold?700:400);var r=0;"superscript"==e.vertAlign?r=1:"subscript"==e.vertAlign&&(r=2),t.write_shift(2,r),t.write_shift(1,e.underline||0),t.write_shift(1,e.family||0),t.write_shift(1,e.charset||0),t.write_shift(1,0),Ga(e.color,t);var n=0;return"major"==e.scheme&&(n=1),"minor"==e.scheme&&(n=2),t.write_shift(1,n),Aa(e.name,t),t.length>t.l?t.slice(0,t.l):t}var Hl,Yl=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"],Vl=Xo;function Gl(e,t){t||(t=Jo(84)),Hl||(Hl=vr(Yl));var r=Hl[e.patternType];null==r&&(r=40),t.write_shift(4,r);var n=0;if(40!=r)for(Ga({auto:1},t),Ga({auto:1},t);n<12;++n)t.write_shift(4,0);else{for(;n<4;++n)t.write_shift(4,0);for(;n<12;++n)t.write_shift(4,0)}return t.length>t.l?t.slice(0,t.l):t}function Zl(e,t,r){r||(r=Jo(16)),r.write_shift(2,t||0),r.write_shift(2,e.numFmtId||0),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(1,0),r.write_shift(1,0);return r.write_shift(1,0),r.write_shift(1,0),r.write_shift(1,0),r.write_shift(1,0),r}function Ql(e,t){return t||(t=Jo(10)),t.write_shift(1,0),t.write_shift(1,0),t.write_shift(4,0),t.write_shift(4,0),t}var Kl=Xo;function Xl(e){var t;ea(e,613,xa(1)),ea(e,46,(t||(t=Jo(51)),t.write_shift(1,0),Ql(0,t),Ql(0,t),Ql(0,t),Ql(0,t),Ql(0,t),t.length>t.l?t.slice(0,t.l):t)),ea(e,614)}function Jl(e){var t,r;ea(e,619,xa(1)),ea(e,48,(t={xfId:0,builtinId:0,name:"Normal"},r||(r=Jo(52)),r.write_shift(4,t.xfId),r.write_shift(2,1),r.write_shift(1,+t.builtinId),r.write_shift(1,0),_a(t.name||"",r),r.length>r.l?r.slice(0,r.l):r)),ea(e,620)}function $l(e){ea(e,508,function(e,t,r){var n=Jo(2052);return n.write_shift(4,e),_a(t,n),_a(r,n),n.length>n.l?n.slice(0,n.l):n}(0,"TableStyleMedium9","PivotStyleMedium4")),ea(e,509)}function ql(e,t){var r=qo();return ea(r,278),function(e,t){if(t){var r=0;[[5,8],[23,26],[41,44],[50,392]].forEach((function(e){for(var n=e[0];n<=e[1];++n)null!=t[n]&&++r})),0!=r&&(ea(e,615,xa(r)),[[5,8],[23,26],[41,44],[50,392]].forEach((function(r){for(var n=r[0];n<=r[1];++n)null!=t[n]&&ea(e,44,zl(n,t[n]))})),ea(e,616))}}(r,e.SSF),function(e){ea(e,611,xa(1)),ea(e,43,Wl({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"})),ea(e,612)}(r),function(e){ea(e,603,xa(2)),ea(e,45,Gl({patternType:"none"})),ea(e,45,Gl({patternType:"gray125"})),ea(e,604)}(r),Xl(r),function(e){ea(e,626,xa(1)),ea(e,47,Zl({numFmtId:0,fontId:0,fillId:0,borderId:0},65535)),ea(e,627)}(r),function(e,t){ea(e,617,xa(t.length)),t.forEach((function(t){ea(e,47,Zl(t,0))})),ea(e,618)}(r,t.cellXfs),Jl(r),function(e){ea(e,505,xa(0)),ea(e,506)}(r),$l(r),ea(r,279),r.end()}var ec=["</a:lt1>","</a:dk1>","</a:lt2>","</a:dk2>","</a:accent1>","</a:accent2>","</a:accent3>","</a:accent4>","</a:accent5>","</a:accent6>","</a:hlink>","</a:folHlink>"];function tc(e,t,r){var n;if(t.themeElements={},!(n=Gr(e,"a:clrScheme")))throw new Error("clrScheme not found in themeElements");if(function(e,t,r){t.themeElements.clrScheme=[];var n={};(e[0].match(pn)||[]).forEach((function(e){var o=gn(e);switch(o[0]){case"<a:clrScheme":case"</a:clrScheme>":case"</a:srgbClr>":case"</a:sysClr>":break;case"<a:srgbClr":n.rgb=o.val;break;case"<a:sysClr":n.rgb=o.lastClr;break;case"</a:dk1>":case"</a:lt1>":case"<a:dk1>":case"<a:lt1>":case"<a:dk2>":case"</a:dk2>":case"<a:lt2>":case"</a:lt2>":case"<a:accent1>":case"</a:accent1>":case"<a:accent2>":case"</a:accent2>":case"<a:accent3>":case"</a:accent3>":case"<a:accent4>":case"</a:accent4>":case"<a:accent5>":case"</a:accent5>":case"<a:accent6>":case"</a:accent6>":case"<a:hlink>":case"</a:hlink>":case"<a:folHlink>":case"</a:folHlink>":"/"===o[0].charAt(1)?(t.themeElements.clrScheme[ec.indexOf(o[0])]=n,n={}):n.name=o[0].slice(3,o[0].length-1);break;default:if(r&&r.WTF)throw new Error("Unrecognized "+o[0]+" in clrScheme")}}))}(n,t,r),!(n=Gr(e,"a:fontScheme")))throw new Error("fontScheme not found in themeElements");if(!(n=Gr(e,"a:fmtScheme")))throw new Error("fmtScheme not found in themeElements")}function rc(e,t){var r;e&&0!==e.length||(e=nc());var n={};if(!(r=Gr(e,"a:themeElements")))throw new Error("themeElements not found in theme");return tc(r[0],n,t),n.raw=e,n}function nc(e,t){if(t&&t.themeXLSX)return t.themeXLSX;if(e&&"string"==typeof e.raw)return e.raw;var r=[un];return r[r.length]='<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme">',r[r.length]="<a:themeElements>",r[r.length]='<a:clrScheme name="Office">',r[r.length]='<a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1>',r[r.length]='<a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1>',r[r.length]='<a:dk2><a:srgbClr val="1F497D"/></a:dk2>',r[r.length]='<a:lt2><a:srgbClr val="EEECE1"/></a:lt2>',r[r.length]='<a:accent1><a:srgbClr val="4F81BD"/></a:accent1>',r[r.length]='<a:accent2><a:srgbClr val="C0504D"/></a:accent2>',r[r.length]='<a:accent3><a:srgbClr val="9BBB59"/></a:accent3>',r[r.length]='<a:accent4><a:srgbClr val="8064A2"/></a:accent4>',r[r.length]='<a:accent5><a:srgbClr val="4BACC6"/></a:accent5>',r[r.length]='<a:accent6><a:srgbClr val="F79646"/></a:accent6>',r[r.length]='<a:hlink><a:srgbClr val="0000FF"/></a:hlink>',r[r.length]='<a:folHlink><a:srgbClr val="800080"/></a:folHlink>',r[r.length]="</a:clrScheme>",r[r.length]='<a:fontScheme name="Office">',r[r.length]="<a:majorFont>",r[r.length]='<a:latin typeface="Cambria"/>',r[r.length]='<a:ea typeface=""/>',r[r.length]='<a:cs typeface=""/>',r[r.length]='<a:font script="Jpan" typeface="\uff2d\uff33 \uff30\u30b4\u30b7\u30c3\u30af"/>',r[r.length]='<a:font script="Hang" typeface="\ub9d1\uc740 \uace0\ub515"/>',r[r.length]='<a:font script="Hans" typeface="\u5b8b\u4f53"/>',r[r.length]='<a:font script="Hant" typeface="\u65b0\u7d30\u660e\u9ad4"/>',r[r.length]='<a:font script="Arab" typeface="Times New Roman"/>',r[r.length]='<a:font script="Hebr" typeface="Times New Roman"/>',r[r.length]='<a:font script="Thai" typeface="Tahoma"/>',r[r.length]='<a:font script="Ethi" typeface="Nyala"/>',r[r.length]='<a:font script="Beng" typeface="Vrinda"/>',r[r.length]='<a:font script="Gujr" typeface="Shruti"/>',r[r.length]='<a:font script="Khmr" typeface="MoolBoran"/>',r[r.length]='<a:font script="Knda" typeface="Tunga"/>',r[r.length]='<a:font script="Guru" typeface="Raavi"/>',r[r.length]='<a:font script="Cans" typeface="Euphemia"/>',r[r.length]='<a:font script="Cher" typeface="Plantagenet Cherokee"/>',r[r.length]='<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>',r[r.length]='<a:font script="Tibt" typeface="Microsoft Himalaya"/>',r[r.length]='<a:font script="Thaa" typeface="MV Boli"/>',r[r.length]='<a:font script="Deva" typeface="Mangal"/>',r[r.length]='<a:font script="Telu" typeface="Gautami"/>',r[r.length]='<a:font script="Taml" typeface="Latha"/>',r[r.length]='<a:font script="Syrc" typeface="Estrangelo Edessa"/>',r[r.length]='<a:font script="Orya" typeface="Kalinga"/>',r[r.length]='<a:font script="Mlym" typeface="Kartika"/>',r[r.length]='<a:font script="Laoo" typeface="DokChampa"/>',r[r.length]='<a:font script="Sinh" typeface="Iskoola Pota"/>',r[r.length]='<a:font script="Mong" typeface="Mongolian Baiti"/>',r[r.length]='<a:font script="Viet" typeface="Times New Roman"/>',r[r.length]='<a:font script="Uigh" typeface="Microsoft Uighur"/>',r[r.length]='<a:font script="Geor" typeface="Sylfaen"/>',r[r.length]="</a:majorFont>",r[r.length]="<a:minorFont>",r[r.length]='<a:latin typeface="Calibri"/>',r[r.length]='<a:ea typeface=""/>',r[r.length]='<a:cs typeface=""/>',r[r.length]='<a:font script="Jpan" typeface="\uff2d\uff33 \uff30\u30b4\u30b7\u30c3\u30af"/>',r[r.length]='<a:font script="Hang" typeface="\ub9d1\uc740 \uace0\ub515"/>',r[r.length]='<a:font script="Hans" typeface="\u5b8b\u4f53"/>',r[r.length]='<a:font script="Hant" typeface="\u65b0\u7d30\u660e\u9ad4"/>',r[r.length]='<a:font script="Arab" typeface="Arial"/>',r[r.length]='<a:font script="Hebr" typeface="Arial"/>',r[r.length]='<a:font script="Thai" typeface="Tahoma"/>',r[r.length]='<a:font script="Ethi" typeface="Nyala"/>',r[r.length]='<a:font script="Beng" typeface="Vrinda"/>',r[r.length]='<a:font script="Gujr" typeface="Shruti"/>',r[r.length]='<a:font script="Khmr" typeface="DaunPenh"/>',r[r.length]='<a:font script="Knda" typeface="Tunga"/>',r[r.length]='<a:font script="Guru" typeface="Raavi"/>',r[r.length]='<a:font script="Cans" typeface="Euphemia"/>',r[r.length]='<a:font script="Cher" typeface="Plantagenet Cherokee"/>',r[r.length]='<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>',r[r.length]='<a:font script="Tibt" typeface="Microsoft Himalaya"/>',r[r.length]='<a:font script="Thaa" typeface="MV Boli"/>',r[r.length]='<a:font script="Deva" typeface="Mangal"/>',r[r.length]='<a:font script="Telu" typeface="Gautami"/>',r[r.length]='<a:font script="Taml" typeface="Latha"/>',r[r.length]='<a:font script="Syrc" typeface="Estrangelo Edessa"/>',r[r.length]='<a:font script="Orya" typeface="Kalinga"/>',r[r.length]='<a:font script="Mlym" typeface="Kartika"/>',r[r.length]='<a:font script="Laoo" typeface="DokChampa"/>',r[r.length]='<a:font script="Sinh" typeface="Iskoola Pota"/>',r[r.length]='<a:font script="Mong" typeface="Mongolian Baiti"/>',r[r.length]='<a:font script="Viet" typeface="Arial"/>',r[r.length]='<a:font script="Uigh" typeface="Microsoft Uighur"/>',r[r.length]='<a:font script="Geor" typeface="Sylfaen"/>',r[r.length]="</a:minorFont>",r[r.length]="</a:fontScheme>",r[r.length]='<a:fmtScheme name="Office">',r[r.length]="<a:fillStyleLst>",r[r.length]='<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>',r[r.length]='<a:gradFill rotWithShape="1">',r[r.length]="<a:gsLst>",r[r.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',r[r.length]="</a:gsLst>",r[r.length]='<a:lin ang="16200000" scaled="1"/>',r[r.length]="</a:gradFill>",r[r.length]='<a:gradFill rotWithShape="1">',r[r.length]="<a:gsLst>",r[r.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',r[r.length]="</a:gsLst>",r[r.length]='<a:lin ang="16200000" scaled="0"/>',r[r.length]="</a:gradFill>",r[r.length]="</a:fillStyleLst>",r[r.length]="<a:lnStyleLst>",r[r.length]='<a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln>',r[r.length]='<a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>',r[r.length]='<a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>',r[r.length]="</a:lnStyleLst>",r[r.length]="<a:effectStyleLst>",r[r.length]="<a:effectStyle>",r[r.length]="<a:effectLst>",r[r.length]='<a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw>',r[r.length]="</a:effectLst>",r[r.length]="</a:effectStyle>",r[r.length]="<a:effectStyle>",r[r.length]="<a:effectLst>",r[r.length]='<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>',r[r.length]="</a:effectLst>",r[r.length]="</a:effectStyle>",r[r.length]="<a:effectStyle>",r[r.length]="<a:effectLst>",r[r.length]='<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>',r[r.length]="</a:effectLst>",r[r.length]='<a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d>',r[r.length]='<a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d>',r[r.length]="</a:effectStyle>",r[r.length]="</a:effectStyleLst>",r[r.length]="<a:bgFillStyleLst>",r[r.length]='<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>',r[r.length]='<a:gradFill rotWithShape="1">',r[r.length]="<a:gsLst>",r[r.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs>',r[r.length]="</a:gsLst>",r[r.length]='<a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path>',r[r.length]="</a:gradFill>",r[r.length]='<a:gradFill rotWithShape="1">',r[r.length]="<a:gsLst>",r[r.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs>',r[r.length]="</a:gsLst>",r[r.length]='<a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path>',r[r.length]="</a:gradFill>",r[r.length]="</a:bgFillStyleLst>",r[r.length]="</a:fmtScheme>",r[r.length]="</a:themeElements>",r[r.length]="<a:objectDefaults>",r[r.length]="<a:spDef>",r[r.length]='<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style>',r[r.length]="</a:spDef>",r[r.length]="<a:lnDef>",r[r.length]='<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style>',r[r.length]="</a:lnDef>",r[r.length]="</a:objectDefaults>",r[r.length]="<a:extraClrSchemeLst/>",r[r.length]="</a:theme>",r.join("")}function oc(e){var t={};switch(t.xclrType=e.read_shift(2),t.nTintShade=e.read_shift(2),t.xclrType){case 0:case 4:e.l+=4;break;case 1:t.xclrValue=function(e,t){return Xo(e,t)}(e,4);break;case 2:t.xclrValue=ss(e);break;case 3:t.xclrValue=function(e){return e.read_shift(4)}(e)}return e.l+=8,t}function ac(e){var t=e.read_shift(2),r=e.read_shift(2)-4,n=[t];switch(t){case 4:case 5:case 7:case 8:case 9:case 10:case 11:case 13:n[1]=oc(e);break;case 6:n[1]=function(e,t){return Xo(e,t)}(e,r);break;case 14:case 15:n[1]=e.read_shift(1===r?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+t+" "+r)}return n}function ic(){var e=qo();return ea(e,332),ea(e,334,xa(1)),ea(e,335,function(e){var t=Jo(12+2*e.name.length);return t.write_shift(4,e.flags),t.write_shift(4,e.version),Aa(e.name,t),t.slice(0,t.l)}({name:"XLDAPR",version:12e4,flags:3496657072})),ea(e,336),ea(e,339,function(e,t){var r=Jo(8+2*t.length);return r.write_shift(4,e),Aa(t,r),r.slice(0,r.l)}(1,"XLDAPR")),ea(e,52),ea(e,35,xa(514)),ea(e,4096,xa(0)),ea(e,4097,Gi(1)),ea(e,36),ea(e,53),ea(e,340),ea(e,337,function(e,t){var r=Jo(8);return r.write_shift(4,e),r.write_shift(4,t?1:0),r}(1,!0)),ea(e,51,function(e){var t=Jo(4+8*e.length);t.write_shift(4,e.length);for(var r=0;r<e.length;++r)t.write_shift(4,e[r][0]),t.write_shift(4,e[r][1]);return t}([[1,0]])),ea(e,338),ea(e,333),e.end()}function sc(e,t,r){var n=[21600,21600],o=["m0,0l0",n[1],n[0],n[1],n[0],"0xe"].join(","),a=[Hn("xml",null,{"xmlns:v":po,"xmlns:o":so,"xmlns:x":lo,"xmlns:mv":fo}).replace(/\/>/,">"),Hn("o:shapelayout",Hn("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"})],i=65536*e,s=t||[];return s.length>0&&a.push(Hn("v:shapetype",[Hn("v:stroke",null,{joinstyle:"miter"}),Hn("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202",coordsize:n.join(","),"o:spt":202,path:o})),s.forEach((function(e){++i,a.push(function(e,t){var r=ca(e[0]),n={color2:"#BEFF82",type:"gradient"};"gradient"==n.type&&(n.angle="-180");var o="gradient"==n.type?Hn("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null,a=Hn("v:fill",o,n),i={on:"t",obscured:"t"};return["<v:shape"+Wn({id:"_x0000_s"+t,type:"#_x0000_t202",style:"position:absolute; margin-left:80pt;margin-top:5pt;width:104pt;height:64pt;z-index:10"+(e[1].hidden?";visibility:hidden":""),fillcolor:"#ECFAD4",strokecolor:"#edeaa1"})+">",a,Hn("v:shadow",null,i),Hn("v:path",null,{"o:connecttype":"none"}),'<v:textbox><div style="text-align:left"></div></v:textbox>','<x:ClientData ObjectType="Note">',"<x:MoveWithCells/>","<x:SizeWithCells/>",zn("x:Anchor",[r.c+1,0,r.r+1,0,r.c+3,20,r.r+5,20].join(",")),zn("x:AutoFill","False"),zn("x:Row",String(r.r)),zn("x:Column",String(r.c)),e[1].hidden?"":"<x:Visible/>","</x:ClientData>","</v:shape>"].join("")}(e,i))})),a.push("</xml>"),a.join("")}function lc(e,t,r,n){var o,a=null!=e["!data"];t.forEach((function(t){var i=ca(t.ref);if(!(i.r<0||i.c<0)){if(a?(e["!data"][i.r]||(e["!data"][i.r]=[]),o=e["!data"][i.r][i.c]):o=e[t.ref],!o){o={t:"z"},a?e["!data"][i.r][i.c]=o:e[t.ref]=o;var s=ma(e["!ref"]||"BDWGO1000001:A1");s.s.r>i.r&&(s.s.r=i.r),s.e.r<i.r&&(s.e.r=i.r),s.s.c>i.c&&(s.s.c=i.c),s.e.c<i.c&&(s.e.c=i.c);var l=fa(s);e["!ref"]=l}o.c||(o.c=[]);var c={a:t.author,t:t.t,r:t.r,T:r};t.h&&(c.h=t.h);for(var u=o.c.length-1;u>=0;--u){if(!r&&o.c[u].T)return;r&&!o.c[u].T&&o.c.splice(u,1)}if(r&&n)for(u=0;u<n.length;++u)if(c.a==n[u].id){c.a=n[u].name||c.a;break}o.c.push(c)}}))}function cc(e){var t=[un,Hn("comments",null,{xmlns:io[0]})],r=[];return t.push("<authors>"),e.forEach((function(e){e[1].forEach((function(e){var n=kn(e.a);-1==r.indexOf(n)&&(r.push(n),t.push("<author>"+n+"</author>")),e.T&&e.ID&&-1==r.indexOf("tc="+e.ID)&&(r.push("tc="+e.ID),t.push("<author>tc="+e.ID+"</author>"))}))})),0==r.length&&(r.push("SheetJ5"),t.push("<author>SheetJ5</author>")),t.push("</authors>"),t.push("<commentList>"),e.forEach((function(e){var n=0,o=[],a=0;if(e[1][0]&&e[1][0].T&&e[1][0].ID&&(n=r.indexOf("tc="+e[1][0].ID)),e[1].forEach((function(e){e.a&&(n=r.indexOf(kn(e.a))),e.T&&++a,o.push(null==e.t?"":kn(e.t))})),0===a)e[1].forEach((function(n){t.push('<comment ref="'+e[0]+'" authorId="'+r.indexOf(kn(n.a))+'"><text>'),t.push(zn("t",null==n.t?"":kn(n.t))),t.push("</text></comment>")}));else{e[1][0]&&e[1][0].T&&e[1][0].ID&&(n=r.indexOf("tc="+e[1][0].ID)),t.push('<comment ref="'+e[0]+'" authorId="'+n+'"><text>');for(var i="Comment:\n    "+o[0]+"\n",s=1;s<o.length;++s)i+="Reply:\n    "+o[s]+"\n";t.push(zn("t",kn(i))),t.push("</text></comment>")}})),t.push("</commentList>"),t.length>2&&(t[t.length]="</comments>",t[1]=t[1].replace("/>",">")),t.join("")}function uc(e,t,r){var n=[un,Hn("ThreadedComments",null,{xmlns:$n}).replace(/[\/]>/,">")];return e.forEach((function(e){var o="";(e[1]||[]).forEach((function(a,i){if(a.T){a.a&&-1==t.indexOf(a.a)&&t.push(a.a);var s={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+r.tcid++).slice(-12)+"}"};0==i?o=s.id:s.parentId=o,a.ID=s.id,a.a&&(s.personId="{54EE7950-7262-4200-6969-"+("000000000000"+t.indexOf(a.a)).slice(-12)+"}"),n.push(Hn("threadedComment",zn("text",a.t||""),s))}else delete a.ID}))})),n.push("</ThreadedComments>"),n.join("")}function dc(e){var t=[un,Hn("personList",null,{xmlns:$n,"xmlns:x":io[0]}).replace(/[\/]>/,">")];return e.forEach((function(e,r){t.push(Hn("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+r).slice(-12)+"}",userId:e,providerId:"None"}))})),t.push("</personList>"),t.join("")}var fc=Sa;function pc(e){return Aa(e.slice(0,54))}function hc(e){var t=qo(),r=[];return ea(t,628),ea(t,630),e.forEach((function(e){e[1].forEach((function(e){r.indexOf(e.a)>-1||(r.push(e.a.slice(0,54)),ea(t,632,pc(e.a)),e.T&&e.ID&&-1==r.indexOf("tc="+e.ID)&&(r.push("tc="+e.ID),ea(t,632,pc("tc="+e.ID))))}))})),ea(t,631),ea(t,633),e.forEach((function(e){e[1].forEach((function(n){var o=-1;n.ID&&(o=r.indexOf("tc="+n.ID)),-1==o&&e[1][0].T&&e[1][0].ID&&(o=r.indexOf("tc="+e[1][0].ID)),-1==o&&(o=r.indexOf(n.a)),n.iauthor=o;var a={s:ca(e[0]),e:ca(e[0])};ea(t,635,function(e,t){return null==t&&(t=Jo(36)),t.write_shift(4,e[1].iauthor),Ha(e[0],t),t.write_shift(4,0),t.write_shift(4,0),t.write_shift(4,0),t.write_shift(4,0),t}([a,n])),n.t&&n.t.length>0&&ea(t,637,Ea(n)),ea(t,636),delete n.iauthor}))})),ea(t,634),ea(t,629),t.end()}var mc=["xlsb","xlsm","xlam","biff8","xla"];var gc=function(){var e=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g,t={r:0,c:0};function r(e,r,n,o){var a=!1,i=!1;0==n.length?i=!0:"["==n.charAt(0)&&(i=!0,n=n.slice(1,-1)),0==o.length?a=!0:"["==o.charAt(0)&&(a=!0,o=o.slice(1,-1));var s=n.length>0?0|parseInt(n,10):0,l=o.length>0?0|parseInt(o,10):0;return a?l+=t.c:--l,i?s+=t.r:--s,r+(a?"":"$")+la(l)+(i?"":"$")+ia(s)}return function(n,o){return t=o,n.replace(e,r)}}(),vc=/(^|[^._A-Z0-9])(\$?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])(\$?)(\d{1,7})(?![_.\(A-Za-z0-9])/g;try{vc=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g}catch(o6){}var yc=function(){return function(e,t){return e.replace(vc,(function(e,r,n,o,a,i){var s=sa(o)-(n?0:t.c),l=aa(i)-(a?0:t.r);return r+"R"+("$"==a?l+1:0==l?"":"["+l+"]")+"C"+("$"==n?s+1:0==s?"":"["+s+"]")}))}}();function bc(e,t){return e.replace(vc,(function(e,r,n,o,a,i){return r+("$"==n?n+o:la(sa(o)+t.c))+("$"==a?a+i:ia(aa(i)+t.r))}))}function wc(e,t,r){var n=da(t).s,o=ca(r);return bc(e,{r:o.r-n.r,c:o.c-n.c})}function xc(e){return e.replace(/_xlfn\./g,"")}function Sc(e){e.l+=1}function Ac(e,t){var r=e.read_shift(1==t?1:2);return[16383&r,r>>14&1,r>>15&1]}function kc(e,t,r){var n=2;if(r){if(r.biff>=2&&r.biff<=5)return Cc(e);12==r.biff&&(n=4)}var o=e.read_shift(n),a=e.read_shift(n),i=Ac(e,2),s=Ac(e,2);return{s:{r:o,c:i[0],cRel:i[1],rRel:i[2]},e:{r:a,c:s[0],cRel:s[1],rRel:s[2]}}}function Cc(e){var t=Ac(e,2),r=Ac(e,2),n=e.read_shift(1),o=e.read_shift(1);return{s:{r:t[0],c:n,cRel:t[1],rRel:t[2]},e:{r:r[0],c:o,cRel:r[1],rRel:r[2]}}}function Ic(e,t,r){if(r&&r.biff>=2&&r.biff<=5)return function(e){var t=Ac(e,2),r=e.read_shift(1);return{r:t[0],c:r,cRel:t[1],rRel:t[2]}}(e);var n=e.read_shift(r&&12==r.biff?4:2),o=Ac(e,2);return{r:n,c:o[0],cRel:o[1],rRel:o[2]}}function Ec(e){var t=e.read_shift(2),r=e.read_shift(2);return{r:t,c:255&r,fQuoted:!!(16384&r),cRel:r>>15,rRel:r>>15}}function Dc(e){var t=1&e[e.l+1];return e.l+=4,[t,1]}function Tc(e){return[e.read_shift(1),e.read_shift(1)]}function Oc(e,t){var r=[e.read_shift(1)];if(12==t)switch(r[0]){case 2:r[0]=4;break;case 4:r[0]=16;break;case 0:r[0]=1;break;case 1:r[0]=2}switch(r[0]){case 4:r[1]=Hi(e,1)?"TRUE":"FALSE",12!=t&&(e.l+=7);break;case 37:case 16:r[1]=ri[e[e.l]],e.l+=12==t?4:8;break;case 0:e.l+=8;break;case 1:r[1]=Ya(e);break;case 2:r[1]=ts(e,0,{biff:t>0&&t<8?2:t});break;default:throw new Error("Bad SerAr: "+r[0])}return r}function Mc(e,t,r){for(var n=e.read_shift(12==r.biff?4:2),o=[],a=0;a!=n;++a)o.push((12==r.biff?Wa:ps)(e,8));return o}function Pc(e,t,r){var n=0,o=0;12==r.biff?(n=e.read_shift(4),o=e.read_shift(4)):(o=1+e.read_shift(1),n=1+e.read_shift(2)),r.biff>=2&&r.biff<8&&(--n,0==--o&&(o=256));for(var a=0,i=[];a!=n&&(i[a]=[]);++a)for(var s=0;s!=o;++s)i[a][s]=Oc(e,r.biff);return i}function jc(e,t,r){return e.l+=2,[Ec(e)]}function Rc(e){return e.l+=6,[]}function _c(e){return e.l+=2,[Vi(e),1&e.read_shift(2)]}var Nc=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];var Lc={1:{n:"PtgExp",f:function(e,t,r){return e.l++,r&&12==r.biff?[e.read_shift(4,"i"),0]:[e.read_shift(2),e.read_shift(r&&2==r.biff?1:2)]}},2:{n:"PtgTbl",f:Xo},3:{n:"PtgAdd",f:Sc},4:{n:"PtgSub",f:Sc},5:{n:"PtgMul",f:Sc},6:{n:"PtgDiv",f:Sc},7:{n:"PtgPower",f:Sc},8:{n:"PtgConcat",f:Sc},9:{n:"PtgLt",f:Sc},10:{n:"PtgLe",f:Sc},11:{n:"PtgEq",f:Sc},12:{n:"PtgGe",f:Sc},13:{n:"PtgGt",f:Sc},14:{n:"PtgNe",f:Sc},15:{n:"PtgIsect",f:Sc},16:{n:"PtgUnion",f:Sc},17:{n:"PtgRange",f:Sc},18:{n:"PtgUplus",f:Sc},19:{n:"PtgUminus",f:Sc},20:{n:"PtgPercent",f:Sc},21:{n:"PtgParen",f:Sc},22:{n:"PtgMissArg",f:Sc},23:{n:"PtgStr",f:function(e,t,r){return e.l++,Xi(e,0,r)}},26:{n:"PtgSheet",f:function(e,t,r){return e.l+=5,e.l+=2,e.l+=2==r.biff?1:4,["PTGSHEET"]}},27:{n:"PtgEndSheet",f:function(e,t,r){return e.l+=2==r.biff?4:5,["PTGENDSHEET"]}},28:{n:"PtgErr",f:function(e){return e.l++,ri[e.read_shift(1)]}},29:{n:"PtgBool",f:function(e){return e.l++,0!==e.read_shift(1)}},30:{n:"PtgInt",f:function(e){return e.l++,e.read_shift(2)}},31:{n:"PtgNum",f:function(e){return e.l++,Ya(e)}},32:{n:"PtgArray",f:function(e,t,r){var n=(96&e[e.l++])>>5;return e.l+=2==r.biff?6:12==r.biff?14:7,[n]}},33:{n:"PtgFunc",f:function(e,t,r){var n=(96&e[e.l])>>5;e.l+=1;var o=e.read_shift(r&&r.biff<=3?1:2);return[lu[o],su[o],n]}},34:{n:"PtgFuncVar",f:function(e,t,r){var n=e[e.l++],o=e.read_shift(1),a=r&&r.biff<=3?[88==n?-1:0,e.read_shift(1)]:function(e){return[e[e.l+1]>>7,32767&e.read_shift(2)]}(e);return[o,(0===a[0]?su:iu)[a[1]]]}},35:{n:"PtgName",f:function(e,t,r){var n=e.read_shift(1)>>>5&3,o=!r||r.biff>=8?4:2,a=e.read_shift(o);switch(r.biff){case 2:e.l+=5;break;case 3:case 4:e.l+=8;break;case 5:e.l+=12}return[n,0,a]}},36:{n:"PtgRef",f:function(e,t,r){var n=(96&e[e.l])>>5;return e.l+=1,[n,Ic(e,0,r)]}},37:{n:"PtgArea",f:function(e,t,r){return[(96&e[e.l++])>>5,kc(e,r.biff>=2&&r.biff,r)]}},38:{n:"PtgMemArea",f:function(e,t,r){var n=e.read_shift(1)>>>5&3;return e.l+=r&&2==r.biff?3:4,[n,e.read_shift(r&&2==r.biff?1:2)]}},39:{n:"PtgMemErr",f:Xo},40:{n:"PtgMemNoMem",f:Xo},41:{n:"PtgMemFunc",f:function(e,t,r){return[e.read_shift(1)>>>5&3,e.read_shift(r&&2==r.biff?1:2)]}},42:{n:"PtgRefErr",f:function(e,t,r){var n=e.read_shift(1)>>>5&3;return e.l+=4,r.biff<8&&e.l--,12==r.biff&&(e.l+=2),[n]}},43:{n:"PtgAreaErr",f:function(e,t,r){var n=(96&e[e.l++])>>5;return e.l+=r&&r.biff>8?12:r.biff<8?6:8,[n]}},44:{n:"PtgRefN",f:function(e,t,r){var n=(96&e[e.l])>>5;e.l+=1;var o=function(e,t,r){var n=r&&r.biff?r.biff:8;if(n>=2&&n<=5)return function(e){var t=e.read_shift(2),r=e.read_shift(1),n=(32768&t)>>15,o=(16384&t)>>14;return t&=16383,1==n&&t>=8192&&(t-=16384),1==o&&r>=128&&(r-=256),{r:t,c:r,cRel:o,rRel:n}}(e);var o=e.read_shift(n>=12?4:2),a=e.read_shift(2),i=(16384&a)>>14,s=(32768&a)>>15;if(a&=16383,1==s)for(;o>524287;)o-=1048576;if(1==i)for(;a>8191;)a-=16384;return{r:o,c:a,cRel:i,rRel:s}}(e,0,r);return[n,o]}},45:{n:"PtgAreaN",f:function(e,t,r){var n=(96&e[e.l++])>>5,o=function(e,t,r){if(r.biff<8)return Cc(e);var n=e.read_shift(12==r.biff?4:2),o=e.read_shift(12==r.biff?4:2),a=Ac(e,2),i=Ac(e,2);return{s:{r:n,c:a[0],cRel:a[1],rRel:a[2]},e:{r:o,c:i[0],cRel:i[1],rRel:i[2]}}}(e,0,r);return[n,o]}},46:{n:"PtgMemAreaN",f:function(e){return[e.read_shift(1)>>>5&3,e.read_shift(2)]}},47:{n:"PtgMemNoMemN",f:function(e){return[e.read_shift(1)>>>5&3,e.read_shift(2)]}},57:{n:"PtgNameX",f:function(e,t,r){return 5==r.biff?function(e){var t=e.read_shift(1)>>>5&3,r=e.read_shift(2,"i");e.l+=8;var n=e.read_shift(2);return e.l+=12,[t,r,n]}(e):[e.read_shift(1)>>>5&3,e.read_shift(2),e.read_shift(4)]}},58:{n:"PtgRef3d",f:function(e,t,r){var n=(96&e[e.l])>>5;e.l+=1;var o=e.read_shift(2);return r&&5==r.biff&&(e.l+=12),[n,o,Ic(e,0,r)]}},59:{n:"PtgArea3d",f:function(e,t,r){var n=(96&e[e.l++])>>5,o=e.read_shift(2,"i");if(r)switch(r.biff){case 5:e.l+=12;break;case 12:0}return[n,o,kc(e,0,r)]}},60:{n:"PtgRefErr3d",f:function(e,t,r){var n=(96&e[e.l++])>>5,o=e.read_shift(2),a=4;if(r)switch(r.biff){case 5:a=15;break;case 12:a=6}return e.l+=a,[n,o]}},61:{n:"PtgAreaErr3d",f:function(e,t,r){var n=(96&e[e.l++])>>5,o=e.read_shift(2),a=8;if(r)switch(r.biff){case 5:e.l+=12,a=6;break;case 12:a=12}return e.l+=a,[n,o]}},255:{}},Uc={64:32,96:32,65:33,97:33,66:34,98:34,67:35,99:35,68:36,100:36,69:37,101:37,70:38,102:38,71:39,103:39,72:40,104:40,73:41,105:41,74:42,106:42,75:43,107:43,76:44,108:44,77:45,109:45,78:46,110:46,79:47,111:47,88:34,120:34,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61},Bc={1:{n:"PtgElfLel",f:_c},2:{n:"PtgElfRw",f:jc},3:{n:"PtgElfCol",f:jc},6:{n:"PtgElfRwV",f:jc},7:{n:"PtgElfColV",f:jc},10:{n:"PtgElfRadical",f:jc},11:{n:"PtgElfRadicalS",f:Rc},13:{n:"PtgElfColS",f:Rc},15:{n:"PtgElfColSV",f:Rc},16:{n:"PtgElfRadicalLel",f:_c},25:{n:"PtgList",f:function(e){e.l+=2;var t=e.read_shift(2),r=e.read_shift(2),n=e.read_shift(4),o=e.read_shift(2),a=e.read_shift(2);return{ixti:t,coltype:3&r,rt:Nc[r>>2&31],idx:n,c:o,C:a}}},29:{n:"PtgSxName",f:function(e){return e.l+=2,[e.read_shift(4)]}},255:{}},Fc={0:{n:"PtgAttrNoop",f:function(e){return e.l+=4,[0,0]}},1:{n:"PtgAttrSemi",f:function(e,t,r){var n=255&e[e.l+1]?1:0;return e.l+=r&&2==r.biff?3:4,[n]}},2:{n:"PtgAttrIf",f:function(e,t,r){var n=255&e[e.l+1]?1:0;return e.l+=2,[n,e.read_shift(r&&2==r.biff?1:2)]}},4:{n:"PtgAttrChoose",f:function(e,t,r){e.l+=2;for(var n=e.read_shift(r&&2==r.biff?1:2),o=[],a=0;a<=n;++a)o.push(e.read_shift(r&&2==r.biff?1:2));return o}},8:{n:"PtgAttrGoto",f:function(e,t,r){var n=255&e[e.l+1]?1:0;return e.l+=2,[n,e.read_shift(r&&2==r.biff?1:2)]}},16:{n:"PtgAttrSum",f:function(e,t,r){e.l+=r&&2==r.biff?3:4}},32:{n:"PtgAttrBaxcel",f:Dc},33:{n:"PtgAttrBaxcel",f:Dc},64:{n:"PtgAttrSpace",f:function(e){return e.read_shift(2),Tc(e)}},65:{n:"PtgAttrSpaceSemi",f:function(e){return e.read_shift(2),Tc(e)}},128:{n:"PtgAttrIfError",f:function(e){var t=255&e[e.l+1]?1:0;return e.l+=2,[t,e.read_shift(2)]}},255:{}};function zc(e,t,r,n){if(n.biff<8)return Xo(e,t);for(var o=e.l+t,a=[],i=0;i!==r.length;++i)switch(r[i][0]){case"PtgArray":r[i][1]=Pc(e,0,n),a.push(r[i][1]);break;case"PtgMemArea":r[i][2]=Mc(e,r[i][1],n),a.push(r[i][2]);break;case"PtgExp":n&&12==n.biff&&(r[i][1][1]=e.read_shift(4),a.push(r[i][1]));break;case"PtgList":case"PtgElfRadicalS":case"PtgElfColS":case"PtgElfColSV":throw"Unsupported "+r[i][0]}return 0!==(t=o-e.l)&&a.push(Xo(e,t)),a}function Wc(e,t,r){for(var n,o,a=e.l+t,i=[];a!=e.l;)t=a-e.l,o=e[e.l],n=Lc[o]||Lc[Uc[o]],24!==o&&25!==o||(n=(24===o?Bc:Fc)[e[e.l+1]]),n&&n.f?i.push([n.n,n.f(e,t,r)]):Xo(e,t);return i}function Hc(e){for(var t=[],r=0;r<e.length;++r){for(var n=e[r],o=[],a=0;a<n.length;++a){var i=n[a];if(i)if(2===i[0])o.push('"'+i[1].replace(/"/g,'""')+'"');else o.push(i[1]);else o.push("")}t.push(o.join(","))}return t.join(";")}var Yc={PtgAdd:"+",PtgConcat:"&",PtgDiv:"/",PtgEq:"=",PtgGe:">=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function Vc(e,t){var r=e.lastIndexOf("!"),n=t.lastIndexOf("!");return-1==r&&-1==n?e+":"+t:r>0&&n>0&&e.slice(0,r).toLowerCase()==t.slice(0,n).toLowerCase()?e+":"+t.slice(n+1):(console.error("Cannot hydrate range",e,t),e+":"+t)}function Gc(e,t,r){if(!e)return"SH33TJSERR0";if(r.biff>8&&(!e.XTI||!e.XTI[t]))return e.SheetNames[t];if(!e.XTI)return"SH33TJSERR6";var n=e.XTI[t];if(r.biff<8)return t>1e4&&(t-=65536),t<0&&(t=-t),0==t?"":e.XTI[t-1];if(!n)return"SH33TJSERR1";var o="";if(r.biff>8)switch(e[n[0]][0]){case 357:return o=-1==n[1]?"#REF":e.SheetNames[n[1]],n[1]==n[2]?o:o+":"+e.SheetNames[n[2]];case 358:return null!=r.SID?e.SheetNames[r.SID]:"SH33TJSSAME"+e[n[0]][0];default:return"SH33TJSSRC"+e[n[0]][0]}switch(e[n[0]][0][0]){case 1025:return o=-1==n[1]?"#REF":e.SheetNames[n[1]]||"SH33TJSERR3",n[1]==n[2]?o:o+":"+e.SheetNames[n[2]];case 14849:return e[n[0]].slice(1).map((function(e){return e.Name})).join(";;");default:return e[n[0]][0][3]?(o=-1==n[1]?"#REF":e[n[0]][0][3][n[1]]||"SH33TJSERR4",n[1]==n[2]?o:o+":"+e[n[0]][0][3][n[2]]):"SH33TJSERR2"}}function Zc(e,t,r){var n=Gc(e,t,r);return"#REF"==n?n:ha(n,r)}function Qc(e,t,r,n,o){var a,i,s,l,c=o&&o.biff||8,u={s:{c:0,r:0},e:{c:0,r:0}},d=[],f=0,p=0,h="";if(!e[0]||!e[0][0])return"";for(var m=-1,g="",v=0,y=e[0].length;v<y;++v){var b=e[0][v];switch(b[0]){case"PtgUminus":d.push("-"+d.pop());break;case"PtgUplus":d.push("+"+d.pop());break;case"PtgPercent":d.push(d.pop()+"%");break;case"PtgAdd":case"PtgConcat":case"PtgDiv":case"PtgEq":case"PtgGe":case"PtgGt":case"PtgLe":case"PtgLt":case"PtgMul":case"PtgNe":case"PtgPower":case"PtgSub":if(a=d.pop(),i=d.pop(),m>=0){switch(e[0][m][1][0]){case 0:g=Mr(" ",e[0][m][1][1]);break;case 1:g=Mr("\r",e[0][m][1][1]);break;default:if(g="",o.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][m][1][0])}i+=g,m=-1}d.push(i+Yc[b[0]]+a);break;case"PtgIsect":a=d.pop(),i=d.pop(),d.push(i+" "+a);break;case"PtgUnion":a=d.pop(),i=d.pop(),d.push(i+","+a);break;case"PtgRange":a=d.pop(),i=d.pop(),d.push(Vc(i,a));break;case"PtgAttrChoose":case"PtgAttrGoto":case"PtgAttrIf":case"PtgAttrIfError":case"PtgAttrBaxcel":case"PtgAttrSemi":case"PtgMemArea":case"PtgTbl":case"PtgMemErr":case"PtgMemAreaN":case"PtgMemNoMemN":case"PtgAttrNoop":case"PtgSheet":case"PtgEndSheet":case"PtgMemFunc":case"PtgMemNoMem":break;case"PtgRef":s=ta(b[1][1],u,o),d.push(na(s,c));break;case"PtgRefN":s=r?ta(b[1][1],r,o):b[1][1],d.push(na(s,c));break;case"PtgRef3d":f=b[1][1],s=ta(b[1][2],u,o);h=Zc(n,f,o);d.push(h+"!"+na(s,c));break;case"PtgFunc":case"PtgFuncVar":var w=b[1][0],x=b[1][1];w||(w=0);var S=0==(w&=127)?[]:d.slice(-w);d.length-=w,"User"===x&&(x=S.shift()),d.push(x+"("+S.join(",")+")");break;case"PtgBool":d.push(b[1]?"TRUE":"FALSE");break;case"PtgInt":case"PtgErr":d.push(b[1]);break;case"PtgNum":d.push(String(b[1]));break;case"PtgStr":d.push('"'+b[1].replace(/"/g,'""')+'"');break;case"PtgAreaN":l=ra(b[1][1],r?{s:r}:u,o),d.push(oa(l,o));break;case"PtgArea":l=ra(b[1][1],u,o),d.push(oa(l,o));break;case"PtgArea3d":f=b[1][1],l=b[1][2],h=Zc(n,f,o),d.push(h+"!"+oa(l,o));break;case"PtgAttrSum":d.push("SUM("+d.pop()+")");break;case"PtgName":p=b[1][2];var A=(n.names||[])[p-1]||(n[0]||[])[p],k=A?A.Name:"SH33TJSNAME"+String(p);k&&"_xlfn."==k.slice(0,6)&&!o.xlfn&&(k=k.slice(6)),d.push(k);break;case"PtgNameX":var C,I=b[1][1];if(p=b[1][2],!(o.biff<=5)){var E="";if(14849==((n[I]||[])[0]||[])[0]||(1025==((n[I]||[])[0]||[])[0]?n[I][p]&&n[I][p].itab>0&&(E=n.SheetNames[n[I][p].itab-1]+"!"):E=n.SheetNames[p-1]+"!"),n[I]&&n[I][p])E+=n[I][p].Name;else if(n[0]&&n[0][p])E+=n[0][p].Name;else{var D=(Gc(n,I,o)||"").split(";;");D[p-1]?E=D[p-1]:E+="SH33TJSERRX"}d.push(E);break}I<0&&(I=-I),n[I]&&(C=n[I][p]),C||(C={Name:"SH33TJSERRY"}),d.push(C.Name);break;case"PtgParen":var T="(",O=")";if(m>=0){switch(g="",e[0][m][1][0]){case 2:T=Mr(" ",e[0][m][1][1])+T;break;case 3:T=Mr("\r",e[0][m][1][1])+T;break;case 4:O=Mr(" ",e[0][m][1][1])+O;break;case 5:O=Mr("\r",e[0][m][1][1])+O;break;default:if(o.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][m][1][0])}m=-1}d.push(T+d.pop()+O);break;case"PtgRefErr":case"PtgRefErr3d":case"PtgAreaErr":case"PtgAreaErr3d":d.push("#REF!");break;case"PtgExp":s={c:b[1][1],r:b[1][0]};var M={c:r.c,r:r.r};if(n.sharedf[ua(s)]){var P=n.sharedf[ua(s)];d.push(Qc(P,u,M,n,o))}else{var j=!1;for(a=0;a!=n.arrayf.length;++a)if(i=n.arrayf[a],!(s.c<i[0].s.c||s.c>i[0].e.c)&&!(s.r<i[0].s.r||s.r>i[0].e.r)){d.push(Qc(i[1],u,M,n,o)),j=!0;break}j||d.push(b[1])}break;case"PtgArray":d.push("{"+Hc(b[1])+"}");break;case"PtgAttrSpace":case"PtgAttrSpaceSemi":m=v;break;case"PtgMissArg":d.push("");break;case"PtgList":d.push("Table"+b[1].idx+"[#"+b[1].rt+"]");break;case"PtgElfCol":case"PtgElfColS":case"PtgElfColSV":case"PtgElfColV":case"PtgElfLel":case"PtgElfRadical":case"PtgElfRadicalLel":case"PtgElfRadicalS":case"PtgElfRw":case"PtgElfRwV":throw new Error("Unsupported ELFs");default:throw new Error("Unrecognized Formula Token: "+String(b))}if(3!=o.biff&&m>=0&&-1==["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"].indexOf(e[0][v][0])){var R=!0;switch((b=e[0][m])[1][0]){case 4:R=!1;case 0:g=Mr(" ",b[1][1]);break;case 5:R=!1;case 1:g=Mr("\r",b[1][1]);break;default:if(g="",o.WTF)throw new Error("Unexpected PtgAttrSpaceType "+b[1][0])}d.push((R?g:"")+d.pop()+(R?"":g)),m=-1}}if(d.length>1&&o.WTF)throw new Error("bad formula stack");return"TRUE"==d[0]||"FALSE"!=d[0]&&d[0]}function Kc(e,t,r){var n,o=e.l+t,a=2==r.biff?1:2,i=e.read_shift(a);if(65535==i)return[[],Xo(e,t-2)];var s=Wc(e,i,r);return t!==i+a&&(n=zc(e,t-i-a,s,r)),e.l=o,[s,n]}function Xc(e,t,r){var n,o=e.l+t,a=e.read_shift(2),i=Wc(e,a,r);return 65535==a?[[],Xo(e,t-2)]:(t!==a+2&&(n=zc(e,o-a-2,i,r)),[i,n])}function Jc(e,t,r){var n=e.l+t,o=cs(e,6,r),a=function(e){var t;if(65535!==Uo(e,e.l+6))return[Ya(e),"n"];switch(e[e.l]){case 0:return e.l+=8,["String","s"];case 1:return t=1===e[e.l+2],e.l+=8,[t,"b"];case 2:return t=e[e.l+2],e.l+=8,[t,"e"];case 3:return e.l+=8,["","s"]}return[]}(e),i=e.read_shift(1);2!=r.biff&&(e.read_shift(1),r.biff>=5&&e.read_shift(4));var s=function(e,t,r){var n,o=e.l+t,a=2==r.biff?1:2,i=e.read_shift(a);if(65535==i)return[[],Xo(e,t-2)];var s=Wc(e,i,r);return t!==i+a&&(n=zc(e,t-i-a,s,r)),e.l=o,[s,n]}(e,n-e.l,r);return{cell:o,val:a[0],formula:s,shared:i>>3&1,tt:a[1]}}function $c(e,t,r,n,o){var a=us(t,r,o),i=function(e){if(null==e){var t=Jo(8);return t.write_shift(1,3),t.write_shift(1,0),t.write_shift(2,0),t.write_shift(2,0),t.write_shift(2,65535),t}return Va("number"==typeof e?e:0)}(e.v),s=Jo(6);s.write_shift(2,33),s.write_shift(4,0);for(var l=Jo(e.bf.length),c=0;c<e.bf.length;++c)l[c]=e.bf[c];return gt([a,i,s,l])}function qc(e,t,r){var n=e.read_shift(4),o=Wc(e,n,r),a=e.read_shift(4);return[o,a>0?zc(e,a,o,r):null]}var eu=qc,tu=qc,ru=qc,nu=qc;function ou(e){if((0|e)==e&&e<Math.pow(2,16)&&e>=0){var t=Jo(11);return t.write_shift(4,3),t.write_shift(1,30),t.write_shift(2,e),t.write_shift(4,0),t}var r=Jo(17);return r.write_shift(4,11),r.write_shift(1,31),r.write_shift(8,e),r.write_shift(4,0),r}var au=function(e,t){if("number"==typeof e)return ou(e);if("boolean"==typeof e)return function(e){var t=Jo(10);return t.write_shift(4,2),t.write_shift(1,29),t.write_shift(1,e?1:0),t.write_shift(4,0),t}(e);if(/^#(DIV\/0!|GETTING_DATA|N\/A|NAME\?|NULL!|NUM!|REF!|VALUE!)$/.test(e))return function(e){var t=Jo(10);return t.write_shift(4,2),t.write_shift(1,28),t.write_shift(1,e),t.write_shift(4,0),t}(+ni[e]);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return function(e){var t=ca(e),r=Jo(15);return r.write_shift(4,7),r.write_shift(1,36),r.write_shift(4,t.r),r.write_shift(2,t.c|("$"==e.charAt(0)?0:1)<<14|(e.match(/\$\d/)?0:1)<<15),r.write_shift(4,0),r}(e);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return function(e){var t=e.split(":"),r=t[0],n=Jo(23);n.write_shift(4,15);var o=ca(r=t[0]);return n.write_shift(1,36),n.write_shift(4,o.r),n.write_shift(2,o.c|("$"==r.charAt(0)?0:1)<<14|(r.match(/\$\d/)?0:1)<<15),n.write_shift(4,0),o=ca(r=t[1]),n.write_shift(1,36),n.write_shift(4,o.r),n.write_shift(2,o.c|("$"==r.charAt(0)?0:1)<<14|(r.match(/\$\d/)?0:1)<<15),n.write_shift(4,0),n.write_shift(1,17),n.write_shift(4,0),n}(e);if(e.match(/^#REF!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return function(e,t){var r=e.lastIndexOf("!"),n=e.slice(0,r);e=e.slice(r+1),"'"==n.charAt(0)&&(n=n.slice(1,-1).replace(/''/g,"'"));var o=da(e),a=Jo(23);return a.write_shift(4,15),a.write_shift(1,59),a.write_shift(2,2+t.SheetNames.map((function(e){return e.toLowerCase()})).indexOf(n.toLowerCase())),a.write_shift(4,o.s.r),a.write_shift(4,o.e.r),a.write_shift(2,o.s.c),a.write_shift(2,o.e.c),a.write_shift(4,0),a}(e,t);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return function(e,t){var r=e.lastIndexOf("!"),n=e.slice(0,r),o=ca(e=e.slice(r+1));"'"==n.charAt(0)&&(n=n.slice(1,-1).replace(/''/g,"'"));var a=Jo(17);return a.write_shift(4,9),a.write_shift(1,58),a.write_shift(2,2+t.SheetNames.map((function(e){return e.toLowerCase()})).indexOf(n.toLowerCase())),a.write_shift(4,o.r),a.write_shift(2,o.c|("$"==e.charAt(0)?0:1)<<14|(e.match(/\$\d/)?0:1)<<15),a.write_shift(4,0),a}(e,t);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return function(e,t){var r=e.lastIndexOf("!"),n=e.slice(0,r);e=e.slice(r+1),"'"==n.charAt(0)&&(n=n.slice(1,-1).replace(/''/g,"'"));var o=e.split(":"),a=Jo(27);a.write_shift(4,19);var i=o[0],s=ca(i);return a.write_shift(1,58),a.write_shift(2,2+t.SheetNames.map((function(e){return e.toLowerCase()})).indexOf(n.toLowerCase())),a.write_shift(4,s.r),a.write_shift(2,s.c|("$"==i.charAt(0)?0:1)<<14|(i.match(/\$\d/)?0:1)<<15),s=ca(i=o[1]),a.write_shift(1,58),a.write_shift(2,2+t.SheetNames.map((function(e){return e.toLowerCase()})).indexOf(n.toLowerCase())),a.write_shift(4,s.r),a.write_shift(2,s.c|("$"==i.charAt(0)?0:1)<<14|(i.match(/\$\d/)?0:1)<<15),a.write_shift(1,17),a.write_shift(4,0),a}(e,t);if(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!#REF!$/.test(e))return function(e,t){var r=e.lastIndexOf("!"),n=e.slice(0,r);e=e.slice(r+1),"'"==n.charAt(0)&&(n=n.slice(1,-1).replace(/''/g,"'"));var o=Jo(17);return o.write_shift(4,9),o.write_shift(1,60),o.write_shift(2,2+t.SheetNames.map((function(e){return e.toLowerCase()})).indexOf(n.toLowerCase())),o.write_shift(4,0),o.write_shift(2,0),o.write_shift(4,0),o}(e,t);if(/^".*"$/.test(e))return function(e){var t=Jo(7);t.write_shift(4,3+2*e.length),t.write_shift(1,23),t.write_shift(2,e.length);var r=Jo(2*e.length);r.write_shift(2*e.length,e,"utf16le");var n=Jo(4);return n.write_shift(4,0),gt([t,r,n])}(e);if(/^[+-]\d+$/.test(e))return ou(parseInt(e,10));throw"Formula |"+e+"| not supported for XLSB"},iu={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"},su={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD",380:"CUBEVALUE",381:"CUBEMEMBER",382:"CUBEMEMBERPROPERTY",383:"CUBERANKEDMEMBER",384:"HEX2BIN",385:"HEX2DEC",386:"HEX2OCT",387:"DEC2BIN",388:"DEC2HEX",389:"DEC2OCT",390:"OCT2BIN",391:"OCT2HEX",392:"OCT2DEC",393:"BIN2DEC",394:"BIN2OCT",395:"BIN2HEX",396:"IMSUB",397:"IMDIV",398:"IMPOWER",399:"IMABS",400:"IMSQRT",401:"IMLN",402:"IMLOG2",403:"IMLOG10",404:"IMSIN",405:"IMCOS",406:"IMEXP",407:"IMARGUMENT",408:"IMCONJUGATE",409:"IMAGINARY",410:"IMREAL",411:"COMPLEX",412:"IMSUM",413:"IMPRODUCT",414:"SERIESSUM",415:"FACTDOUBLE",416:"SQRTPI",417:"QUOTIENT",418:"DELTA",419:"GESTEP",420:"ISEVEN",421:"ISODD",422:"MROUND",423:"ERF",424:"ERFC",425:"BESSELJ",426:"BESSELK",427:"BESSELY",428:"BESSELI",429:"XIRR",430:"XNPV",431:"PRICEMAT",432:"YIELDMAT",433:"INTRATE",434:"RECEIVED",435:"DISC",436:"PRICEDISC",437:"YIELDDISC",438:"TBILLEQ",439:"TBILLPRICE",440:"TBILLYIELD",441:"PRICE",442:"YIELD",443:"DOLLARDE",444:"DOLLARFR",445:"NOMINAL",446:"EFFECT",447:"CUMPRINC",448:"CUMIPMT",449:"EDATE",450:"EOMONTH",451:"YEARFRAC",452:"COUPDAYBS",453:"COUPDAYS",454:"COUPDAYSNC",455:"COUPNCD",456:"COUPNUM",457:"COUPPCD",458:"DURATION",459:"MDURATION",460:"ODDLPRICE",461:"ODDLYIELD",462:"ODDFPRICE",463:"ODDFYIELD",464:"RANDBETWEEN",465:"WEEKNUM",466:"AMORDEGRC",467:"AMORLINC",468:"CONVERT",724:"SHEETJS",469:"ACCRINT",470:"ACCRINTM",471:"WORKDAY",472:"NETWORKDAYS",473:"GCD",474:"MULTINOMIAL",475:"LCM",476:"FVSCHEDULE",477:"CUBEKPIMEMBER",478:"CUBESET",479:"CUBESETCOUNT",480:"IFERROR",481:"COUNTIFS",482:"SUMIFS",483:"AVERAGEIF",484:"AVERAGEIFS"},lu={2:1,3:1,10:0,15:1,16:1,17:1,18:1,19:0,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,34:0,35:0,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,63:0,65:3,66:3,67:1,68:1,69:1,70:1,71:1,72:1,73:1,74:0,75:1,76:1,77:1,79:2,80:2,83:1,85:0,86:1,89:0,90:1,94:0,95:0,97:2,98:1,99:1,101:3,102:3,105:1,106:1,108:2,111:1,112:1,113:1,114:1,117:2,118:1,119:4,121:1,126:1,127:1,128:1,129:1,130:1,131:1,133:1,134:1,135:1,136:2,137:2,138:2,140:1,141:1,142:3,143:4,144:4,161:1,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,186:1,189:3,190:1,195:3,196:3,197:1,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,225:0,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,247:4,252:2,257:1,261:1,271:1,273:4,274:2,275:2,276:2,277:3,278:3,279:1,280:3,281:3,282:3,283:1,284:1,285:2,286:4,287:3,288:2,289:4,290:3,291:3,292:3,293:4,294:1,295:3,296:1,297:3,298:1,299:2,300:3,301:3,302:4,303:2,304:2,305:2,306:2,307:2,308:2,309:3,310:2,311:2,312:2,313:2,314:2,315:2,316:4,325:2,326:2,327:2,328:2,331:2,332:2,337:2,342:1,343:1,346:2,347:1,350:4,351:3,352:1,353:2,360:1,368:1,369:1,370:1,371:1,372:1,373:1,374:1,375:1,376:1,377:1,378:1,382:3,385:1,392:1,393:1,396:2,397:2,398:2,399:1,400:1,401:1,402:1,403:1,404:1,405:1,406:1,407:1,408:1,409:1,410:1,414:4,415:1,416:1,417:2,420:1,421:1,422:2,424:1,425:2,426:2,427:2,428:2,430:3,438:3,439:3,440:3,443:2,444:2,445:2,446:2,447:6,448:6,449:2,450:2,464:2,468:3,476:2,479:1,480:2,65535:0};function cu(e){return"of:"==e.slice(0,3)&&(e=e.slice(3)),61==e.charCodeAt(0)&&61==(e=e.slice(1)).charCodeAt(0)&&(e=e.slice(1)),(e=(e=(e=(e=(e=e.replace(/COM\.MICROSOFT\./g,"")).replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g,(function(e,t){return t.replace(/\./g,"")}))).replace(/\$'([^']|'')+'/g,(function(e){return e.slice(1)}))).replace(/\$([^\]\. #$]+)/g,(function(e,t){return t.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:t}))).replace(/\[.(#[A-Z]*[?!])\]/g,"$1")).replace(/[;~]/g,",").replace(/\|/g,";")}function uu(e){var t=(e=(e=e.replace(/\$'([^']|'')+'/g,(function(e){return e.slice(1)}))).replace(/\$([^\]\. #$]+)/g,(function(e,t){return t.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:t}))).split(":");return[t[0].split(".")[0],t[0].split(".")[1]+(t.length>1?":"+(t[1].split(".")[1]||t[1].split(".")[0]):"")]}function du(e){return e.replace(/!/,".").replace(/:/,":.")}var fu={},pu={},hu="undefined"!==typeof Map;function mu(e,t,r){var n=0,o=e.length;if(r){if(hu?r.has(t):Object.prototype.hasOwnProperty.call(r,t))for(var a=hu?r.get(t):r[t];n<a.length;++n)if(e[a[n]].t===t)return e.Count++,a[n]}else for(;n<o;++n)if(e[n].t===t)return e.Count++,n;return e[o]={t:t},e.Count++,e.Unique++,r&&(hu?(r.has(t)||r.set(t,[]),r.get(t).push(o)):(Object.prototype.hasOwnProperty.call(r,t)||(r[t]=[]),r[t].push(o))),o}function gu(e,t){var r={min:e+1,max:e+1},n=-1;return t.MDW&&(Il=t.MDW),null!=t.width?r.customWidth=1:null!=t.wpx?n=Dl(t.wpx):null!=t.wch&&(n=t.wch),n>-1?(r.width=Tl(n),r.customWidth=1):null!=t.width&&(r.width=t.width),t.hidden&&(r.hidden=!0),null!=t.level&&(r.outlineLevel=r.level=t.level),r}function vu(e,t){if(e){var r=[.7,.7,.75,.75,.3,.3];"xlml"==t&&(r=[1,1,1,1,.5,.5]),null==e.left&&(e.left=r[0]),null==e.right&&(e.right=r[1]),null==e.top&&(e.top=r[2]),null==e.bottom&&(e.bottom=r[3]),null==e.header&&(e.header=r[4]),null==e.footer&&(e.footer=r[5])}}function yu(e,t,r){var n=r.revssf[null!=t.z?t.z:"General"],o=60,a=e.length;if(null==n&&r.ssf)for(;o<392;++o)if(null==r.ssf[o]){cr(t.z,o),r.ssf[o]=t.z,r.revssf[t.z]=n=o;break}for(o=0;o!=a;++o)if(e[o].numFmtId===n)return o;return e[a]={numFmtId:n,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1},a}function bu(e,t,r,n,o,a,i){try{n.cellNF&&(e.z=Dt[t])}catch(o6){if(n.WTF)throw o6}if("z"!==e.t||n.cellStyles){if("d"===e.t&&"string"===typeof e.v&&(e.v=Dr(e.v)),(!n||!1!==n.cellText)&&"z"!==e.t)try{if(null==Dt[t]&&cr(ir[t]||"General",t),"e"===e.t)e.w=e.w||ri[e.v];else if(0===t)if("n"===e.t)(0|e.v)===e.v?e.w=e.v.toString(10):e.w=Rt(e.v);else if("d"===e.t){var s=Sr(e.v,!!i);e.w=(0|s)===s?s.toString(10):Rt(s)}else{if(void 0===e.v)return"";e.w=_t(e.v,pu)}else"d"===e.t?e.w=rr(t,Sr(e.v,!!i),pu):e.w=rr(t,e.v,pu)}catch(o6){if(n.WTF)throw o6}if(n.cellStyles&&null!=r)try{e.s=a.Fills[r],e.s.fgColor&&e.s.fgColor.theme&&!e.s.fgColor.rgb&&(e.s.fgColor.rgb=Cl(o.themeElements.clrScheme[e.s.fgColor.theme].rgb,e.s.fgColor.tint||0),n.WTF&&(e.s.fgColor.raw_rgb=o.themeElements.clrScheme[e.s.fgColor.theme].rgb)),e.s.bgColor&&e.s.bgColor.theme&&(e.s.bgColor.rgb=Cl(o.themeElements.clrScheme[e.s.bgColor.theme].rgb,e.s.bgColor.tint||0),n.WTF&&(e.s.bgColor.raw_rgb=o.themeElements.clrScheme[e.s.bgColor.theme].rgb))}catch(o6){if(n.WTF&&a.Fills)throw o6}}}function wu(e,t,r){if(e&&e["!ref"]){var n=ma(e["!ref"]);if(n.e.c<n.s.c||n.e.r<n.s.r)throw new Error("Bad range ("+r+"): "+e["!ref"])}}var xu=/<(?:\w+:)?mergeCell ref=["'][A-Z0-9:]+['"]\s*[\/]?>/g,Su=/<(?:\w+:)?hyperlink [^<>]*>/gm,Au=/"(\w*:\w*)"/,ku=/<(?:\w+:)?col\b[^<>]*[\/]?>/g,Cu=/<(?:\w+:)?autoFilter[^>]*/g,Iu=/<(?:\w+:)?pageMargins[^<>]*\/>/g,Eu=/<(?:\w+:)?sheetPr\b[^<>]*?\/>/;function Du(e,t,r,n,o,a,i){if(!e)return e;n||(n={"!id":{}});var s={};t.dense&&(s["!data"]=[]);var l={s:{r:2e6,c:2e6},e:{r:0,c:0}},c="",u="",d=Zr(e,"sheetData");d?(c=e.slice(0,d.index),u=e.slice(d.index+d[0].length)):c=u=e;var f=c.match(Eu);f?Tu(f[0],s,o,r):(f=Zr(c,"sheetPr"))&&function(e,t,r,n,o){Tu(e.slice(0,e.indexOf(">")),r,n,o)}(f[0],f[1],s,o,r);var p=(c.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(p>0){var h=c.slice(p,p+50).match(Au);!h||t&&t.nodim||function(e,t){var r=ma(t);r.s.r<=r.e.r&&r.s.c<=r.e.c&&r.s.r>=0&&r.s.c>=0&&(e["!ref"]=fa(r))}(s,h[1])}var m=Zr(c,"sheetViews");m&&m[1]&&function(e,t){t.Views||(t.Views=[{}]);(e.match(Pu)||[]).forEach((function(e,r){var n=gn(e);t.Views[r]||(t.Views[r]={}),+n.zoomScale&&(t.Views[r].zoom=+n.zoomScale),n.rightToLeft&&Tn(n.rightToLeft)&&(t.Views[r].RTL=!0)}))}(m[1],o);var g=[];if(t.cellStyles){var v=c.match(ku);v&&function(e,t){for(var r=!1,n=0;n!=t.length;++n){var o=gn(t[n],!0);o.hidden&&(o.hidden=Tn(o.hidden));var a=parseInt(o.min,10)-1,i=parseInt(o.max,10)-1;for(o.outlineLevel&&(o.level=+o.outlineLevel||0),delete o.min,delete o.max,o.width=+o.width,!r&&o.width&&(r=!0,Ml(o.width)),Pl(o);a<=i;)e[a++]=Or(o)}}(g,v)}d&&Ru(d[1],s,t,l,a,i,o);var y=u.match(Cu);y&&(s["!autofilter"]=function(e){var t={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return t}(y[0]));var b=[],w=u.match(xu);if(w)for(p=0;p!=w.length;++p)b[p]=ma(w[p].slice(w[p].indexOf("=")+2));var x=u.match(Su);x&&function(e,t,r){for(var n=null!=e["!data"],o=0;o!=t.length;++o){var a=gn(Rn(t[o]),!0);if(!a.ref)return;var i=((r||{})["!id"]||[])[a.id];i?(a.Target=i.Target,a.location&&(a.Target+="#"+xn(a.location))):(a.Target="#"+xn(a.location),i={Target:a.Target,TargetMode:"Internal"}),a.Rel=i,a.tooltip&&(a.Tooltip=a.tooltip,delete a.tooltip);for(var s=ma(a.ref),l=s.s.r;l<=s.e.r;++l)for(var c=s.s.c;c<=s.e.c;++c){var u=la(c)+ia(l);n?(e["!data"][l]||(e["!data"][l]=[]),e["!data"][l][c]||(e["!data"][l][c]={t:"z",v:void 0}),e["!data"][l][c].l=a):(e[u]||(e[u]={t:"z",v:void 0}),e[u].l=a)}}}(s,x,n);var S,A=u.match(Iu);if(A&&(s["!margins"]=function(e){var t={};return["left","right","top","bottom","header","footer"].forEach((function(r){e[r]&&(t[r]=parseFloat(e[r]))})),t}(gn(A[0]))),(S=u.match(/legacyDrawing r:id="(.*?)"/))&&(s["!legrel"]=S[1]),t&&t.nodim&&(l.s.c=l.s.r=0),!s["!ref"]&&l.e.c>=l.s.c&&l.e.r>=l.s.r&&(s["!ref"]=fa(l)),t.sheetRows>0&&s["!ref"]){var k=ma(s["!ref"]);t.sheetRows<=+k.e.r&&(k.e.r=t.sheetRows-1,k.e.r>l.e.r&&(k.e.r=l.e.r),k.e.r<k.s.r&&(k.s.r=k.e.r),k.e.c>l.e.c&&(k.e.c=l.e.c),k.e.c<k.s.c&&(k.s.c=k.e.c),s["!fullref"]=s["!ref"],s["!ref"]=fa(k))}return g.length>0&&(s["!cols"]=g),b.length>0&&(s["!merges"]=b),n["!id"][s["!legrel"]]&&(s["!legdrawel"]=n["!id"][s["!legrel"]]),s}function Tu(e,t,r,n){var o=gn(e);r.Sheets[n]||(r.Sheets[n]={}),o.codeName&&(r.Sheets[n].CodeName=xn(Rn(o.codeName)))}var Ou=["objects","scenarios","selectLockedCells","selectUnlockedCells"],Mu=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];var Pu=/<(?:\w:)?sheetView(?:[^<>a-z][^<>]*)?\/?>/g;function ju(e,t,r,n,o,a,i){if(e.c&&r["!comments"].push([t,e.c]),(void 0===e.v||"z"===e.t&&!(n||{}).sheetStubs)&&"string"!==typeof e.f&&"undefined"==typeof e.z)return"";var s="",l=e.t,c=e.v;if("z"!==e.t)switch(e.t){case"b":s=e.v?"1":"0";break;case"n":isNaN(e.v)?(e.t="e",s=ri[e.v=36]):isFinite(e.v)?s=""+e.v:(e.t="e",s=ri[e.v=7]);break;case"e":s=ri[e.v];break;case"d":if(n&&n.cellDates){var u=Dr(e.v,i);s=u.toISOString(),u.getUTCFullYear()<1900&&(s=s.slice(s.indexOf("T")+1).replace("Z",""))}else(e=Or(e)).t="n",s=""+(e.v=Sr(Dr(e.v,i),i));"undefined"===typeof e.z&&(e.z=Dt[14]);break;default:s=e.v}var d="z"==e.t||null==e.v?"":zn("v",kn(s)),f={r:t},p=yu(n.cellXfs,e,n);switch(0!==p&&(f.s=p),e.t){case"n":case"z":break;case"d":f.t="d";break;case"b":f.t="b";break;case"e":f.t="e";break;default:if(null==e.v){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(n&&n.bookSST){d=zn("v",""+mu(n.Strings,e.v,n.revStrings)),f.t="s";break}f.t="str"}if(e.t!=l&&(e.t=l,e.v=c),"string"==typeof e.f&&e.f){var h=e.F&&e.F.slice(0,t.length)==t?{t:"array",ref:e.F}:null;d=Hn("f",kn(e.f),h)+(null!=e.v?d:"")}return e.l&&(e.l.display=kn(s),r["!links"].push([t,e.l])),e.D&&(f.cm=1),Hn("c",d,f)}var Ru=function(){var e=/<(?:\w+:)?c[ \/>]/,t=/<\/(?:\w+:)?row>/,r=/r=["']([^"']*)["']/,n=/ref=["']([^"']*)["']/;return function(o,a,i,s,l,c,u){for(var d,f,p,h,m,g=0,v="",y=[],b=[],w=0,x=0,S=0,A="",k=0,C=0,I=0,E=0,D=Array.isArray(c.CellXf),T=[],O=[],M=null!=a["!data"],P=[],j={},R=!1,_=!!i.sheetStubs,N=!!((u||{}).WBProps||{}).date1904,L=o.split(t),U=0,B=L.length;U!=B;++U){var F=(v=L[U].trim()).length;if(0!==F){var z=0;e:for(g=0;g<F;++g)switch(v[g]){case">":if("/"!=v[g-1]){++g;break e}if(i&&i.cellStyles){if(k=null!=(f=gn(v.slice(z,g),!0)).r?parseInt(f.r,10):k+1,C=-1,i.sheetRows&&i.sheetRows<k)continue;j={},R=!1,f.ht&&(R=!0,j.hpt=parseFloat(f.ht),j.hpx=_l(j.hpt)),f.hidden&&Tn(f.hidden)&&(R=!0,j.hidden=!0),null!=f.outlineLevel&&(R=!0,j.level=+f.outlineLevel),R&&(P[k-1]=j)}break;case"<":z=g}if(z>=g)break;if(k=null!=(f=gn(v.slice(z,g),!0)).r?parseInt(f.r,10):k+1,C=-1,!(i.sheetRows&&i.sheetRows<k)){i.nodim||(s.s.r>k-1&&(s.s.r=k-1),s.e.r<k-1&&(s.e.r=k-1)),i&&i.cellStyles&&(j={},R=!1,f.ht&&(R=!0,j.hpt=parseFloat(f.ht),j.hpx=_l(j.hpt)),f.hidden&&Tn(f.hidden)&&(R=!0,j.hidden=!0),null!=f.outlineLevel&&(R=!0,j.level=+f.outlineLevel),R&&(P[k-1]=j)),y=v.slice(g).split(e);for(var W=0;W!=y.length&&"<"==y[W].trim().charAt(0);++W);for(y=y.slice(W),g=0;g!=y.length;++g)if(0!==(v=y[g].trim()).length){if(b=v.match(r),w=g,x=0,S=0,v="<c "+("<"==v.slice(0,1)?">":"")+v,null!=b&&2===b.length){for(w=0,A=b[1],x=0;x!=A.length&&!((S=A.charCodeAt(x)-64)<1||S>26);++x)w=26*w+S;C=--w}else++C;for(x=0;x!=v.length&&62!==v.charCodeAt(x);++x);if(++x,(f=gn(v.slice(0,x),!0)).r||(f.r=ua({r:k-1,c:C})),A=v.slice(x),d={t:""},null!=(b=Zr(A,"v"))&&""!==b[1]&&(d.v=xn(b[1])),i.cellFormula){if(null!=(b=Zr(A,"f"))){if(""==b[1])b[0].indexOf('t="shared"')>-1&&O[(h=gn(b[0])).si]&&(d.f=wc(O[h.si][1],O[h.si][2],f.r));else if(d.f=xn(Rn(b[1]),!0),i.xlfn||(d.f=xc(d.f)),b[0].indexOf('t="array"')>-1)d.F=(A.match(n)||[])[1],d.F.indexOf(":")>-1&&T.push([ma(d.F),d.F]);else if(b[0].indexOf('t="shared"')>-1){h=gn(b[0]);var H=xn(Rn(b[1]));i.xlfn||(H=xc(H)),O[parseInt(h.si,10)]=[h,H,f.r]}}else(b=A.match(/<f[^<>]*\/>/))&&O[(h=gn(b[0])).si]&&(d.f=wc(O[h.si][1],O[h.si][2],f.r));var Y=ca(f.r);for(x=0;x<T.length;++x)Y.r>=T[x][0].s.r&&Y.r<=T[x][0].e.r&&Y.c>=T[x][0].s.c&&Y.c<=T[x][0].e.c&&(d.F=T[x][1])}if(null==f.t&&void 0===d.v)if(d.f||d.F)d.v=0,d.t="n";else{if(!_)continue;d.t="z"}else d.t=f.t||"n";switch(s.s.c>C&&(s.s.c=C),s.e.c<C&&(s.e.c=C),d.t){case"n":if(""==d.v||null==d.v){if(!_)continue;d.t="z"}else d.v=parseFloat(d.v);break;case"s":if("undefined"==typeof d.v){if(!_)continue;d.t="z"}else p=fu[parseInt(d.v,10)],d.v=p.t,d.r=p.r,i.cellHTML&&(d.h=p.h);break;case"str":d.t="s",d.v=null!=d.v?xn(Rn(d.v),!0):"",i.cellHTML&&(d.h=En(d.v));break;case"inlineStr":b=Zr(A,"is"),d.t="s",null!=b&&(p=nl(b[1]))?(d.v=p.t,i.cellHTML&&(d.h=p.h)):d.v="";break;case"b":d.v=Tn(d.v);break;case"d":i.cellDates?d.v=Dr(d.v,N):(d.v=Sr(Dr(d.v,N),N),d.t="n");break;case"e":i&&!1===i.cellText||(d.w=d.v),d.v=ni[d.v]}if(I=E=0,m=null,D&&void 0!==f.s&&null!=(m=c.CellXf[f.s])&&(null!=m.numFmtId&&(I=m.numFmtId),i.cellStyles&&null!=m.fillId&&(E=m.fillId)),bu(d,I,E,i,l,c,N),i.cellDates&&D&&"n"==d.t&&$t(Dt[I])&&(d.v=Ar(d.v+(N?1462:0)),d.t="number"==typeof d.v?"n":"d"),f.cm&&i.xlmeta){var V=(i.xlmeta.Cell||[])[+f.cm-1];V&&"XLDAPR"==V.type&&(d.D=!0)}var G;i.nodim&&(G=ca(f.r),s.s.r>G.r&&(s.s.r=G.r),s.e.r<G.r&&(s.e.r=G.r)),M?(G=ca(f.r),a["!data"][G.r]||(a["!data"][G.r]=[]),a["!data"][G.r][G.c]=d):a[f.r]=d}}}}P.length>0&&(a["!rows"]=P)}}();function _u(e,t,r,n){var o,a=[un,Hn("worksheet",null,{xmlns:io[0],"xmlns:r":ro})],i=r.SheetNames[e],s="",l=r.Sheets[i];null==l&&(l={});var c=l["!ref"]||"A1",u=ma(c);if(u.e.c>16383||u.e.r>1048575){if(t.WTF)throw new Error("Range "+c+" exceeds format limit A1:XFD1048576");u.e.c=Math.min(u.e.c,16383),u.e.r=Math.min(u.e.c,1048575),c=fa(u)}n||(n={}),l["!comments"]=[];var d=[];!function(e,t,r,n,o){var a=!1,i={},s=null;if("xlsx"!==n.bookType&&t.vbaraw){var l=t.SheetNames[r];try{t.Workbook&&(l=t.Workbook.Sheets[r].CodeName||l)}catch(o6){}a=!0,i.codeName=_n(kn(l))}if(e&&e["!outline"]){var c={summaryBelow:1,summaryRight:1};e["!outline"].above&&(c.summaryBelow=0),e["!outline"].left&&(c.summaryRight=0),s=(s||"")+Hn("outlinePr",null,c)}(a||s)&&(o[o.length]=Hn("sheetPr",s,i))}(l,r,e,t,a),a[a.length]=Hn("dimension",null,{ref:c}),a[a.length]=function(e,t,r,n){var o={workbookViewId:"0"};return(((n||{}).Workbook||{}).Views||[])[0]&&(o.rightToLeft=n.Workbook.Views[0].RTL?"1":"0"),Hn("sheetViews",Hn("sheetView",null,o),{})}(0,0,0,r),t.sheetFormat&&(a[a.length]=Hn("sheetFormatPr",null,{defaultRowHeight:t.sheetFormat.defaultRowHeight||"16",baseColWidth:t.sheetFormat.baseColWidth||"10",outlineLevelRow:t.sheetFormat.outlineLevelRow||"7"})),null!=l["!cols"]&&l["!cols"].length>0&&(a[a.length]=function(e,t){for(var r,n=["<cols>"],o=0;o!=t.length;++o)(r=t[o])&&(n[n.length]=Hn("col",null,gu(o,r)));return n[n.length]="</cols>",n.join("")}(0,l["!cols"])),a[o=a.length]="<sheetData/>",l["!links"]=[],null!=l["!ref"]&&(s=function(e,t,r,n){var o,a,i=[],s=[],l=ma(e["!ref"]),c="",u="",d=[],f=0,p=0,h=e["!rows"],m=null!=e["!data"],g=m?e["!data"]:[],v={r:u},y=-1,b=(((n||{}).Workbook||{}).WBProps||{}).date1904;for(p=l.s.c;p<=l.e.c;++p)d[p]=la(p);for(f=l.s.r;f<=l.e.r;++f){s=[],u=ia(f);var w=m?g[f]:[];for(p=l.s.c;p<=l.e.c;++p){o=d[p]+u;var x=m?w[p]:e[o];void 0!==x&&null!=(c=ju(x,o,e,t,0,0,b))&&s.push(c)}(s.length>0||h&&h[f])&&(v={r:u},h&&h[f]&&((a=h[f]).hidden&&(v.hidden=1),y=-1,a.hpx?y=Rl(a.hpx):a.hpt&&(y=a.hpt),y>-1&&(v.ht=y,v.customHeight=1),a.level&&(v.outlineLevel=a.level)),i[i.length]=Hn("row",s.join(""),v))}if(h)for(;f<h.length;++f)h&&h[f]&&(v={r:f+1},(a=h[f]).hidden&&(v.hidden=1),y=-1,a.hpx?y=Rl(a.hpx):a.hpt&&(y=a.hpt),y>-1&&(v.ht=y,v.customHeight=1),a.level&&(v.outlineLevel=a.level),i[i.length]=Hn("row","",v));return i.join("")}(l,t,0,r),s.length>0&&(a[a.length]=s)),a.length>o+1&&(a[a.length]="</sheetData>",a[o]=a[o].replace("/>",">")),l["!protect"]&&(a[a.length]=function(e){var t={sheet:1};return Ou.forEach((function(r){null!=e[r]&&e[r]&&(t[r]="1")})),Mu.forEach((function(r){null==e[r]||e[r]||(t[r]="0")})),e.password&&(t.password=yl(e.password).toString(16).toUpperCase()),Hn("sheetProtection",null,t)}(l["!protect"])),null!=l["!autofilter"]&&(a[a.length]=function(e,t,r,n){var o="string"==typeof e.ref?e.ref:fa(e.ref);r.Workbook||(r.Workbook={Sheets:[]}),r.Workbook.Names||(r.Workbook.Names=[]);var a=r.Workbook.Names,i=da(o);i.s.r==i.e.r&&(i.e.r=da(t["!ref"]).e.r,o=fa(i));for(var s=0;s<a.length;++s){var l=a[s];if("_xlnm._FilterDatabase"==l.Name&&l.Sheet==n){l.Ref=ha(r.SheetNames[n])+"!"+pa(o);break}}return s==a.length&&a.push({Name:"_xlnm._FilterDatabase",Sheet:n,Ref:"'"+r.SheetNames[n]+"'!"+o}),Hn("autoFilter",null,{ref:o})}(l["!autofilter"],l,r,e)),null!=l["!merges"]&&l["!merges"].length>0&&(a[a.length]=function(e){if(0===e.length)return"";for(var t='<mergeCells count="'+e.length+'">',r=0;r!=e.length;++r)t+='<mergeCell ref="'+fa(e[r])+'"/>';return t+"</mergeCells>"}(l["!merges"]));var f,p,h=-1,m=-1;return l["!links"].length>0&&(a[a.length]="<hyperlinks>",l["!links"].forEach((function(e){e[1].Target&&(f={ref:e[0]},"#"!=e[1].Target.charAt(0)&&(m=fi(n,-1,kn(e[1].Target).replace(/#[\s\S]*$/,""),li.HLINK),f["r:id"]="rId"+m),(h=e[1].Target.indexOf("#"))>-1&&(f.location=kn(e[1].Target.slice(h+1))),e[1].Tooltip&&(f.tooltip=kn(e[1].Tooltip)),f.display=e[1].display,a[a.length]=Hn("hyperlink",null,f))})),a[a.length]="</hyperlinks>"),delete l["!links"],null!=l["!margins"]&&(a[a.length]=(vu(p=l["!margins"]),Hn("pageMargins",null,p))),t&&!t.ignoreEC&&void 0!=t.ignoreEC||(a[a.length]=zn("ignoredErrors",Hn("ignoredError",null,{numberStoredAsText:1,sqref:c}))),d.length>0&&(m=fi(n,-1,"../drawings/drawing"+(e+1)+".xml",li.DRAW),a[a.length]=Hn("drawing",null,{"r:id":"rId"+m}),l["!drawing"]=d),l["!comments"].length>0&&(m=fi(n,-1,"../drawings/vmlDrawing"+(e+1)+".vml",li.VML),a[a.length]=Hn("legacyDrawing",null,{"r:id":"rId"+m}),l["!legacy"]=m),a.length>1&&(a[a.length]="</worksheet>",a[1]=a[1].replace("/>",">")),a.join("")}function Nu(e,t,r,n){var o=function(e,t,r){var n=Jo(145),o=(r["!rows"]||[])[e]||{};n.write_shift(4,e),n.write_shift(4,0);var a=320;o.hpx?a=20*Rl(o.hpx):o.hpt&&(a=20*o.hpt),n.write_shift(2,a),n.write_shift(1,0);var i=0;o.level&&(i|=o.level),o.hidden&&(i|=16),(o.hpx||o.hpt)&&(i|=32),n.write_shift(1,i),n.write_shift(1,0);var s=0,l=n.l;n.l+=4;for(var c={r:e,c:0},u=null!=r["!data"],d=0;d<16;++d)if(!(t.s.c>d+1<<10||t.e.c<d<<10)){for(var f=-1,p=-1,h=d<<10;h<d+1<<10;++h)c.c=h,(u?(r["!data"][c.r]||[])[c.c]:r[ua(c)])&&(f<0&&(f=h),p=h);f<0||(++s,n.write_shift(4,f),n.write_shift(4,p))}var m=n.l;return n.l=l,n.write_shift(4,s),n.l=m,n.length>n.l?n.slice(0,n.l):n}(n,r,t);(o.length>17||(t["!rows"]||[])[n])&&ea(e,0,o)}var Lu=Wa,Uu=Ha;function Bu(e,t,r){return null==r&&(r=Jo(9)),Ta(t,r),r.write_shift(1,e.v),r}function Fu(e,t,r){return null==r&&(r=Jo(8)),Ma(t,r),r.write_shift(1,e.v),r.write_shift(2,0),r.write_shift(1,0),r}function zu(e){return[Oa(e),Ya(e),"n"]}var Wu=Wa,Hu=Ha;var Yu=["left","right","top","bottom","header","footer"];function Vu(e,t,r,n,o,a,i,s){var l={r:r,c:n};if(t.c&&a["!comments"].push([ua(l),t.c]),void 0===t.v)return!1;var c="";switch(t.t){case"b":c=t.v?"1":"0";break;case"d":(t=Or(t)).z=t.z||Dt[14],t.v=Sr(Dr(t.v,s),s),t.t="n";break;case"n":case"e":c=""+t.v;break;default:c=t.v}switch(l.s=yu(o.cellXfs,t,o),t.l&&a["!links"].push([ua(l),t.l]),t.t){case"s":case"str":return o.bookSST?(c=mu(o.Strings,null==t.v?"":String(t.v),o.revStrings),l.t="s",l.v=c,i?ea(e,18,function(e,t,r){return null==r&&(r=Jo(8)),Ma(t,r),r.write_shift(4,t.v),r}(0,l)):ea(e,7,function(e,t,r){return null==r&&(r=Jo(12)),Ta(t,r),r.write_shift(4,t.v),r}(0,l))):(l.t="str",i?ea(e,17,function(e,t,r){var n=null==e.v?"":String(e.v);return null==r&&(r=Jo(8+4*n.length)),Ma(t,r),Aa(n,r),r.length>r.l?r.slice(0,r.l):r}(t,l)):ea(e,6,function(e,t,r){var n=null==e.v?"":String(e.v);return null==r&&(r=Jo(12+4*e.v.length)),Ta(t,r),Aa(n,r),r.length>r.l?r.slice(0,r.l):r}(t,l))),!0;case"n":return t.v==(0|t.v)&&t.v>-1e3&&t.v<1e3?i?ea(e,13,function(e,t,r){return null==r&&(r=Jo(8)),Ma(t,r),Fa(e.v,r),r}(t,l)):ea(e,2,function(e,t,r){return null==r&&(r=Jo(12)),Ta(t,r),Fa(e.v,r),r}(t,l)):isFinite(t.v)?i?ea(e,16,function(e,t,r){return null==r&&(r=Jo(12)),Ma(t,r),Va(e.v,r),r}(t,l)):ea(e,5,function(e,t,r){return null==r&&(r=Jo(16)),Ta(t,r),Va(e.v,r),r}(t,l)):(l.t="e",isNaN(t.v)?i?ea(e,14,Fu({t:"e",v:36},l)):ea(e,3,Bu({t:"e",v:36},l)):i?ea(e,14,Fu({t:"e",v:7},l)):ea(e,3,Bu({t:"e",v:7},l))),!0;case"b":return l.t="b",i?ea(e,15,function(e,t,r){return null==r&&(r=Jo(5)),Ma(t,r),r.write_shift(1,e.v?1:0),r}(t,l)):ea(e,4,function(e,t,r){return null==r&&(r=Jo(9)),Ta(t,r),r.write_shift(1,e.v?1:0),r}(t,l)),!0;case"e":return l.t="e",i?ea(e,14,Fu(t,l)):ea(e,3,Bu(t,l)),!0}return i?ea(e,12,function(e,t,r){return null==r&&(r=Jo(4)),Ma(t,r)}(0,l)):ea(e,1,function(e,t,r){return null==r&&(r=Jo(8)),Ta(t,r)}(0,l)),!0}function Gu(e,t){var r,n;t&&t["!merges"]&&(ea(e,177,(r=t["!merges"].length,null==n&&(n=Jo(4)),n.write_shift(4,r),n)),t["!merges"].forEach((function(t){ea(e,176,Hu(t))})),ea(e,178))}function Zu(e,t){t&&t["!cols"]&&(ea(e,390),t["!cols"].forEach((function(t,r){t&&ea(e,60,function(e,t,r){null==r&&(r=Jo(18));var n=gu(e,t);r.write_shift(-4,e),r.write_shift(-4,e),r.write_shift(4,256*(n.width||10)),r.write_shift(4,0);var o=0;return t.hidden&&(o|=1),"number"==typeof n.width&&(o|=2),t.level&&(o|=t.level<<8),r.write_shift(2,o),r}(r,t))})),ea(e,391))}function Qu(e,t){t&&t["!ref"]&&(ea(e,648),ea(e,649,function(e){var t=Jo(24);return t.write_shift(4,4),t.write_shift(4,1),Ha(e,t),t}(ma(t["!ref"]))),ea(e,650))}function Ku(e,t,r){t["!links"].forEach((function(t){if(t[1].Target){var n=fi(r,-1,t[1].Target.replace(/#[\s\S]*$/,""),li.HLINK);ea(e,494,function(e,t){var r=Jo(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));Ha({s:ca(e[0]),e:ca(e[0])},r),Ua("rId"+t,r);var n=e[1].Target.indexOf("#");return Aa((-1==n?"":e[1].Target.slice(n+1))||"",r),Aa(e[1].Tooltip||"",r),Aa("",r),r.slice(0,r.l)}(t,n))}})),delete t["!links"]}function Xu(e,t,r){ea(e,133),ea(e,137,function(e,t,r){null==r&&(r=Jo(30));var n=924;return(((t||{}).Views||[])[0]||{}).RTL&&(n|=32),r.write_shift(2,n),r.write_shift(4,0),r.write_shift(4,0),r.write_shift(4,0),r.write_shift(1,0),r.write_shift(1,0),r.write_shift(2,0),r.write_shift(2,100),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(4,0),r}(0,r)),ea(e,138),ea(e,134)}function Ju(e,t){var r,n;t["!protect"]&&ea(e,535,(r=t["!protect"],null==n&&(n=Jo(66)),n.write_shift(2,r.password?yl(r.password):0),n.write_shift(4,1),[["objects",!1],["scenarios",!1],["formatCells",!0],["formatColumns",!0],["formatRows",!0],["insertColumns",!0],["insertRows",!0],["insertHyperlinks",!0],["deleteColumns",!0],["deleteRows",!0],["selectLockedCells",!1],["sort",!0],["autoFilter",!0],["pivotTables",!0],["selectUnlockedCells",!1]].forEach((function(e){e[1]?n.write_shift(4,null==r[e[0]]||r[e[0]]?0:1):n.write_shift(4,null!=r[e[0]]&&r[e[0]]?0:1)})),n))}function $u(e,t,r,n){var o=qo(),a=r.SheetNames[e],i=r.Sheets[a]||{},s=a;try{r&&r.Workbook&&(s=r.Workbook.Sheets[e].CodeName||s)}catch(o6){}var l,c,u=ma(i["!ref"]||"A1");if(u.e.c>16383||u.e.r>1048575){if(t.WTF)throw new Error("Range "+(i["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");u.e.c=Math.min(u.e.c,16383),u.e.r=Math.min(u.e.c,1048575)}return i["!links"]=[],i["!comments"]=[],ea(o,129),(r.vbaraw||i["!outline"])&&ea(o,147,function(e,t,r){null==r&&(r=Jo(84+4*e.length));var n=192;t&&(t.above&&(n&=-65),t.left&&(n&=-129)),r.write_shift(1,n);for(var o=1;o<3;++o)r.write_shift(1,0);return Ga({auto:1},r),r.write_shift(-4,-1),r.write_shift(-4,-1),ja(e,r),r.slice(0,r.l)}(s,i["!outline"])),ea(o,148,Uu(u)),Xu(o,0,r.Workbook),Zu(o,i),function(e,t,r,n,o){var a=ma(t["!ref"]||"A1"),i="",s=[],l=(((o||{}).Workbook||{}).WBProps||{}).date1904;ea(e,145);var c=null!=t["!data"],u=c?t["!data"][a.s.r]:[],d=a.e.r;t["!rows"]&&(d=Math.max(a.e.r,t["!rows"].length-1));for(var f=a.s.r;f<=d;++f)if(i=ia(f),c&&(u=t["!data"][f]),Nu(e,t,a,f),!c||u){var p=!1;if(f<=a.e.r)for(var h=a.s.c;h<=a.e.c;++h){f===a.s.r&&(s[h]=la(h));var m=c?u[h]:t[s[h]+i];p=!!m&&Vu(e,m,f,h,n,t,p,l)}}ea(e,146)}(o,i,0,t,r),Ju(o,i),function(e,t,r,n){if(t["!autofilter"]){var o=t["!autofilter"],a="string"===typeof o.ref?o.ref:fa(o.ref);r.Workbook||(r.Workbook={Sheets:[]}),r.Workbook.Names||(r.Workbook.Names=[]);var i=r.Workbook.Names,s=da(a);s.s.r==s.e.r&&(s.e.r=da(t["!ref"]).e.r,a=fa(s));for(var l=0;l<i.length;++l){var c=i[l];if("_xlnm._FilterDatabase"==c.Name&&c.Sheet==n){c.Ref=ha(r.SheetNames[n])+"!"+pa(a);break}}l==i.length&&i.push({Name:"_xlnm._FilterDatabase",Sheet:n,Ref:ha(r.SheetNames[n])+"!"+pa(a)}),ea(e,161,Ha(ma(a))),ea(e,162)}}(o,i,r,e),Gu(o,i),Ku(o,i,n),i["!margins"]&&ea(o,476,(l=i["!margins"],null==c&&(c=Jo(48)),vu(l),Yu.forEach((function(e){Va(l[e],c)})),c)),t&&!t.ignoreEC&&void 0!=t.ignoreEC||Qu(o,i),function(e,t,r,n){if(t["!comments"].length>0){var o=fi(n,-1,"../drawings/vmlDrawing"+(r+1)+".vml",li.VML);ea(e,551,Ua("rId"+o)),t["!legacy"]=o}}(o,i,e,n),ea(o,130),o.end()}function qu(e,t,r,n,o,a){var i=a||{"!type":"chart"};if(!e)return a;var s=0,l=0,c="A",u={s:{r:2e6,c:2e6},e:{r:0,c:0}};return(Hr(e,"<c:numCache>","</c:numCache>")||[]).forEach((function(e){var t=function(e){var t,r=[],n=e.match(/^<c:numCache>/);(e.match(/<c:pt idx="(\d*)"[^<>\/]*><c:v>([^<])<\/c:v><\/c:pt>/gm)||[]).forEach((function(e){var t=e.match(/<c:pt idx="(\d*)"[^<>\/]*><c:v>([^<]*)<\/c:v><\/c:pt>/);t&&(r[+t[1]]=n?+t[2]:t[2])}));var o=xn((Gr(e,"c:formatCode")||["","General"])[1]);return(Hr(e,"<c:f>","</c:f>")||[]).forEach((function(e){t=e.replace(/<[^<>]*>/g,"")})),[r,o,t]}(e);u.s.r=u.s.c=0,u.e.c=s,c=la(s),t[0].forEach((function(e,r){i["!data"]?(i["!data"][r]||(i["!data"][r]=[]),i["!data"][r][s]={t:"n",v:e,z:t[1]}):i[c+ia(r)]={t:"n",v:e,z:t[1]},l=r})),u.e.r<l&&(u.e.r=l),++s})),s>0&&(i["!ref"]=fa(u)),i}var ed=[["allowRefreshQuery",!1,"bool"],["autoCompressPictures",!0,"bool"],["backupFile",!1,"bool"],["checkCompatibility",!1,"bool"],["CodeName",""],["date1904",!1,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",!1,"bool"],["hidePivotFieldList",!1,"bool"],["promptedSolutions",!1,"bool"],["publishItems",!1,"bool"],["refreshAllConnections",!1,"bool"],["saveExternalLinkValues",!0,"bool"],["showBorderUnselectedTables",!0,"bool"],["showInkAnnotation",!0,"bool"],["showObjects","all"],["showPivotChartFilter",!1,"bool"],["updateLinks","userSet"]],td=[["activeTab",0,"int"],["autoFilterDateGrouping",!0,"bool"],["firstSheet",0,"int"],["minimized",!1,"bool"],["showHorizontalScroll",!0,"bool"],["showSheetTabs",!0,"bool"],["showVerticalScroll",!0,"bool"],["tabRatio",600,"int"],["visibility","visible"]],rd=[],nd=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function od(e,t){for(var r=0;r!=e.length;++r)for(var n=e[r],o=0;o!=t.length;++o){var a=t[o];if(null==n[a[0]])n[a[0]]=a[1];else switch(a[2]){case"bool":"string"==typeof n[a[0]]&&(n[a[0]]=Tn(n[a[0]]));break;case"int":"string"==typeof n[a[0]]&&(n[a[0]]=parseInt(n[a[0]],10))}}}function ad(e,t){for(var r=0;r!=t.length;++r){var n=t[r];if(null==e[n[0]])e[n[0]]=n[1];else switch(n[2]){case"bool":"string"==typeof e[n[0]]&&(e[n[0]]=Tn(e[n[0]]));break;case"int":"string"==typeof e[n[0]]&&(e[n[0]]=parseInt(e[n[0]],10))}}}function id(e){ad(e.WBProps,ed),ad(e.CalcPr,nd),od(e.WBView,td),od(e.Sheets,rd),pu.date1904=Tn(e.WBProps.date1904)}var sd=":][*?/\\".split("");function ld(e,t){try{if(""==e)throw new Error("Sheet name cannot be blank");if(e.length>31)throw new Error("Sheet name cannot exceed 31 chars");if(39==e.charCodeAt(0)||39==e.charCodeAt(e.length-1))throw new Error("Sheet name cannot start or end with apostrophe (')");if("history"==e.toLowerCase())throw new Error("Sheet name cannot be 'History'");sd.forEach((function(t){if(-1!=e.indexOf(t))throw new Error("Sheet name cannot contain : \\ / ? * [ ]")}))}catch(o6){if(t)return!1;throw o6}return!0}function cd(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var t,r,n,o=e.Workbook&&e.Workbook.Sheets||[];t=e.SheetNames,r=o,n=!!e.vbaraw,t.forEach((function(e,o){ld(e);for(var a=0;a<o;++a)if(e==t[a])throw new Error("Duplicate Sheet Name: "+e);if(n){var i=r&&r[o]&&r[o].CodeName||e;if(95==i.charCodeAt(0)&&i.length>22)throw new Error("Bad Code Name: Worksheet"+i)}}));for(var a=0;a<e.SheetNames.length;++a)wu(e.Sheets[e.SheetNames[a]],e.SheetNames[a],a);e.SheetNames.forEach((function(t,r){var n=e.Sheets[t];if(n&&n["!autofilter"]){var o;e.Workbook||(e.Workbook={}),e.Workbook.Names||(e.Workbook.Names=[]),e.Workbook.Names.forEach((function(e){"_xlnm._FilterDatabase"==e.Name&&e.Sheet==r&&(o=e)}));var a=ha(t)+"!"+pa(n["!autofilter"].ref);o?o.Ref=a:e.Workbook.Names.push({Name:"_xlnm._FilterDatabase",Sheet:r,Ref:a})}}))}var ud=/<\w+:workbook/;function dd(e,t){var r={};return e.read_shift(4),r.ArchID=e.read_shift(4),e.l+=t-8,r}function fd(e,t){if(t.Workbook&&t.Workbook.Sheets){for(var r,n,o=t.Workbook.Sheets,a=0,i=-1,s=-1;a<o.length;++a)!o[a]||!o[a].Hidden&&-1==i?i=a:1==o[a].Hidden&&-1==s&&(s=a);if(!(s>i))ea(e,135),ea(e,158,(r=i,n||(n=Jo(29)),n.write_shift(-4,0),n.write_shift(-4,460),n.write_shift(4,28800),n.write_shift(4,17600),n.write_shift(4,500),n.write_shift(4,r),n.write_shift(4,r),n.write_shift(1,120),n.length>n.l?n.slice(0,n.l):n)),ea(e,136)}}function pd(e,t){t.Workbook&&t.Workbook.Names&&t.Workbook.Names.forEach((function(r){try{if(14&r.Flags)return;ea(e,39,function(e,t){var r=Jo(9),n=0,o=e.Name;oi.indexOf(o)>-1&&(n|=32,o=o.slice(6)),r.write_shift(4,n),r.write_shift(1,0),r.write_shift(4,null==e.Sheet?4294967295:e.Sheet);var a=[r,Aa(o),au(e.Ref,t)];if(e.Comment)a.push(_a(e.Comment));else{var i=Jo(4);i.write_shift(4,4294967295),a.push(i)}return gt(a)}(r,t))}catch(o6){console.error("Could not serialize defined name "+JSON.stringify(r))}}))}function hd(e,t){ea(e,353),ea(e,357),ea(e,362,function(e){var t=e.SheetNames.length,r=Jo(12*t+28);r.write_shift(4,t+2),r.write_shift(4,0),r.write_shift(4,-2),r.write_shift(4,-2),r.write_shift(4,0),r.write_shift(4,-1),r.write_shift(4,-1);for(var n=0;n<t;++n)r.write_shift(4,0),r.write_shift(4,n),r.write_shift(4,n);return r}(t)),ea(e,354)}function md(e,t){var r=qo();return ea(r,131),ea(r,128,function(e,t){t||(t=Jo(127));for(var r=0;4!=r;++r)t.write_shift(4,0);return Aa("SheetJS",t),Aa(He.version,t),Aa(He.version,t),Aa("7262",t),t.length>t.l?t.slice(0,t.l):t}()),ea(r,153,function(e,t){t||(t=Jo(72));var r=0;return e&&(e.date1904&&(r|=1),e.filterPrivacy&&(r|=8)),t.write_shift(4,r),t.write_shift(4,0),ja(e&&e.CodeName||"ThisWorkbook",t),t.slice(0,t.l)}(e.Workbook&&e.Workbook.WBProps||null)),fd(r,e),function(e,t){ea(e,143);for(var r=0;r!=t.SheetNames.length;++r){ea(e,156,(n={Hidden:t.Workbook&&t.Workbook.Sheets&&t.Workbook.Sheets[r]&&t.Workbook.Sheets[r].Hidden||0,iTabID:r+1,strRelID:"rId"+(r+1),name:t.SheetNames[r]},(o=void 0)||(o=Jo(127)),o.write_shift(4,n.Hidden),o.write_shift(4,n.iTabID),Ua(n.strRelID,o),Aa(n.name.slice(0,31),o),o.length>o.l?o.slice(0,o.l):o))}var n,o;ea(e,144)}(r,e),hd(r,e),(e.Workbook||{}).Names&&pd(r,e),ea(r,132),r.end()}function gd(e,t,r){return".bin"===t.slice(-4)?function(e,t){var r={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""},n=[],o=!1;t||(t={}),t.biff=12;var a=[],i=[[]];return i.SheetNames=[],i.XTI=[],of[16]={n:"BrtFRTArchID$",f:dd},$o(e,(function(e,s,l){switch(l){case 156:i.SheetNames.push(e.name),r.Sheets.push(e);break;case 153:r.WBProps=e;break;case 39:null!=e.Sheet&&(t.SID=e.Sheet),e.Ref=e.Ptg?Qc(e.Ptg,0,null,i,t):"#REF!",delete t.SID,delete e.Ptg,a.push(e);break;case 1036:case 361:case 2071:case 158:case 143:case 664:case 353:case 3072:case 3073:case 534:case 677:case 157:case 610:case 2050:case 155:case 548:case 676:case 128:case 665:case 2128:case 2125:case 549:case 2053:case 596:case 2076:case 2075:case 2082:case 397:case 154:case 1117:case 553:case 2091:case 16:break;case 357:case 358:case 355:case 667:i[0].length?i.push([l,e]):i[0]=[l,e],i[i.length-1].XTI=[];break;case 362:0===i.length&&(i[0]=[],i[0].XTI=[]),i[i.length-1].XTI=i[i.length-1].XTI.concat(e),i.XTI=i.XTI.concat(e);break;case 35:case 37:n.push(l),o=!0;break;case 36:case 38:n.pop(),o=!1;break;default:if(s.T);else if(!o||t.WTF&&37!=n[n.length-1]&&35!=n[n.length-1])throw new Error("Unexpected record 0x"+l.toString(16))}}),t),id(r),r.Names=a,r.supbooks=i,r}(e,r):function(e,t){if(!e)throw new Error("Could not find file");var r={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},Names:[],xmlns:""},n=!1,o="xmlns",a={},i=0;if(e.replace(pn,(function(s,l){var c=gn(s);switch(yn(c[0])){case"<?xml":case"</workbook>":case"<fileVersion/>":case"</fileVersion>":case"<fileSharing":case"<fileSharing/>":case"</workbookPr>":case"<workbookProtection":case"<workbookProtection/>":case"<bookViews":case"<bookViews>":case"</bookViews>":case"</workbookView>":case"<sheets":case"<sheets>":case"</sheets>":case"</sheet>":case"<functionGroups":case"<functionGroups/>":case"<functionGroup":case"<externalReferences":case"</externalReferences>":case"<externalReferences>":case"<externalReference":case"<definedNames/>":case"<definedName/>":case"</calcPr>":case"<oleSize":case"<customWorkbookViews>":case"</customWorkbookViews>":case"<customWorkbookViews":case"<customWorkbookView":case"</customWorkbookView>":case"<pivotCaches>":case"</pivotCaches>":case"<pivotCaches":case"<pivotCache":case"<smartTagPr":case"<smartTagPr/>":case"<smartTagTypes":case"<smartTagTypes>":case"</smartTagTypes>":case"<smartTagType":case"<webPublishing":case"<webPublishing/>":case"<fileRecoveryPr":case"<fileRecoveryPr/>":case"<webPublishObjects>":case"<webPublishObjects":case"</webPublishObjects>":case"<webPublishObject":case"<extLst":case"<extLst>":case"</extLst>":case"<extLst/>":case"<ArchID":case"<revisionPtr":break;case"<workbook":s.match(ud)&&(o="xmlns"+s.match(/<(\w+):/)[1]),r.xmlns=c[o];break;case"<fileVersion":delete c[0],r.AppVersion=c;break;case"<workbookPr":case"<workbookPr/>":ed.forEach((function(e){if(null!=c[e[0]])switch(e[2]){case"bool":r.WBProps[e[0]]=Tn(c[e[0]]);break;case"int":r.WBProps[e[0]]=parseInt(c[e[0]],10);break;default:r.WBProps[e[0]]=c[e[0]]}})),c.codeName&&(r.WBProps.CodeName=Rn(c.codeName));break;case"<workbookView":case"<workbookView/>":delete c[0],r.WBView.push(c);break;case"<sheet":switch(c.state){case"hidden":c.Hidden=1;break;case"veryHidden":c.Hidden=2;break;default:c.Hidden=0}delete c.state,c.name=xn(Rn(c.name)),delete c[0],r.Sheets.push(c);break;case"<definedNames>":case"<definedNames":case"<ext":case"<AlternateContent":case"<AlternateContent>":n=!0;break;case"</definedNames>":case"</ext>":case"</AlternateContent>":n=!1;break;case"<definedName":(a={}).Name=Rn(c.name),c.comment&&(a.Comment=c.comment),c.localSheetId&&(a.Sheet=+c.localSheetId),Tn(c.hidden||"0")&&(a.Hidden=!0),i=l+s.length;break;case"</definedName>":a.Ref=xn(Rn(e.slice(i,l))),r.Names.push(a);break;case"<calcPr":case"<calcPr/>":delete c[0],r.CalcPr=c;break;default:if(!n&&t.WTF)throw new Error("unrecognized "+c[0]+" in workbook")}return s})),-1===io.indexOf(r.xmlns))throw new Error("Unknown Namespace: "+r.xmlns);return id(r),r}(e,r)}function vd(e,t,r,n,o,a,i,s){return".bin"===t.slice(-4)?function(e,t,r,n,o,a,i){if(!e)return e;var s=t||{};n||(n={"!id":{}});var l,c={};s.dense&&(c["!data"]=[]);var u,d,f,p,h,m,g,v,y,b={s:{r:2e6,c:2e6},e:{r:0,c:0}},w=[],x=!1,S=!1,A=[];s.biff=12,s["!row"]=0;var k=0,C=!1,I=[],E={},D=s.supbooks||o.supbooks||[[]];if(D.sharedf=E,D.arrayf=I,D.SheetNames=o.SheetNames||o.Sheets.map((function(e){return e.name})),!s.supbooks&&(s.supbooks=D,o.Names))for(var T=0;T<o.Names.length;++T)D[0][T+1]=o.Names[T];var O,M,P=[],j=[],R=!1;of[16]={n:"BrtShortReal",f:zu};var _=1462*+!!((o||{}).WBProps||{}).date1904;if($o(e,(function(e,t,T){if(!S)switch(T){case 148:l=e;break;case 0:u=e,s.sheetRows&&s.sheetRows<=u.r&&(S=!0),v=ia(p=u.r),s["!row"]=u.r,(e.hidden||e.hpt||null!=e.level)&&(e.hpt&&(e.hpx=_l(e.hpt)),j[e.r]=e);break;case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 13:case 14:case 15:case 16:case 17:case 18:case 62:switch(d={t:e[2]},e[2]){case"n":d.v=e[1];break;case"s":g=fu[e[1]],d.v=g.t,d.r=g.r;break;case"b":d.v=!!e[1];break;case"e":d.v=e[1],!1!==s.cellText&&(d.w=ri[d.v]);break;case"str":d.t="s",d.v=e[1];break;case"is":d.t="s",d.v=e[1].t}if((f=i.CellXf[e[0].iStyleRef])&&bu(d,f.numFmtId,null,s,a,i,_>0),h=-1==e[0].c?h+1:e[0].c,s.dense?(c["!data"][p]||(c["!data"][p]=[]),c["!data"][p][h]=d):c[la(h)+v]=d,s.cellFormula){for(C=!1,k=0;k<I.length;++k){var N=I[k];u.r>=N[0].s.r&&u.r<=N[0].e.r&&h>=N[0].s.c&&h<=N[0].e.c&&(d.F=fa(N[0]),C=!0)}!C&&e.length>3&&(d.f=e[3])}if(b.s.r>u.r&&(b.s.r=u.r),b.s.c>h&&(b.s.c=h),b.e.r<u.r&&(b.e.r=u.r),b.e.c<h&&(b.e.c=h),s.cellDates&&f&&"n"==d.t&&$t(Dt[f.numFmtId])){var L=Pt(d.v+_);L&&(d.t="d",d.v=new Date(Date.UTC(L.y,L.m-1,L.d,L.H,L.M,L.S,L.u)))}O&&("XLDAPR"==O.type&&(d.D=!0),O=void 0),M&&(M=void 0);break;case 1:case 12:if(!s.sheetStubs||x)break;d={t:"z",v:void 0},h=-1==e[0].c?h+1:e[0].c,s.dense?(c["!data"][p]||(c["!data"][p]=[]),c["!data"][p][h]=d):c[la(h)+v]=d,b.s.r>u.r&&(b.s.r=u.r),b.s.c>h&&(b.s.c=h),b.e.r<u.r&&(b.e.r=u.r),b.e.c<h&&(b.e.c=h),O&&("XLDAPR"==O.type&&(d.D=!0),O=void 0),M&&(M=void 0);break;case 176:A.push(e);break;case 49:O=((s.xlmeta||{}).Cell||[])[e-1];break;case 494:var U=n["!id"][e.relId];for(U?(e.Target=U.Target,e.loc&&(e.Target+="#"+e.loc),e.Rel=U):""==e.relId&&(e.Target="#"+e.loc),p=e.rfx.s.r;p<=e.rfx.e.r;++p)for(h=e.rfx.s.c;h<=e.rfx.e.c;++h)s.dense?(c["!data"][p]||(c["!data"][p]=[]),c["!data"][p][h]||(c["!data"][p][h]={t:"z",v:void 0}),c["!data"][p][h].l=e):(m=la(h)+ia(p),c[m]||(c[m]={t:"z",v:void 0}),c[m].l=e);break;case 426:if(!s.cellFormula)break;I.push(e),(y=s.dense?c["!data"][p][h]:c[la(h)+v]).f=Qc(e[1],0,{r:u.r,c:h},D,s),y.F=fa(e[0]);break;case 427:if(!s.cellFormula)break;E[ua(e[0].s)]=e[1],(y=s.dense?c["!data"][p][h]:c[la(h)+v]).f=Qc(e[1],0,{r:u.r,c:h},D,s);break;case 60:if(!s.cellStyles)break;for(;e.e>=e.s;)P[e.e--]={width:e.w/256,hidden:!!(1&e.flags),level:e.level},R||(R=!0,Ml(e.w/256)),Pl(P[e.e+1]);break;case 551:e&&(c["!legrel"]=e);break;case 161:c["!autofilter"]={ref:fa(e)};break;case 476:c["!margins"]=e;break;case 147:o.Sheets[r]||(o.Sheets[r]={}),e.name&&(o.Sheets[r].CodeName=e.name),(e.above||e.left)&&(c["!outline"]={above:e.above,left:e.left});break;case 137:o.Views||(o.Views=[{}]),o.Views[0]||(o.Views[0]={}),e.RTL&&(o.Views[0].RTL=!0);break;case 485:case 64:case 1053:case 151:case 152:case 175:case 644:case 625:case 562:case 396:case 1112:case 1146:case 471:case 1050:case 649:case 1105:case 589:case 607:case 564:case 1055:case 168:case 174:case 1180:case 499:case 507:case 550:case 171:case 167:case 1177:case 169:case 1181:case 552:case 661:case 639:case 478:case 537:case 477:case 536:case 1103:case 680:case 1104:case 1024:case 663:case 535:case 678:case 504:case 1043:case 428:case 170:case 3072:case 50:case 2070:case 1045:break;case 35:x=!0;break;case 36:x=!1;break;case 37:w.push(T),x=!0;break;case 38:w.pop(),x=!1;break;default:if(t.T);else if(!x||s.WTF)throw new Error("Unexpected record 0x"+T.toString(16))}}),s),delete s.supbooks,delete s["!row"],!c["!ref"]&&(b.s.r<2e6||l&&(l.e.r>0||l.e.c>0||l.s.r>0||l.s.c>0))&&(c["!ref"]=fa(l||b)),s.sheetRows&&c["!ref"]){var N=ma(c["!ref"]);s.sheetRows<=+N.e.r&&(N.e.r=s.sheetRows-1,N.e.r>b.e.r&&(N.e.r=b.e.r),N.e.r<N.s.r&&(N.s.r=N.e.r),N.e.c>b.e.c&&(N.e.c=b.e.c),N.e.c<N.s.c&&(N.s.c=N.e.c),c["!fullref"]=c["!ref"],c["!ref"]=fa(N))}return A.length>0&&(c["!merges"]=A),P.length>0&&(c["!cols"]=P),j.length>0&&(c["!rows"]=j),n["!id"][c["!legrel"]]&&(c["!legdrawel"]=n["!id"][c["!legrel"]]),c}(e,n,r,o,a,i,s):Du(e,n,r,o,a,i,s)}function yd(e,t,r,n,o,a,i,s){return".bin"===t.slice(-4)?function(e,t,r,n,o){if(!e)return e;n||(n={"!id":{}});var a={"!type":"chart","!drawel":null,"!rel":""},i=[],s=!1;return $o(e,(function(e,n,l){switch(l){case 550:a["!rel"]=e;break;case 651:o.Sheets[r]||(o.Sheets[r]={}),e.name&&(o.Sheets[r].CodeName=e.name);break;case 562:case 652:case 669:case 679:case 551:case 552:case 476:case 3072:break;case 35:s=!0;break;case 36:s=!1;break;case 37:i.push(l);break;case 38:i.pop();break;default:if(n.T>0)i.push(l);else if(n.T<0)i.pop();else if(!s||t.WTF)throw new Error("Unexpected record 0x"+l.toString(16))}}),t),n["!id"][a["!rel"]]&&(a["!drawel"]=n["!id"][a["!rel"]]),a}(e,n,r,o,a):function(e,t,r,n,o){if(!e)return e;n||(n={"!id":{}});var a,i={"!type":"chart","!drawel":null,"!rel":""},s=e.match(Eu);return s&&Tu(s[0],0,o,r),(a=e.match(/drawing r:id="(.*?)"/))&&(i["!rel"]=a[1]),n["!id"][i["!rel"]]&&(i["!drawel"]=n["!id"][i["!rel"]]),i}(e,0,r,o,a)}function bd(e,t,r,n){return".bin"===t.slice(-4)?function(e,t,r){var n={NumberFmt:[]};for(var o in Dt)n.NumberFmt[o]=Dt[o];n.CellXf=[],n.Fonts=[];var a=[],i=!1;return $o(e,(function(e,o,s){switch(s){case 44:n.NumberFmt[e[0]]=e[1],cr(e[1],e[0]);break;case 43:n.Fonts.push(e),null!=e.color.theme&&t&&t.themeElements&&t.themeElements.clrScheme&&(e.color.rgb=Cl(t.themeElements.clrScheme[e.color.theme].rgb,e.color.tint||0));break;case 1025:case 45:case 46:case 48:case 507:case 572:case 475:case 1171:case 2102:case 1130:case 512:case 2095:case 3072:break;case 47:617==a[a.length-1]&&n.CellXf.push(e);break;case 35:i=!0;break;case 36:i=!1;break;case 37:a.push(s),i=!0;break;case 38:a.pop(),i=!1;break;default:if(o.T>0)a.push(s);else if(o.T<0)a.pop();else if(!i||r.WTF&&37!=a[a.length-1])throw new Error("Unexpected record 0x"+s.toString(16))}})),n}(e,r,n):Bl(e,r,n)}function wd(e,t,r){return".bin"===t.slice(-4)?function(e,t){var r=[],n=!1;return $o(e,(function(e,o,a){switch(a){case 159:r.Count=e[0],r.Unique=e[1];break;case 19:r.push(e);break;case 160:return!0;case 35:n=!0;break;case 36:n=!1;break;default:if(o.T,!n||t.WTF)throw new Error("Unexpected record 0x"+a.toString(16))}})),r}(e,r):function(e,t){var r=[],n="";if(!e)return r;var o=Zr(e,"sst");if(o){n=o[1].replace(ol,"").split(al);for(var a=0;a!=n.length;++a){var i=nl(n[a].trim(),t);null!=i&&(r[r.length]=i)}o=gn(o[0].slice(0,o[0].indexOf(">"))),r.Count=o.count,r.Unique=o.uniqueCount}return r}(e,r)}function xd(e,t,r){return".bin"===t.slice(-4)?function(e,t){var r=[],n=[],o={},a=!1;return $o(e,(function(e,i,s){switch(s){case 632:n.push(e);break;case 635:o=e;break;case 637:o.t=e.t,o.h=e.h,o.r=e.r;break;case 636:if(o.author=n[o.iauthor],delete o.iauthor,t.sheetRows&&o.rfx&&t.sheetRows<=o.rfx.r)break;o.t||(o.t=""),delete o.rfx,r.push(o);break;case 3072:case 37:case 38:break;case 35:a=!0;break;case 36:a=!1;break;default:if(i.T);else if(!a||t.WTF)throw new Error("Unexpected record 0x"+s.toString(16))}})),r}(e,r):function(e,t){if(e.match(/<(?:\w+:)?comments *\/>/))return[];var r=[],n=[],o=Zr(e,"authors");o&&o[1]&&o[1].split(/<\/\w*:?author>/).forEach((function(e){if(""!==e&&""!==e.trim()){var t=e.match(/<(?:\w+:)?author[^<>]*>(.*)/);t&&r.push(t[1])}}));var a=Zr(e,"commentList");return a&&a[1]&&a[1].split(/<\/\w*:?comment>/).forEach((function(e){if(""!==e&&""!==e.trim()){var o=e.match(/<(?:\w+:)?comment[^<>]*>/);if(o){var a=gn(o[0]),i={author:a.authorId&&r[a.authorId]||"sheetjsghost",ref:a.ref,guid:a.guid},s=ca(a.ref);if(!(t.sheetRows&&t.sheetRows<=s.r)){var l=Zr(e,"text"),c=!!l&&!!l[1]&&nl(l[1])||{r:"",t:"",h:""};i.r=c.r,"<t></t>"==c.r&&(c.t=c.h=""),i.t=(c.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n"),t.cellHTML&&(i.h=c.h),n.push(i)}}}})),n}(e,r)}function Sd(e,t,r){return".bin"===t.slice(-4)?function(e){var t=[];return $o(e,(function(e,r,n){if(63===n)t.push(e);else if(!r.T)throw new Error("Unexpected record 0x"+n.toString(16))})),t}(e):function(e){var t=[];if(!e)return t;var r=1;return(e.match(pn)||[]).forEach((function(e){var n=gn(e);switch(n[0]){case"<?xml":case"<calcChain":case"<calcChain>":case"</calcChain>":break;case"<c":delete n[0],n.i?r=n.i:n.i=r,t.push(n)}})),t}(e)}function Ad(e,t,r,n){if(".bin"===r.slice(-4))return function(e,t,r,n){if(!e)return e;var o=n||{},a=!1;$o(e,(function(e,t,r){switch(r){case 359:case 363:case 364:case 366:case 367:case 368:case 369:case 370:case 371:case 472:case 577:case 578:case 579:case 580:case 581:case 582:case 583:case 584:case 585:case 586:case 587:break;case 35:a=!0;break;case 36:a=!1;break;default:if(t.T);else if(!a||o.WTF)throw new Error("Unexpected record 0x"+r.toString(16))}}),o)}(e,0,0,n)}function kd(e,t,r){return".bin"===t.slice(-4)?function(e,t,r){var n={Types:[],Cell:[],Value:[]},o=r||{},a=[],i=!1,s=2;return $o(e,(function(e,t,r){switch(r){case 335:n.Types.push({name:e.name});break;case 51:e.forEach((function(e){1==s?n.Cell.push({type:n.Types[e[0]-1].name,index:e[1]}):0==s&&n.Value.push({type:n.Types[e[0]-1].name,index:e[1]})}));break;case 337:s=e?1:0;break;case 338:s=2;break;case 35:a.push(r),i=!0;break;case 36:a.pop(),i=!1;break;default:if(t.T);else if(!i||o.WTF&&35!=a[a.length-1])throw new Error("Unexpected record 0x"+r.toString(16))}})),n}(e,0,r):function(e,t,r){var n={Types:[],Cell:[],Value:[]};if(!e)return n;var o,a=!1,i=2;return e.replace(pn,(function(e){var t=gn(e);switch(yn(t[0])){case"<?xml":case"<metadata":case"</metadata>":case"<metadataTypes":case"</metadataTypes>":case"</metadataType>":case"</futureMetadata>":case"<bk>":case"</bk>":case"</rc>":case"<extLst":case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<metadataType":n.Types.push({name:t.name});break;case"<futureMetadata":for(var s=0;s<n.Types.length;++s)n.Types[s].name==t.name&&(o=n.Types[s]);break;case"<rc":1==i?n.Cell.push({type:n.Types[t.t-1].name,index:+t.v}):0==i&&n.Value.push({type:n.Types[t.t-1].name,index:+t.v});break;case"<cellMetadata":i=1;break;case"</cellMetadata>":case"</valueMetadata>":i=2;break;case"<valueMetadata":i=0;break;case"<ext":a=!0;break;case"</ext>":a=!1;break;case"<rvb":if(!o)break;o.offsets||(o.offsets=[]),o.offsets.push(+t.i);break;default:if(!a&&(null==r?void 0:r.WTF))throw new Error("unrecognized "+t[0]+" in metadata")}return e})),n}(e,0,r)}var Cd,Id=/\b((?:\w+:)?[\w]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g,Ed=/\b((?:\w+:)?[\w]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;function Dd(e,t){var r=e.split(/\s+/),n=[];if(t||(n[0]=r[0]),1===r.length)return n;var o,a,i,s=e.match(Id);if(s)for(i=0;i!=s.length;++i)-1===(a=(o=s[i].match(Ed))[1].indexOf(":"))?n[o[1]]=o[2].slice(1,o[2].length-1):n["xmlns:"===o[1].slice(0,6)?"xmlns"+o[1].slice(6):o[1].slice(a+1)]=o[2].slice(1,o[2].length-1);return n}function Td(e){var t={};if(1===e.split(/\s+/).length)return t;var r,n,o,a=e.match(Id);if(a)for(o=0;o!=a.length;++o)-1===(n=(r=a[o].match(Ed))[1].indexOf(":"))?t[r[1]]=r[2].slice(1,r[2].length-1):t["xmlns:"===r[1].slice(0,6)?"xmlns"+r[1].slice(6):r[1].slice(n+1)]=r[2].slice(1,r[2].length-1);return t}function Od(e,t,r,n){var o=n;switch((r[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":o=Tn(n);break;case"i2":case"int":o=parseInt(n,10);break;case"r4":case"float":o=parseFloat(n);break;case"date":case"dateTime.tz":o=Dr(n);break;case"i8":case"string":case"fixed":case"uuid":case"bin.base64":break;default:throw new Error("bad custprop:"+r[0])}e[xn(t)]=o}function Md(e,t,r,n){if("z"!==e.t){if(!r||!1!==r.cellText)try{"e"===e.t?e.w=e.w||ri[e.v]:"General"===t?"n"===e.t?(0|e.v)===e.v?e.w=e.v.toString(10):e.w=Rt(e.v):e.w=_t(e.v):e.w=function(e,t,r){var n=Cd[e]||xn(e);return"General"===n?_t(t):rr(n,t,{date1904:!!r})}(t||"General",e.v,n)}catch(o6){if(r.WTF)throw o6}try{var o=Cd[t]||t||"General";if(r.cellNF&&(e.z=o),r.cellDates&&"n"==e.t&&$t(o)){var a=Pt(e.v+(n?1462:0));a&&(e.t="d",e.v=new Date(Date.UTC(a.y,a.m-1,a.d,a.H,a.M,a.S,a.u)))}}catch(o6){if(r.WTF)throw o6}}}function Pd(e,t,r){if(r.cellStyles&&t.Interior){var n=t.Interior;n.Pattern&&(n.patternType=Nl[n.Pattern]||n.Pattern)}e[t.ID]=t}function jd(e,t,r,n,o,a,i,s,l,c,u){var d="General",f=n.StyleID,p={};c=c||{};var h=[],m=0;for(void 0===f&&s&&(f=s.StyleID),void 0===f&&i&&(f=i.StyleID);void 0!==a[f];){var g=a[f];if(g.nf&&(d=g.nf),g.Interior&&h.push(g.Interior),!g.Parent)break;f=g.Parent}switch(r.Type){case"Boolean":n.t="b",n.v=Tn(e);break;case"String":n.t="s",n.r=Dn(xn(e)),n.v=e.indexOf("<")>-1?xn(t||e).replace(/<[^<>]*>/g,""):n.r;break;case"DateTime":"Z"!=e.slice(-1)&&(e+="Z"),n.v=Sr(Dr(e,u),u),n.v!==n.v&&(n.v=xn(e)),d&&"General"!=d||(d="yyyy-mm-dd");case"Number":void 0===n.v&&(n.v=+e),n.t||(n.t="n");break;case"Error":n.t="e",n.v=ni[e],!1!==c.cellText&&(n.w=e);break;default:""==e&&""==t?n.t="z":(n.t="s",n.v=Dn(t||e))}if(Md(n,d,c,u),!1!==c.cellFormula)if(n.Formula){var v=xn(n.Formula);61==v.charCodeAt(0)&&(v=v.slice(1)),n.f=gc(v,o),delete n.Formula,"RC"==n.ArrayRange?n.F=gc("RC:RC",o):n.ArrayRange&&(n.F=gc(n.ArrayRange,o),l.push([ma(n.F),n.F]))}else for(m=0;m<l.length;++m)o.r>=l[m][0].s.r&&o.r<=l[m][0].e.r&&o.c>=l[m][0].s.c&&o.c<=l[m][0].e.c&&(n.F=l[m][1]);c.cellStyles&&(h.forEach((function(e){!p.patternType&&e.patternType&&(p.patternType=e.patternType)})),n.s=p),void 0!==n.StyleID&&(n.ixfe=n.StyleID)}function Rd(e){e.t=e.v||"",e.t=e.t.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),e.v=e.w=e.ixfe=void 0}function _d(e,t){var r=t||{};ar();var n=et(Vn(e));"binary"!=r.type&&"array"!=r.type&&"base64"!=r.type||(n="undefined"!==typeof Be?Be.utils.decode(65001,Je(n)):Rn(n));var o,a=n.slice(0,1024).toLowerCase(),i=!1;if((1023&(a=a.replace(/".*?"/g,"")).indexOf(">"))>Math.min(1023&a.indexOf(","),1023&a.indexOf(";"))){var s=Or(r);return s.type="string",Js.to_workbook(n,s)}if(-1==a.indexOf("<?xml")&&["html","table","head","meta","script","style","div"].forEach((function(e){a.indexOf("<"+e)>=0&&(i=!0)})),i)return function(e,t){var r=Xr(e,"table");if(!r||0==r.length)throw new Error("Invalid HTML: could not find <table>");if(1==r.length){var n=ya(wf(r[0],t),t);return n.bookType="html",n}var o=lh();return r.forEach((function(e,r){ch(o,wf(e,t),"Sheet"+(r+1))})),o.bookType="html",o}(n,r);Cd={"General Number":"General","General Date":Dt[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":Dt[15],"Short Date":Dt[14],"Long Time":Dt[19],"Medium Time":Dt[18],"Short Time":Dt[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:Dt[2],Standard:Dt[4],Percent:Dt[10],Scientific:Dt[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var l,c=[];var u={},d=[],f={},p="";r.dense&&(f["!data"]=[]);var h,m={},g={},v=Dd('<Data ss:Type="String">'),y=0,b=0,w=0,x={s:{r:2e6,c:2e6},e:{r:0,c:0}},S={},A={},k="",C=0,I=[],E={},D={},T=0,O=[],M=[],P={},j=[],R=!1,_=[],N=[],L={},U=0,B=0,F={Sheets:[],WBProps:{date1904:!1}},z={};Gn.lastIndex=0,n=Yr(n,"\x3c!--","--\x3e");for(var W,H="";o=Gn.exec(n);)switch(o[3]=(H=o[3]).toLowerCase()){case"data":if("data"==H){if("/"===o[1]){if((l=c.pop())[0]!==o[3])throw new Error("Bad state: "+l.join("|"))}else"/"!==o[0].charAt(o[0].length-2)&&c.push([o[3],!0]);break}if(c[c.length-1][1])break;"/"===o[1]?jd(n.slice(y,o.index),k,v,"comment"==c[c.length-1][0]?P:m,{c:b,r:w},S,j[b],g,_,r,F.WBProps.date1904):(k="",v=Dd(o[0]),y=o.index+o[0].length);break;case"cell":if("/"===o[1])if(M.length>0&&(m.c=M),(!r.sheetRows||r.sheetRows>w)&&void 0!==m.v&&(r.dense?(f["!data"][w]||(f["!data"][w]=[]),f["!data"][w][b]=m):f[la(b)+ia(w)]=m),m.HRef&&(m.l={Target:xn(m.HRef)},m.HRefScreenTip&&(m.l.Tooltip=m.HRefScreenTip),delete m.HRef,delete m.HRefScreenTip),(m.MergeAcross||m.MergeDown)&&(U=b+(0|parseInt(m.MergeAcross,10)),B=w+(0|parseInt(m.MergeDown,10)),(U>b||B>w)&&I.push({s:{c:b,r:w},e:{c:U,r:B}})),r.sheetStubs)if(m.MergeAcross||m.MergeDown){for(var Y=b;Y<=U;++Y)for(var V=w;V<=B;++V)(Y>b||V>w)&&(r.dense?(f["!data"][V]||(f["!data"][V]=[]),f["!data"][V][Y]={t:"z"}):f[la(Y)+ia(V)]={t:"z"});b=U+1}else++b;else m.MergeAcross?b=U+1:++b;else(m=Td(o[0])).Index&&(b=+m.Index-1),b<x.s.c&&(x.s.c=b),b>x.e.c&&(x.e.c=b),"/>"===o[0].slice(-2)&&++b,M=[];break;case"row":"/"===o[1]||"/>"===o[0].slice(-2)?(w<x.s.r&&(x.s.r=w),w>x.e.r&&(x.e.r=w),"/>"===o[0].slice(-2)&&(g=Dd(o[0])).Index&&(w=+g.Index-1),b=0,++w):((g=Dd(o[0])).Index&&(w=+g.Index-1),L={},("0"==g.AutoFitHeight||g.Height)&&(L.hpx=parseInt(g.Height,10),L.hpt=Rl(L.hpx),N[w]=L),"1"==g.Hidden&&(L.hidden=!0,N[w]=L));break;case"worksheet":if("/"===o[1]){if((l=c.pop())[0]!==o[3])throw new Error("Bad state: "+l.join("|"));d.push(p),x.s.r<=x.e.r&&x.s.c<=x.e.c&&(f["!ref"]=fa(x),r.sheetRows&&r.sheetRows<=x.e.r&&(f["!fullref"]=f["!ref"],x.e.r=r.sheetRows-1,f["!ref"]=fa(x))),I.length&&(f["!merges"]=I),j.length>0&&(f["!cols"]=j),N.length>0&&(f["!rows"]=N),u[p]=f}else x={s:{r:2e6,c:2e6},e:{r:0,c:0}},w=b=0,c.push([o[3],!1]),l=Dd(o[0]),p=xn(l.Name),f={},r.dense&&(f["!data"]=[]),I=[],_=[],N=[],z={name:p,Hidden:0},F.Sheets.push(z);break;case"table":if("/"===o[1]){if((l=c.pop())[0]!==o[3])throw new Error("Bad state: "+l.join("|"))}else{if("/>"==o[0].slice(-2))break;c.push([o[3],!1]),j=[],R=!1}break;case"style":"/"===o[1]?Pd(S,A,r):A=Dd(o[0]);break;case"numberformat":A.nf=xn(Dd(o[0]).Format||"General"),Cd[A.nf]&&(A.nf=Cd[A.nf]);for(var G=0;392!=G&&Dt[G]!=A.nf;++G);if(392==G)for(G=57;392!=G;++G)if(null==Dt[G]){cr(A.nf,G);break}break;case"column":if("table"!==c[c.length-1][0])break;if("/"===o[1])break;if((h=Dd(o[0])).Hidden&&(h.hidden=!0,delete h.Hidden),h.Width&&(h.wpx=parseInt(h.Width,10)),!R&&h.wpx>10){R=!0,Il=6;for(var Z=0;Z<j.length;++Z)j[Z]&&Pl(j[Z])}R&&Pl(h),j[h.Index-1||j.length]=h;for(var Q=0;Q<+h.Span;++Q)j[j.length]=Or(h);break;case"namedrange":if("/"===o[1])break;F.Names||(F.Names=[]);var K=gn(o[0]),X={Name:(W=K.Name,oi.indexOf("_xlnm."+W)>-1?"_xlnm."+W:W),Ref:gc(K.RefersTo.slice(1),{r:0,c:0})};F.Sheets.length>0&&(X.Sheet=F.Sheets.length-1),F.Names.push(X);break;case"namedcell":case"b":case"i":case"u":case"s":case"em":case"h2":case"h3":case"sub":case"sup":case"span":case"alignment":case"borders":case"border":case"protection":case"paragraphs":case"name":case"pixelsperinch":case"null":break;case"font":if("/>"===o[0].slice(-2))break;"/"===o[1]?k+=n.slice(C,o.index):C=o.index+o[0].length;break;case"interior":if(!r.cellStyles)break;A.Interior=Dd(o[0]);break;case"author":case"title":case"description":case"created":case"keywords":case"subject":case"category":case"company":case"lastauthor":case"lastsaved":case"lastprinted":case"version":case"revision":case"totaltime":case"hyperlinkbase":case"manager":case"contentstatus":case"identifier":case"language":case"appname":if("/>"===o[0].slice(-2))break;"/"===o[1]?Ei(E,H,n.slice(T,o.index)):T=o.index+o[0].length;break;case"styles":case"workbook":if("/"===o[1]){if((l=c.pop())[0]!==o[3])throw new Error("Bad state: "+l.join("|"))}else c.push([o[3],!1]);break;case"comment":if("/"===o[1]){if((l=c.pop())[0]!==o[3])throw new Error("Bad state: "+l.join("|"));Rd(P),M.push(P)}else c.push([o[3],!1]),Tn((l=Dd(o[0])).ShowAlways||"0")||(M.hidden=!0),P={a:l.Author};break;case"autofilter":if("/"===o[1]){if((l=c.pop())[0]!==o[3])throw new Error("Bad state: "+l.join("|"))}else if("/"!==o[0].charAt(o[0].length-2)){var J=Dd(o[0]);f["!autofilter"]={ref:gc(J.Range).replace(/\$/g,"")},c.push([o[3],!0])}break;case"datavalidation":if("/"===o[1]){if((l=c.pop())[0]!==o[3])throw new Error("Bad state: "+l.join("|"))}else"/"!==o[0].charAt(o[0].length-2)&&c.push([o[3],!0]);break;case"componentoptions":case"documentproperties":case"customdocumentproperties":case"officedocumentsettings":case"pivottable":case"pivotcache":case"names":case"mapinfo":case"pagebreaks":case"querytable":case"sorting":case"schema":case"conditionalformatting":case"smarttagtype":case"smarttags":case"excelworkbook":case"workbookoptions":case"worksheetoptions":if("/"===o[1]){if((l=c.pop())[0]!==o[3])throw new Error("Bad state: "+l.join("|"))}else"/"!==o[0].charAt(o[0].length-2)&&c.push([o[3],!0]);break;default:if(0==c.length&&"document"==o[3])return jf(n,r);if(0==c.length&&"uof"==o[3])return jf(n,r);var $=!0;switch(c[c.length-1][0]){case"officedocumentsettings":switch(o[3]){case"allowpng":case"removepersonalinformation":case"downloadcomponents":case"locationofcomponents":case"colors":case"color":case"index":case"rgb":case"targetscreensize":case"readonlyrecommended":break;default:$=!1}break;case"componentoptions":switch(o[3]){case"toolbar":case"hideofficelogo":case"spreadsheetautofit":case"label":case"caption":case"maxheight":case"maxwidth":case"nextsheetnumber":break;default:$=!1}break;case"excelworkbook":switch(o[3]){case"date1904":F.WBProps.date1904=!0;break;case"hidehorizontalscrollbar":case"hideverticalscrollbar":case"hideworkbooktabs":case"windowheight":case"windowwidth":case"windowtopx":case"windowtopy":case"tabratio":case"protectstructure":case"protectwindow":case"protectwindows":case"activesheet":case"displayinknotes":case"firstvisiblesheet":case"supbook":case"sheetname":case"sheetindex":case"sheetindexfirst":case"sheetindexlast":case"dll":case"acceptlabelsinformulas":case"donotsavelinkvalues":case"iteration":case"maxiterations":case"maxchange":case"path":case"xct":case"count":case"selectedsheets":case"calculation":case"uncalced":case"startupprompt":case"crn":case"externname":case"formula":case"colfirst":case"collast":case"wantadvise":case"boolean":case"error":case"text":case"ole":case"noautorecover":case"publishobjects":case"donotcalculatebeforesave":case"number":case"refmoder1c1":case"embedsavesmarttags":break;default:$=!1}break;case"workbookoptions":switch(o[3]){case"owcversion":case"height":case"width":break;default:$=!1}break;case"worksheetoptions":switch(o[3]){case"visible":if("/>"===o[0].slice(-2));else if("/"===o[1])switch(n.slice(T,o.index)){case"SheetHidden":z.Hidden=1;break;case"SheetVeryHidden":z.Hidden=2}else T=o.index+o[0].length;break;case"header":f["!margins"]||vu(f["!margins"]={},"xlml"),isNaN(+gn(o[0]).Margin)||(f["!margins"].header=+gn(o[0]).Margin);break;case"footer":f["!margins"]||vu(f["!margins"]={},"xlml"),isNaN(+gn(o[0]).Margin)||(f["!margins"].footer=+gn(o[0]).Margin);break;case"pagemargins":var q=gn(o[0]);f["!margins"]||vu(f["!margins"]={},"xlml"),isNaN(+q.Top)||(f["!margins"].top=+q.Top),isNaN(+q.Left)||(f["!margins"].left=+q.Left),isNaN(+q.Right)||(f["!margins"].right=+q.Right),isNaN(+q.Bottom)||(f["!margins"].bottom=+q.Bottom);break;case"displayrighttoleft":F.Views||(F.Views=[]),F.Views[0]||(F.Views[0]={}),F.Views[0].RTL=!0;break;case"freezepanes":case"frozennosplit":case"splithorizontal":case"splitvertical":case"donotdisplaygridlines":case"activerow":case"activecol":case"toprowbottompane":case"leftcolumnrightpane":case"unsynced":case"print":case"printerrors":case"panes":case"scale":case"pane":case"number":case"layout":case"pagesetup":case"selected":case"protectobjects":case"enableselection":case"protectscenarios":case"validprinterinfo":case"horizontalresolution":case"verticalresolution":case"numberofcopies":case"activepane":case"toprowvisible":case"leftcolumnvisible":case"fittopage":case"rangeselection":case"papersizeindex":case"pagelayoutzoom":case"pagebreakzoom":case"filteron":case"fitwidth":case"fitheight":case"commentslayout":case"zoom":case"lefttoright":case"gridlines":case"allowsort":case"allowfilter":case"allowinsertrows":case"allowdeleterows":case"allowinsertcols":case"allowdeletecols":case"allowinserthyperlinks":case"allowformatcells":case"allowsizecols":case"allowsizerows":case"tabcolorindex":case"donotdisplayheadings":case"showpagelayoutzoom":case"blackandwhite":case"donotdisplayzeros":case"displaypagebreak":case"rowcolheadings":case"donotdisplayoutline":case"noorientation":case"allowusepivottables":case"zeroheight":case"viewablerange":case"selection":case"protectcontents":break;case"nosummaryrowsbelowdetail":f["!outline"]||(f["!outline"]={}),f["!outline"].above=!0;break;case"nosummarycolumnsrightdetail":f["!outline"]||(f["!outline"]={}),f["!outline"].left=!0;break;default:$=!1}break;case"pivottable":case"pivotcache":switch(o[3]){case"immediateitemsondrop":case"showpagemultipleitemlabel":case"compactrowindent":case"location":case"pivotfield":case"orientation":case"layoutform":case"layoutsubtotallocation":case"layoutcompactrow":case"position":case"pivotitem":case"datatype":case"datafield":case"sourcename":case"parentfield":case"ptlineitems":case"ptlineitem":case"countofsameitems":case"item":case"itemtype":case"ptsource":case"cacheindex":case"consolidationreference":case"filename":case"reference":case"nocolumngrand":case"norowgrand":case"blanklineafteritems":case"hidden":case"subtotal":case"basefield":case"mapchilditems":case"function":case"refreshonfileopen":case"printsettitles":case"mergelabels":case"defaultversion":case"refreshname":case"refreshdate":case"refreshdatecopy":case"versionlastrefresh":case"versionlastupdate":case"versionupdateablemin":case"versionrefreshablemin":case"calculation":break;default:$=!1}break;case"pagebreaks":switch(o[3]){case"colbreaks":case"colbreak":case"rowbreaks":case"rowbreak":case"colstart":case"colend":case"rowend":break;default:$=!1}break;case"autofilter":switch(o[3]){case"autofiltercolumn":case"autofiltercondition":case"autofilterand":case"autofilteror":break;default:$=!1}break;case"querytable":switch(o[3]){case"id":case"autoformatfont":case"autoformatpattern":case"querysource":case"querytype":case"enableredirections":case"refreshedinxl9":case"urlstring":case"htmltables":case"connection":case"commandtext":case"refreshinfo":case"notitles":case"nextid":case"columninfo":case"overwritecells":case"donotpromptforfile":case"textwizardsettings":case"source":case"number":case"decimal":case"thousandseparator":case"trailingminusnumbers":case"formatsettings":case"fieldtype":case"delimiters":case"tab":case"comma":case"autoformatname":case"versionlastedit":case"versionlastrefresh":break;default:$=!1}break;case"datavalidation":switch(o[3]){case"range":case"type":case"min":case"max":case"sort":case"descending":case"order":case"casesensitive":case"value":case"errorstyle":case"errormessage":case"errortitle":case"inputmessage":case"inputtitle":case"combohide":case"inputhide":case"condition":case"qualifier":case"useblank":case"value1":case"value2":case"format":case"cellrangelist":break;default:$=!1}break;case"sorting":case"conditionalformatting":switch(o[3]){case"range":case"type":case"min":case"max":case"sort":case"descending":case"order":case"casesensitive":case"value":case"errorstyle":case"errormessage":case"errortitle":case"cellrangelist":case"inputmessage":case"inputtitle":case"combohide":case"inputhide":case"condition":case"qualifier":case"useblank":case"value1":case"value2":case"format":break;default:$=!1}break;case"mapinfo":case"schema":case"data":switch(o[3]){case"map":case"entry":case"range":case"xpath":case"field":case"xsdtype":case"filteron":case"aggregate":case"elementtype":case"attributetype":case"schema":case"element":case"complextype":case"datatype":case"all":case"attribute":case"extends":case"row":break;default:$=!1}break;case"smarttags":break;default:$=!1}if($)break;if(o[3].match(/!\[CDATA/))break;if(!c[c.length-1][1])throw"Unrecognized tag: "+o[3]+"|"+c.join("|");if("customdocumentproperties"===c[c.length-1][0]){if("/>"===o[0].slice(-2))break;"/"===o[1]?Od(D,H,O,n.slice(T,o.index)):(O=o,T=o.index+o[0].length);break}if(r.WTF)throw"Unrecognized tag: "+o[3]+"|"+c.join("|")}var ee={};return r.bookSheets||r.bookProps||(ee.Sheets=u),ee.SheetNames=d,ee.Workbook=F,ee.SSF=Or(Dt),ee.Props=E,ee.Custprops=D,ee.bookType="xlml",ee}function Nd(e,t){switch(Pp(t=t||{}),t.type||"base64"){case"base64":return _d(it(e),t);case"binary":case"buffer":case"file":return _d(e,t);case"array":return _d(ht(e),t)}}function Ld(e,t){var r=[];return e.Props&&r.push(function(e,t){var r=[];return mr(Ii).map((function(e){for(var t=0;t<mi.length;++t)if(mi[t][1]==e)return mi[t];for(t=0;t<bi.length;++t)if(bi[t][1]==e)return bi[t];throw e})).forEach((function(n){if(null!=e[n[1]]){var o=t&&t.Props&&null!=t.Props[n[1]]?t.Props[n[1]]:e[n[1]];"date"===n[2]&&(o=new Date(o).toISOString().replace(/\.\d*Z/,"Z")),"number"==typeof o?o=String(o):!0===o||!1===o?o=o?"1":"0":o instanceof Date&&(o=new Date(o).toISOString().replace(/\.\d*Z/,"")),r.push(zn(Ii[n[1]]||n[1],o))}})),Hn("DocumentProperties",r.join(""),{xmlns:so})}(e.Props,t)),e.Custprops&&r.push(function(e,t){var r=["Worksheets","SheetNames"],n="CustomDocumentProperties",o=[];return e&&mr(e).forEach((function(t){if(Object.prototype.hasOwnProperty.call(e,t)){for(var n=0;n<mi.length;++n)if(t==mi[n][1])return;for(n=0;n<bi.length;++n)if(t==bi[n][1])return;for(n=0;n<r.length;++n)if(t==r[n])return;var a=e[t],i="string";"number"==typeof a?(i="float",a=String(a)):!0===a||!1===a?(i="boolean",a=a?"1":"0"):a=String(a),o.push(Hn(Cn(t),a,{"dt:dt":i}))}})),t&&mr(t).forEach((function(r){if(Object.prototype.hasOwnProperty.call(t,r)&&(!e||!Object.prototype.hasOwnProperty.call(e,r))){var n=t[r],a="string";"number"==typeof n?(a="float",n=String(n)):!0===n||!1===n?(a="boolean",n=n?"1":"0"):n instanceof Date?(a="dateTime.tz",n=n.toISOString()):n=String(n),o.push(Hn(Cn(r),n,{"dt:dt":a}))}})),"<"+n+' xmlns="'+so+'">'+o.join("")+"</"+n+">"}(e.Props,e.Custprops)),r.join("")}function Ud(e){return(((e||{}).Workbook||{}).WBProps||{}).date1904?'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"><Date1904/></ExcelWorkbook>':""}function Bd(e,t){var r=['<Style ss:ID="Default" ss:Name="Normal"><NumberFormat/></Style>'];return t.cellXfs.forEach((function(e,t){var n=[];n.push(Hn("NumberFormat",null,{"ss:Format":kn(Dt[e.numFmtId])}));var o={"ss:ID":"s"+(21+t)};r.push(Hn("Style",n.join(""),o))})),Hn("Styles",r.join(""))}function Fd(e){return Hn("NamedRange",null,{"ss:Name":"_xlnm."==e.Name.slice(0,6)?e.Name.slice(6):e.Name,"ss:RefersTo":"="+yc(e.Ref,{r:0,c:0})})}function zd(e){if(!((e||{}).Workbook||{}).Names)return"";for(var t=e.Workbook.Names,r=[],n=0;n<t.length;++n){var o=t[n];null==o.Sheet&&(o.Name.match(/^_xlfn\./)||r.push(Fd(o)))}return Hn("Names",r.join(""))}function Wd(e,t,r,n){if(!e)return"";if(!((n||{}).Workbook||{}).Names)return"";for(var o=n.Workbook.Names,a=[],i=0;i<o.length;++i){var s=o[i];s.Sheet==r&&(s.Name.match(/^_xlfn\./)||a.push(Fd(s)))}return a.join("")}function Hd(e,t,r,n){if(!e)return"";var o=[];if(e["!margins"]&&(o.push("<PageSetup>"),e["!margins"].header&&o.push(Hn("Header",null,{"x:Margin":e["!margins"].header})),e["!margins"].footer&&o.push(Hn("Footer",null,{"x:Margin":e["!margins"].footer})),o.push(Hn("PageMargins",null,{"x:Bottom":e["!margins"].bottom||"0.75","x:Left":e["!margins"].left||"0.7","x:Right":e["!margins"].right||"0.7","x:Top":e["!margins"].top||"0.75"})),o.push("</PageSetup>")),n&&n.Workbook&&n.Workbook.Sheets&&n.Workbook.Sheets[r])if(n.Workbook.Sheets[r].Hidden)o.push(Hn("Visible",1==n.Workbook.Sheets[r].Hidden?"SheetHidden":"SheetVeryHidden",{}));else{for(var a=0;a<r&&(!n.Workbook.Sheets[a]||n.Workbook.Sheets[a].Hidden);++a);a==r&&o.push("<Selected/>")}return((((n||{}).Workbook||{}).Views||[])[0]||{}).RTL&&o.push("<DisplayRightToLeft/>"),e["!protect"]&&(o.push(zn("ProtectContents","True")),e["!protect"].objects&&o.push(zn("ProtectObjects","True")),e["!protect"].scenarios&&o.push(zn("ProtectScenarios","True")),null==e["!protect"].selectLockedCells||e["!protect"].selectLockedCells?null==e["!protect"].selectUnlockedCells||e["!protect"].selectUnlockedCells||o.push(zn("EnableSelection","UnlockedCells")):o.push(zn("EnableSelection","NoSelection")),[["formatCells","AllowFormatCells"],["formatColumns","AllowSizeCols"],["formatRows","AllowSizeRows"],["insertColumns","AllowInsertCols"],["insertRows","AllowInsertRows"],["insertHyperlinks","AllowInsertHyperlinks"],["deleteColumns","AllowDeleteCols"],["deleteRows","AllowDeleteRows"],["sort","AllowSort"],["autoFilter","AllowFilter"],["pivotTables","AllowUsePivotTables"]].forEach((function(t){e["!protect"][t[0]]&&o.push("<"+t[1]+"/>")}))),0==o.length?"":Hn("WorksheetOptions",o.join(""),{xmlns:lo})}function Yd(e,t,r,n,o,a,i){if(!e||void 0==e.v&&void 0==e.f)return"";var s={};if(e.f&&(s["ss:Formula"]="="+kn(yc(e.f,i))),e.F&&e.F.slice(0,t.length)==t){var l=ca(e.F.slice(t.length+1));s["ss:ArrayRange"]="RC:R"+(l.r==i.r?"":"["+(l.r-i.r)+"]")+"C"+(l.c==i.c?"":"["+(l.c-i.c)+"]")}if(e.l&&e.l.Target&&(s["ss:HRef"]=kn(e.l.Target),e.l.Tooltip&&(s["x:HRefScreenTip"]=kn(e.l.Tooltip))),r["!merges"])for(var c=r["!merges"],u=0;u!=c.length;++u)c[u].s.c==i.c&&c[u].s.r==i.r&&(c[u].e.c>c[u].s.c&&(s["ss:MergeAcross"]=c[u].e.c-c[u].s.c),c[u].e.r>c[u].s.r&&(s["ss:MergeDown"]=c[u].e.r-c[u].s.r));var d="",f="";switch(e.t){case"z":if(!n.sheetStubs)return"";break;case"n":isFinite(e.v)?(d="Number",f=String(e.v)):(d="Error",f=ri[isNaN(e.v)?36:7]);break;case"b":d="Boolean",f=e.v?"1":"0";break;case"e":d="Error",f=ri[e.v];break;case"d":d="DateTime",f=new Date(e.v).toISOString(),null==e.z&&(e.z=e.z||Dt[14]);break;case"s":d="String",f=((e.v||"")+"").replace(Sn,(function(e){return wn[e]})).replace(In,(function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"}))}var p=yu(n.cellXfs,e,n);s["ss:StyleID"]="s"+(21+p),s["ss:Index"]=i.c+1;var h,m=null!=e.v?f:"",g="z"==e.t?"":'<Data ss:Type="'+d+'">'+m+"</Data>";return(e.c||[]).length>0&&(g+=(h=e.c).map((function(e){var t=Hn("ss:Data",(e.t||"").replace(/(\r\n|[\r\n])/g,"&#10;"),{xmlns:"http://www.w3.org/TR/REC-html40"}),r={};return e.a&&(r["ss:Author"]=e.a),h.hidden||(r["ss:ShowAlways"]="1"),Hn("Comment",t,r)})).join("")),Hn("Cell",g,s)}function Vd(e,t){var r='<Row ss:Index="'+(e+1)+'"';return t&&(t.hpt&&!t.hpx&&(t.hpx=_l(t.hpt)),t.hpx&&(r+=' ss:AutoFitHeight="0" ss:Height="'+t.hpx+'"'),t.hidden&&(r+=' ss:Hidden="1"')),r+">"}function Gd(e,t,r){var n=[],o=r.SheetNames[e],a=r.Sheets[o],i=a?Wd(a,0,e,r):"";return i.length>0&&n.push("<Names>"+i+"</Names>"),i=a?function(e,t){if(!e["!ref"])return"";var r=ma(e["!ref"]),n=e["!merges"]||[],o=0,a=[];e["!cols"]&&e["!cols"].forEach((function(e,t){Pl(e);var r=!!e.width,n=gu(t,e),o={"ss:Index":t+1};r&&(o["ss:Width"]=El(n.width)),e.hidden&&(o["ss:Hidden"]="1"),a.push(Hn("Column",null,o))}));for(var i=null!=e["!data"],s={r:0,c:0},l=r.s.r;l<=r.e.r;++l){var c=[Vd(l,(e["!rows"]||[])[l])];s.r=l;for(var u=r.s.c;u<=r.e.c;++u){s.c=u;var d=!1;for(o=0;o!=n.length;++o)if(!(n[o].s.c>u)&&!(n[o].s.r>l)&&!(n[o].e.c<u)&&!(n[o].e.r<l)){n[o].s.c==u&&n[o].s.r==l||(d=!0);break}if(!d){var f=la(u)+ia(l),p=i?(e["!data"][l]||[])[u]:e[f];c.push(Yd(p,f,e,t,0,0,s))}}c.push("</Row>"),c.length>2&&a.push(c.join(""))}return a.join("")}(a,t):"",i.length>0&&n.push("<Table>"+i+"</Table>"),n.push(Hd(a,0,e,r)),a&&a["!autofilter"]&&n.push('<AutoFilter x:Range="'+yc(pa(a["!autofilter"].ref),{r:0,c:0})+'" xmlns="urn:schemas-microsoft-com:office:excel"></AutoFilter>'),n.join("")}function Zd(e){var t={},r=e.content;if(r.l=28,t.AnsiUserType=r.read_shift(0,"lpstr-ansi"),t.AnsiClipboardFormat=function(e){return Za(e,1)}(r),r.length-r.l<=4)return t;var n=r.read_shift(4);return 0==n||n>40?t:(r.l-=4,t.Reserved1=r.read_shift(0,"lpstr-ansi"),r.length-r.l<=4||1907505652!==(n=r.read_shift(4))?t:(t.UnicodeClipboardFormat=function(e){return Za(e,2)}(r),0==(n=r.read_shift(4))||n>40?t:(r.l-=4,void(t.Reserved2=r.read_shift(0,"lpwstr")))))}var Qd=[60,1084,2066,2165,2175];function Kd(e,t,r,n,o){var a=n,i=[],s=r.slice(r.l,r.l+a);if(o&&o.enc&&o.enc.insitu&&s.length>0)switch(e){case 9:case 521:case 1033:case 2057:case 47:case 405:case 225:case 406:case 312:case 404:case 10:case 133:break;default:o.enc.insitu(s)}i.push(s),r.l+=a;for(var l=Uo(r,r.l),c=af[l],u=0;null!=c&&Qd.indexOf(l)>-1;)a=Uo(r,r.l+2),u=r.l+4,2066==l?u+=4:2165!=l&&2175!=l||(u+=12),s=r.slice(u,r.l+4+a),i.push(s),r.l+=4+a,c=af[l=Uo(r,r.l)];var d=gt(i);Ko(d,0);var f=0;d.lens=[];for(var p=0;p<i.length;++p)d.lens.push(f),f+=i[p].length;if(d.length<n)throw"XLS Record 0x"+e.toString(16)+" Truncated: "+d.length+" < "+n;return t.f(d,d.length,o)}function Xd(e,t,r){if("z"!==e.t&&e.XF){var n=0;try{n=e.z||e.XF.numFmtId||0,t.cellNF&&null==e.z&&(e.z=Dt[n])}catch(o6){if(t.WTF)throw o6}if(!t||!1!==t.cellText)try{"e"===e.t?e.w=e.w||ri[e.v]:0===n||"General"==n?"n"===e.t?(0|e.v)===e.v?e.w=e.v.toString(10):e.w=Rt(e.v):e.w=_t(e.v):e.w=rr(n,e.v,{date1904:!!r,dateNF:t&&t.dateNF})}catch(o6){if(t.WTF)throw o6}if(t.cellDates&&n&&"n"==e.t&&$t(Dt[n]||String(n))){var o=Pt(e.v+(r?1462:0));o&&(e.t="d",e.v=new Date(Date.UTC(o.y,o.m-1,o.d,o.H,o.M,o.S,o.u)))}}}function Jd(e,t,r){return{v:e,ixfe:t,t:r}}function $d(e,t){var r={opts:{}},n={};var o={};t.dense&&(o["!data"]=[]);var a,i,s,l,c,u,d,f,p={},h={},m=null,g=[],v="",y={},b="",w={},x=[],S=[],A=[],k={Sheets:[],WBProps:{date1904:!1},Views:[{}]},C={},I=!1,E=function(e){return e<8?ti[e]:e<64&&A[e-8]||ti[e]},D=function(e,t,r){if((I||!(U>1))&&!(r.sheetRows&&e.r>=r.sheetRows)){if(r.cellStyles&&t.XF&&t.XF.data&&function(e,t){var r,n=e.XF.data;n&&n.patternType&&t&&t.cellStyles&&(e.s={},e.s.patternType=n.patternType,(r=kl(E(n.icvFore)))&&(e.s.fgColor={rgb:r}),(r=kl(E(n.icvBack)))&&(e.s.bgColor={rgb:r}))}(t,r),delete t.ixfe,delete t.XF,a=e,b=ua(e),h&&h.s&&h.e||(h={s:{r:0,c:0},e:{r:0,c:0}}),e.r<h.s.r&&(h.s.r=e.r),e.c<h.s.c&&(h.s.c=e.c),e.r+1>h.e.r&&(h.e.r=e.r+1),e.c+1>h.e.c&&(h.e.c=e.c+1),r.cellFormula&&t.f)for(var n=0;n<x.length;++n)if(!(x[n][0].s.c>e.c||x[n][0].s.r>e.r)&&!(x[n][0].e.c<e.c||x[n][0].e.r<e.r)){t.F=fa(x[n][0]),x[n][0].s.c==e.c&&x[n][0].s.r==e.r||delete t.f,t.f&&(t.f=""+Qc(x[n][1],0,e,_,T));break}r.dense?(o["!data"][e.r]||(o["!data"][e.r]=[]),o["!data"][e.r][e.c]=t):o[b]=t}},T={enc:!1,sbcch:0,snames:[],sharedf:w,arrayf:x,rrtabid:[],lastuser:"",biff:8,codepage:0,winlocked:0,cellStyles:!!t&&!!t.cellStyles,WTF:!!t&&!!t.wtf};t.password&&(T.password=t.password);var O=[],M=[],P=[],j=[],R=!1,_=[];_.SheetNames=T.snames,_.sharedf=T.sharedf,_.arrayf=T.arrayf,_.names=[],_.XTI=[];var N,L=0,U=0,B=0,F=[],z=[];T.codepage=1200,Ke(1200);for(var W=!1;e.l<e.length-1;){var H=e.l,Y=e.read_shift(2);if(0===Y&&10===L)break;var V=e.l===e.length?0:e.read_shift(2),G=af[Y];if(0==U&&-1==[9,521,1033,2057].indexOf(Y))break;if(G&&G.f){if(t.bookSheets&&133===L&&133!==Y)break;if(L=Y,2===G.r||12==G.r){var Z=e.read_shift(2);if(V-=2,!T.enc&&Z!==Y&&((255&Z)<<8|Z>>8)!==Y)throw new Error("rt mismatch: "+Z+"!="+Y);12==G.r&&(e.l+=10,V-=10)}var Q={};if(Q=10===Y?G.f(e,V,T):Kd(Y,G,e,V,T),0==U&&-1===[9,521,1033,2057].indexOf(L))continue;switch(Y){case 34:r.opts.Date1904=k.WBProps.date1904=Q;break;case 134:r.opts.WriteProtect=!0;break;case 47:if(T.enc||(e.l=0),T.enc=Q,!t.password)throw new Error("File is password-protected");if(null==Q.valid)throw new Error("Encryption scheme unsupported");if(!Q.valid)throw new Error("Password is incorrect");break;case 92:T.lastuser=Q;break;case 66:var K=Number(Q);switch(K){case 21010:K=1200;break;case 32768:K=1e4;break;case 32769:K=1252}Ke(T.codepage=K),W=!0;break;case 317:T.rrtabid=Q;break;case 25:T.winlocked=Q;break;case 439:r.opts.RefreshAll=Q;break;case 12:r.opts.CalcCount=Q;break;case 16:r.opts.CalcDelta=Q;break;case 17:r.opts.CalcIter=Q;break;case 13:r.opts.CalcMode=Q;break;case 14:r.opts.CalcPrecision=Q;break;case 95:r.opts.CalcSaveRecalc=Q;break;case 15:T.CalcRefMode=Q;break;case 2211:r.opts.FullCalc=Q;break;case 129:Q.fDialog&&(o["!type"]="dialog"),Q.fBelow||((o["!outline"]||(o["!outline"]={})).above=!0),Q.fRight||((o["!outline"]||(o["!outline"]={})).left=!0);break;case 67:case 579:case 1091:case 224:S.push(Q);break;case 430:_.push([Q]),_[_.length-1].XTI=[];break;case 35:case 547:_[_.length-1].push(Q);break;case 24:case 536:N={Name:Q.Name,Ref:Qc(Q.rgce,0,null,_,T)},Q.itab>0&&(N.Sheet=Q.itab-1),_.names.push(N),_[0]||(_[0]=[],_[0].XTI=[]),_[_.length-1].push(Q),"_xlnm._FilterDatabase"==Q.Name&&Q.itab>0&&Q.rgce&&Q.rgce[0]&&Q.rgce[0][0]&&"PtgArea3d"==Q.rgce[0][0][0]&&(z[Q.itab-1]={ref:fa(Q.rgce[0][0][1][2])});break;case 22:T.ExternCount=Q;break;case 23:0==_.length&&(_[0]=[],_[0].XTI=[]),_[_.length-1].XTI=_[_.length-1].XTI.concat(Q),_.XTI=_.XTI.concat(Q);break;case 2196:if(T.biff<8)break;null!=N&&(N.Comment=Q[1]);break;case 18:o["!protect"]=Q;break;case 19:0!==Q&&T.WTF&&console.error("Password verifier: "+Q);break;case 133:p[4==T.biff?T.snames.length:Q.pos]=Q,T.snames.push(Q.name);break;case 10:if(--U?!I:I)break;if(h.e){if(h.e.r>0&&h.e.c>0){if(h.e.r--,h.e.c--,o["!ref"]=fa(h),t.sheetRows&&t.sheetRows<=h.e.r){var X=h.e.r;h.e.r=t.sheetRows-1,o["!fullref"]=o["!ref"],o["!ref"]=fa(h),h.e.r=X}h.e.r++,h.e.c++}O.length>0&&(o["!merges"]=O),M.length>0&&(o["!objects"]=M),P.length>0&&(o["!cols"]=P),j.length>0&&(o["!rows"]=j),k.Sheets.push(C)}""===v?y=o:n[v]=o,o={},t.dense&&(o["!data"]=[]);break;case 9:case 521:case 1033:case 2057:if(8===T.biff&&(T.biff={9:2,521:3,1033:4}[Y]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[Q.BIFFVer]||8),T.biffguess=0==Q.BIFFVer,0==Q.BIFFVer&&4096==Q.dt&&(T.biff=5,W=!0,Ke(T.codepage=28591)),4==T.biff&&256&Q.dt&&(I=!0),8==T.biff&&0==Q.BIFFVer&&16==Q.dt&&(T.biff=2),U++&&!I)break;if(o={},t.dense&&(o["!data"]=[]),T.biff<8&&!W&&(W=!0,Ke(T.codepage=t.codepage||1252)),4==T.biff&&I)v=(p[T.snames.indexOf(v)+1]||{name:""}).name;else if(T.biff<5||0==Q.BIFFVer&&4096==Q.dt){""===v&&(v="Sheet1"),h={s:{r:0,c:0},e:{r:0,c:0}};var J={pos:e.l-V,name:v};p[J.pos]=J,T.snames.push(v)}else v=(p[H]||{name:""}).name;32==Q.dt&&(o["!type"]="chart"),64==Q.dt&&(o["!type"]="macro"),O=[],M=[],T.arrayf=x=[],P=[],j=[],R=!1,C={Hidden:(p[H]||{hs:0}).hs,name:v};break;case 515:case 3:case 2:"chart"==o["!type"]&&(t.dense?(o["!data"][Q.r]||[])[Q.c]:o[la(Q.c)+ia(Q.r)])&&++Q.c,u={ixfe:Q.ixfe,XF:S[Q.ixfe]||{},v:Q.val,t:"n"},B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D({c:Q.c,r:Q.r},u,t);break;case 5:case 517:u={ixfe:Q.ixfe,XF:S[Q.ixfe],v:Q.val,t:Q.t},B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D({c:Q.c,r:Q.r},u,t);break;case 638:u={ixfe:Q.ixfe,XF:S[Q.ixfe],v:Q.rknum,t:"n"},B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D({c:Q.c,r:Q.r},u,t);break;case 189:for(var $=Q.c;$<=Q.C;++$){var q=Q.rkrec[$-Q.c][0];u={ixfe:q,XF:S[q],v:Q.rkrec[$-Q.c][1],t:"n"},B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D({c:$,r:Q.r},u,t)}break;case 6:case 518:case 1030:if("String"==Q.val){m=Q;break}if((u=Jd(Q.val,Q.cell.ixfe,Q.tt)).XF=S[u.ixfe],t.cellFormula){var ee=Q.formula;if(ee&&ee[0]&&ee[0][0]&&"PtgExp"==ee[0][0][0]){var te=ee[0][0][1][0],re=ee[0][0][1][1],ne=ua({r:te,c:re});w[ne]?u.f=""+Qc(Q.formula,0,Q.cell,_,T):u.F=((t.dense?(o["!data"][te]||[])[re]:o[ne])||{}).F}else u.f=""+Qc(Q.formula,0,Q.cell,_,T)}B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D(Q.cell,u,t),m=Q;break;case 7:case 519:if(!m)throw new Error("String record expects Formula");m.val=Q,(u=Jd(Q,m.cell.ixfe,"s")).XF=S[u.ixfe],t.cellFormula&&(u.f=""+Qc(m.formula,0,m.cell,_,T)),B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D(m.cell,u,t),m=null;break;case 33:case 545:x.push(Q);var oe=ua(Q[0].s);if(i=t.dense?(o["!data"][Q[0].s.r]||[])[Q[0].s.c]:o[oe],t.cellFormula&&i){if(!m)break;if(!oe||!i)break;i.f=""+Qc(Q[1],0,Q[0],_,T),i.F=fa(Q[0])}break;case 1212:if(!t.cellFormula)break;if(b){if(!m)break;w[ua(m.cell)]=Q[0],((i=t.dense?(o["!data"][m.cell.r]||[])[m.cell.c]:o[ua(m.cell)])||{}).f=""+Qc(Q[0],0,a,_,T)}break;case 253:u=Jd(g[Q.isst].t,Q.ixfe,"s"),g[Q.isst].h&&(u.h=g[Q.isst].h),u.XF=S[u.ixfe],B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D({c:Q.c,r:Q.r},u,t);break;case 513:t.sheetStubs&&(u={ixfe:Q.ixfe,XF:S[Q.ixfe],t:"z"},B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D({c:Q.c,r:Q.r},u,t));break;case 190:if(t.sheetStubs)for(var ae=Q.c;ae<=Q.C;++ae){var ie=Q.ixfe[ae-Q.c];u={ixfe:ie,XF:S[ie],t:"z"},B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D({c:ae,r:Q.r},u,t)}break;case 214:case 516:case 4:(u=Jd(Q.val,Q.ixfe,"s")).XF=S[u.ixfe],B>0&&(u.z=u.XF&&u.XF.numFmtId&&F[u.XF.numFmtId]||F[u.ixfe>>8&63]),Xd(u,t,r.opts.Date1904),D({c:Q.c,r:Q.r},u,t);break;case 0:case 512:1===U&&(h=Q);break;case 252:g=Q;break;case 1054:if(T.biff>=3&&T.biff<=4){F[B++]=Q[1];for(var se=0;se<B+163&&Dt[se]!=Q[1];++se);se>=163&&cr(Q[1],B+163)}else cr(Q[1],Q[0]);break;case 30:F[B++]=Q;for(var le=0;le<B+163&&Dt[le]!=Q;++le);le>=163&&cr(Q,B+163);break;case 229:O=O.concat(Q);break;case 93:M[Q.cmo[0]]=T.lastobj=Q;break;case 438:T.lastobj.TxO=Q;break;case 127:T.lastobj.ImData=Q;break;case 440:for(c=Q[0].s.r;c<=Q[0].e.r;++c)for(l=Q[0].s.c;l<=Q[0].e.c;++l)(i=t.dense?(o["!data"][c]||[])[l]:o[ua({c:l,r:c})])&&(i.l=Q[1]);break;case 2048:for(c=Q[0].s.r;c<=Q[0].e.r;++c)for(l=Q[0].s.c;l<=Q[0].e.c;++l)(i=t.dense?(o["!data"][c]||[])[l]:o[ua({c:l,r:c})])&&i.l&&(i.l.Tooltip=Q[1]);break;case 28:if((i=t.dense?(o["!data"][Q[0].r]||[])[Q[0].c]:o[ua(Q[0])])||(t.dense?(o["!data"][Q[0].r]||(o["!data"][Q[0].r]=[]),i=o["!data"][Q[0].r][Q[0].c]={t:"z"}):i=o[ua(Q[0])]={t:"z"},h.e.r=Math.max(h.e.r,Q[0].r),h.s.r=Math.min(h.s.r,Q[0].r),h.e.c=Math.max(h.e.c,Q[0].c),h.s.c=Math.min(h.s.c,Q[0].c)),i.c||(i.c=[]),T.biff<=5&&T.biff>=2)s={a:"SheetJ5",t:Q[1]};else{var ce=M[Q[2]];s={a:Q[1],t:ce.TxO.t},null==Q[3]||2&Q[3]||(i.c.hidden=!0)}i.c.push(s);break;case 2173:S[Q.ixfe],Q.ext.forEach((function(e){e[0]}));break;case 125:if(!T.cellStyles)break;for(;Q.e>=Q.s;)P[Q.e--]={width:Q.w/256,level:Q.level||0,hidden:!!(1&Q.flags)},R||(R=!0,Ml(Q.w/256)),Pl(P[Q.e+1]);break;case 520:var ue={};null!=Q.level&&(j[Q.r]=ue,ue.level=Q.level),Q.hidden&&(j[Q.r]=ue,ue.hidden=!0),Q.hpt&&(j[Q.r]=ue,ue.hpt=Q.hpt,ue.hpx=_l(Q.hpt));break;case 38:case 39:case 40:case 41:o["!margins"]||vu(o["!margins"]={}),o["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[Y]]=Q;break;case 161:o["!margins"]||vu(o["!margins"]={}),o["!margins"].header=Q.header,o["!margins"].footer=Q.footer;break;case 574:Q.RTL&&(k.Views[0].RTL=!0);break;case 146:A=Q;break;case 2198:f=Q;break;case 140:d=Q;break;case 442:v?C.CodeName=Q||C.name:k.WBProps.CodeName=Q||"ThisWorkbook"}}else G||console.error("Missing Info for XLS Record 0x"+Y.toString(16)),e.l+=V}return r.SheetNames=mr(p).sort((function(e,t){return Number(e)-Number(t)})).map((function(e){return p[e].name})),t.bookSheets||(r.Sheets=n),!r.SheetNames.length&&y["!ref"]?(r.SheetNames.push("Sheet1"),r.Sheets&&(r.Sheets.Sheet1=y)):r.Preamble=y,r.Sheets&&z.forEach((function(e,t){r.Sheets[r.SheetNames[t]]["!autofilter"]=e})),r.Strings=g,r.SSF=Or(Dt),T.enc&&(r.Encryption=T.enc),f&&(r.Themes=f),r.Metadata={},void 0!==d&&(r.Metadata.Country=d),_.names.length>0&&(k.Names=_.names),r.Workbook=k,r}var qd="e0859ff2f94f6810ab9108002b27b3d9",ef="02d5cdd59c2e1b10939708002b2cf9ae",tf="05d5cdd59c2e1b10939708002b2cf9ae";function rf(e,t){var r,n,o,a;if(t||(t={}),Pp(t),Xe(),t.codepage&&Qe(t.codepage),e.FullPaths){if(fr.find(e,"/encryption"))throw new Error("File is password-protected");r=fr.find(e,"!CompObj"),n=fr.find(e,"/Workbook")||fr.find(e,"/Book")}else{switch(t.type){case"base64":e=ft(it(e));break;case"binary":e=ft(e);break;case"buffer":break;case"array":Array.isArray(e)||(e=Array.prototype.slice.call(e))}Ko(e,0),n={content:e}}if(r&&Zd(r),t.bookProps&&!t.bookSheets)o={};else{var i=st?"buffer":"array";if(n&&n.content)o=$d(n.content,t);else if((a=fr.find(e,"PerfectOffice_MAIN"))&&a.content)o=$s.to_workbook(a.content,(t.type=i,t));else{if(!(a=fr.find(e,"NativeContent_MAIN"))||!a.content)throw(a=fr.find(e,"MN0"))&&a.content?new Error("Unsupported Works 4 for Mac file"):new Error("Cannot find Workbook stream");o=$s.to_workbook(a.content,(t.type=i,t))}t.bookVBA&&e.FullPaths&&fr.find(e,"/_VBA_PROJECT_CUR/VBA/dir")&&(o.vbaraw=function(e){var t=fr.utils.cfb_new({root:"R"});return e.FullPaths.forEach((function(r,n){if("/"!==r.slice(-1)&&r.match(/_VBA_PROJECT_CUR/)){var o=r.replace(/^[^\/]*/,"R").replace(/\/_VBA_PROJECT_CUR\u0000*/,"");fr.utils.cfb_add(t,o,e.FileIndex[n].content)}})),fr.write(t)}(e))}var s={};return e.FullPaths&&function(e,t,r){var n=fr.find(e,"/!DocumentSummaryInformation");if(n&&n.size>0)try{var o=Fi(n,Xa,ef);for(var a in o)t[a]=o[a]}catch(o6){if(r.WTF)throw o6}var i=fr.find(e,"/!SummaryInformation");if(i&&i.size>0)try{var s=Fi(i,Ja,qd);for(var l in s)null==t[l]&&(t[l]=s[l])}catch(o6){if(r.WTF)throw o6}t.HeadingPairs&&t.TitlesOfParts&&(xi(t.HeadingPairs,t.TitlesOfParts,t,r),delete t.HeadingPairs,delete t.TitlesOfParts)}(e,s,t),o.Props=o.Custprops=s,t.bookFiles&&(o.cfb=e),o}function nf(e,t){var r=t||{},n=fr.utils.cfb_new({root:"R"}),o="/Workbook";switch(r.bookType||"xls"){case"xls":r.bookType="biff8";case"xla":r.bookType||(r.bookType="xla");case"biff8":o="/Workbook",r.biff=8;break;case"biff5":o="/Book",r.biff=5;break;default:throw new Error("invalid type "+r.bookType+" for XLS CFB")}return fr.utils.cfb_add(n,o,bf(e,r)),8==r.biff&&(e.Props||e.Custprops)&&function(e,t){var r,n=[],o=[],a=[],i=0,s=gr(Xa,"n"),l=gr(Ja,"n");if(e.Props)for(r=mr(e.Props),i=0;i<r.length;++i)(Object.prototype.hasOwnProperty.call(s,r[i])?n:Object.prototype.hasOwnProperty.call(l,r[i])?o:a).push([r[i],e.Props[r[i]]]);if(e.Custprops)for(r=mr(e.Custprops),i=0;i<r.length;++i)Object.prototype.hasOwnProperty.call(e.Props||{},r[i])||(Object.prototype.hasOwnProperty.call(s,r[i])?n:Object.prototype.hasOwnProperty.call(l,r[i])?o:a).push([r[i],e.Custprops[r[i]]]);var c=[];for(i=0;i<a.length;++i)Li.indexOf(a[i][0])>-1||wi.indexOf(a[i][0])>-1||null!=a[i][1]&&c.push(a[i]);o.length&&fr.utils.cfb_add(t,"/\x05SummaryInformation",zi(o,qd,l,Ja)),(n.length||c.length)&&fr.utils.cfb_add(t,"/\x05DocumentSummaryInformation",zi(n,ef,s,Xa,c.length?c:null,tf))}(e,n),8==r.biff&&e.vbaraw&&function(e,t){t.FullPaths.forEach((function(r,n){if(0!=n){var o=r.replace(/^[\/]*[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");"/"!==o.slice(-1)&&fr.utils.cfb_add(e,o,t.FileIndex[n].content)}}))}(n,fr.read(e.vbaraw,{type:"string"==typeof e.vbaraw?"binary":"buffer"})),n}var of={0:{f:function(e,t){var r={},n=e.l+t;r.r=e.read_shift(4),e.l+=4;var o=e.read_shift(2);e.l+=1;var a=e.read_shift(1);return e.l=n,7&a&&(r.level=7&a),16&a&&(r.hidden=!0),32&a&&(r.hpt=o/20),r}},1:{f:function(e){return[Da(e)]}},2:{f:function(e){return[Da(e),Ba(e),"n"]}},3:{f:function(e){return[Da(e),e.read_shift(1),"e"]}},4:{f:function(e){return[Da(e),e.read_shift(1),"b"]}},5:{f:function(e){return[Da(e),Ya(e),"n"]}},6:{f:function(e){return[Da(e),Sa(e),"str"]}},7:{f:function(e){return[Da(e),e.read_shift(4),"s"]}},8:{f:function(e,t,r){var n=e.l+t,o=Da(e);o.r=r["!row"];var a=[o,Sa(e),"str"];if(r.cellFormula){e.l+=2;var i=tu(e,n-e.l,r);a[3]=Qc(i,0,o,r.supbooks,r)}else e.l=n;return a}},9:{f:function(e,t,r){var n=e.l+t,o=Da(e);o.r=r["!row"];var a=[o,Ya(e),"n"];if(r.cellFormula){e.l+=2;var i=tu(e,n-e.l,r);a[3]=Qc(i,0,o,r.supbooks,r)}else e.l=n;return a}},10:{f:function(e,t,r){var n=e.l+t,o=Da(e);o.r=r["!row"];var a=[o,e.read_shift(1),"b"];if(r.cellFormula){e.l+=2;var i=tu(e,n-e.l,r);a[3]=Qc(i,0,o,r.supbooks,r)}else e.l=n;return a}},11:{f:function(e,t,r){var n=e.l+t,o=Da(e);o.r=r["!row"];var a=[o,e.read_shift(1),"e"];if(r.cellFormula){e.l+=2;var i=tu(e,n-e.l,r);a[3]=Qc(i,0,o,r.supbooks,r)}else e.l=n;return a}},12:{f:function(e){return[Oa(e)]}},13:{f:function(e){return[Oa(e),Ba(e),"n"]}},14:{f:function(e){return[Oa(e),e.read_shift(1),"e"]}},15:{f:function(e){return[Oa(e),e.read_shift(1),"b"]}},16:{f:zu},17:{f:function(e){return[Oa(e),Sa(e),"str"]}},18:{f:function(e){return[Oa(e),e.read_shift(4),"s"]}},19:{f:Ca},20:{},21:{},22:{},23:{},24:{},25:{},26:{},27:{},28:{},29:{},30:{},31:{},32:{},33:{},34:{},35:{T:1},36:{T:-1},37:{T:1},38:{T:-1},39:{f:function(e,t,r){var n=e.l+t,o=e.read_shift(4);e.l+=1;var a,i=e.read_shift(4),s=Na(e),l="";try{a=ru(e,0,r);try{l=Ra(e)}catch(o6){}}catch(o6){console.error("Could not parse defined name "+s)}32&o&&(s="_xlnm."+s),e.l=n;var c={Name:s,Ptg:a,Flags:o};return i<268435455&&(c.Sheet=i),l&&(c.Comment=l),c}},40:{},42:{},43:{f:function(e,t,r){var n={};n.sz=e.read_shift(2)/20;var o=function(e){var t=e.read_shift(1);return e.l++,{fBold:1&t,fItalic:2&t,fUnderline:4&t,fStrikeout:8&t,fOutline:16&t,fShadow:32&t,fCondense:64&t,fExtend:128&t}}(e);switch(o.fItalic&&(n.italic=1),o.fCondense&&(n.condense=1),o.fExtend&&(n.extend=1),o.fShadow&&(n.shadow=1),o.fOutline&&(n.outline=1),o.fStrikeout&&(n.strike=1),700===e.read_shift(2)&&(n.bold=1),e.read_shift(2)){case 1:n.vertAlign="superscript";break;case 2:n.vertAlign="subscript"}var a=e.read_shift(1);0!=a&&(n.underline=a);var i=e.read_shift(1);i>0&&(n.family=i);var s=e.read_shift(1);switch(s>0&&(n.charset=s),e.l++,n.color=function(e){var t={},r=e.read_shift(1)>>>1,n=e.read_shift(1),o=e.read_shift(2,"i"),a=e.read_shift(1),i=e.read_shift(1),s=e.read_shift(1);switch(e.l++,r){case 0:t.auto=1;break;case 1:t.index=n;var l=ti[n];l&&(t.rgb=kl(l));break;case 2:t.rgb=kl([a,i,s]);break;case 3:t.theme=n}return 0!=o&&(t.tint=o>0?o/32767:o/32768),t}(e),e.read_shift(1)){case 1:n.scheme="major";break;case 2:n.scheme="minor"}return n.name=Sa(e),n}},44:{f:function(e,t){return[e.read_shift(2),Sa(e)]}},45:{f:Vl},46:{f:Kl},47:{f:function(e,t){var r=e.l+t,n=e.read_shift(2),o=e.read_shift(2);return e.l=r,{ixfe:n,numFmtId:o}}},48:{},49:{f:function(e){return e.read_shift(4,"i")}},50:{},51:{f:function(e){for(var t=[],r=e.read_shift(4);r-- >0;)t.push([e.read_shift(4),e.read_shift(4)]);return t}},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:zs},62:{f:function(e){return[Da(e),Ca(e),"is"]}},63:{f:function(e){var t={};t.i=e.read_shift(4);var r={};r.r=e.read_shift(4),r.c=e.read_shift(4),t.r=ua(r);var n=e.read_shift(1);return 2&n&&(t.l="1"),8&n&&(t.a="1"),t}},64:{f:function(){}},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:Xo,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:function(e){var t=e.read_shift(2);return e.l+=28,{RTL:32&t}}},138:{T:-1},139:{T:1},140:{T:-1},141:{T:1},142:{T:-1},143:{T:1},144:{T:-1},145:{T:1},146:{T:-1},147:{f:function(e,t){var r={},n=e[e.l];return++e.l,r.above=!(64&n),r.left=!(128&n),e.l+=18,r.name=Pa(e,t-19),r}},148:{f:Lu,p:16},151:{f:function(){}},152:{},153:{f:function(e,t){var r={},n=e.read_shift(4);r.defaultThemeVersion=e.read_shift(4);var o=t>8?Sa(e):"";return o.length>0&&(r.CodeName=o),r.autoCompressPictures=!!(65536&n),r.backupFile=!!(64&n),r.checkCompatibility=!!(4096&n),r.date1904=!!(1&n),r.filterPrivacy=!!(8&n),r.hidePivotFieldList=!!(1024&n),r.promptedSolutions=!!(16&n),r.publishItems=!!(2048&n),r.refreshAllConnections=!!(262144&n),r.saveExternalLinkValues=!!(128&n),r.showBorderUnselectedTables=!!(4&n),r.showInkAnnotation=!!(32&n),r.showObjects=["all","placeholders","none"][n>>13&3],r.showPivotChartFilter=!!(32768&n),r.updateLinks=["userSet","never","always"][n>>8&3],r}},154:{},155:{},156:{f:function(e,t){var r={};return r.Hidden=e.read_shift(4),r.iTabID=e.read_shift(4),r.strRelID=La(e,t-8),r.name=Sa(e),r}},157:{},158:{},159:{T:1,f:function(e){return[e.read_shift(4),e.read_shift(4)]}},160:{T:-1},161:{T:1,f:Wa},162:{T:-1},163:{T:1},164:{T:-1},165:{T:1},166:{T:-1},167:{},168:{},169:{},170:{},171:{},172:{T:1},173:{T:-1},174:{},175:{},176:{f:Wu},177:{T:1},178:{T:-1},179:{T:1},180:{T:-1},181:{T:1},182:{T:-1},183:{T:1},184:{T:-1},185:{T:1},186:{T:-1},187:{T:1},188:{T:-1},189:{T:1},190:{T:-1},191:{T:1},192:{T:-1},193:{T:1},194:{T:-1},195:{T:1},196:{T:-1},197:{T:1},198:{T:-1},199:{T:1},200:{T:-1},201:{T:1},202:{T:-1},203:{T:1},204:{T:-1},205:{T:1},206:{T:-1},207:{T:1},208:{T:-1},209:{T:1},210:{T:-1},211:{T:1},212:{T:-1},213:{T:1},214:{T:-1},215:{T:1},216:{T:-1},217:{T:1},218:{T:-1},219:{T:1},220:{T:-1},221:{T:1},222:{T:-1},223:{T:1},224:{T:-1},225:{T:1},226:{T:-1},227:{T:1},228:{T:-1},229:{T:1},230:{T:-1},231:{T:1},232:{T:-1},233:{T:1},234:{T:-1},235:{T:1},236:{T:-1},237:{T:1},238:{T:-1},239:{T:1},240:{T:-1},241:{T:1},242:{T:-1},243:{T:1},244:{T:-1},245:{T:1},246:{T:-1},247:{T:1},248:{T:-1},249:{T:1},250:{T:-1},251:{T:1},252:{T:-1},253:{T:1},254:{T:-1},255:{T:1},256:{T:-1},257:{T:1},258:{T:-1},259:{T:1},260:{T:-1},261:{T:1},262:{T:-1},263:{T:1},264:{T:-1},265:{T:1},266:{T:-1},267:{T:1},268:{T:-1},269:{T:1},270:{T:-1},271:{T:1},272:{T:-1},273:{T:1},274:{T:-1},275:{T:1},276:{T:-1},277:{},278:{T:1},279:{T:-1},280:{T:1},281:{T:-1},282:{T:1},283:{T:1},284:{T:-1},285:{T:1},286:{T:-1},287:{T:1},288:{T:-1},289:{T:1},290:{T:-1},291:{T:1},292:{T:-1},293:{T:1},294:{T:-1},295:{T:1},296:{T:-1},297:{T:1},298:{T:-1},299:{T:1},300:{T:-1},301:{T:1},302:{T:-1},303:{T:1},304:{T:-1},305:{T:1},306:{T:-1},307:{T:1},308:{T:-1},309:{T:1},310:{T:-1},311:{T:1},312:{T:-1},313:{T:-1},314:{T:1},315:{T:-1},316:{T:1},317:{T:-1},318:{T:1},319:{T:-1},320:{T:1},321:{T:-1},322:{T:1},323:{T:-1},324:{T:1},325:{T:-1},326:{T:1},327:{T:-1},328:{T:1},329:{T:-1},330:{T:1},331:{T:-1},332:{T:1},333:{T:-1},334:{T:1},335:{f:function(e,t){return{flags:e.read_shift(4),version:e.read_shift(4),name:Sa(e)}}},336:{T:-1},337:{f:function(e){return e.l+=4,0!=e.read_shift(4)},T:1},338:{T:-1},339:{T:1},340:{T:-1},341:{T:1},342:{T:-1},343:{T:1},344:{T:-1},345:{T:1},346:{T:-1},347:{T:1},348:{T:-1},349:{T:1},350:{T:-1},351:{},352:{},353:{T:1},354:{T:-1},355:{f:La},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Rs},363:{},364:{},366:{},367:{},368:{},369:{},370:{},371:{},372:{T:1},373:{T:-1},374:{T:1},375:{T:-1},376:{T:1},377:{T:-1},378:{T:1},379:{T:-1},380:{T:1},381:{T:-1},382:{T:1},383:{T:-1},384:{T:1},385:{T:-1},386:{T:1},387:{T:-1},388:{T:1},389:{T:-1},390:{T:1},391:{T:-1},392:{T:1},393:{T:-1},394:{T:1},395:{T:-1},396:{},397:{},398:{},399:{},400:{},401:{T:1},403:{},404:{},405:{},406:{},407:{},408:{},409:{},410:{},411:{},412:{},413:{},414:{},415:{},416:{},417:{},418:{},419:{},420:{},421:{},422:{T:1},423:{T:1},424:{T:-1},425:{T:-1},426:{f:function(e,t,r){var n=e.l+t,o=za(e),a=e.read_shift(1),i=[o];if(i[2]=a,r.cellFormula){var s=eu(e,n-e.l,r);i[1]=s}else e.l=n;return i}},427:{f:function(e,t,r){var n=e.l+t,o=[Wa(e,16)];if(r.cellFormula){var a=nu(e,n-e.l,r);o[1]=a,e.l=n}else e.l=n;return o}},428:{},429:{T:1},430:{T:-1},431:{T:1},432:{T:-1},433:{T:1},434:{T:-1},435:{T:1},436:{T:-1},437:{T:1},438:{T:-1},439:{T:1},440:{T:-1},441:{T:1},442:{T:-1},443:{T:1},444:{T:-1},445:{T:1},446:{T:-1},447:{T:1},448:{T:-1},449:{T:1},450:{T:-1},451:{T:1},452:{T:-1},453:{T:1},454:{T:-1},455:{T:1},456:{T:-1},457:{T:1},458:{T:-1},459:{T:1},460:{T:-1},461:{T:1},462:{T:-1},463:{T:1},464:{T:-1},465:{T:1},466:{T:-1},467:{T:1},468:{T:-1},469:{T:1},470:{T:-1},471:{},472:{},473:{T:1},474:{T:-1},475:{},476:{f:function(e){var t={};return Yu.forEach((function(r){t[r]=Ya(e)})),t}},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:function(){}},486:{T:1},487:{T:-1},488:{T:1},489:{T:-1},490:{T:1},491:{T:-1},492:{T:1},493:{T:-1},494:{f:function(e,t){var r=e.l+t,n=Wa(e,16),o=Ra(e),a=Sa(e),i=Sa(e),s=Sa(e);e.l=r;var l={rfx:n,relId:o,loc:a,display:s};return i&&(l.Tooltip=i),l}},495:{T:1},496:{T:-1},497:{T:1},498:{T:-1},499:{},500:{T:1},501:{T:-1},502:{T:1},503:{T:-1},504:{},505:{T:1},506:{T:-1},507:{},508:{T:1},509:{T:-1},510:{T:1},511:{T:-1},512:{},513:{},514:{T:1},515:{T:-1},516:{T:1},517:{T:-1},518:{T:1},519:{T:-1},520:{T:1},521:{T:-1},522:{},523:{},524:{},525:{},526:{},527:{},528:{T:1},529:{T:-1},530:{T:1},531:{T:-1},532:{T:1},533:{T:-1},534:{},535:{},536:{},537:{},538:{T:1},539:{T:-1},540:{T:1},541:{T:-1},542:{T:1},548:{},549:{},550:{f:La},551:{f:Ra},552:{},553:{},554:{T:1},555:{T:-1},556:{T:1},557:{T:-1},558:{T:1},559:{T:-1},560:{T:1},561:{T:-1},562:{},564:{},565:{T:1},566:{T:-1},569:{T:1},570:{T:-1},572:{},573:{T:1},574:{T:-1},577:{},578:{},579:{},580:{},581:{},582:{},583:{},584:{},585:{},586:{},587:{},588:{T:-1},589:{},590:{T:1},591:{T:-1},592:{T:1},593:{T:-1},594:{T:1},595:{T:-1},596:{},597:{T:1},598:{T:-1},599:{T:1},600:{T:-1},601:{T:1},602:{T:-1},603:{T:1},604:{T:-1},605:{T:1},606:{T:-1},607:{},608:{T:1},609:{T:-1},610:{},611:{T:1},612:{T:-1},613:{T:1},614:{T:-1},615:{T:1},616:{T:-1},617:{T:1},618:{T:-1},619:{T:1},620:{T:-1},625:{},626:{T:1},627:{T:-1},628:{T:1},629:{T:-1},630:{T:1},631:{T:-1},632:{f:fc},633:{T:1},634:{T:-1},635:{T:1,f:function(e){var t={};t.iauthor=e.read_shift(4);var r=Wa(e,16);return t.rfx=r.s,t.ref=ua(r.s),e.l+=16,t}},636:{T:-1},637:{f:Ia},638:{T:1},639:{},640:{T:-1},641:{T:1},642:{T:-1},643:{T:1},644:{},645:{T:-1},646:{T:1},648:{T:1},649:{},650:{T:-1},651:{f:function(e,t){return e.l+=10,{name:Sa(e)}}},652:{},653:{T:1},654:{T:-1},655:{T:1},656:{T:-1},657:{T:1},658:{T:-1},659:{},660:{T:1},661:{},662:{T:-1},663:{},664:{T:1},665:{},666:{T:-1},667:{},668:{},669:{},671:{T:1},672:{T:-1},673:{T:1},674:{T:-1},675:{},676:{},677:{},678:{},679:{},680:{},681:{},1024:{},1025:{},1026:{T:1},1027:{T:-1},1028:{T:1},1029:{T:-1},1030:{},1031:{T:1},1032:{T:-1},1033:{T:1},1034:{T:-1},1035:{},1036:{},1037:{},1038:{T:1},1039:{T:-1},1040:{},1041:{T:1},1042:{T:-1},1043:{},1044:{},1045:{},1046:{T:1},1047:{T:-1},1048:{T:1},1049:{T:-1},1050:{},1051:{T:1},1052:{T:1},1053:{f:function(){}},1054:{T:1},1055:{},1056:{T:1},1057:{T:-1},1058:{T:1},1059:{T:-1},1061:{},1062:{T:1},1063:{T:-1},1064:{T:1},1065:{T:-1},1066:{T:1},1067:{T:-1},1068:{T:1},1069:{T:-1},1070:{T:1},1071:{T:-1},1072:{T:1},1073:{T:-1},1075:{T:1},1076:{T:-1},1077:{T:1},1078:{T:-1},1079:{T:1},1080:{T:-1},1081:{T:1},1082:{T:-1},1083:{T:1},1084:{T:-1},1085:{},1086:{T:1},1087:{T:-1},1088:{T:1},1089:{T:-1},1090:{T:1},1091:{T:-1},1092:{T:1},1093:{T:-1},1094:{T:1},1095:{T:-1},1096:{},1097:{T:1},1098:{},1099:{T:-1},1100:{T:1},1101:{T:-1},1102:{},1103:{},1104:{},1105:{},1111:{},1112:{},1113:{T:1},1114:{T:-1},1115:{T:1},1116:{T:-1},1117:{},1118:{T:1},1119:{T:-1},1120:{T:1},1121:{T:-1},1122:{T:1},1123:{T:-1},1124:{T:1},1125:{T:-1},1126:{},1128:{T:1},1129:{T:-1},1130:{},1131:{T:1},1132:{T:-1},1133:{T:1},1134:{T:-1},1135:{T:1},1136:{T:-1},1137:{T:1},1138:{T:-1},1139:{T:1},1140:{T:-1},1141:{},1142:{T:1},1143:{T:-1},1144:{T:1},1145:{T:-1},1146:{},1147:{T:1},1148:{T:-1},1149:{T:1},1150:{T:-1},1152:{T:1},1153:{T:-1},1154:{T:-1},1155:{T:-1},1156:{T:-1},1157:{T:1},1158:{T:-1},1159:{T:1},1160:{T:-1},1161:{T:1},1162:{T:-1},1163:{T:1},1164:{T:-1},1165:{T:1},1166:{T:-1},1167:{T:1},1168:{T:-1},1169:{T:1},1170:{T:-1},1171:{},1172:{T:1},1173:{T:-1},1177:{},1178:{T:1},1180:{},1181:{},1182:{},2048:{T:1},2049:{T:-1},2050:{},2051:{T:1},2052:{T:-1},2053:{},2054:{},2055:{T:1},2056:{T:-1},2057:{T:1},2058:{T:-1},2060:{},2067:{},2068:{T:1},2069:{T:-1},2070:{},2071:{},2072:{T:1},2073:{T:-1},2075:{},2076:{},2077:{T:1},2078:{T:-1},2079:{},2080:{T:1},2081:{T:-1},2082:{},2083:{T:1},2084:{T:-1},2085:{T:1},2086:{T:-1},2087:{T:1},2088:{T:-1},2089:{T:1},2090:{T:-1},2091:{},2092:{},2093:{T:1},2094:{T:-1},2095:{},2096:{T:1},2097:{T:-1},2098:{T:1},2099:{T:-1},2100:{T:1},2101:{T:-1},2102:{},2103:{T:1},2104:{T:-1},2105:{},2106:{T:1},2107:{T:-1},2108:{},2109:{T:1},2110:{T:-1},2111:{T:1},2112:{T:-1},2113:{T:1},2114:{T:-1},2115:{},2116:{},2117:{},2118:{T:1},2119:{T:-1},2120:{},2121:{T:1},2122:{T:-1},2123:{T:1},2124:{T:-1},2125:{},2126:{T:1},2127:{T:-1},2128:{},2129:{T:1},2130:{T:-1},2131:{T:1},2132:{T:-1},2133:{T:1},2134:{},2135:{},2136:{},2137:{T:1},2138:{T:-1},2139:{T:1},2140:{T:-1},2141:{},3072:{},3073:{},4096:{T:1},4097:{T:-1},5002:{T:1},5003:{T:-1},5081:{T:1},5082:{T:-1},5083:{},5084:{T:1},5085:{T:-1},5086:{T:1},5087:{T:-1},5088:{},5089:{},5090:{},5092:{T:1},5093:{T:-1},5094:{},5095:{T:1},5096:{T:-1},5097:{},5099:{},65535:{n:""}},af={6:{f:Jc},10:{f:Wi},12:{f:Vi},13:{f:Vi},14:{f:Hi},15:{f:Hi},16:{f:Ya},17:{f:Hi},18:{f:Hi},19:{f:Vi},20:{f:Ms},21:{f:Ms},23:{f:Rs},24:{f:js},25:{f:Hi},26:{},27:{},28:{f:function(e,t,r){if(r&&r.biff<8){var n=e.read_shift(2),o=e.read_shift(2);if(65535==n||-1==n)return;var a=e.read_shift(2);return[{r:n,c:o},e.read_shift(Math.min(a,2048),"cpstr")]}return function(e,t,r){var n=e.read_shift(2),o=e.read_shift(2),a=e.read_shift(2),i=e.read_shift(2);return[{r:n,c:o},ts(e,0,r),i,a]}(e,0,r)}},29:{},34:{f:Hi},35:{f:Ps},38:{f:Ya},39:{f:Ya},40:{f:Ya},41:{f:Ya},42:{f:Hi},43:{f:Hi},47:{f:function(e,t,r){var n={Type:r.biff>=8?e.read_shift(2):0};return n.Type?xl(e,t-2,n):function(e,t,r,n){var o={key:Vi(e),verificationBytes:Vi(e)};r.password&&(o.verifier=yl(r.password)),n.valid=o.verificationBytes===o.verifier,n.valid&&(n.insitu=wl(r.password))}(e,r.biff,r,n),n}},49:{f:function(e,t,r){var n={dyHeight:e.read_shift(2),fl:e.read_shift(2)};switch(r&&r.biff||8){case 2:break;case 3:case 4:e.l+=2;break;default:e.l+=10}return n.name=Xi(e,0,r),n}},51:{f:Vi},60:{},61:{f:function(e){return{Pos:[e.read_shift(2),e.read_shift(2)],Dim:[e.read_shift(2),e.read_shift(2)],Flags:e.read_shift(2),CurTab:e.read_shift(2),FirstTab:e.read_shift(2),Selected:e.read_shift(2),TabRatio:e.read_shift(2)}}},64:{f:Hi},65:{f:function(){}},66:{f:Vi},77:{},80:{},81:{},82:{},85:{f:Vi},89:{},90:{},91:{},92:{f:function(e,t,r){if(r.enc)return e.l+=t,"";var n=e.l,o=ts(e,0,r);return e.read_shift(t+n-e.l),o}},93:{f:function(e,t,r){if(r&&r.biff<8)return function(e,t,r){e.l+=4;var n=e.read_shift(2),o=e.read_shift(2),a=e.read_shift(2);e.l+=2,e.l+=2,e.l+=2,e.l+=2,e.l+=2,e.l+=2,e.l+=2,e.l+=2,e.l+=2,e.l+=6,t-=36;var i=[];return i.push((Us[n]||Xo)(e,t,r)),{cmo:[o,n,a],ft:i}}(e,t,r);var n=vs(e),o=function(e,t){for(var r=e.l+t,n=[];e.l<r;){var o=e.read_shift(2);e.l-=2;try{n[o]=bs[o](e,r-e.l)}catch(o6){return e.l=r,n}}return e.l!=r&&(e.l=r),n}(e,t-22,n[1]);return{cmo:n,ft:o}}},94:{},95:{f:Hi},96:{},97:{},99:{f:Hi},125:{f:zs},128:{f:function(e){e.l+=4;var t=[e.read_shift(2),e.read_shift(2)];if(0!==t[0]&&t[0]--,0!==t[1]&&t[1]--,t[0]>7||t[1]>7)throw new Error("Bad Gutters: "+t.join("|"));return t}},129:{f:function(e,t,r){var n=r&&8==r.biff||2==t?e.read_shift(2):(e.l+=t,0);return{fDialog:16&n,fBelow:64&n,fRight:128&n}}},130:{f:Vi},131:{f:Hi},132:{f:Hi},133:{f:function(e,t,r){var n="";if(4==r.biff)return 0===(n=Xi(e,0,r)).length&&(n="Sheet1"),{name:n};var o=e.read_shift(4),a=3&e.read_shift(1),i=e.read_shift(1);switch(i){case 0:i="Worksheet";break;case 1:i="Macrosheet";break;case 2:i="Chartsheet";break;case 6:i="VBAModule"}return 0===(n=Xi(e,0,r)).length&&(n="Sheet1"),{pos:o,hs:a,dt:i,name:n}}},134:{},140:{f:function(e){var t,r=[0,0];return t=e.read_shift(2),r[0]=$a[t]||t,t=e.read_shift(2),r[1]=$a[t]||t,r}},141:{f:Vi},144:{},146:{f:function(e){for(var t=e.read_shift(2),r=[];t-- >0;)r.push(ls(e));return r}},151:{},152:{},153:{},154:{},155:{},156:{f:Vi},157:{},158:{},160:{f:Hs},161:{f:function(e,t){var r={};return t<32||(e.l+=16,r.header=Ya(e),r.footer=Ya(e),e.l+=2),r}},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:function(e,t){for(var r=e.l+t-2,n=e.read_shift(2),o=e.read_shift(2),a=[];e.l<r;)a.push(fs(e));if(e.l!==r)throw new Error("MulRK read error");var i=e.read_shift(2);if(a.length!=i-o+1)throw new Error("MulRK length mismatch");return{r:n,c:o,C:i,rkrec:a}}},190:{f:function(e,t){for(var r=e.l+t-2,n=e.read_shift(2),o=e.read_shift(2),a=[];e.l<r;)a.push(e.read_shift(2));if(e.l!==r)throw new Error("MulBlank read error");var i=e.read_shift(2);if(a.length!=i-o+1)throw new Error("MulBlank length mismatch");return{r:n,c:o,C:i,ixfe:a}}},193:{f:Wi},197:{},198:{},199:{},200:{},201:{},202:{f:Hi},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:Vi},220:{},221:{f:Hi},222:{},224:{f:function(e,t,r){var n={};return n.ifnt=e.read_shift(2),n.numFmtId=e.read_shift(2),n.flags=e.read_shift(2),n.fStyle=n.flags>>2&1,n.data=function(e,t,r,n){var o={},a=e.read_shift(4),i=e.read_shift(4),s=e.read_shift(4),l=e.read_shift(2);return o.patternType=qa[s>>26],n.cellStyles?(o.alc=7&a,o.fWrap=a>>3&1,o.alcV=a>>4&7,o.fJustLast=a>>7&1,o.trot=a>>8&255,o.cIndent=a>>16&15,o.fShrinkToFit=a>>20&1,o.iReadOrder=a>>22&2,o.fAtrNum=a>>26&1,o.fAtrFnt=a>>27&1,o.fAtrAlc=a>>28&1,o.fAtrBdr=a>>29&1,o.fAtrPat=a>>30&1,o.fAtrProt=a>>31&1,o.dgLeft=15&i,o.dgRight=i>>4&15,o.dgTop=i>>8&15,o.dgBottom=i>>12&15,o.icvLeft=i>>16&127,o.icvRight=i>>23&127,o.grbitDiag=i>>30&3,o.icvTop=127&s,o.icvBottom=s>>7&127,o.icvDiag=s>>14&127,o.dgDiag=s>>21&15,o.icvFore=127&l,o.icvBack=l>>7&127,o.fsxButton=l>>14&1,o):o}(e,0,n.fStyle,r),n}},225:{f:function(e,t){return 0===t||e.read_shift(2),1200}},226:{f:Wi},227:{},229:{f:function(e,t){for(var r=[],n=e.read_shift(2);n--;)r.push(ps(e));return r}},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:function(e,t){for(var r=e.l+t,n=e.read_shift(4),o=e.read_shift(4),a=[],i=0;i!=o&&e.l<r;++i)a.push(Ji(e));return a.Count=n,a.Unique=o,a}},253:{f:function(e,t,r){var n=cs(e,t,r);return n.isst=e.read_shift(4),n}},255:{f:function(e,t){var r={};return r.dsst=e.read_shift(2),e.l+=t-2,r}},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:Zi},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:Hi},353:{f:Wi},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:function(e,t,r){var n=e.l+t,o=e.read_shift(2),a=e.read_shift(2);if(r.sbcch=a,1025==a||14849==a)return[a,o];if(a<1||a>255)throw new Error("Unexpected SupBook type: "+a);for(var i=qi(e,a),s=[];n>e.l;)s.push(es(e));return[a,o,i,s]}},431:{f:Hi},432:{},433:{},434:{},437:{},438:{f:function(e,t,r){var n=e.l,o="";try{e.l+=4;var a=(r.lastobj||{cmo:[0,0]}).cmo[1];-1==[0,5,7,11,12,14].indexOf(a)?e.l+=6:function(e){var t=e.read_shift(1);e.l++;var r=e.read_shift(2);return e.l+=2,[t,r]}(e);var i=e.read_shift(2);e.read_shift(2),Vi(e);var s=e.read_shift(2);e.l+=s;for(var l=1;l<e.lens.length-1;++l){if(e.l-n!=e.lens[l])throw new Error("TxO: bad continue record");var c=e[e.l];if((o+=qi(e,e.lens[l+1]-e.lens[l]-1)).length>=(c?i:2*i))break}if(o.length!==i&&o.length!==2*i)throw new Error("cchText: "+i+" != "+o.length);return e.l=n+t,{t:o}}catch(o6){return e.l=n+t,{t:o}}}},439:{f:Hi},440:{f:function(e,t){var r=ps(e);e.l+=16;var n=function(e,t){var r=e.l+t,n=e.read_shift(4);if(2!==n)throw new Error("Unrecognized streamVersion: "+n);var o=e.read_shift(2);e.l+=2;var a,i,s,l,c,u,d="";16&o&&(a=os(e,e.l)),128&o&&(i=os(e,e.l)),257===(257&o)&&(s=os(e,e.l)),1===(257&o)&&(l=ns(e,e.l)),8&o&&(d=os(e,e.l)),32&o&&(c=e.read_shift(16)),64&o&&(u=Di(e)),e.l=r;var f=i||s||l||"";f&&d&&(f+="#"+d),f||(f="#"+d),2&o&&"/"==f.charAt(0)&&"/"!=f.charAt(1)&&(f="file://"+f);var p={Target:f};return c&&(p.guid=c),u&&(p.time=u),a&&(p.Tooltip=a),p}(e,t-24);return[r,n]}},441:{},442:{f:es},443:{},444:{f:Vi},445:{},446:{},448:{f:Wi},449:{f:function(e){return e.read_shift(2),e.read_shift(4)},r:2},450:{f:Wi},512:{f:Is},513:{f:Ws},515:{f:function(e,t,r){r.biffguess&&2==r.biff&&(r.biff=5);var n=cs(e,6,r),o=Ya(e);return n.val=o,n}},516:{f:function(e,t,r){r.biffguess&&2==r.biff&&(r.biff=5),e.l;var n=cs(e,t,r),o=es(e,e.l,r);return n.val=o,n}},517:{f:function(e,t,r){var n=cs(e,6,r),o=Qi(e);return n.val=o,n.t=!0===o||!1===o?"b":"e",n}},519:{f:Ys},520:{f:function(e){var t={};t.r=e.read_shift(2),t.c=e.read_shift(2),t.cnt=e.read_shift(2)-t.c;var r=e.read_shift(2);e.l+=4;var n=e.read_shift(1);return e.l+=3,7&n&&(t.level=7&n),32&n&&(t.hidden=!0),64&n&&(t.hpt=r/20),t}},523:{},545:{f:Ns},549:{f:As},566:{},574:{f:function(e,t,r){return r&&r.biff>=2&&r.biff<5?{}:{RTL:64&e.read_shift(2)}}},638:{f:function(e){var t=e.read_shift(2),r=e.read_shift(2),n=fs(e);return{r:t,c:r,ixfe:n[0],rknum:n[1]}}},659:{},1048:{},1054:{f:function(e,t,r){return[e.read_shift(2),ts(e,0,r)]}},1084:{},1212:{f:function(e,t,r){var n=ms(e);e.l++;var o=e.read_shift(1);return[Xc(e,t-=8,r),o,n]}},2048:{f:function(e,t){e.read_shift(2);var r=ps(e),n=e.read_shift((t-10)/2,"dbcs-cont");return[r,n=n.replace(vt,"")]}},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:ws},2058:{},2059:{},2060:{},2061:{},2062:{},2063:{},2064:{},2066:{},2067:{},2128:{},2129:{},2130:{},2131:{},2132:{},2133:{},2134:{},2135:{},2136:{},2137:{},2138:{},2146:{},2147:{r:12},2148:{},2149:{},2150:{},2151:{f:Wi},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:function(e){e.l+=2;var t={cxfs:0,crc:0};return t.cxfs=e.read_shift(2),t.crc=e.read_shift(4),t},r:12},2173:{f:function(e,t){e.l,e.l+=2;var r=e.read_shift(2);e.l+=2;for(var n=e.read_shift(2),o=[];n-- >0;)o.push(ac(e,e.l));return{ixfe:r,ext:o}},r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:Hi,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:function(e,t,r){if(!(r.biff<8)){var n=e.read_shift(2),o=e.read_shift(2);return[qi(e,n,r),qi(e,o,r)]}e.l+=t},r:12},2197:{},2198:{f:function(e,t,r){var n=e.l+t;if(124226!==e.read_shift(4))if(r.cellStyles){var o,a=e.slice(e.l);e.l=n;try{o=ln(a,{type:"array"})}catch(o6){return}var i=rn(o,"theme/theme/theme1.xml",!0);if(i)return rc(i,r)}else e.l=n},r:12},2199:{},2200:{},2201:{},2202:{f:function(e){return[0!==e.read_shift(4),0!==e.read_shift(4),e.read_shift(4)]},r:12},2203:{f:Wi},2204:{},2205:{},2206:{},2207:{},2211:{f:function(e){var t=function(e){var t=e.read_shift(2),r=e.read_shift(2);return e.l+=8,{type:t,flags:r}}(e);if(2211!=t.type)throw new Error("Invalid Future Record "+t.type);return 0!==e.read_shift(4)}},2212:{},2213:{},2214:{},2215:{},4097:{},4098:{},4099:{},4102:{},4103:{},4105:{},4106:{},4107:{},4108:{},4109:{},4116:{},4117:{},4118:{},4119:{},4120:{},4121:{},4122:{},4123:{},4124:{},4125:{},4126:{},4127:{},4128:{},4129:{},4130:{},4132:{},4133:{},4134:{f:Vi},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:function(e,t,r){var n={area:!1};if(5!=r.biff)return e.l+=t,n;var o=e.read_shift(1);return e.l+=3,16&o&&(n.area=!0),n}},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:function(e){for(var t=e.read_shift(2),r=[];t-- >0;)r.push(ls(e));return r}},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:Is},1:{},2:{f:function(e,t,r){var n=cs(e,7,r),o=e.read_shift(2);return n.t="n",n.val=o,n}},3:{f:function(e,t,r){var n=cs(e,7,r),o=Ya(e);return n.t="n",n.val=o,n}},4:{f:function(e,t,r){r.biffguess&&5==r.biff&&(r.biff=2);var n=cs(e,7,r),o=ts(e,0,r);return n.t="str",n.val=o,n}},5:{f:function(e,t,r){var n=e.l+7,o=cs(e,6,r);e.l=n;var a=Qi(e);return o.val=a,o.t=!0===a||!1===a?"b":"e",o}},7:{f:function(e){var t=e.read_shift(1);return 0===t?(e.l++,""):e.read_shift(t,"sbcs-cont")}},8:{},9:{f:ws},11:{},22:{f:Vi},30:{f:Cs},31:{},32:{},33:{f:Ns},36:{},37:{f:As},50:{f:function(e,t){e.l+=6,e.l+=2,e.l+=1,e.l+=3,e.l+=1,e.l+=t-13}},62:{},52:{},67:{f:function(e){var t={};return t.ifnt=e.read_shift(1),e.l++,t.flags=e.read_shift(1),t.numFmtId=63&t.flags,t.flags>>=6,t.fStyle=0,t.data={},t}},68:{f:Vi},69:{},86:{},126:{},127:{f:function(e){var t=e.read_shift(2),r=e.read_shift(2),n=e.read_shift(4),o={fmt:t,env:r,len:n,data:e.slice(e.l,e.l+n)};return e.l+=n,o}},135:{},136:{},137:{},143:{f:function(e){var t=e.read_shift(4),r=e.read_shift(1),n=e.read_shift(r,"sbcs");return 0===n.length&&(n="Sheet1"),{flags:t,name:n}}},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:function(e,t,r){var n=e.l+t,o=cs(e,6,r),a=e.read_shift(2),i=qi(e,a,r);return e.l=n,o.t="str",o.val=i,o}},223:{},234:{},354:{},421:{},518:{f:Jc},521:{f:ws},536:{f:js},547:{f:Ps},561:{},579:{f:function(e){var t={};return t.ifnt=e.read_shift(1),t.numFmtId=e.read_shift(1),t.flags=e.read_shift(2),t.fStyle=t.flags>>2&1,t.data={},t}},1030:{f:Jc},1033:{f:ws},1091:{f:function(e){var t={};return t.ifnt=e.read_shift(1),t.numFmtId=e.read_shift(1),t.flags=e.read_shift(2),t.fStyle=t.flags>>2&1,t.data={},t}},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},101:{},102:{},105:{},106:{},107:{},109:{},112:{},114:{},29282:{}};function sf(e,t,r,n){var o=t;if(!isNaN(o)){var a=n||(r||[]).length||0,i=e.next(4);i.write_shift(2,o),i.write_shift(2,a),a>0&&_o(r)&&e.push(r)}}function lf(e,t,r,n){var o=Jo(9);return Vs(o,e,t),Ki(r,n||"b",o),o}function cf(e,t){t.forEach((function(t){var r=t[0].map((function(e){return e.t})).join("");if(r.length<=2048)return sf(e,28,Ls(r,t[1],t[2]));sf(e,28,Ls(r.slice(0,2048),t[1],t[2],r.length));for(var n=2048;n<r.length;n+=2048)sf(e,28,Ls(r.slice(n,Math.min(n+2048,r.length)),-1,-1,Math.min(2048,r.length-n)))}))}function uf(e,t,r,n,o,a){var i=0;null!=t.z&&-1==(i=o._BIFF2FmtTable.indexOf(t.z))&&(o._BIFF2FmtTable.push(t.z),i=o._BIFF2FmtTable.length-1);var s=0;if(null!=t.z){for(;s<o.cellXfs.length&&o.cellXfs[s].numFmtId!=i;++s);s==o.cellXfs.length&&o.cellXfs.push({numFmtId:i})}if(null!=t.v)switch(t.t){case"d":case"n":var l="d"==t.t?Sr(Dr(t.v,a),a):t.v;return void(2==o.biff&&l==(0|l)&&l>=0&&l<65536?sf(e,2,function(e,t,r,n,o){var a=Jo(9);return Vs(a,e,t,n||0,o||0),a.write_shift(2,r),a}(r,n,l,s,i)):isNaN(l)?sf(e,5,lf(r,n,36,"e")):isFinite(l)?sf(e,3,function(e,t,r,n,o){var a=Jo(15);return Vs(a,e,t,n||0,o||0),a.write_shift(8,r,"f"),a}(r,n,l,s,i)):sf(e,5,lf(r,n,7,"e")));case"b":case"e":return void sf(e,5,lf(r,n,t.v,t.t));case"s":case"str":return void sf(e,4,function(e,t,r){var n=Jo(8+2*r.length);return Vs(n,e,t),n.write_shift(1,r.length),n.write_shift(r.length,r,"sbcs"),n.l<n.length?n.slice(0,n.l):n}(r,n,null==t.v?"":String(t.v).slice(0,255)))}sf(e,1,Vs(null,r,n))}function df(e,t){for(var r=t||{},n=qo(),o=0,a=0;a<e.SheetNames.length;++a)e.SheetNames[a]==r.sheet&&(o=a);if(0==o&&r.sheet&&e.SheetNames[0]!=r.sheet)throw new Error("Sheet not found: "+r.sheet);sf(n,4==r.biff?1033:3==r.biff?521:9,xs(0,16,r)),((e.Workbook||{}).WBProps||{}).date1904&&sf(n,34,Yi(!0)),r.cellXfs=[{numFmtId:0}],r._BIFF2FmtTable=["General"],r._Fonts=[];var i=qo();return function(e,t,r,n,o){var a=null!=t["!data"],i=ma(t["!ref"]||"A1"),s="",l=[];if(i.e.c>255||i.e.r>16383){if(n.WTF)throw new Error("Range "+(t["!ref"]||"A1")+" exceeds format limit A1:IV16384");i.e.c=Math.min(i.e.c,255),i.e.r=Math.min(i.e.r,16383)}for(var c=(((o||{}).Workbook||{}).WBProps||{}).date1904,u=[],d=[],f=i.s.c;f<=i.e.c;++f)l[f]=la(f);for(var p=i.s.r;p<=i.e.r;++p)for(a&&(u=t["!data"][p]||[]),s=ia(p),f=i.s.c;f<=i.e.c;++f){var h=a?u[f]:t[l[f]+s];h&&(uf(e,h,p,f,n,c),h.c&&d.push([h.c,p,f]))}cf(e,d)}(i,e.Sheets[e.SheetNames[o]],0,r,e),r._BIFF2FmtTable.forEach((function(e){r.biff<=3?sf(n,30,function(e){var t=Jo(1+e.length);return t.write_shift(1,e.length),t.write_shift(e.length,e,"sbcs"),t}(e)):sf(n,1054,function(e){var t=Jo(3+e.length);return t.l+=2,t.write_shift(1,e.length),t.write_shift(e.length,e,"sbcs"),t}(e))})),r.cellXfs.forEach((function(e){switch(r.biff){case 2:sf(n,67,function(e){var t=Jo(4);return t.l+=2,t.write_shift(1,e.numFmtId),t.l++,t}(e));break;case 3:sf(n,579,Ds(e));break;case 4:sf(n,1091,Ts(e))}})),delete r._BIFF2FmtTable,delete r.cellXfs,delete r._Fonts,n.push(i.end()),sf(n,10),n.end()}var ff=1,pf=[];function hf(e,t,r){sf(e,49,function(e,t){var r=e.name||"Arial",n=t&&5==t.biff,o=Jo(n?15+r.length:16+2*r.length);return o.write_shift(2,20*(e.sz||12)),o.write_shift(4,0),o.write_shift(2,400),o.write_shift(4,0),o.write_shift(2,0),o.write_shift(1,r.length),n||o.write_shift(1,1),o.write_shift((n?1:2)*r.length,r,n?"sbcs":"utf16le"),o}({sz:12,color:{theme:1},name:"Arial",family:2,scheme:"minor"},r))}function mf(e,t){if(t){var r=0;t.forEach((function(t,n){++r<=256&&t&&sf(e,125,function(e,t){var r=Jo(12);r.write_shift(2,t),r.write_shift(2,t),r.write_shift(2,256*e.width),r.write_shift(2,0);var n=0;return e.hidden&&(n|=1),r.write_shift(1,n),n=e.level||0,r.write_shift(1,n),r.write_shift(2,0),r}(gu(n,t),n))}))}}function gf(e,t,r,n,o,a){var i=16+yu(o.cellXfs,t,o);if(null!=t.v||t.bf)if(t.bf)sf(e,6,$c(t,r,n,0,i));else switch(t.t){case"d":case"n":var s="d"==t.t?Sr(Dr(t.v,a),a):t.v;isNaN(s)?sf(e,517,Os(r,n,36,i,0,"e")):isFinite(s)?sf(e,515,function(e,t,r,n){var o=Jo(14);return us(e,t,n,o),Va(r,o),o}(r,n,s,i)):sf(e,517,Os(r,n,7,i,0,"e"));break;case"b":case"e":sf(e,517,Os(r,n,t.v,i,0,t.t));break;case"s":case"str":if(o.bookSST)sf(e,253,function(e,t,r,n){var o=Jo(10);return us(e,t,n,o),o.write_shift(4,r),o}(r,n,mu(o.Strings,null==t.v?"":String(t.v),o.revStrings),i));else sf(e,516,function(e,t,r,n,o){var a=!o||8==o.biff,i=Jo(+a+8+(1+a)*r.length);return us(e,t,n,i),i.write_shift(2,r.length),a&&i.write_shift(1,1),i.write_shift((1+a)*r.length,r,a?"utf16le":"sbcs"),i}(r,n,(null==t.v?"":String(t.v)).slice(0,255),i,o));break;default:sf(e,513,us(r,n,i))}else sf(e,513,us(r,n,i))}function vf(e,t,r){var n=qo(),o=r.SheetNames[e],a=r.Sheets[o]||{},i=(r||{}).Workbook||{},s=(i.Sheets||[])[e]||{},l=null!=a["!data"],c=8==t.biff,u="",d=[],f=ma(a["!ref"]||"A1"),p=c?65536:16384;if(f.e.c>255||f.e.r>=p){if(t.WTF)throw new Error("Range "+(a["!ref"]||"A1")+" exceeds format limit A1:IV"+p);f.e.c=Math.min(f.e.c,255),f.e.r=Math.min(f.e.r,p-1)}sf(n,2057,xs(0,16,t)),sf(n,13,Gi(1)),sf(n,12,Gi(100)),sf(n,15,Yi(!0)),sf(n,17,Yi(!1)),sf(n,16,Va(.001)),sf(n,95,Yi(!0)),sf(n,42,Yi(!1)),sf(n,43,Yi(!1)),sf(n,130,Gi(1)),sf(n,128,function(e){var t=Jo(8);return t.write_shift(4,0),t.write_shift(2,e[0]?e[0]+1:0),t.write_shift(2,e[1]?e[1]+1:0),t}([0,0])),sf(n,131,Yi(!1)),sf(n,132,Yi(!1)),c&&mf(n,a["!cols"]),sf(n,512,function(e,t){var r=8!=t.biff&&t.biff?2:4,n=Jo(2*r+6);return n.write_shift(r,e.s.r),n.write_shift(r,e.e.r+1),n.write_shift(2,e.s.c),n.write_shift(2,e.e.c+1),n.write_shift(2,0),n}(f,t));var h=(((r||{}).Workbook||{}).WBProps||{}).date1904;c&&(a["!links"]=[]);for(var m=f.s.c;m<=f.e.c;++m)d[m]=la(m);for(var g=[],v=[],y=f.s.r;y<=f.e.r;++y)for(l&&(v=a["!data"][y]||[]),u=ia(y),m=f.s.c;m<=f.e.c;++m){var b=l?v[m]:a[d[m]+u];b&&(gf(n,b,y,m,t,h),c&&b.l&&a["!links"].push([d[m]+u,b.l]),b.c&&g.push([b.c,y,m]))}var w=s.CodeName||s.name||o;return c?function(e,t){var r,n=[],o=0,a=qo(),i=ff;t.forEach((function(e,t){var i="",s=e[0].map((function(e){return e.a&&!i&&(i=e.a),e.t})).join("");++ff;var l=Jo(150);l.write_shift(2,15),l.write_shift(2,61444),l.write_shift(4,150),l.write_shift(2,3234),l.write_shift(2,61450),l.write_shift(4,8),l.write_shift(4,ff),l.write_shift(4,2560),l.write_shift(2,227),l.write_shift(2,61451),l.write_shift(4,84),l.write_shift(2,128),l.write_shift(4,0),l.write_shift(2,139),l.write_shift(4,2),l.write_shift(2,191),l.write_shift(4,524296),l.write_shift(2,344),l.l+=4,l.write_shift(2,385),l.write_shift(4,134217808),l.write_shift(2,387),l.write_shift(4,134217808),l.write_shift(2,389),l.write_shift(4,268435700),l.write_shift(2,447),l.write_shift(4,1048592),l.write_shift(2,448),l.write_shift(4,134217809),l.write_shift(2,451),l.write_shift(4,268435700),l.write_shift(2,513),l.write_shift(4,134217809),l.write_shift(2,515),l.write_shift(4,268435700),l.write_shift(2,575),l.write_shift(4,196609),l.write_shift(2,959),l.write_shift(4,131072|(e[0].hidden?2:0)),l.l+=2,l.write_shift(2,61456),l.write_shift(4,18),l.write_shift(2,3),l.write_shift(2,e[2]+2),l.l+=2,l.write_shift(2,e[1]+1),l.l+=2,l.write_shift(2,e[2]+4),l.l+=2,l.write_shift(2,e[1]+5),l.l+=2,l.l+=2,l.write_shift(2,61457),l.l+=4,l.l=150,0==t?r=l:sf(a,236,l),o+=150;var c=Jo(52);c.write_shift(2,21),c.write_shift(2,18),c.write_shift(2,25),c.write_shift(2,ff),c.write_shift(2,0),c.l=22,c.write_shift(2,13),c.write_shift(2,22),c.write_shift(4,1651663474),c.write_shift(4,2503426821),c.write_shift(4,2150634280),c.write_shift(4,1768515844+256*ff),c.write_shift(2,0),c.write_shift(4,0),c.l+=4,sf(a,93,c);var u=Jo(8);u.l+=2,u.write_shift(2,61453),u.l+=4,sf(a,236,u),o+=8;var d=Jo(18);d.write_shift(2,18),d.l+=8,d.write_shift(2,s.length),d.write_shift(2,16),d.l+=4,sf(a,438,d);var f=Jo(1+s.length);f.write_shift(1,0),f.write_shift(s.length,s,"sbcs"),sf(a,60,f);var p=Jo(16);p.l+=8,p.write_shift(2,s.length),p.l+=6,sf(a,60,p);var h=Jo(12+i.length);h.write_shift(2,e[1]),h.write_shift(2,e[2]),h.write_shift(2,0|(e[0].hidden?0:2)),h.write_shift(2,ff),h.write_shift(2,i.length),h.write_shift(1,0),h.write_shift(i.length,i,"sbcs"),h.l++,n.push(h)}));var s=Jo(80);s.write_shift(2,15),s.write_shift(2,61442),s.write_shift(4,o+s.length-8),s.write_shift(2,16),s.write_shift(2,61448),s.write_shift(4,8),s.write_shift(4,t.length+1),s.write_shift(4,ff),s.write_shift(2,15),s.write_shift(2,61443),s.write_shift(4,o+48),s.write_shift(2,15),s.write_shift(2,61444),s.write_shift(4,40),s.write_shift(2,1),s.write_shift(2,61449),s.write_shift(4,16),s.l+=16,s.write_shift(2,2),s.write_shift(2,61450),s.write_shift(4,8),s.write_shift(4,i),s.write_shift(4,5),sf(e,236,r?gt([s,r]):s),e.push(a.end()),n.forEach((function(t){sf(e,28,t)})),pf.push([i,t.length+1,ff]),++ff}(n,g):cf(n,g),c&&sf(n,574,function(e){var t=Jo(18),r=1718;return e&&e.RTL&&(r|=64),t.write_shift(2,r),t.write_shift(4,0),t.write_shift(4,64),t.write_shift(4,0),t.write_shift(4,0),t}((i.Views||[])[0])),c&&(a["!merges"]||[]).length&&sf(n,229,function(e){var t=Jo(2+8*e.length);t.write_shift(2,e.length);for(var r=0;r<e.length;++r)hs(e[r],t);return t}(a["!merges"])),c&&function(e,t){for(var r=0;r<t["!links"].length;++r){var n=t["!links"][r];sf(e,440,Bs(n)),n[1].Tooltip&&sf(e,2048,Fs(n))}delete t["!links"]}(n,a),sf(n,442,rs(w)),c&&function(e,t){var r=Jo(19);r.write_shift(4,2151),r.write_shift(4,0),r.write_shift(4,0),r.write_shift(2,3),r.write_shift(1,1),r.write_shift(4,0),sf(e,2151,r),(r=Jo(39)).write_shift(4,2152),r.write_shift(4,0),r.write_shift(4,0),r.write_shift(2,3),r.write_shift(1,0),r.write_shift(4,0),r.write_shift(2,1),r.write_shift(4,4),r.write_shift(2,0),hs(ma(t["!ref"]||"A1"),r),r.write_shift(4,4),sf(e,2152,r)}(n,a),sf(n,10),n.end()}function yf(e,t,r){var n=qo(),o=(e||{}).Workbook||{},a=o.Sheets||[],i=o.WBProps||{},s=8==r.biff,l=5==r.biff;(sf(n,2057,xs(0,5,r)),"xla"==r.bookType&&sf(n,135),sf(n,225,s?Gi(1200):null),sf(n,193,function(e,t){t||(t=Jo(e));for(var r=0;r<e;++r)t.write_shift(1,0);return t}(2)),l&&sf(n,191),l&&sf(n,192),sf(n,226),sf(n,92,function(e,t){var r=!t||8==t.biff,n=Jo(r?112:54);for(n.write_shift(8==t.biff?2:1,7),r&&n.write_shift(1,0),n.write_shift(4,859007059),n.write_shift(4,5458548|(r?0:536870912));n.l<n.length;)n.write_shift(1,r?0:32);return n}(0,r)),sf(n,66,Gi(s?1200:1252)),s&&sf(n,353,Gi(0)),s&&sf(n,448),sf(n,317,function(e){for(var t=Jo(2*e),r=0;r<e;++r)t.write_shift(2,r+1);return t}(e.SheetNames.length)),s&&e.vbaraw&&sf(n,211),s&&e.vbaraw)&&sf(n,442,rs(i.CodeName||"ThisWorkbook"));sf(n,156,Gi(17)),sf(n,25,Yi(!1)),sf(n,18,Yi(!1)),sf(n,19,Gi(0)),s&&sf(n,431,Yi(!1)),s&&sf(n,444,Gi(0)),sf(n,61,function(){var e=Jo(18);return e.write_shift(2,0),e.write_shift(2,0),e.write_shift(2,29280),e.write_shift(2,17600),e.write_shift(2,56),e.write_shift(2,0),e.write_shift(2,0),e.write_shift(2,1),e.write_shift(2,500),e}()),sf(n,64,Yi(!1)),sf(n,141,Gi(0)),sf(n,34,Yi("true"==function(e){return e.Workbook&&e.Workbook.WBProps&&Tn(e.Workbook.WBProps.date1904)?"true":"false"}(e))),sf(n,14,Yi(!0)),s&&sf(n,439,Yi(!1)),sf(n,218,Gi(0)),hf(n,0,r),function(e,t,r){t&&[[5,8],[23,26],[41,44],[50,392]].forEach((function(n){for(var o=n[0];o<=n[1];++o)null!=t[o]&&sf(e,1054,ks(o,t[o],r))}))}(n,e.SSF,r),function(e,t){for(var r=0;r<16;++r)sf(e,224,Es({numFmtId:0,style:!0},0,t));t.cellXfs.forEach((function(r){sf(e,224,Es(r,0,t))}))}(n,r),s&&sf(n,352,Yi(!1));var c,u=n.end(),d=qo();s&&sf(d,140,(c||(c=Jo(4)),c.write_shift(2,1),c.write_shift(2,1),c)),s&&pf.length&&sf(d,235,function(){var e=Jo(82+8*pf.length);e.write_shift(2,15),e.write_shift(2,61440),e.write_shift(4,74+8*pf.length),e.write_shift(2,0),e.write_shift(2,61446),e.write_shift(4,16+8*pf.length),e.write_shift(4,ff),e.write_shift(4,pf.length+1);for(var t=0,r=0;r<pf.length;++r)t+=pf[r]&&pf[r][1]||0;return e.write_shift(4,t),e.write_shift(4,pf.length),pf.forEach((function(t){e.write_shift(4,t[0]),e.write_shift(4,t[2])})),e.write_shift(2,51),e.write_shift(2,61451),e.write_shift(4,18),e.write_shift(2,191),e.write_shift(4,524296),e.write_shift(2,385),e.write_shift(4,134217793),e.write_shift(2,448),e.write_shift(4,134217792),e.write_shift(2,64),e.write_shift(2,61726),e.write_shift(4,16),e.write_shift(4,134217741),e.write_shift(4,134217740),e.write_shift(4,134217751),e.write_shift(4,268435703),e}()),s&&r.Strings&&function(e,t,r,n){var o=n||(r||[]).length||0;if(o<=8224)return sf(e,t,r,o);var a=t;if(!isNaN(a)){for(var i=r.parts||[],s=0,l=0,c=0;c+(i[s]||8224)<=8224;)c+=i[s]||8224,s++;var u=e.next(4);for(u.write_shift(2,a),u.write_shift(2,c),e.push(r.slice(l,l+c)),l+=c;l<o;){for((u=e.next(4)).write_shift(2,60),c=0;c+(i[s]||8224)<=8224;)c+=i[s]||8224,s++;u.write_shift(2,c),e.push(r.slice(l,l+c)),l+=c}}}(d,252,function(e){var t=Jo(8);t.write_shift(4,e.Count),t.write_shift(4,e.Unique);for(var r=[],n=0;n<e.length;++n)r[n]=$i(e[n]);var o=gt([t].concat(r));return o.parts=[t.length].concat(r.map((function(e){return e.length}))),o}(r.Strings)),sf(d,10);var f=d.end(),p=qo(),h=0,m=0;for(m=0;m<e.SheetNames.length;++m)h+=(s?12:11)+(s?2:1)*e.SheetNames[m].length;var g=u.length+h+f.length;for(m=0;m<e.SheetNames.length;++m){sf(p,133,Ss({pos:g,hs:(a[m]||{}).Hidden||0,dt:0,name:e.SheetNames[m]},r)),g+=t[m].length}var v=p.end();if(h!=v.length)throw new Error("BS8 "+h+" != "+v.length);var y=[];return u.length&&y.push(u),v.length&&y.push(v),f.length&&y.push(f),gt(y)}function bf(e,t){for(var r=0;r<=e.SheetNames.length;++r){var n=e.Sheets[e.SheetNames[r]];if(n&&n["!ref"]){var o=da(n["!ref"]);o.e.c>255&&"undefined"!=typeof console&&console.error&&console.error("Worksheet '"+e.SheetNames[r]+"' extends beyond column IV (255).  Data may be lost."),o.e.r>65535&&"undefined"!=typeof console&&console.error&&console.error("Worksheet '"+e.SheetNames[r]+"' extends beyond row 65536.  Data may be lost.")}}var a=t||{};switch(a.biff||2){case 8:case 5:return function(e,t){var r=t||{},n=[];e&&!e.SSF&&(e.SSF=Or(Dt)),e&&e.SSF&&(ar(),or(e.SSF),r.revssf=yr(e.SSF),r.revssf[e.SSF[65535]]=0,r.ssf=e.SSF),ff=1,pf=[],r.Strings=[],r.Strings.Count=0,r.Strings.Unique=0,jp(r),r.cellXfs=[],yu(r.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={});for(var o=0;o<e.SheetNames.length;++o)n[n.length]=vf(o,r,e);return n.unshift(yf(e,n,r)),gt(n)}(e,t);case 4:case 3:case 2:return df(e,t)}throw new Error("invalid type "+a.bookType+" for BIFF")}function wf(e,t){var r=t||{},n=null!=r.dense?r.dense:nt,o={};n&&(o["!data"]=[]);var a=(e=Yr(e,"\x3c!--","--\x3e")).match(/<table/i);if(!a)throw new Error("Invalid HTML: could not find <table>");var i=e.match(/<\/table/i),s=a.index,l=i&&i.index||e.length,c=Br(e.slice(s,l),/(:?<tr[^<>]*>)/i,"<tr>"),u=-1,d=0,f=0,p=0,h={s:{r:1e7,c:1e7},e:{r:0,c:0}},m=[];for(s=0;s<c.length;++s){var g=c[s].trim(),v=g.slice(0,3).toLowerCase();if("<tr"!=v){if("<td"==v||"<th"==v){var y=g.split(/<\/t[dh]>/i);for(l=0;l<y.length;++l){var b=y[l].trim();if(b.match(/<t[dh]/i)){for(var w=b,x=0;"<"==w.charAt(0)&&(x=w.indexOf(">"))>-1;)w=w.slice(x+1);for(var S=0;S<m.length;++S){var A=m[S];A.s.c==d&&A.s.r<u&&u<=A.e.r&&(d=A.e.c+1,S=-1)}var k=gn(b.slice(0,b.indexOf(">")));p=k.colspan?+k.colspan:1,((f=+k.rowspan)>1||p>1)&&m.push({s:{r:u,c:d},e:{r:u+(f||1)-1,c:d+p-1}});var C=k.t||k["data-t"]||"";if(w.length)if(w=Nn(w),h.s.r>u&&(h.s.r=u),h.e.r<u&&(h.e.r=u),h.s.c>d&&(h.s.c=d),h.e.c<d&&(h.e.c=d),w.length){var I={t:"s",v:w};r.raw||!w.trim().length||"s"==C||("TRUE"===w?I={t:"b",v:!0}:"FALSE"===w?I={t:"b",v:!1}:isNaN(Pr(w))?isNaN(Ur(w).getDate())?35==w.charCodeAt(0)&&null!=ni[w]&&(I.t="e",I.w=w,I.v=ni[w]):(I={t:"d",v:Dr(w)},!1===r.UTC&&(I.v=Fr(I.v)),r.cellDates||(I={t:"n",v:Sr(I.v)}),I.z=r.dateNF||Dt[14]):I={t:"n",v:Pr(w)}),!1!==I.cellText&&(I.w=w),n?(o["!data"][u]||(o["!data"][u]=[]),o["!data"][u][d]=I):o[ua({r:u,c:d})]=I,d+=p}else d+=p;else d+=p}}}}else{if(++u,r.sheetRows&&r.sheetRows<=u){--u;break}d=0}}return o["!ref"]=fa(h),m.length&&(o["!merges"]=m),o}function xf(e,t,r,n){for(var o=e["!merges"]||[],a=[],i={},s=null!=e["!data"],l=t.s.c;l<=t.e.c;++l){for(var c=0,u=0,d=0;d<o.length;++d)if(!(o[d].s.r>r||o[d].s.c>l)&&!(o[d].e.r<r||o[d].e.c<l)){if(o[d].s.r<r||o[d].s.c<l){c=-1;break}c=o[d].e.r-o[d].s.r+1,u=o[d].e.c-o[d].s.c+1;break}if(!(c<0)){var f=la(l)+ia(r),p=s?(e["!data"][r]||[])[l]:e[f];p&&"n"==p.t&&null!=p.v&&!isFinite(p.v)&&(p=isNaN(p.v)?{t:"e",v:36,w:ri[36]}:{t:"e",v:7,w:ri[7]});var h=p&&null!=p.v&&(p.h||En(p.w||(va(p),p.w)||""))||"";i={},c>1&&(i.rowspan=c),u>1&&(i.colspan=u),n.editable?h='<span contenteditable="true">'+h+"</span>":p&&(i["data-t"]=p&&p.t||"z",null!=p.v&&(i["data-v"]=En(p.v instanceof Date?p.v.toISOString():p.v)),null!=p.z&&(i["data-z"]=p.z),p.l&&"#"!=(p.l.Target||"#").charAt(0)&&(h='<a href="'+En(p.l.Target)+'">'+h+"</a>")),i.id=(n.id||"sjs")+"-"+f,a.push(Hn("td",h,i))}}return"<tr>"+a.join("")+"</tr>"}var Sf='<html><head><meta charset="utf-8"/><title>SheetJS Table Export</title></head><body>',Af="</body></html>";function kf(e,t,r){return[].join("")+"<table"+(r&&r.id?' id="'+r.id+'"':"")+">"}function Cf(e,t){var r=t||{},n=null!=r.header?r.header:Sf,o=null!=r.footer?r.footer:Af,a=[n],i=da(e["!ref"]||"A1");if(a.push(kf(0,0,r)),e["!ref"])for(var s=i.s.r;s<=i.e.r;++s)a.push(xf(e,i,s,r));return a.push("</table>"+o),a.join("")}function If(e,t,r){var n=t.rows;if(!n)throw"Unsupported origin when "+t.tagName+" is not a TABLE";var o=r||{},a=null!=e["!data"],i=0,s=0;if(null!=o.origin)if("number"==typeof o.origin)i=o.origin;else{var l="string"==typeof o.origin?ca(o.origin):o.origin;i=l.r,s=l.c}var c=Math.min(o.sheetRows||1e7,n.length),u={s:{r:0,c:0},e:{r:i,c:s}};if(e["!ref"]){var d=da(e["!ref"]);u.s.r=Math.min(u.s.r,d.s.r),u.s.c=Math.min(u.s.c,d.s.c),u.e.r=Math.max(u.e.r,d.e.r),u.e.c=Math.max(u.e.c,d.e.c),-1==i&&(u.e.r=i=d.e.r+1)}var f=[],p=0,h=e["!rows"]||(e["!rows"]=[]),m=0,g=0,v=0,y=0,b=0,w=0;for(e["!cols"]||(e["!cols"]=[]);m<n.length&&g<c;++m){var x=n[m];if(Df(x)){if(o.display)continue;h[g]={hidden:!0}}var S=x.cells;for(v=y=0;v<S.length;++v){var A=S[v];if(!o.display||!Df(A)){var k=A.hasAttribute("data-v")?A.getAttribute("data-v"):A.hasAttribute("v")?A.getAttribute("v"):Nn(A.innerHTML),C=A.getAttribute("data-z")||A.getAttribute("z");for(p=0;p<f.length;++p){var I=f[p];I.s.c==y+s&&I.s.r<g+i&&g+i<=I.e.r&&(y=I.e.c+1-s,p=-1)}w=+A.getAttribute("colspan")||1,((b=+A.getAttribute("rowspan")||1)>1||w>1)&&f.push({s:{r:g+i,c:y+s},e:{r:g+i+(b||1)-1,c:y+s+(w||1)-1}});var E={t:"s",v:k},D=A.getAttribute("data-t")||A.getAttribute("t")||"";null!=k&&(0==k.length?E.t=D||"z":o.raw||0==k.trim().length||"s"==D||("e"==D&&ri[+k]?E={t:"e",v:+k,w:ri[+k]}:"TRUE"===k?E={t:"b",v:!0}:"FALSE"===k?E={t:"b",v:!1}:isNaN(Pr(k))?isNaN(Ur(k).getDate())?35==k.charCodeAt(0)&&null!=ni[k]&&(E={t:"e",v:ni[k],w:k}):(E={t:"d",v:Dr(k)},o.UTC&&(E.v=zr(E.v)),o.cellDates||(E={t:"n",v:Sr(E.v)}),E.z=o.dateNF||Dt[14]):E={t:"n",v:Pr(k)})),void 0===E.z&&null!=C&&(E.z=C);var T="",O=A.getElementsByTagName("A");if(O&&O.length)for(var M=0;M<O.length&&(!O[M].hasAttribute("href")||"#"==(T=O[M].getAttribute("href")).charAt(0));++M);T&&"#"!=T.charAt(0)&&"javascript:"!=T.slice(0,11).toLowerCase()&&(E.l={Target:T}),a?(e["!data"][g+i]||(e["!data"][g+i]=[]),e["!data"][g+i][y+s]=E):e[ua({c:y+s,r:g+i})]=E,u.e.c<y+s&&(u.e.c=y+s),y+=w}}++g}return f.length&&(e["!merges"]=(e["!merges"]||[]).concat(f)),u.e.r=Math.max(u.e.r,g-1+i),e["!ref"]=fa(u),g>=c&&(e["!fullref"]=fa((u.e.r=n.length-m+g-1+i,u))),e}function Ef(e,t){var r={};return(t||{}).dense&&(r["!data"]=[]),If(r,e,t)}function Df(e){var t="",r=function(e){return e.ownerDocument.defaultView&&"function"===typeof e.ownerDocument.defaultView.getComputedStyle?e.ownerDocument.defaultView.getComputedStyle:"function"===typeof getComputedStyle?getComputedStyle:null}(e);return r&&(t=r(e).getPropertyValue("display")),t||(t=e.style&&e.style.display),"none"===t}function Tf(e){var t=e.replace(/[\t\r\n]/g," ").trim().replace(/ +/g," ").replace(/<text:s\/>/g," ").replace(/<text:s text:c="(\d+)"\/>/g,(function(e,t){return Array(parseInt(t,10)+1).join(" ")})).replace(/<text:tab[^<>]*\/>/g,"\t").replace(/<text:line-break\/>/g,"\n");return[xn(t.replace(/<[^<>]*>/g,""))]}function Of(e,t,r){var n=r||{},o=Vn(e);Gn.lastIndex=0,o=Wr(Yr(o,"\x3c!--","--\x3e"));for(var a,i,s,l="",c="",u=0,d=-1,f="";a=Gn.exec(o);)switch(a[3]=a[3].replace(/_[\s\S]*$/,"")){case"number-style":case"currency-style":case"percentage-style":case"date-style":case"time-style":case"text-style":"/"===a[1]?("false"==i["truncate-on-overflow"]&&(l.match(/h/)?l=l.replace(/h+/,"[$&]"):l.match(/m/)?l=l.replace(/m+/,"[$&]"):l.match(/s/)&&(l=l.replace(/s+/,"[$&]"))),n[i.name]=l,l=""):"/"!==a[0].charAt(a[0].length-2)&&(l="",i=gn(a[0],!1));break;case"boolean-style":"/"===a[1]?(n[i.name]="General",l=""):"/"!==a[0].charAt(a[0].length-2)&&(l="",i=gn(a[0],!1));break;case"boolean":l+="General";break;case"text":"/"===a[1]?"%"==(f=o.slice(d,Gn.lastIndex-a[0].length))&&"<number:percentage-style"==i[0]?l+="%":l+='"'+f.replace(/"/g,'""')+'"':"/"!==a[0].charAt(a[0].length-2)&&(d=Gn.lastIndex);break;case"day":if("short"===(s=gn(a[0],!1)).style)l+="d";else l+="dd";break;case"day-of-week":switch((s=gn(a[0],!1)).style){case"short":default:l+="ddd";break;case"long":l+="dddd"}break;case"era":if("short"===(s=gn(a[0],!1)).style)l+="ee";else l+="eeee";break;case"hours":if("short"===(s=gn(a[0],!1)).style)l+="h";else l+="hh";break;case"minutes":if("short"===(s=gn(a[0],!1)).style)l+="m";else l+="mm";break;case"month":switch((s=gn(a[0],!1)).textual&&(l+="mm"),s.style){case"short":default:l+="m";break;case"long":l+="mm"}break;case"seconds":if("short"===(s=gn(a[0],!1)).style)l+="s";else l+="ss";s["decimal-places"]&&(l+="."+Mr("0",+s["decimal-places"]));break;case"year":switch((s=gn(a[0],!1)).style){case"short":default:l+="yy";break;case"long":l+="yyyy"}break;case"am-pm":l+="AM/PM";break;case"week-of-year":case"quarter":console.error("Excel does not support ODS format token "+a[3]);break;case"fill-character":"/"===a[1]?l+='"'+(f=o.slice(d,Gn.lastIndex-a[0].length)).replace(/"/g,'""')+'"*':"/"!==a[0].charAt(a[0].length-2)&&(d=Gn.lastIndex);break;case"scientific-number":l+="0."+Mr("0",+(s=gn(a[0],!1))["min-decimal-places"]||+s["decimal-places"]||2)+Mr("?",+s["decimal-places"]-+s["min-decimal-places"]||0)+"E"+(Tn(s["forced-exponent-sign"])?"+":"")+Mr("0",+s["min-exponent-digits"]||2);break;case"fraction":+(s=gn(a[0],!1))["min-integer-digits"]?l+=Mr("0",+s["min-integer-digits"]):l+="#",l+=" ",l+=Mr("?",+s["min-numerator-digits"]||1),l+="/",+s["denominator-value"]?l+=s["denominator-value"]:l+=Mr("?",+s["min-denominator-digits"]||1);break;case"currency-symbol":"/"===a[1]?l+='"'+o.slice(d,Gn.lastIndex-a[0].length).replace(/"/g,'""')+'"':"/"!==a[0].charAt(a[0].length-2)?d=Gn.lastIndex:l+="$";break;case"text-properties":switch(((s=gn(a[0],!1)).color||"").toLowerCase().replace("#","")){case"ff0000":case"red":l="[Red]"+l}break;case"text-content":l+="@";break;case"map":s=gn(a[0],!1),"value()>=0"==xn(s.condition)?l=n[s["apply-style-name"]]+";"+l:console.error("ODS number format may be incorrect: "+s.condition);break;case"number":if("/"===a[1])break;c="",c+=Mr("0",+(s=gn(a[0],!1))["min-integer-digits"]||1),Tn(s.grouping)&&(c=Lt(Mr("#",Math.max(0,4-c.length))+c)),(+s["min-decimal-places"]||+s["decimal-places"])&&(c+="."),+s["min-decimal-places"]&&(c+=Mr("0",+s["min-decimal-places"]||1)),+s["decimal-places"]-(+s["min-decimal-places"]||0)&&(c+=Mr("0",+s["decimal-places"]-(+s["min-decimal-places"]||0))),l+=c;break;case"embedded-text":"/"===a[1]?0==u?l+='"'+o.slice(d,Gn.lastIndex-a[0].length).replace(/"/g,'""')+'"':l=l.slice(0,u)+'"'+o.slice(d,Gn.lastIndex-a[0].length).replace(/"/g,'""')+'"'+l.slice(u):"/"!==a[0].charAt(a[0].length-2)&&(d=Gn.lastIndex,u=-+gn(a[0],!1).position||0)}return n}function Mf(e,t,r){var n=t||{};var o,a,i,s,l,c,u,d=Vn(e),f=[],p=0,h={},m=[],g={};n.dense&&(g["!data"]=[]);var v={value:""},y={},b="",w=0,x="",S=0,A=[],k=[],C=-1,I=-1,E={s:{r:1e6,c:1e7},e:{r:0,c:0}},D=0,T=r||{},O={},M=[],P={},j=0,R=0,_=[],N=1,L=1,U=[],B={Names:[],WBProps:{}},F={},z=["",""],W=[],H={},Y="",V=0,G=!1,Z=!1,Q=0;for(Gn.lastIndex=0,d=Wr(Yr(d,"\x3c!--","--\x3e"));c=Gn.exec(d);)switch(c[3]=c[3].replace(/_[\s\S]*$/,"")){case"table":case"\u5de5\u4f5c\u8868":"/"===c[1]?(E.e.c>=E.s.c&&E.e.r>=E.s.r?g["!ref"]=fa(E):g["!ref"]="A1:A1",n.sheetRows>0&&n.sheetRows<=E.e.r&&(g["!fullref"]=g["!ref"],E.e.r=n.sheetRows-1,g["!ref"]=fa(E)),M.length&&(g["!merges"]=M),_.length&&(g["!rows"]=_),s.name=s["\u540d\u79f0"]||s.name,"undefined"!==typeof JSON&&JSON.stringify(s),m.push(s.name),h[s.name]=g,Z=!1):"/"!==c[0].charAt(c[0].length-2)&&(s=gn(c[0],!1),C=I=-1,E.s.r=E.s.c=1e7,E.e.r=E.e.c=0,g={},n.dense&&(g["!data"]=[]),M=[],_=[],Z=!0);break;case"table-row-group":"/"===c[1]?--D:++D;break;case"table-row":case"\u884c":if("/"===c[1]){C+=N,N=1;break}if((l=gn(c[0],!1))["\u884c\u53f7"]?C=l["\u884c\u53f7"]-1:-1==C&&(C=0),(N=+l["number-rows-repeated"]||1)<10)for(Q=0;Q<N;++Q)D>0&&(_[C+Q]={level:D});I=-1;break;case"covered-table-cell":if("/"!==c[1])if(++I,v=gn(c[0],!1),L=parseInt(v["number-columns-repeated"]||"1",10)||1,n.sheetStubs){for(;L-- >0;)n.dense?(g["!data"][C]||(g["!data"][C]=[]),g["!data"][C][I]={t:"z"}):g[ua({r:C,c:I})]={t:"z"},++I;--I}else I+=L-1;b="",A=[];break;case"table-cell":case"\u6570\u636e":if("/"===c[0].charAt(c[0].length-2))++I,v=gn(c[0],!1),L=parseInt(v["number-columns-repeated"]||"1",10)||1,u={t:"z",v:null},v.formula&&0!=n.cellFormula&&(u.f=cu(xn(v.formula))),v["style-name"]&&O[v["style-name"]]&&(u.z=O[v["style-name"]]),"string"==(v["\u6570\u636e\u7c7b\u578b"]||v["value-type"])&&(u.t="s",u.v=xn(v["string-value"]||""),n.dense?(g["!data"][C]||(g["!data"][C]=[]),g["!data"][C][I]=u):g[la(I)+ia(C)]=u),I+=L-1;else if("/"!==c[1]){b=x="",w=S=0,A=[],k=[],L=1;var K=N?C+N-1:C;if(++I>E.e.c&&(E.e.c=I),I<E.s.c&&(E.s.c=I),C<E.s.r&&(E.s.r=C),K>E.e.r&&(E.e.r=K),v=gn(c[0],!1),y=vn(c[0],!0),W=[],H={},u={t:v["\u6570\u636e\u7c7b\u578b"]||v["value-type"],v:null},v["style-name"]&&O[v["style-name"]]&&(u.z=O[v["style-name"]]),n.cellFormula)if(v.formula&&(v.formula=xn(v.formula)),v["number-matrix-columns-spanned"]&&v["number-matrix-rows-spanned"]&&(P={s:{r:C,c:I},e:{r:C+(j=parseInt(v["number-matrix-rows-spanned"],10)||0)-1,c:I+(R=parseInt(v["number-matrix-columns-spanned"],10)||0)-1}},u.F=fa(P),U.push([P,u.F])),v.formula)u.f=cu(v.formula);else for(Q=0;Q<U.length;++Q)C>=U[Q][0].s.r&&C<=U[Q][0].e.r&&I>=U[Q][0].s.c&&I<=U[Q][0].e.c&&(u.F=U[Q][1]);switch((v["number-columns-spanned"]||v["number-rows-spanned"])&&(j=parseInt(v["number-rows-spanned"]||"1",10)||1)*(R=parseInt(v["number-columns-spanned"]||"1",10)||1)>1&&(P={s:{r:C,c:I},e:{r:C+j-1,c:I+R-1}},M.push(P)),v["number-columns-repeated"]&&(L=parseInt(v["number-columns-repeated"],10)),u.t){case"boolean":u.t="b",u.v=Tn(v["boolean-value"])||+v["boolean-value"]>=1;break;case"float":u.t="n",u.v=parseFloat(v.value),n.cellDates&&u.z&&$t(u.z)&&(u.v=Ar(u.v+(B.WBProps.date1904?1462:0)),u.t="number"==typeof u.v?"n":"d");break;case"percentage":case"currency":u.t="n",u.v=parseFloat(v.value);break;case"date":u.t="d",u.v=Dr(v["date-value"],B.WBProps.date1904),n.cellDates||(u.t="n",u.v=Sr(u.v,B.WBProps.date1904)),u.z||(u.z="m/d/yy");break;case"time":u.t="n",u.v=kr(v["time-value"])/86400,n.cellDates&&(u.v=Ar(u.v),u.t="number"==typeof u.v?"n":"d"),u.z||(u.z="HH:MM:SS");break;case"number":u.t="n",u.v=parseFloat(v["\u6570\u636e\u6570\u503c"]);break;default:if("string"!==u.t&&"text"!==u.t&&u.t)throw new Error("Unsupported value type "+u.t);u.t="s",null!=v["string-value"]&&(b=xn(v["string-value"]),A=[])}}else{if(G=!1,"error"==y["calcext:value-type"]&&null!=ni[b]&&(u.t="e",u.w=b,u.v=ni[b]),"s"===u.t&&(u.v=b||"",A.length&&(u.R=A),G=0==w),F.Target&&(u.l=F),W.length>0&&(u.c=W,W=[]),b&&!1!==n.cellText&&(u.w=b),G&&(u.t="z",delete u.v),(!G||n.sheetStubs)&&!(n.sheetRows&&n.sheetRows<=C))for(var X=0;X<N;++X){if(L=parseInt(v["number-columns-repeated"]||"1",10),n.dense)for(g["!data"][C+X]||(g["!data"][C+X]=[]),g["!data"][C+X][I]=0==X?u:Or(u);--L>0;)g["!data"][C+X][I+L]=Or(u);else for(g[ua({r:C+X,c:I})]=u;--L>0;)g[ua({r:C+X,c:I+L})]=Or(u);E.e.c<=I&&(E.e.c=I)}I+=(L=parseInt(v["number-columns-repeated"]||"1",10))-1,L=0,u={},b="",A=[]}F={};break;case"document":case"document-content":case"\u7535\u5b50\u8868\u683c\u6587\u6863":case"spreadsheet":case"\u4e3b\u4f53":case"scripts":case"styles":case"font-face-decls":case"master-styles":if("/"===c[1]){if((o=f.pop())[0]!==c[3])throw"Bad state: "+o}else"/"!==c[0].charAt(c[0].length-2)&&f.push([c[3],!0]);break;case"annotation":if("/"===c[1]){if((o=f.pop())[0]!==c[3])throw"Bad state: "+o;H.t=b,A.length&&(H.R=A),H.a=Y,W.push(H),b=x,w=S,A=k}else if("/"!==c[0].charAt(c[0].length-2)){f.push([c[3],!1]);var J=gn(c[0],!0);J.display&&Tn(J.display)||(W.hidden=!0),x=b,S=w,k=A,b="",w=0,A=[]}Y="",V=0;break;case"creator":"/"===c[1]?Y=d.slice(V,c.index):V=c.index+c[0].length;break;case"meta":case"\u5143\u6570\u636e":case"settings":case"config-item-set":case"config-item-map-indexed":case"config-item-map-entry":case"config-item-map-named":case"shapes":case"frame":case"text-box":case"image":case"data-pilot-tables":case"list-style":case"form":case"dde-links":case"event-listeners":case"chart":if("/"===c[1]){if((o=f.pop())[0]!==c[3])throw"Bad state: "+o}else"/"!==c[0].charAt(c[0].length-2)&&f.push([c[3],!1]);b="",w=0,A=[];break;case"scientific-number":case"currency-symbol":case"fill-character":case"script":case"libraries":case"automatic-styles":case"default-style":case"page-layout":case"map":case"font-face":case"paragraph-properties":case"table-properties":case"table-column-properties":case"table-row-properties":case"table-cell-properties":case"number":case"fraction":case"day":case"month":case"year":case"era":case"day-of-week":case"week-of-year":case"quarter":case"hours":case"minutes":case"seconds":case"am-pm":case"boolean":case"text-content":case"text-properties":case"embedded-text":case"body":case"\u7535\u5b50\u8868\u683c":case"forms":case"table-column":case"table-header-rows":case"table-rows":case"table-column-group":case"table-header-columns":case"table-columns":case"graphic-properties":case"calculation-settings":case"named-expressions":case"label-range":case"label-ranges":case"named-expression":case"sort":case"sort-by":case"sort-groups":case"tab":case"line-break":case"span":case"s":case"date":case"object":case"title":case"\u6807\u9898":case"desc":case"binary-data":case"table-source":case"scenario":case"iteration":case"content-validations":case"content-validation":case"help-message":case"error-message":case"database-ranges":case"filter":case"filter-and":case"filter-or":case"filter-condition":case"filter-set-item":case"list-level-style-bullet":case"list-level-style-number":case"list-level-properties":case"sender-firstname":case"sender-lastname":case"sender-initials":case"sender-title":case"sender-position":case"sender-email":case"sender-phone-private":case"sender-fax":case"sender-company":case"sender-phone-work":case"sender-street":case"sender-city":case"sender-postal-code":case"sender-country":case"sender-state-or-province":case"author-name":case"author-initials":case"chapter":case"file-name":case"template-name":case"sheet-name":case"event-listener":case"initial-creator":case"creation-date":case"print-date":case"generator":case"document-statistic":case"user-defined":case"editing-duration":case"editing-cycles":case"config-item":case"page-number":case"page-count":case"time":case"cell-range-source":case"detective":case"operation":case"highlighted-range":case"data-pilot-table":case"source-cell-range":case"source-service":case"data-pilot-field":case"data-pilot-level":case"data-pilot-subtotals":case"data-pilot-subtotal":case"data-pilot-members":case"data-pilot-member":case"data-pilot-display-info":case"data-pilot-sort-info":case"data-pilot-layout-info":case"data-pilot-field-reference":case"data-pilot-groups":case"data-pilot-group":case"data-pilot-group-member":case"rect":case"dde-connection-decls":case"dde-connection-decl":case"dde-link":case"dde-source":case"properties":case"property":case"table-protection":case"data-pilot-grand-total":case"office-document-common-attrs":break;case"text-style":case"boolean-style":case"number-style":case"currency-style":case"percentage-style":case"date-style":case"time-style":if("/"===c[1]){var $=Gn.lastIndex;Of(d.slice(i,Gn.lastIndex),0,T),Gn.lastIndex=$}else"/"!==c[0].charAt(c[0].length-2)&&(i=Gn.lastIndex-c[0].length);break;case"style":var q=gn(c[0],!1);"table-cell"==q.family&&T[q["data-style-name"]]&&(O[q.name]=T[q["data-style-name"]]);break;case"text":if("/>"===c[0].slice(-2))break;if("/"===c[1])switch(f[f.length-1][0]){case"number-style":case"date-style":case"time-style":d.slice(p,c.index)}else p=c.index+c[0].length;break;case"named-range":z=uu((a=gn(c[0],!1))["cell-range-address"]);var ee={Name:a.name,Ref:z[0]+"!"+z[1]};Z&&(ee.Sheet=m.length),B.Names.push(ee);break;case"null-date":if("1904-01-01"===(a=gn(c[0],!1))["date-value"])B.WBProps.date1904=!0;break;case"p":case"\u6587\u672c\u4e32":if(["master-styles"].indexOf(f[f.length-1][0])>-1)break;if("/"!==c[1]||v&&v["string-value"])"/>"==c[0].slice(-2)?b+="\n":(gn(c[0],!1),w=c.index+c[0].length);else{var te=Tf(d.slice(w,c.index));b=(b.length>0?b+"\n":"")+te[0]}break;case"database-range":if("/"===c[1])break;try{h[(z=uu(gn(c[0])["target-range-address"]))[0]]["!autofilter"]={ref:z[1]}}catch(o6){}break;case"a":if("/"!==c[1]){if(!(F=gn(c[0],!1)).href)break;F.Target=xn(F.href),delete F.href,"#"==F.Target.charAt(0)&&F.Target.indexOf(".")>-1?(z=uu(F.Target.slice(1)),F.Target="#"+z[0]+"!"+z[1]):F.Target.match(/^\.\.[\\\/]/)&&(F.Target=F.Target.slice(3))}break;default:switch(c[2]){case"dc:":case"calcext:":case"loext:":case"ooo:":case"chartooo:":case"draw:":case"style:":case"chart:":case"form:":case"uof:":case"\u8868:":case"\u5b57:":break;default:if(n.WTF)throw new Error(c)}}var re={Sheets:h,SheetNames:m,Workbook:B};return n.bookSheets&&delete re.Sheets,re}function Pf(e,t){t=t||{},qr(e,"META-INF/manifest.xml")&&function(e,t){for(var r,n,o=Vn(e);r=Gn.exec(o);)switch(r[3]){case"manifest":break;case"file-entry":if("/"==(n=gn(r[0],!1)).path&&"application/vnd.oasis.opendocument.spreadsheet"!==n.type)throw new Error("This OpenDocument is not a spreadsheet");break;case"encryption-data":case"algorithm":case"start-key-generation":case"key-derivation":throw new Error("Unsupported ODS Encryption");default:if(t&&t.WTF)throw r}}(tn(e,"META-INF/manifest.xml"),t);var r=rn(e,"styles.xml"),n=r&&Of(Rn(r)),o=rn(e,"content.xml");if(!o)throw new Error("Missing content.xml in ODS / UOF file");var a=Mf(Rn(o),t,n);return qr(e,"meta.xml")&&(a.Props=gi(tn(e,"meta.xml"))),a.bookType="ods",a}function jf(e,t){var r=Mf(e,t);return r.bookType="fods",r}var Rf=function(){var e=["<office:master-styles>",'<style:master-page style:name="mp1" style:page-layout-name="mp1">',"<style:header/>",'<style:header-left style:display="false"/>',"<style:footer/>",'<style:footer-left style:display="false"/>',"</style:master-page>","</office:master-styles>"].join(""),t="<office:document-styles "+Wn({"xmlns:office":"urn:oasis:names:tc:opendocument:xmlns:office:1.0","xmlns:table":"urn:oasis:names:tc:opendocument:xmlns:table:1.0","xmlns:style":"urn:oasis:names:tc:opendocument:xmlns:style:1.0","xmlns:text":"urn:oasis:names:tc:opendocument:xmlns:text:1.0","xmlns:draw":"urn:oasis:names:tc:opendocument:xmlns:drawing:1.0","xmlns:fo":"urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0","xmlns:xlink":"http://www.w3.org/1999/xlink","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:of":"urn:oasis:names:tc:opendocument:xmlns:of:1.2","office:version":"1.2"})+">"+e+"</office:document-styles>";return function(){return un+t}}();function _f(e,t){var r="number",n="",o={"style:name":t},a="",i=0;e:if((e=e.replace(/"[$]"/g,"$")).indexOf(";")>-1&&(console.error("Unsupported ODS Style Map exported.  Using first branch of "+e),e=e.slice(0,e.indexOf(";"))),"@"!=e){if(e.indexOf(/\$/)>-1&&(r="currency"),'"'==e[i]){for(a="";'"'!=e[++i]||'"'==e[++i];)a+=e[i];"*"==e[--i+1]?(i++,n+="<number:fill-character>"+kn(a.replace(/""/g,'"'))+"</number:fill-character>"):n+="<number:text>"+kn(a.replace(/""/g,'"'))+"</number:text>",e=e.slice(i+1),i=0}var s=e.match(/# (\?+)\/(\?+)/);if(s)n+=Hn("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":s[1].length,"number:max-denominator-value":Math.max(+s[1].replace(/./g,"9"),+s[2].replace(/./g,"9"))});else if(s=e.match(/# (\?+)\/(\d+)/))n+=Hn("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":s[1].length,"number:denominator-value":+s[2]});else if(s=e.match(/\b(\d+)(|\.\d+)%/))r="percentage",n+=Hn("number:number",null,{"number:decimal-places":s[2]&&s.length-1||0,"number:min-decimal-places":s[2]&&s.length-1||0,"number:min-integer-digits":s[1].length})+"<number:text>%</number:text>";else{var l=!1;if(["y","m","d"].indexOf(e[0])>-1){r="date";t:for(;i<e.length;++i)switch(a=e[i].toLowerCase()){case"h":case"s":l=!0,--i;break t;case"m":r:for(var c=i+1;c<e.length;++c)switch(e[c]){case"y":case"d":break r;case"h":case"s":l=!0,--i;break t}case"y":case"d":for(;(e[++i]||"").toLowerCase()==a[0];)a+=a[0];switch(--i,a){case"y":case"yy":n+="<number:year/>";break;case"yyy":case"yyyy":n+='<number:year number:style="long"/>';break;case"mmmmm":console.error("ODS has no equivalent of format |mmmmm|");case"m":case"mm":case"mmm":case"mmmm":n+='<number:month number:style="'+(a.length%2?"short":"long")+'" number:textual="'+(a.length>=3?"true":"false")+'"/>';break;case"d":case"dd":n+='<number:day number:style="'+(a.length%2?"short":"long")+'"/>';break;case"ddd":case"dddd":n+='<number:day-of-week number:style="'+(a.length%2?"short":"long")+'"/>'}break;case'"':for(;'"'!=e[++i]||'"'==e[++i];)a+=e[i];--i,n+="<number:text>"+kn(a.slice(1).replace(/""/g,'"'))+"</number:text>";break;case"\\":n+="<number:text>"+kn(a=e[++i])+"</number:text>";break;case"/":case":":n+="<number:text>"+kn(a)+"</number:text>";break;default:console.error("unrecognized character "+a+" in ODF format "+e)}if(!l)break e;e=e.slice(i+1),i=0}if(e.match(/^\[?[hms]/))for("number"==r&&(r="time"),e.match(/\[/)&&(e=e.replace(/[\[\]]/g,""),o["number:truncate-on-overflow"]="false");i<e.length;++i)switch(a=e[i].toLowerCase()){case"h":case"m":case"s":for(;(e[++i]||"").toLowerCase()==a[0];)a+=a[0];switch(--i,a){case"h":case"hh":n+='<number:hours number:style="'+(a.length%2?"short":"long")+'"/>';break;case"m":case"mm":n+='<number:minutes number:style="'+(a.length%2?"short":"long")+'"/>';break;case"s":case"ss":if("."==e[i+1])do{a+=e[i+1],++i}while("0"==e[i+1]);n+='<number:seconds number:style="'+(a.match("ss")?"long":"short")+'"'+(a.match(/\./)?' number:decimal-places="'+(a.match(/0+/)||[""])[0].length+'"':"")+"/>"}break;case'"':for(;'"'!=e[++i]||'"'==e[++i];)a+=e[i];--i,n+="<number:text>"+kn(a.slice(1).replace(/""/g,'"'))+"</number:text>";break;case"/":case":":n+="<number:text>"+kn(a)+"</number:text>";break;case"a":if("a/p"==e.slice(i,i+3).toLowerCase()){n+="<number:am-pm/>",i+=2;break}if("am/pm"==e.slice(i,i+5).toLowerCase()){n+="<number:am-pm/>",i+=4;break}default:console.error("unrecognized character "+a+" in ODF format "+e)}else{if(e.indexOf(/\$/)>-1&&(r="currency"),"$"==e[0]&&(n+='<number:currency-symbol number:language="en" number:country="US">$</number:currency-symbol>',e=e.slice(1),i=0),'"'==e[i=0]){for(;'"'!=e[++i]||'"'==e[++i];)a+=e[i];"*"==e[--i+1]?(i++,n+="<number:fill-character>"+kn(a.replace(/""/g,'"'))+"</number:fill-character>"):n+="<number:text>"+kn(a.replace(/""/g,'"'))+"</number:text>",e=e.slice(i+1),i=0}var u=e.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);if(u&&u[0]){var d=u[1].replace(/,/g,"");n+="<number:"+(u[3]?"scientific-":"")+'number number:min-integer-digits="'+(-1==d.indexOf("0")?"0":d.length-d.indexOf("0"))+'"'+(u[0].indexOf(",")>-1?' number:grouping="true"':"")+(u[2]&&' number:decimal-places="'+(u[2].length-1)+'"'||' number:decimal-places="0"')+(u[3]&&u[3].indexOf("+")>-1?' number:forced-exponent-sign="true"':"")+(u[3]?' number:min-exponent-digits="'+u[3].match(/0+/)[0].length+'"':"")+"></number:"+(u[3]?"scientific-":"")+"number>",i=u.index+u[0].length}else console.error("Could not find numeric part of "+e);if('"'==e[i]){for(a="";'"'!=e[++i]||'"'==e[++i];)a+=e[i];--i,n+="<number:text>"+kn(a.replace(/""/g,'"'))+"</number:text>"}}}}else r="text",n="<number:text-content/>";return n?Hn("number:"+r+"-style",n,o):(console.error("Could not generate ODS number format for |"+e+"|"),"")}function Nf(e,t,r){for(var n=[],o=0;o<e.length;++o){var a=e[o];a&&(a.Sheet==(-1==r?null:r)&&n.push(a))}return n.length?"      <table:named-expressions>\n"+n.map((function(e){var t=(-1==r?"$":"")+du(e.Ref);return"        "+Hn("table:named-range",null,{"table:name":e.Name,"table:cell-range-address":t,"table:base-cell-address":t.replace(/[\.][^\.]*$/,".$A$1")})})).join("\n")+"\n      </table:named-expressions>\n":""}var Lf=function(){var e=function(e,t){return kn(e).replace(/  +/g,(function(e){return'<text:s text:c="'+e.length+'"/>'})).replace(/\t/g,"<text:tab/>").replace(/\n/g,t?"<text:line-break/>":"</text:p><text:p>").replace(/^ /,"<text:s/>").replace(/ $/,"<text:s/>")},t="          <table:table-cell />\n",r=function(r,n,o,a,i,s){var l=[];l.push('      <table:table table:name="'+kn(n.SheetNames[o])+'" table:style-name="ta1">\n');var c=0,u=0,d=da(r["!ref"]||"A1"),f=r["!merges"]||[],p=0,h=null!=r["!data"];if(r["!cols"])for(u=0;u<=d.e.c;++u)l.push("        <table:table-column"+(r["!cols"][u]?' table:style-name="co'+r["!cols"][u].ods+'"':"")+"></table:table-column>\n");var m="",g=r["!rows"]||[];for(c=0;c<d.s.r;++c)m=g[c]?' table:style-name="ro'+g[c].ods+'"':"",l.push("        <table:table-row"+m+"></table:table-row>\n");for(;c<=d.e.r;++c){for(m=g[c]?' table:style-name="ro'+g[c].ods+'"':"",l.push("        <table:table-row"+m+">\n"),u=0;u<d.s.c;++u)l.push(t);for(;u<=d.e.c;++u){var v=!1,y={},b="";for(p=0;p!=f.length;++p)if(!(f[p].s.c>u)&&!(f[p].s.r>c)&&!(f[p].e.c<u)&&!(f[p].e.r<c)){f[p].s.c==u&&f[p].s.r==c||(v=!0),y["table:number-columns-spanned"]=f[p].e.c-f[p].s.c+1,y["table:number-rows-spanned"]=f[p].e.r-f[p].s.r+1;break}if(v)l.push("          <table:covered-table-cell/>\n");else{var w=ua({r:c,c:u}),x=h?(r["!data"][c]||[])[u]:r[w];if(x&&x.f&&(y["table:formula"]=kn(("of:="+x.f.replace(vc,"$1[.$2$3$4$5]").replace(/\]:\[/g,":")).replace(/;/g,"|").replace(/,/g,";")),x.F&&x.F.slice(0,w.length)==w)){var S=da(x.F);y["table:number-matrix-columns-spanned"]=S.e.c-S.s.c+1,y["table:number-matrix-rows-spanned"]=S.e.r-S.s.r+1}if(x){switch(x.t){case"b":b=x.v?"TRUE":"FALSE",y["office:value-type"]="boolean",y["office:boolean-value"]=x.v?"true":"false";break;case"n":isFinite(x.v)?(b=x.w||String(x.v||0),y["office:value-type"]="float",y["office:value"]=x.v||0):(isNaN(x.v)?(b="#NUM!",y["table:formula"]="of:=#NUM!"):(b="#DIV/0!",y["table:formula"]="of:="+(x.v<0?"-":"")+"1/0"),y["office:string-value"]="",y["office:value-type"]="string",y["calcext:value-type"]="error");break;case"s":case"str":b=null==x.v?"":x.v,y["office:value-type"]="string";break;case"d":b=x.w||Dr(x.v,s).toISOString(),y["office:value-type"]="date",y["office:date-value"]=Dr(x.v,s).toISOString(),y["table:style-name"]="ce1";break;default:l.push(t);continue}var A=e(b);if(x.l&&x.l.Target){var k=x.l.Target;"#"==(k="#"==k.charAt(0)?"#"+du(k.slice(1)):k).charAt(0)||k.match(/^\w+:/)||(k="../"+k),A=Hn("text:a",A,{"xlink:href":k.replace(/&/g,"&amp;")})}i[x.z]&&(y["table:style-name"]="ce"+i[x.z].slice(1));var C=Hn("text:p",A,{});if(x.c){for(var I="",E="",D={},T=0;T<x.c.length;++T)!I&&x.c[T].a&&(I=x.c[T].a),E+="<text:p>"+e(x.c[T].t)+"</text:p>";x.c.hidden||(D["office:display"]=!0),C=Hn("office:annotation",E,D)+C}l.push("          "+Hn("table:table-cell",C,y)+"\n")}else l.push(t)}}l.push("        </table:table-row>\n")}return(n.Workbook||{}).Names&&l.push(Nf(n.Workbook.Names,n.SheetNames,o)),l.push("      </table:table>\n"),l.join("")};return function(e,t){var n=[un],o=Wn({"xmlns:office":"urn:oasis:names:tc:opendocument:xmlns:office:1.0","xmlns:table":"urn:oasis:names:tc:opendocument:xmlns:table:1.0","xmlns:style":"urn:oasis:names:tc:opendocument:xmlns:style:1.0","xmlns:text":"urn:oasis:names:tc:opendocument:xmlns:text:1.0","xmlns:draw":"urn:oasis:names:tc:opendocument:xmlns:drawing:1.0","xmlns:fo":"urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0","xmlns:xlink":"http://www.w3.org/1999/xlink","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","xmlns:script":"urn:oasis:names:tc:opendocument:xmlns:script:1.0","xmlns:ooo":"http://openoffice.org/2004/office","xmlns:ooow":"http://openoffice.org/2004/writer","xmlns:oooc":"http://openoffice.org/2004/calc","xmlns:dom":"http://www.w3.org/2001/xml-events","xmlns:xforms":"http://www.w3.org/2002/xforms","xmlns:xsd":"http://www.w3.org/2001/XMLSchema","xmlns:xsi":"http://www.w3.org/2001/XMLSchema-instance","xmlns:sheet":"urn:oasis:names:tc:opendocument:sh33tjs:1.0","xmlns:rpt":"http://openoffice.org/2005/report","xmlns:of":"urn:oasis:names:tc:opendocument:xmlns:of:1.2","xmlns:xhtml":"http://www.w3.org/1999/xhtml","xmlns:grddl":"http://www.w3.org/2003/g/data-view#","xmlns:tableooo":"http://openoffice.org/2009/table","xmlns:drawooo":"http://openoffice.org/2010/draw","xmlns:calcext":"urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0","xmlns:loext":"urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0","xmlns:field":"urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0","xmlns:formx":"urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0","xmlns:css3t":"http://www.w3.org/TR/css3-text/","office:version":"1.2"}),a=Wn({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});"fods"==t.bookType?(n.push("<office:document"+o+a+">\n"),n.push(hi().replace(/<office:document-meta[^<>]*?>/,"").replace(/<\/office:document-meta>/,"")+"\n")):n.push("<office:document-content"+o+">\n");var i=function(e,t){e.push(" <office:automatic-styles>\n");var r=0;t.SheetNames.map((function(e){return t.Sheets[e]})).forEach((function(t){if(t&&t["!cols"])for(var n=0;n<t["!cols"].length;++n)if(t["!cols"][n]){var o=t["!cols"][n];if(null==o.width&&null==o.wpx&&null==o.wch)continue;Pl(o),o.ods=r;var a=t["!cols"][n].wpx+"px";e.push('  <style:style style:name="co'+r+'" style:family="table-column">\n'),e.push('   <style:table-column-properties fo:break-before="auto" style:column-width="'+a+'"/>\n'),e.push("  </style:style>\n"),++r}}));var n=0;t.SheetNames.map((function(e){return t.Sheets[e]})).forEach((function(t){if(t&&t["!rows"])for(var r=0;r<t["!rows"].length;++r)if(t["!rows"][r]){t["!rows"][r].ods=n;var o=t["!rows"][r].hpx+"px";e.push('  <style:style style:name="ro'+n+'" style:family="table-row">\n'),e.push('   <style:table-row-properties fo:break-before="auto" style:row-height="'+o+'"/>\n'),e.push("  </style:style>\n"),++n}})),e.push('  <style:style style:name="ta1" style:family="table" style:master-page-name="mp1">\n'),e.push('   <style:table-properties table:display="true" style:writing-mode="lr-tb"/>\n'),e.push("  </style:style>\n"),e.push('  <number:date-style style:name="N37" number:automatic-order="true">\n'),e.push('   <number:month number:style="long"/>\n'),e.push("   <number:text>/</number:text>\n"),e.push('   <number:day number:style="long"/>\n'),e.push("   <number:text>/</number:text>\n"),e.push("   <number:year/>\n"),e.push("  </number:date-style>\n");var o={},a=69;return t.SheetNames.map((function(e){return t.Sheets[e]})).forEach((function(t){if(t){var r=null!=t["!data"];if(t["!ref"])for(var n=da(t["!ref"]),i=0;i<=n.e.r;++i)for(var s=0;s<=n.e.c;++s){var l=r?(t["!data"][i]||[])[s]:t[ua({r:i,c:s})];if(l&&l.z&&"general"!=l.z.toLowerCase()&&!o[l.z]){var c=_f(l.z,"N"+a);c&&(o[l.z]="N"+a,++a,e.push(c+"\n"))}}}})),e.push('  <style:style style:name="ce1" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N37"/>\n'),mr(o).forEach((function(t){e.push('<style:style style:name="ce'+o[t].slice(1)+'" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="'+o[t]+'"/>\n')})),e.push(" </office:automatic-styles>\n"),o}(n,e);n.push("  <office:body>\n"),n.push("    <office:spreadsheet>\n"),((e.Workbook||{}).WBProps||{}).date1904&&n.push('      <table:calculation-settings table:case-sensitive="false" table:search-criteria-must-apply-to-whole-cell="true" table:use-wildcards="true" table:use-regular-expressions="false" table:automatic-find-labels="false">\n        <table:null-date table:date-value="1904-01-01"/>\n      </table:calculation-settings>\n');for(var s=0;s!=e.SheetNames.length;++s)n.push(r(e.Sheets[e.SheetNames[s]],e,s,0,i,((e.Workbook||{}).WBProps||{}).date1904));return(e.Workbook||{}).Names&&n.push(Nf(e.Workbook.Names,e.SheetNames,-1)),n.push("    </office:spreadsheet>\n"),n.push("  </office:body>\n"),"fods"==t.bookType?n.push("</office:document>"):n.push("</office:document-content>"),n.join("")}}();function Uf(e,t){if("fods"==t.bookType)return Lf(e,t);var r=sn(),n="",o=[],a=[];return an(r,n="mimetype","application/vnd.oasis.opendocument.spreadsheet"),an(r,n="content.xml",Lf(e,t)),o.push([n,"text/xml"]),a.push([n,"ContentFile"]),an(r,n="styles.xml",Rf(e,t)),o.push([n,"text/xml"]),a.push([n,"StylesFile"]),an(r,n="meta.xml",un+hi()),o.push([n,"text/xml"]),a.push([n,"MetadataFile"]),an(r,n="manifest.rdf",function(e){var t,r,n=[un];n.push('<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">\n');for(var o=0;o!=e.length;++o)n.push(pi(e[o][0],e[o][1])),n.push((t="",r=e[o][0],['  <rdf:Description rdf:about="'+t+'">\n','    <ns0:hasPart xmlns:ns0="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" rdf:resource="'+r+'"/>\n',"  </rdf:Description>\n"].join("")));return n.push(pi("","Document","pkg")),n.push("</rdf:RDF>"),n.join("")}(a)),o.push([n,"application/rdf+xml"]),an(r,n="META-INF/manifest.xml",function(e){var t=[un];t.push('<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" manifest:version="1.2">\n'),t.push('  <manifest:file-entry manifest:full-path="/" manifest:version="1.2" manifest:media-type="application/vnd.oasis.opendocument.spreadsheet"/>\n');for(var r=0;r<e.length;++r)t.push('  <manifest:file-entry manifest:full-path="'+e[r][0]+'" manifest:media-type="'+e[r][1]+'"/>\n');return t.push("</manifest:manifest>"),t.join("")}(o)),r}var Bf=function(){try{return"undefined"==typeof Uint8Array||"undefined"==typeof Uint8Array.prototype.subarray?"slice":"undefined"!==typeof Buffer?"undefined"==typeof Buffer.prototype.subarray?"slice":("function"==typeof Buffer.from?Buffer.from([72,62]):new Buffer([72,62]))instanceof Uint8Array?"subarray":"slice":"subarray"}catch(o6){return"slice"}}();function Ff(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function zf(e){return"undefined"!=typeof TextDecoder?(new TextDecoder).decode(e):Rn(ht(e))}function Wf(e){return"undefined"!=typeof TextEncoder?(new TextEncoder).encode(e):ft(_n(e))}function Hf(e){for(var t=0,r=0;r<e.length;++r)t+=e[r].length;var n=new Uint8Array(t),o=0;for(r=0;r<e.length;++r){var a=e[r],i=a.length;if(i<250)for(var s=0;s<i;++s)n[o++]=a[s];else n.set(a,o),o+=i}return n}function Yf(e){return 16843009*((e=(858993459&(e-=e>>1&1431655765))+(e>>2&858993459))+(e>>4)&252645135)>>>24}function Vf(e,t){var r=t.l,n=127&e[r];e:if(e[r++]>=128){if(n|=(127&e[r])<<7,e[r++]<128)break e;if(n|=(127&e[r])<<14,e[r++]<128)break e;if(n|=(127&e[r])<<21,e[r++]<128)break e;if(n+=(127&e[r])*Math.pow(2,28),++r,e[r++]<128)break e;if(n+=(127&e[r])*Math.pow(2,35),++r,e[r++]<128)break e;if(n+=(127&e[r])*Math.pow(2,42),++r,e[r++]<128)break e}return t.l=r,n}function Gf(e){var t=new Uint8Array(7);t[0]=127&e;var r=1;e:if(e>127){if(t[r-1]|=128,t[r]=e>>7&127,++r,e<=16383)break e;if(t[r-1]|=128,t[r]=e>>14&127,++r,e<=2097151)break e;if(t[r-1]|=128,t[r]=e>>21&127,++r,e<=268435455)break e;if(t[r-1]|=128,t[r]=e/256>>>21&127,++r,e<=34359738367)break e;if(t[r-1]|=128,t[r]=e/65536>>>21&127,++r,e<=4398046511103)break e;t[r-1]|=128,t[r]=e/16777216>>>21&127,++r}return t[Bf](0,r)}function Zf(e){for(var t={l:0},r=[];t.l<e.length;)r.push(Vf(e,t));return r}function Qf(e){return Hf(e.map((function(e){return Gf(e)})))}function Kf(e){var t=0,r=127&e[t];return e[t++]<128?r:(r|=(127&e[t])<<7,e[t++]<128?r:(r|=(127&e[t])<<14,e[t++]<128?r:(r|=(127&e[t])<<21,e[t++]<128?r:r|=(15&e[t])<<28)))}function Xf(e){for(var t=[],r={l:0};r.l<e.length;){var n,o=r.l,a=Vf(e,r),i=7&a;a=a/8|0;var s=r.l;switch(i){case 0:for(;e[s++]>=128;);n=e[Bf](r.l,s),r.l=s;break;case 1:n=e[Bf](s,s+8),r.l=s+8;break;case 2:var l=Vf(e,r);n=e[Bf](r.l,r.l+l),r.l+=l;break;case 5:n=e[Bf](s,s+4),r.l=s+4;break;default:throw new Error("PB Type ".concat(i," for Field ").concat(a," at offset ").concat(o))}var c={data:n,type:i};null==t[a]&&(t[a]=[]),t[a].push(c)}return t}function Jf(e){var t=[];return e.forEach((function(e,r){0!=r&&e.forEach((function(e){e.data&&(t.push(Gf(8*r+e.type)),2==e.type&&t.push(Gf(e.data.length)),t.push(e.data))}))})),Hf(t)}function $f(e,t){return(null==e?void 0:e.map((function(e){return t(e.data)})))||[]}function qf(e){for(var t,r=[],n={l:0};n.l<e.length;){var o=Vf(e,n),a=Xf(e[Bf](n.l,n.l+o));n.l+=o;var i={id:Kf(a[1][0].data),messages:[]};a[2].forEach((function(t){var r=Xf(t.data),o=Kf(r[3][0].data);i.messages.push({meta:r,data:e[Bf](n.l,n.l+o)}),n.l+=o})),(null==(t=a[3])?void 0:t[0])&&(i.merge=Kf(a[3][0].data)>>>0>0),r.push(i)}return r}function ep(e){var t=[];return e.forEach((function(e){var r=[[],[{data:Gf(e.id),type:0}],[]];null!=e.merge&&(r[3]=[{data:Gf(+!!e.merge),type:0}]);var n=[];e.messages.forEach((function(e){n.push(e.data),e.meta[3]=[{type:0,data:Gf(e.data.length)}],r[2].push({data:Jf(e.meta),type:2})}));var o=Jf(r);t.push(Gf(o.length)),t.push(o),n.forEach((function(e){return t.push(e)}))})),Hf(t)}function tp(e,t){if(0!=e)throw new Error("Unexpected Snappy chunk type ".concat(e));for(var r={l:0},n=Vf(t,r),o=[],a=r.l;a<t.length;){var i=3&t[a];if(0!=i){var s=0,l=0;if(1==i?(l=4+(t[a]>>2&7),s=(224&t[a++])<<3,s|=t[a++]):(l=1+(t[a++]>>2),2==i?(s=t[a]|t[a+1]<<8,a+=2):(s=(t[a]|t[a+1]<<8|t[a+2]<<16|t[a+3]<<24)>>>0,a+=4)),0==s)throw new Error("Invalid offset 0");for(var c=o.length-1,u=s;c>=0&&u>=o[c].length;)u-=o[c].length,--c;if(c<0){if(0!=u)throw new Error("Invalid offset beyond length");u=o[c=0].length}if(l<u)o.push(o[c][Bf](o[c].length-u,o[c].length-u+l));else{for(u>0&&(o.push(o[c][Bf](o[c].length-u)),l-=u),++c;l>=o[c].length;)o.push(o[c]),l-=o[c].length,++c;l&&o.push(o[c][Bf](0,l))}o.length>25&&(o=[Hf(o)])}else{var d=t[a++]>>2;if(d<60)++d;else{var f=d-59;d=t[a],f>1&&(d|=t[a+1]<<8),f>2&&(d|=t[a+2]<<16),f>3&&(d|=t[a+3]<<24),d>>>=0,d++,a+=f}o.push(t[Bf](a,a+d)),a+=d}}for(var p=0,h=0;h<o.length;++h)p+=o[h].length;if(p!=n)throw new Error("Unexpected length: ".concat(p," != ").concat(n));return o}function rp(e){Array.isArray(e)&&(e=new Uint8Array(e));for(var t=[],r=0;r<e.length;){var n=e[r++],o=e[r]|e[r+1]<<8|e[r+2]<<16;r+=3,t.push.apply(t,tp(n,e[Bf](r,r+o))),r+=o}if(r!==e.length)throw new Error("data is not a valid framed stream!");return 1==t.length?t[0]:Hf(t)}function np(e){for(var t=[],r=0;r<e.length;){var n=Math.min(e.length-r,268435455),o=new Uint8Array(4);t.push(o);var a=Gf(n),i=a.length;t.push(a),n<=60?(i++,t.push(new Uint8Array([n-1<<2]))):n<=256?(i+=2,t.push(new Uint8Array([240,n-1&255]))):n<=65536?(i+=3,t.push(new Uint8Array([244,n-1&255,n-1>>8&255]))):n<=16777216?(i+=4,t.push(new Uint8Array([248,n-1&255,n-1>>8&255,n-1>>16&255]))):n<=4294967296&&(i+=5,t.push(new Uint8Array([252,n-1&255,n-1>>8&255,n-1>>16&255,n-1>>>24&255]))),t.push(e[Bf](r,r+n)),i+=n,o[0]=0,o[1]=255&i,o[2]=i>>8&255,o[3]=i>>16&255,r+=n}return Hf(t)}function op(e,t,r,n,o){var a,i,s,l,c=255&t,u=t>>8,d=u>=5?o:n;e:if(r&(u>4?8:4)&&"n"==e.t&&7==c){var f=(null==(a=d[7])?void 0:a[0])?Kf(d[7][0].data):-1;if(-1==f)break e;var p=(null==(i=d[15])?void 0:i[0])?Kf(d[15][0].data):-1,h=(null==(s=d[16])?void 0:s[0])?Kf(d[16][0].data):-1,m=(null==(l=d[40])?void 0:l[0])?Kf(d[40][0].data):-1,g=e.v,v=g;t:if(m){if(0==g){p=h=2;break t}p=g>=604800?1:g>=86400?2:g>=3600?4:g>=60?8:g>=1?16:32,Math.floor(g)!=g?h=32:g%60?h=16:g%3600?h=8:g%86400?h=4:g%604800&&(h=2),h<p&&(h=p)}if(-1==p||-1==h)break e;var y=[],b=[];1==p&&(v=g/604800,1==h?b.push('d"d"'):g-=604800*(v|=0),y.push(v+(2==f?" week"+(1==v?"":"s"):1==f?"w":""))),p<=2&&h>=2&&(v=g/86400,h>2&&(g-=86400*(v|=0)),b.push('d"d"'),y.push(v+(2==f?" day"+(1==v?"":"s"):1==f?"d":""))),p<=4&&h>=4&&(v=g/3600,h>4&&(g-=3600*(v|=0)),b.push((p>=4?"[h]":"h")+'"h"'),y.push(v+(2==f?" hour"+(1==v?"":"s"):1==f?"h":""))),p<=8&&h>=8&&(v=g/60,h>8&&(g-=60*(v|=0)),b.push((p>=8?"[m]":"m")+'"m"'),0==f?y.push((8==p&&8==h||v>=10?"":"0")+v):y.push(v+(2==f?" minute"+(1==v?"":"s"):1==f?"m":""))),p<=16&&h>=16&&(v=g,h>16&&(g-=v|=0),b.push((p>=16?"[s]":"s")+'"s"'),0==f?y.push((16==h&&16==p||v>=10?"":"0")+v):y.push(v+(2==f?" second"+(1==v?"":"s"):1==f?"s":""))),h>=32&&(v=Math.round(1e3*g),p<32&&b.push('.000"ms"'),0==f?y.push((v>=100?"":v>=10?"0":"00")+v):y.push(v+(2==f?" millisecond"+(1==v?"":"s"):1==f?"ms":""))),e.w=y.join(0==f?":":" "),e.z=b.join(0==f?'":"':" "),0==f&&(e.w=e.w.replace(/:(\d\d\d)$/,".$1"))}}function ap(e,t,r){var n,o=Ff(e),a=(o.getUint32(4,!0),o.getUint32(8,!0)),i=12,s=-1,l=-1,c=-1,u=NaN,d=NaN,f=0,p=new Date(Date.UTC(2001,0,1));1&a&&(u=function(e,t){for(var r=(127&e[t+15])<<7|e[t+14]>>1,n=1&e[t+14],o=t+13;o>=t;--o)n=256*n+e[o];return(128&e[t+15]?-n:n)*Math.pow(10,r-6176)}(e,i),i+=16),2&a&&(d=o.getFloat64(i,!0),i+=8),4&a&&(p.setTime(p.getTime()+1e3*(f=o.getFloat64(i,!0))),i+=8),8&a&&(l=o.getUint32(i,!0),i+=4),16&a&&(s=o.getUint32(i,!0),i+=4),i+=4*Yf(480&a),512&a&&(o.getUint32(i,!0),i+=4),i+=4*Yf(1024&a),2048&a&&(o.getUint32(i,!0),i+=4);var h=e[1];switch(h){case 0:n={t:"z"};break;case 2:case 10:n={t:"n",v:u};break;case 3:n={t:"s",v:t.sst[l]};break;case 5:n=(null==r?void 0:r.cellDates)?{t:"d",v:p}:{t:"n",v:f/86400+35430,z:Dt[14]};break;case 6:n={t:"b",v:d>0};break;case 7:n={t:"n",v:d};break;case 8:n={t:"e",v:0};break;case 9:if(!(s>-1))throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(31&a," : ").concat(e[Bf](0,4)));var m=t.rsst[s];n={t:"s",v:m.v},m.l&&(n.l={Target:m.l});break;default:throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(31&a," : ").concat(e[Bf](0,4)))}if(i+=4*Yf(4096&a),516096&a&&(-1==c&&(c=o.getUint32(i,!0)),i+=4),524288&a){var g=o.getUint32(i,!0);i+=4,t.cmnt[g]&&(n.c=function(e){var t=[];t.push({t:e.t||"",a:e.a,T:e.replies&&e.replies.length>0}),e.replies&&e.replies.forEach((function(e){t.push({t:e.t||"",a:e.a,T:!0})}));return t}(t.cmnt[g]))}return c>-1&&op(n,1280|h,a>>13,t.ofmt[c],t.nfmt[c]),7==h&&(n.v/=86400),n}function ip(e,t){var r=new Uint8Array(32),n=Ff(r),o=12,a=0;switch(r[0]=5,e.t){case"n":if(e.z&&$t(e.z)){r[1]=5,n.setFloat64(o,(Ar(e.v+1462).getTime()-Date.UTC(2001,0,1))/1e3,!0),a|=4,o+=8;break}r[1]=2,function(e,t,r){var n=Math.floor(0==r?0:Math.LOG10E*Math.log(Math.abs(r)))+6176-16,o=r/Math.pow(10,n-6176);e[t+15]|=n>>7,e[t+14]|=(127&n)<<1;for(var a=0;o>=1;++a,o/=256)e[t+a]=255&o;e[t+15]|=r>=0?0:128}(r,o,e.v),a|=1,o+=16;break;case"b":r[1]=6,n.setFloat64(o,e.v?1:0,!0),a|=2,o+=8;break;case"s":var i=null==e.v?"":String(e.v);if(e.l){var s=t.rsst.findIndex((function(t){var r;return t.v==i&&t.l==(null==(r=e.l)?void 0:r.Target)}));-1==s&&(t.rsst[s=t.rsst.length]={v:i,l:e.l.Target}),r[1]=9,n.setUint32(o,s,!0),a|=16,o+=4}else{var l=t.sst.indexOf(i);-1==l&&(t.sst[l=t.sst.length]=i),r[1]=3,n.setUint32(o,l,!0),a|=8,o+=4}break;case"d":r[1]=5,n.setFloat64(o,(e.v.getTime()-Date.UTC(2001,0,1))/1e3,!0),a|=4,o+=8;break;case"z":r[1]=0;break;default:throw"unsupported cell type "+e.t}return e.c&&(t.cmnt.push(function(e){for(var t={a:"",t:"",replies:[]},r=0;r<e.length;++r)0==r?(t.a=e[r].a,t.t=e[r].t):t.replies.push({a:e[r].a,t:e[r].t});return t}(e.c)),n.setUint32(o,t.cmnt.length-1,!0),a|=524288,o+=4),n.setUint32(8,a,!0),r[Bf](0,o)}function sp(e,t){var r=new Uint8Array(32),n=Ff(r),o=12,a=0,i="";switch(r[0]=4,e.t){case"n":case"b":case"d":case"e":case"z":break;case"s":if(i=null==e.v?"":String(e.v),e.l){var s=t.rsst.findIndex((function(t){var r;return t.v==i&&t.l==(null==(r=e.l)?void 0:r.Target)}));-1==s&&(t.rsst[s=t.rsst.length]={v:i,l:e.l.Target}),r[1]=9,n.setUint32(o,s,!0),a|=512,o+=4}break;default:throw"unsupported cell type "+e.t}switch(e.c&&(n.setUint32(o,t.cmnt.length-1,!0),a|=4096,o+=4),e.t){case"n":r[1]=2,n.setFloat64(o,e.v,!0),a|=32,o+=8;break;case"b":r[1]=6,n.setFloat64(o,e.v?1:0,!0),a|=32,o+=8;break;case"s":if(i=null==e.v?"":String(e.v),e.l);else{var l=t.sst.indexOf(i);-1==l&&(t.sst[l=t.sst.length]=i),r[1]=3,n.setUint32(o,l,!0),a|=16,o+=4}break;case"d":r[1]=5,n.setFloat64(o,(e.v.getTime()-Date.UTC(2001,0,1))/1e3,!0),a|=64,o+=8;break;case"z":r[1]=0;break;default:throw"unsupported cell type "+e.t}return n.setUint32(8,a,!0),r[Bf](0,o)}function lp(e,t,r){switch(e[0]){case 0:case 1:case 2:case 3:case 4:return function(e,t,r,n){var o,a=Ff(e),i=a.getUint32(4,!0),s=-1,l=-1,c=-1,u=NaN,d=0,f=new Date(Date.UTC(2001,0,1)),p=r>1?12:8;2&i&&(c=a.getUint32(p,!0),p+=4),p+=4*Yf(i&(r>1?3468:396)),512&i&&(s=a.getUint32(p,!0),p+=4),p+=4*Yf(i&(r>1?12288:4096)),16&i&&(l=a.getUint32(p,!0),p+=4),32&i&&(u=a.getFloat64(p,!0),p+=8),64&i&&(f.setTime(f.getTime()+1e3*(d=a.getFloat64(p,!0))),p+=8),r>1&&255&(i=a.getUint32(8,!0)>>>16)&&(-1==c&&(c=a.getUint32(p,!0)),p+=4);var h=e[r>=4?1:2];switch(h){case 0:return;case 2:case 7:o={t:"n",v:u};break;case 3:o={t:"s",v:t.sst[l]};break;case 5:o=(null==n?void 0:n.cellDates)?{t:"d",v:f}:{t:"n",v:d/86400+35430,z:Dt[14]};break;case 6:o={t:"b",v:u>0};break;case 8:o={t:"e",v:0};break;case 9:if(!(s>-1))throw new Error("Unsupported cell type ".concat(e[Bf](0,4)));var m=t.rsst[s];o={t:"s",v:m.v},m.l&&(o.l={Target:m.l});break;default:throw new Error("Unsupported cell type ".concat(e[Bf](0,4)))}return c>-1&&op(o,h|r<<8,i,t.ofmt[c],t.nfmt[c]),7==h&&(o.v/=86400),o}(e,t,e[0],r);case 5:return ap(e,t,r);default:throw new Error("Unsupported payload version ".concat(e[0]))}}function cp(e){return Kf(Xf(e)[1][0].data)}function up(e){return Jf([[],[{type:0,data:Gf(e)}]])}function dp(e,t){var r,n=(null==(r=e.messages[0].meta[5])?void 0:r[0])?Zf(e.messages[0].meta[5][0].data):[];-1==n.indexOf(t)&&(n.push(t),e.messages[0].meta[5]=[{type:2,data:Qf(n)}])}function fp(e,t){var r,n=(null==(r=e.messages[0].meta[5])?void 0:r[0])?Zf(e.messages[0].meta[5][0].data):[];e.messages[0].meta[5]=[{type:2,data:Qf(n.filter((function(e){return e!=t})))}]}function pp(e,t){var r=Xf(t.data),n=Kf(r[1][0].data),o=r[3],a=[];return(o||[]).forEach((function(t){var r,o,i=Xf(t.data);if(i[1]){var s=Kf(i[1][0].data)>>>0;switch(n){case 1:a[s]=zf(i[3][0].data);break;case 8:var l=Xf(e[cp(i[9][0].data)][0].data),c=e[cp(l[1][0].data)][0],u=Kf(c.meta[1][0].data);if(2001!=u)throw new Error("2000 unexpected reference to ".concat(u));var d=Xf(c.data),f={v:d[3].map((function(e){return zf(e.data)})).join("")};a[s]=f;e:if(null==(r=null==d?void 0:d[11])?void 0:r[0]){var p=null==(o=Xf(d[11][0].data))?void 0:o[1];if(!p)break e;p.forEach((function(t){var r,n,o,a=Xf(t.data);if(null==(r=a[2])?void 0:r[0]){var i=e[cp(null==(n=a[2])?void 0:n[0].data)][0],s=Kf(i.meta[1][0].data);switch(s){case 2032:var l=Xf(i.data);(null==(o=null==l?void 0:l[2])?void 0:o[0])&&!f.l&&(f.l=zf(l[2][0].data));break;case 2039:break;default:console.log("unrecognized ObjectAttribute type ".concat(s))}}}))}break;case 2:a[s]=Xf(i[6][0].data);break;case 3:a[s]=Xf(i[5][0].data);break;case 10:var h=e[cp(i[10][0].data)][0];a[s]=mp(e,h.data);break;default:throw n}}})),a}function hp(e,t){var r,n=Xf(t.data),o=-1;(null==(r=null==n?void 0:n[7])?void 0:r[0])&&(o=Kf(n[7][0].data)>>>0?1:0);var a=$f(n[5],(function(e){return function(e,t){var r,n,o,a,i,s,l,c,u,d,f,p,h,m,g,v,y=Xf(e),b=Kf(y[1][0].data)>>>0,w=Kf(y[2][0].data)>>>0,x=(null==(n=null==(r=y[8])?void 0:r[0])?void 0:n.data)&&Kf(y[8][0].data)>0||!1;if((null==(a=null==(o=y[7])?void 0:o[0])?void 0:a.data)&&0!=t)g=null==(s=null==(i=y[7])?void 0:i[0])?void 0:s.data,v=null==(c=null==(l=y[6])?void 0:l[0])?void 0:c.data;else{if(!(null==(d=null==(u=y[4])?void 0:u[0])?void 0:d.data)||1==t)throw"NUMBERS Tile missing ".concat(t," cell storage");g=null==(p=null==(f=y[4])?void 0:f[0])?void 0:p.data,v=null==(m=null==(h=y[3])?void 0:h[0])?void 0:m.data}for(var S=x?4:1,A=Ff(g),k=[],C=0;C<g.length/2;++C){var I=A.getUint16(2*C,!0);I<65535&&k.push([C,I])}if(k.length!=w)throw"Expected ".concat(w," cells, found ").concat(k.length);var E=[];for(C=0;C<k.length-1;++C)E[k[C][0]]=v[Bf](k[C][1]*S,k[C+1][1]*S);return k.length>=1&&(E[k[k.length-1][0]]=v[Bf](k[k.length-1][1]*S)),{R:b,cells:E}}(e,o)}));return{nrows:Kf(n[4][0].data)>>>0,data:a.reduce((function(e,t){return e[t.R]||(e[t.R]=[]),t.cells.forEach((function(r,n){if(e[t.R][n])throw new Error("Duplicate cell r=".concat(t.R," c=").concat(n));e[t.R][n]=r})),e}),[])}}function mp(e,t){var r,n,o,a,i,s,l,c,u,d,f={t:"",a:""},p=Xf(t);if((null==(n=null==(r=null==p?void 0:p[1])?void 0:r[0])?void 0:n.data)&&(f.t=zf(null==(a=null==(o=null==p?void 0:p[1])?void 0:o[0])?void 0:a.data)||""),null==(s=null==(i=null==p?void 0:p[3])?void 0:i[0])?void 0:s.data){var h=Xf(e[cp(null==(c=null==(l=null==p?void 0:p[3])?void 0:l[0])?void 0:c.data)][0].data);(null==(d=null==(u=h[1])?void 0:u[0])?void 0:d.data)&&(f.a=zf(h[1][0].data))}return(null==p?void 0:p[4])&&(f.replies=[],p[4].forEach((function(t){var r=e[cp(t.data)][0];f.replies.push(mp(e,r.data))}))),f}function gp(e,t,r){var n=Xf(t.data),o={"!ref":"A1"};(null==r?void 0:r.dense)&&(o["!data"]=[]);var a=e[cp(n[2][0].data)],i=Kf(a[0].meta[1][0].data);if(6001!=i)throw new Error("6000 unexpected reference to ".concat(i));return function(e,t,r,n){var o,a,i,s,l,c,u,d,f,p,h,m,g,v,y=Xf(t.data),b={s:{r:0,c:0},e:{r:0,c:0}};if(b.e.r=(Kf(y[6][0].data)>>>0)-1,b.e.r<0)throw new Error("Invalid row varint ".concat(y[6][0].data));if(b.e.c=(Kf(y[7][0].data)>>>0)-1,b.e.c<0)throw new Error("Invalid col varint ".concat(y[7][0].data));r["!ref"]=fa(b);var w=null!=r["!data"],x=r,S=Xf(y[4][0].data),A={sst:[],rsst:[],ofmt:[],nfmt:[],fmla:[],ferr:[],cmnt:[]};(null==(o=S[4])?void 0:o[0])&&(A.sst=pp(e,e[cp(S[4][0].data)][0])),(null==(a=S[6])?void 0:a[0])&&(A.fmla=pp(e,e[cp(S[6][0].data)][0])),(null==(i=S[11])?void 0:i[0])&&(A.ofmt=pp(e,e[cp(S[11][0].data)][0])),(null==(s=S[12])?void 0:s[0])&&(A.ferr=pp(e,e[cp(S[12][0].data)][0])),(null==(l=S[17])?void 0:l[0])&&(A.rsst=pp(e,e[cp(S[17][0].data)][0])),(null==(c=S[19])?void 0:c[0])&&(A.cmnt=pp(e,e[cp(S[19][0].data)][0])),(null==(u=S[22])?void 0:u[0])&&(A.nfmt=pp(e,e[cp(S[22][0].data)][0]));var k=Xf(S[3][0].data),C=0;if(!(null==(d=S[9])?void 0:d[0]))throw"NUMBERS file missing row tree";if(Xf(S[9][0].data)[1].map((function(e){return Xf(e.data)})).forEach((function(t){C=Kf(t[1][0].data);var o=Kf(t[2][0].data),a=k[1][o];if(!a)throw"NUMBERS missing tile "+o;var i=Xf(a.data),s=e[cp(i[2][0].data)][0],l=Kf(s.meta[1][0].data);if(6002!=l)throw new Error("6001 unexpected reference to ".concat(l));var c=hp(0,s);c.data.forEach((function(e,t){e.forEach((function(e,o){var a=lp(e,A,n);a&&(w?(x["!data"][C+t]||(x["!data"][C+t]=[]),x["!data"][C+t][o]=a):r[la(o)+ia(C+t)]=a)}))})),C+=c.nrows})),null==(f=S[13])?void 0:f[0]){var I=e[cp(S[13][0].data)][0],E=Kf(I.meta[1][0].data);if(6144!=E)throw new Error("Expected merge type 6144, found ".concat(E));r["!merges"]=null==(p=Xf(I.data))?void 0:p[1].map((function(e){var t=Xf(e.data),r=Ff(Xf(t[1][0].data)[1][0].data),n=Ff(Xf(t[2][0].data)[1][0].data);return{s:{r:r.getUint16(0,!0),c:r.getUint16(2,!0)},e:{r:r.getUint16(0,!0)+n.getUint16(0,!0)-1,c:r.getUint16(2,!0)+n.getUint16(2,!0)-1}}}))}if(!(null==(h=r["!merges"])?void 0:h.length)&&(null==(m=y[47])?void 0:m[0])){var D=Xf(y[47][0].data);if(null==(g=D[2])?void 0:g[0]){var T=Xf(D[2][0].data);(null==(v=T[3])?void 0:v[0])&&(r["!merges"]=$f(T[3],(function(e){var t,r,n,o,a,i=Xf(e),s=Xf(i[2][0].data),l=Xf(s[1][0].data);if(null==(t=l[1])?void 0:t[0]){var c=Xf(l[1][0].data);if(67==Kf(c[1][0].data)){var u=Xf(c[40][0].data);if((null==(r=u[3])?void 0:r[0])&&(null==(n=u[4])?void 0:n[0])){var d=Xf(u[3][0].data),f=Xf(u[4][0].data),p=Kf(d[1][0].data),h=(null==(o=d[2])?void 0:o[0])?Kf(d[2][0].data):p,m=Kf(f[1][0].data);return{s:{r:m,c:p},e:{r:(null==(a=f[2])?void 0:a[0])?Kf(f[2][0].data):m,c:h}}}}}})).filter((function(e){return null!=e})))}}}(e,a[0],o,r),o}function vp(e,t,r){var n,o=lh();o.Workbook={WBProps:{date1904:!0}};var a=Xf(t.data);if(null==(n=a[2])?void 0:n[0])throw new Error("Keynote presentations are not supported");if($f(a[1],cp).forEach((function(t){e[t].forEach((function(t){if(2==Kf(t.meta[1][0].data)){var n=function(e,t,r){var n,o=Xf(t.data),a={name:(null==(n=o[1])?void 0:n[0])?zf(o[1][0].data):"",sheets:[]};return $f(o[2],cp).forEach((function(t){e[t].forEach((function(t){6e3==Kf(t.meta[1][0].data)&&a.sheets.push(gp(e,t,r))}))})),a}(e,t,r);n.sheets.forEach((function(e,t){ch(o,e,0==t?n.name:n.name+"_"+t,!0)}))}}))})),0==o.SheetNames.length)throw new Error("Empty NUMBERS file");return o.bookType="numbers",o}function yp(e,t){var r,n,o,a,i,s,l,c={},u=[];if(e.FullPaths.forEach((function(e){if(e.match(/\.iwpv2/))throw new Error("Unsupported password protection")})),e.FileIndex.forEach((function(e){if(e.name.match(/\.iwa$/)&&0==e.content[0]){var t,r;try{t=rp(e.content)}catch(o6){return console.log("?? "+e.content.length+" "+(o6.message||o6))}try{r=qf(t)}catch(o6){return console.log("## "+(o6.message||o6))}r.forEach((function(e){c[e.id]=e.messages,u.push(e.id)}))}})),!u.length)throw new Error("File has no messages");if((null==(o=null==(n=null==(r=null==c?void 0:c[1])?void 0:r[0].meta)?void 0:n[1])?void 0:o[0].data)&&1e4==Kf(c[1][0].meta[1][0].data))throw new Error("Pages documents are not supported");var d=(null==(l=null==(s=null==(i=null==(a=null==c?void 0:c[1])?void 0:a[0])?void 0:i.meta)?void 0:s[1])?void 0:l[0].data)&&1==Kf(c[1][0].meta[1][0].data)&&c[1][0];if(d||u.forEach((function(e){c[e].forEach((function(e){if(1==Kf(e.meta[1][0].data)>>>0){if(d)throw new Error("Document has multiple roots");d=e}}))})),!d)throw new Error("Cannot find Document root");return vp(c,d,t)}function bp(e,t,r){var n,o,a,i=[[],[{type:0,data:Gf(0)}],[{type:0,data:Gf(0)}],[{type:2,data:new Uint8Array([])}],[{type:2,data:new Uint8Array(Array.from({length:510},(function(){return 255})))}],[{type:0,data:Gf(5)}],[{type:2,data:new Uint8Array([])}],[{type:2,data:new Uint8Array(Array.from({length:510},(function(){return 255})))}],[{type:0,data:Gf(1)}]];if(!(null==(n=i[6])?void 0:n[0])||!(null==(o=i[7])?void 0:o[0]))throw"Mutation only works on post-BNC storages!";var s=0;if(i[7][0].data.length<2*e.length){var l=new Uint8Array(2*e.length);l.set(i[7][0].data),i[7][0].data=l}if(i[4][0].data.length<2*e.length){var c=new Uint8Array(2*e.length);c.set(i[4][0].data),i[4][0].data=c}for(var u=Ff(i[7][0].data),d=0,f=[],p=Ff(i[4][0].data),h=0,m=[],g=r?4:1,v=0;v<e.length;++v)if(null==e[v]||"z"==e[v].t&&!(null==(a=e[v].c)?void 0:a.length)||"e"==e[v].t)u.setUint16(2*v,65535,!0),p.setUint16(2*v,65535);else{var y,b;switch(u.setUint16(2*v,d/g,!0),p.setUint16(2*v,h/g,!0),e[v].t){case"d":if(e[v].v instanceof Date){y=ip(e[v],t),b=sp(e[v],t);break}y=ip(e[v],t),b=sp(e[v],t);break;case"s":case"n":case"b":case"z":y=ip(e[v],t),b=sp(e[v],t);break;default:throw new Error("Unsupported value "+e[v])}f.push(y),d+=y.length,m.push(b),h+=b.length,++s}for(i[2][0].data=Gf(s),i[5][0].data=Gf(5);v<i[7][0].data.length/2;++v)u.setUint16(2*v,65535,!0),p.setUint16(2*v,65535,!0);return i[6][0].data=Hf(f),i[3][0].data=Hf(m),i[8]=[{type:0,data:Gf(r?1:0)}],i}function wp(e,t){return{meta:[[],[{type:0,data:Gf(e)}]],data:t}}function xp(e,t){t.last||(t.last=927262);for(var r=t.last;r<2e6;++r)if(!t[r])return t[t.last=r]=e,r;throw new Error("Too many messages")}function Sp(e,t,r){return Jf([[],[{type:0,data:Gf(1)}],[],[{type:5,data:new Uint8Array(Float32Array.from([e/255]).buffer)}],[{type:5,data:new Uint8Array(Float32Array.from([t/255]).buffer)}],[{type:5,data:new Uint8Array(Float32Array.from([r/255]).buffer)}],[{type:5,data:new Uint8Array(Float32Array.from([1]).buffer)}],[],[],[],[],[],[{type:0,data:Gf(1)}]])}function Ap(e){switch(e){case 0:return Sp(99,222,171);case 1:return Sp(162,197,240);case 2:return Sp(255,189,189)}return Sp(255*Math.random(),255*Math.random(),255*Math.random())}function kp(e,t){if(!t||!t.numbers)throw new Error("Must pass a `numbers` option -- check the README");var r=fr.read(t.numbers,{type:"base64"}),n=function(e){var t={},r=[];return e.FileIndex.map((function(t,r){return[t,e.FullPaths[r]]})).forEach((function(e){var n=e[0],o=e[1];2==n.type&&n.name.match(/\.iwa/)&&0==n.content[0]&&qf(rp(n.content)).forEach((function(e){r.push(e.id),t[e.id]={deps:[],location:o,type:Kf(e.messages[0].meta[1][0].data)}}))})),e.FileIndex.forEach((function(e){e.name.match(/\.iwa/)&&0==e.content[0]&&qf(rp(e.content)).forEach((function(e){e.messages.forEach((function(r){[5,6].forEach((function(n){r.meta[n]&&r.meta[n].forEach((function(r){t[e.id].deps.push(Kf(r.data))}))}))}))}))})),t}(r),o=Ip(r,n,1);if(null==o)throw"Could not find message ".concat(1," in Numbers template");var a=$f(Xf(o.messages[0].data)[1],cp);if(a.length>1)throw new Error("Template NUMBERS file must have exactly one sheet");return e.SheetNames.forEach((function(t,i){i>=1&&(!function(e,t,r){var n=-1,o=-1,a={};Cp(e,t,1,(function(r,i){var s=Xf(r.messages[0].data);n=cp(Xf(r.messages[0].data)[1][0].data),o=xp({deps:[1],location:t[n].location,type:2},t),a[n]=o,dp(r,o),s[1].push({type:2,data:up(o)});var l=Ip(e,t,n);l.id=o,t[1].location==t[o].location?i.push(l):Cp(e,t,o,(function(e,t){return t.push(l)})),r.messages[0].data=Jf(s)}));var i=-1;Cp(e,t,o,(function(r,n){for(var s=Xf(r.messages[0].data),l=3;l<=69;++l)delete s[l];var c=$f(s[2],cp);c.forEach((function(e){return fp(r,e)})),i=xp({deps:[o],location:t[c[0]].location,type:t[c[0]].type},t),dp(r,i),a[c[0]]=i,s[2]=[{type:2,data:up(i)}];var u=Ip(e,t,c[0]);u.id=i,t[c[0]].location==t[o].location?n.push(u):(Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);Tp(r,t,o,i),e.messages[0].data=Jf(r)})),Cp(e,t,i,(function(e,t){return t.push(u)}))),r.messages[0].data=Jf(s)}));var s=-1;Cp(e,t,i,(function(r,n){for(var o=Xf(r.messages[0].data),l=Xf(o[1][0].data),c=3;c<=69;++c)delete l[c];var u=cp(l[2][0].data);l[2][0].data=up(a[u]),o[1][0].data=Jf(l);var d=cp(o[2][0].data);fp(r,d),dp(r,s=xp({deps:[i],location:t[d].location,type:t[d].type},t)),a[d]=s,o[2][0].data=up(s);var f=Ip(e,t,d);f.id=s,t[i].location==t[s].location?n.push(f):Cp(e,t,s,(function(e,t){return t.push(f)})),r.messages[0].data=Jf(o)})),Cp(e,t,s,(function(n,o){var i,l,c=Xf(n.messages[0].data),u=zf(c[1][0].data).replace(/-[A-Z0-9]*/,"-".concat(("0000"+r.toString(16)).slice(-4)));if(c[1][0].data=Wf(u),[12,13,29,31,32,33,39,44,47,81,82,84].forEach((function(e){return delete c[e]})),c[45]){var d=cp(Xf(c[45][0].data)[1][0].data);fp(n,d),delete c[45]}c[70]&&(null==(i=Xf(c[70][0].data)[2])||i.forEach((function(e){var t=Xf(e.data);[2,3].map((function(e){return t[e][0]})).forEach((function(e){var t=Xf(e.data);if(t[8]){var r=cp(t[8][0].data);fp(n,r)}}))})),delete c[70]);[46,30,34,35,36,38,48,49,60,61,62,63,64,71,72,73,74,75,85,86,87,88,89].forEach((function(e){if(c[e]){var t=cp(c[e][0].data);delete c[e],fp(n,t)}}));var f=Xf(c[4][0].data);[2,4,5,6,11,12,13,15,16,17,18,19,20,21,22].forEach((function(r){var i;if(null==(i=f[r])?void 0:i[0]){var l=cp(f[r][0].data),c=xp({deps:[s],location:t[l].location,type:t[l].type},t);fp(n,l),dp(n,c),a[l]=c;var u=Ip(e,t,l);if(u.id=c,t[l].location==t[s].location)o.push(u);else{t[c].location=t[l].location.replace(l.toString(),c.toString()),t[c].location==t[l].location&&(t[c].location=t[c].location.replace(/\.iwa/,"-".concat(c,".iwa"))),fr.utils.cfb_add(e,t[c].location,np(ep([u])));var d=t[c].location.replace(/^Root Entry\//,"").replace(/^Index\//,"").replace(/\.iwa$/,"");Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);Ep(r,c,d),Tp(r,t,s,c),e.messages[0].data=Jf(r)}))}f[r][0].data=up(c)}}));var p=Xf(f[1][0].data);null==(l=p[2])||l.forEach((function(r){var i=cp(r.data),l=xp({deps:[s],location:t[i].location,type:t[i].type},t);fp(n,i),dp(n,l),a[i]=l;var c=Ip(e,t,i);if(c.id=l,t[i].location==t[s].location)o.push(c);else{t[l].location=t[i].location.replace(i.toString(),l.toString()),t[l].location==t[i].location&&(t[l].location=t[l].location.replace(/\.iwa/,"-".concat(l,".iwa"))),fr.utils.cfb_add(e,t[l].location,np(ep([c])));var u=t[l].location.replace(/^Root Entry\//,"").replace(/^Index\//,"").replace(/\.iwa$/,"");Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);Ep(r,l,u),Tp(r,t,s,l),e.messages[0].data=Jf(r)}))}r.data=up(l)})),f[1][0].data=Jf(p);var h=Xf(f[3][0].data);h[1].forEach((function(r){var o=Xf(r.data),i=cp(o[2][0].data),l=a[i];if(!a[i]){l=xp({deps:[s],location:"",type:t[i].type},t),t[l].location="Root Entry/Index/Tables/Tile-".concat(l,".iwa"),a[i]=l;var c=Ip(e,t,i);c.id=l,fp(n,i),dp(n,l),fr.utils.cfb_add(e,"/Index/Tables/Tile-".concat(l,".iwa"),np(ep([c]))),Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);r[3].push({type:2,data:Jf([[],[{type:0,data:Gf(l)}],[{type:2,data:Wf("Tables/Tile")}],[{type:2,data:Wf("Tables/Tile-".concat(l))}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Gf(0)}],[],[{type:0,data:Gf(0)}]])}),r[1]=[{type:0,data:Gf(Math.max(l+1,Kf(r[1][0].data)))}],Tp(r,t,s,l),e.messages[0].data=Jf(r)}))}o[2][0].data=up(l),r.data=Jf(o)})),f[3][0].data=Jf(h),c[4][0].data=Jf(f),n.messages[0].data=Jf(c)}))}(r,n,i+1),o=Ip(r,n,1),a=$f(Xf(o.messages[0].data)[1],cp)),function(e,t,r,n,o,a){var i=[];Cp(e,t,a,(function(e){var t=Xf(e.messages[0].data);t[1]=[{type:2,data:Wf(n)}],i=$f(t[2],cp),e.messages[0].data=Jf(t)}));var s=Ip(e,t,i[0]),l=cp(Xf(s.messages[0].data)[2][0].data);Cp(e,t,l,(function(n,o){return function(e,t,r,n,o,a){if(!r["!ref"])throw new Error("Cannot export empty sheet to NUMBERS");var i=da(r["!ref"]);i.s.r=i.s.c=0;var s=!1;i.e.c>999&&(s=!0,i.e.c=999);i.e.r>999999&&(s=!0,i.e.r=999999);s&&console.error("Truncating to ".concat(fa(i)));var l=[];if(r["!data"])l=r["!data"];else{for(var c=[],u=0;u<=i.e.c;++u)c[u]=la(u);for(var d=0;d<=i.e.r;++d){l[d]=[];var f=""+(d+1);for(u=0;u<=i.e.c;++u){var p=r[c[u]+f];p&&(l[d][u]=p)}}}var h={cmnt:[{a:"~54ee77S~",t:"... the people who are crazy enough to think they can change the world, are the ones who do."}],ferr:[],fmla:[],nfmt:[],ofmt:[],rsst:[{v:"~54ee77S~",l:"https://sheetjs.com/"}],sst:["~Sh33tJ5~"]},m=Xf(n.messages[0].data);m[6][0].data=Gf(i.e.r+1),m[7][0].data=Gf(i.e.c+1),delete m[46];var g=Xf(m[4][0].data),v=cp(Xf(g[1][0].data)[2][0].data);Cp(e,t,v,(function(e,t){var r,n=Xf(e.messages[0].data);if(null==(r=null==n?void 0:n[2])?void 0:r[0])for(var o=0;o<l.length;++o){var a=Xf(n[2][0].data);a[1][0].data=Gf(o),a[4][0].data=Gf(l[o].length),n[2][o]={type:n[2][0].type,data:Jf(a)}}e.messages[0].data=Jf(n)}));var y=cp(g[2][0].data);Cp(e,t,y,(function(e,t){for(var r=Xf(e.messages[0].data),n=0;n<=i.e.c;++n){var o=Xf(r[2][0].data);o[1][0].data=Gf(n),o[4][0].data=Gf(i.e.r+1),r[2][n]={type:r[2][0].type,data:Jf(o)}}e.messages[0].data=Jf(r)}));var b=Xf(g[9][0].data);b[1]=[];var w=Xf(g[3][0].data),x=256;w[2]=[{type:0,data:Gf(x)}];var S=cp(Xf(w[1][0].data)[2][0].data),A=function(){var r=Xf(Ip(e,t,2).messages[0].data)[3].filter((function(e){return Kf(Xf(e.data)[1][0].data)==S}));return(null==r?void 0:r.length)?Kf(Xf(r[0].data)[12][0].data):0}();fr.utils.cfb_del(e,t[S].location),Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);r[3]=r[3].filter((function(e){return Kf(Xf(e.data)[1][0].data)!=S})),function(e,t,r,n){var o=t[r].location.replace(/^Root Entry\//,"").replace(/^Index\//,"").replace(/\.iwa$/,""),a=e[3].findIndex((function(e){var t,r,n=Xf(e.data);return(null==(t=n[3])?void 0:t[0])?zf(n[3][0].data)==o:!(!(null==(r=n[2])?void 0:r[0])||zf(n[2][0].data)!=o)})),i=Xf(e[3][a].data);i[6]||(i[6]=[]);i[6]=i[6].filter((function(e){return Kf(Xf(e.data)[1][0].data)!=n})),e[3][a].data=Jf(i)}(r,t,a,S),e.messages[0].data=Jf(r)})),fp(n,S),w[1]=[];for(var k=Math.ceil((i.e.r+1)/x),C=0;C<k;++C){var I=xp({deps:[],location:"",type:6002},t);t[I].location="Root Entry/Index/Tables/Tile-".concat(I,".iwa");for(var E=[[],[{type:0,data:Gf(0)}],[{type:0,data:Gf(Math.min(i.e.r+1,(C+1)*x))}],[{type:0,data:Gf(0)}],[{type:0,data:Gf(Math.min((C+1)*x,i.e.r+1)-C*x)}],[],[{type:0,data:Gf(5)}],[{type:0,data:Gf(1)}],[{type:0,data:Gf(Op?1:0)}]],D=C*x;D<=Math.min(i.e.r,(C+1)*x-1);++D){var T=bp(l[D],h,Op);T[1][0].data=Gf(D-C*x),E[5].push({data:Jf(T),type:2})}w[1].push({type:2,data:Jf([[],[{type:0,data:Gf(C)}],[{type:2,data:up(I)}]])});var O=np(ep([{id:I,messages:[wp(6002,Jf(E))]}]));fr.utils.cfb_add(e,"/Index/Tables/Tile-".concat(I,".iwa"),O),Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);r[3].push({type:2,data:Jf([[],[{type:0,data:Gf(I)}],[{type:2,data:Wf("Tables/Tile")}],[{type:2,data:Wf("Tables/Tile-".concat(I))}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Gf(0)}],[],[{type:0,data:Gf(A)}]])}),r[1]=[{type:0,data:Gf(Math.max(I+1,Kf(r[1][0].data)))}],Tp(r,t,a,I),e.messages[0].data=Jf(r)})),dp(n,I),b[1].push({type:2,data:Jf([[],[{type:0,data:Gf(C*x)}],[{type:0,data:Gf(C)}]])})}if(g[3][0].data=Jf(w),g[9][0].data=Jf(b),g[10]=[{type:2,data:new Uint8Array([])}],r["!merges"]){var M=xp({type:6144,deps:[a],location:t[a].location},t);o.push({id:M,messages:[wp(6144,Jf([[],r["!merges"].map((function(e){return{type:2,data:Jf([[],[{type:2,data:Jf([[],[{type:5,data:new Uint8Array(new Uint16Array([e.s.r,e.s.c]).buffer)}]])}],[{type:2,data:Jf([[],[{type:5,data:new Uint8Array(new Uint16Array([e.e.r-e.s.r+1,e.e.c-e.s.c+1]).buffer)}]])}]])}}))]))]}),g[13]=[{type:2,data:up(M)}],Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);Tp(r,t,a,M),e.messages[0].data=Jf(r)})),dp(n,M)}else delete g[13];var P=cp(g[4][0].data);Cp(e,t,P,(function(e){var t=Xf(e.messages[0].data);t[3]=[],h.sst.forEach((function(e,r){0!=r&&t[3].push({type:2,data:Jf([[],[{type:0,data:Gf(r)}],[{type:0,data:Gf(1)}],[{type:2,data:Wf(e)}]])})})),e.messages[0].data=Jf(t)}));var j=cp(g[17][0].data);if(Cp(e,t,j,(function(r){var n=Xf(r.messages[0].data);n[3]=[];var o=[904980,903835,903815,903845];h.rsst.forEach((function(a,i){if(0!=i){var s=[[],[{type:0,data:new Uint8Array([5])}],[],[{type:2,data:Wf(a.v)}]];s[10]=[{type:0,data:new Uint8Array([1])}],s[19]=[{type:2,data:new Uint8Array([10,6,8,0,18,2,101,110])}],s[5]=[{type:2,data:new Uint8Array([10,8,8,0,18,4,8,155,149,55])}],s[2]=[{type:2,data:new Uint8Array([8,148,158,55])}],s[6]=[{type:2,data:new Uint8Array([10,6,8,0,16,0,24,0])}],s[7]=[{type:2,data:new Uint8Array([10,8,8,0,18,4,8,135,149,55])}],s[8]=[{type:2,data:new Uint8Array([10,8,8,0,18,4,8,165,149,55])}],s[14]=[{type:2,data:new Uint8Array([10,6,8,0,16,0,24,0])}],s[24]=[{type:2,data:new Uint8Array([10,6,8,0,16,0,24,0])}];var l=xp({deps:[],location:"",type:2001},t),c=[];if(a.l){var u=Dp(e,2032,[[],[],[{type:2,data:Wf(a.l)}]],"/Index/Tables/DataList",t);s[11]=[];var d=[[],[]];d[1]||(d[1]=[]),d[1].push({type:2,data:Jf([[],[{type:0,data:Gf(0)}],[{type:2,data:up(u)}]])}),s[11][0]={type:2,data:Jf(d)},c.push(u)}Dp(e,2001,s,"/Index/Tables/DataList",t,l),Cp(e,t,l,(function(e){o.forEach((function(t){return dp(e,t)})),c.forEach((function(t){return dp(e,t)}))}));var f=Dp(e,6218,[[],[{type:2,data:up(l)}],[],[{type:2,data:new Uint8Array([13,255,255,255,0,18,10,16,255,255,1,24,255,255,255,255,7])}]],"/Index/Tables/DataList",t);Cp(e,t,f,(function(e){return dp(e,l)})),n[3].push({type:2,data:Jf([[],[{type:0,data:Gf(i)}],[{type:0,data:Gf(1)}],[],[],[],[],[],[],[{type:2,data:up(f)}]])}),dp(r,f),Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);Tp(r,t,j,f),Tp(r,t,f,l),Tp(r,t,l,c),Tp(r,t,l,o),e.messages[0].data=Jf(r)}))}})),r.messages[0].data=Jf(n)})),h.cmnt.length>1){var R=cp(g[19][0].data),_={},N=0;Cp(e,t,R,(function(r){var n=Xf(r.messages[0].data);n[3]=[],h.cmnt.forEach((function(o,a){if(0!=a){var i=[];o.replies&&o.replies.forEach((function(r){_[r.a||""]||(_[r.a||""]=Dp(e,212,[[],[{type:2,data:Wf(r.a||"")}],[{type:2,data:Ap(++N)}],[],[{type:0,data:Gf(0)}]],"/Index/Tables/DataList",t));var n=_[r.a||""],o=Dp(e,3056,[[],[{type:2,data:Wf(r.t||"")}],[{type:2,data:Jf([[],[{type:1,data:new Uint8Array([0,0,0,128,116,109,182,65])}]])}],[{type:2,data:up(n)}]],"/Index/Tables/DataList",t);Cp(e,t,o,(function(e){return dp(e,n)})),i.push(o),Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);Tp(r,t,o,n),e.messages[0].data=Jf(r)}))})),_[o.a||""]||(_[o.a||""]=Dp(e,212,[[],[{type:2,data:Wf(o.a||"")}],[{type:2,data:Ap(++N)}],[],[{type:0,data:Gf(0)}]],"/Index/Tables/DataList",t));var s=_[o.a||""],l=Dp(e,3056,[[],[{type:2,data:Wf(o.t||"")}],[{type:2,data:Jf([[],[{type:1,data:new Uint8Array([0,0,0,128,116,109,182,65])}]])}],[{type:2,data:up(s)}],i.map((function(e){return{type:2,data:up(e)}})),[{type:2,data:Jf([[],[{type:0,data:Gf(a)}],[{type:0,data:Gf(0)}]])}]],"/Index/Tables/DataList",t);Cp(e,t,l,(function(e){dp(e,s),i.forEach((function(t){return dp(e,t)}))})),n[3].push({type:2,data:Jf([[],[{type:0,data:Gf(a)}],[{type:0,data:Gf(1)}],[],[],[],[],[],[],[],[{type:2,data:up(l)}]])}),dp(r,l),Cp(e,t,2,(function(e){var r=Xf(e.messages[0].data);Tp(r,t,R,l),Tp(r,t,l,s),i.length&&Tp(r,t,l,i),e.messages[0].data=Jf(r)}))}})),n[2][0].data=Gf(h.cmnt.length+1),r.messages[0].data=Jf(n)}))}m[4][0].data=Jf(g),n.messages[0].data=Jf(m)}(e,t,r,n,o,l)}))}(r,n,e.Sheets[t],t,0,a[i])})),r}function Cp(e,t,r,n){var o=fr.find(e,t[r].location);if(!o)throw"Could not find ".concat(t[r].location," in Numbers template");var a=qf(rp(o.content));n(a.find((function(e){return e.id==r})),a),o.content=np(ep(a)),o.size=o.content.length}function Ip(e,t,r){var n=fr.find(e,t[r].location);if(!n)throw"Could not find ".concat(t[r].location," in Numbers template");return qf(rp(n.content)).find((function(e){return e.id==r}))}function Ep(e,t,r){e[3].push({type:2,data:Jf([[],[{type:0,data:Gf(t)}],[{type:2,data:Wf(r.replace(/-[\s\S]*$/,""))}],[{type:2,data:Wf(r)}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Gf(0)}],[],[{type:0,data:Gf(0)}]])}),e[1]=[{type:0,data:Gf(Math.max(t+1,Kf(e[1][0].data)))}]}function Dp(e,t,r,n,o,a){a||(a=xp({deps:[],location:"",type:t},o));var i="".concat(n,"-").concat(a,".iwa");o[a].location="Root Entry"+i,fr.utils.cfb_add(e,i,np(ep([{id:a,messages:[wp(t,Jf(r))]}])));var s=i.replace(/^[\/]/,"").replace(/^Index\//,"").replace(/\.iwa$/,"");return Cp(e,o,2,(function(e){var t=Xf(e.messages[0].data);Ep(t,a||0,s),e.messages[0].data=Jf(t)})),a}function Tp(e,t,r,n){var o=t[r].location.replace(/^Root Entry\//,"").replace(/^Index\//,"").replace(/\.iwa$/,""),a=e[3].findIndex((function(e){var t,r,n=Xf(e.data);return(null==(t=n[3])?void 0:t[0])?zf(n[3][0].data)==o:!(!(null==(r=n[2])?void 0:r[0])||zf(n[2][0].data)!=o)})),i=Xf(e[3][a].data);i[6]||(i[6]=[]),(Array.isArray(n)?n:[n]).forEach((function(e){i[6].push({type:2,data:Jf([[],[{type:0,data:Gf(e)}]])})})),e[3][a].data=Jf(i)}var Op=!0;function Mp(e){return function(t){for(var r=0;r!=e.length;++r){var n=e[r];void 0===t[n[0]]&&(t[n[0]]=n[1]),"n"===n[2]&&(t[n[0]]=Number(t[n[0]]))}}}function Pp(e){Mp([["cellNF",!1],["cellHTML",!0],["cellFormula",!0],["cellStyles",!1],["cellText",!0],["cellDates",!1],["sheetStubs",!1],["sheetRows",0,"n"],["bookDeps",!1],["bookSheets",!1],["bookProps",!1],["bookFiles",!1],["bookVBA",!1],["password",""],["WTF",!1]])(e)}function jp(e){Mp([["cellDates",!1],["bookSST",!1],["bookType","xlsx"],["compression",!1],["WTF",!1]])(e)}function Rp(e,t,r,n,o,a,i,s){if(e&&e["!legdrawel"]){var l=rn(r,cn(e["!legdrawel"].Target,n),!0);l&&function(e,t,r){var n=0;(Qr(e,"shape")||[]).forEach((function(e){var o="",a=!0,i=-1,s=-1,l=-1;if(e.replace(pn,(function(t,r){var n=gn(t);switch(yn(n[0])){case"<ClientData":n.ObjectType&&(o=n.ObjectType);break;case"<Visible":case"<Visible/>":a=!1;break;case"<Row":case"<Row>":case"<Column":case"<Column>":i=r+t.length;break;case"</Row>":s=+e.slice(i,r).trim();break;case"</Column>":l=+e.slice(i,r).trim()}return""})),"Note"===o){var c=sh(t,s>=0&&l>=0?ua({r:s,c:l}):r[n].ref);c.c&&(c.c.hidden=a),++n}}))}(Rn(l),e,s||[])}}function _p(e,t,r,n,o,a,i,s,l,c,u,d){try{a[n]=ui(rn(e,r,!0),t);var f,p=tn(e,t);switch(s){case"sheet":f=vd(p,t,o,l,a[n],c,u,d);break;case"chart":if(!(f=yd(p,t,o,l,a[n],c))||!f["!drawel"])break;var h=cn(f["!drawel"].Target,t),m=ci(h),g=function(e,t){if(!e)return"??";var r=(e.match(/<c:chart [^<>]*r:id="([^<>"]*)"/)||["",""])[1];return t["!id"][r].Target}(rn(e,h,!0),ui(rn(e,m,!0),h)),v=cn(g,h),y=ci(v);f=qu(rn(e,v,!0),0,0,ui(rn(e,y,!0),v),0,f);break;case"macro":x=t,a[n],x.slice(-4),f={"!type":"macro"};break;case"dialog":f=function(e,t){return t.slice(-4),{"!type":"dialog"}}(0,t,0,0,a[n]);break;default:throw new Error("Unrecognized sheet type "+s)}i[n]=f;var b=[],w=[];a&&a[n]&&mr(a[n]).forEach((function(r){var o="";if(a[n][r].Type==li.CMNT){if(o=cn(a[n][r].Target,t),!(b=xd(tn(e,o,!0),o,l))||!b.length)return;lc(f,b,!1)}a[n][r].Type==li.TCMNT&&(o=cn(a[n][r].Target,t),w=w.concat(function(e,t){var r=[],n=!1,o={},a=0;return e.replace(pn,(function(i,s){var l=gn(i);switch(yn(l[0])){case"<?xml":case"<ThreadedComments":case"</ThreadedComments>":case"<extLst":case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<threadedComment":o={author:l.personId,guid:l.id,ref:l.ref,T:1};break;case"</threadedComment>":null!=o.t&&r.push(o);break;case"<text>":case"<text":a=s+i.length;break;case"</text>":o.t=e.slice(a,s).replace(/\r\n/g,"\n").replace(/\r/g,"\n");break;case"<mentions":case"<mentions>":case"<ext":n=!0;break;case"</mentions>":case"</ext>":n=!1;break;default:if(!n&&t.WTF)throw new Error("unrecognized "+l[0]+" in threaded comments")}return i})),r}(tn(e,o,!0),l)))})),w&&w.length&&lc(f,w,!0,l.people||[]),Rp(f,0,e,t,0,0,0,b)}catch(o6){if(l.WTF)throw o6}var x}function Np(e){return"/"==e.charAt(0)?e.slice(1):e}function Lp(e,t){if(ar(),Pp(t=t||{}),qr(e,"META-INF/manifest.xml"))return Pf(e,t);if(qr(e,"objectdata.xml"))return Pf(e,t);if(qr(e,"Index/Document.iwa")){if("undefined"==typeof Uint8Array)throw new Error("NUMBERS file parsing requires Uint8Array support");if(e.FileIndex)return yp(e,t);var r=fr.utils.cfb_new();return on(e).forEach((function(t){an(r,t,nn(e,t))})),yp(r,t)}if(!qr(e,"[Content_Types].xml")){if(qr(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(qr(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");var n=fr.find(e,"Index.zip");if(n)return delete(t=Or(t)).type,"string"==typeof n.content&&(t.type="binary"),"undefined"!==typeof Bun&&Buffer.isBuffer(n.content)?Yp(new Uint8Array(n.content),t):Yp(n.content,t);throw new Error("Unsupported ZIP file")}var o,a,i=on(e),s=function(e){var t={workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""};if(!e||!e.match)return t;var r={};if((e.match(pn)||[]).forEach((function(e){var n=gn(e);switch(n[0].replace(hn,"<")){case"<?xml":break;case"<Types":t.xmlns=n["xmlns"+(n[0].match(/<(\w+):/)||["",""])[1]];break;case"<Default":r[n.Extension.toLowerCase()]=n.ContentType;break;case"<Override":void 0!==t[ai[n.ContentType]]&&t[ai[n.ContentType]].push(n.PartName)}})),t.xmlns!==Xn)throw new Error("Unknown Namespace: "+t.xmlns);return t.calcchain=t.calcchains.length>0?t.calcchains[0]:"",t.sst=t.strs.length>0?t.strs[0]:"",t.style=t.styles.length>0?t.styles[0]:"",t.defaults=r,delete t.calcchains,t}(rn(e,"[Content_Types].xml")),l=!1;if(0===s.workbooks.length&&tn(e,a="xl/workbook.xml",!0)&&s.workbooks.push(a),0===s.workbooks.length){if(!tn(e,a="xl/workbook.bin",!0))throw new Error("Could not find workbook");s.workbooks.push(a),l=!0}"bin"==s.workbooks[0].slice(-3)&&(l=!0);var c={},u={};if(!t.bookSheets&&!t.bookProps){if(fu=[],s.sst)try{fu=wd(tn(e,Np(s.sst)),s.sst,t)}catch(o6){if(t.WTF)throw o6}t.cellStyles&&s.themes.length&&(c=rc(rn(e,s.themes[0].replace(/^\//,""),!0)||"",t)),s.style&&(u=bd(tn(e,Np(s.style)),s.style,c,t))}s.links.map((function(r){try{ui(rn(e,ci(Np(r))),r);return Ad(tn(e,Np(r)),0,r,t)}catch(o6){}}));var d=gd(tn(e,Np(s.workbooks[0])),s.workbooks[0],t),f={},p="";s.coreprops.length&&((p=tn(e,Np(s.coreprops[0]),!0))&&(f=gi(p)),0!==s.extprops.length&&(p=tn(e,Np(s.extprops[0]),!0))&&function(e,t,r){var n={};t||(t={}),e=Rn(e),bi.forEach((function(r){var o=(Zr(e,r[0])||[])[1];switch(r[2]){case"string":o&&(t[r[1]]=xn(o));break;case"bool":t[r[1]]="true"===o;break;case"raw":var a=Gr(e,r[0]);a&&a.length>0&&(n[r[1]]=a[1])}})),n.HeadingPairs&&n.TitlesOfParts&&xi(n.HeadingPairs,n.TitlesOfParts,t,r)}(p,f,t));var h={};t.bookSheets&&!t.bookProps||0!==s.custprops.length&&(p=rn(e,Np(s.custprops[0]),!0))&&(h=function(e,t){var r={},n="",o=e.match(Ai);if(o)for(var a=0;a!=o.length;++a){var i=o[a],s=gn(i);switch(yn(s[0])){case"<?xml":case"<Properties":break;case"<property":n=xn(s.name);break;case"</property>":n=null;break;default:if(0===i.indexOf("<vt:")){var l=i.split(">"),c=l[0].slice(4),u=l[1];switch(c){case"lpstr":case"bstr":case"lpwstr":case"cy":case"error":r[n]=xn(u);break;case"bool":r[n]=Tn(u);break;case"i1":case"i2":case"i4":case"i8":case"int":case"uint":r[n]=parseInt(u,10);break;case"r4":case"r8":case"decimal":r[n]=parseFloat(u);break;case"filetime":case"date":r[n]=Dr(u);break;default:if("/"==c.slice(-1))break;t.WTF&&"undefined"!==typeof console&&console.warn("Unexpected",i,c,l)}}else if("</"===i.slice(0,2));else if(t.WTF)throw new Error(i)}}return r}(p,t));var m={};if((t.bookSheets||t.bookProps)&&(d.Sheets?o=d.Sheets.map((function(e){return e.name})):f.Worksheets&&f.SheetNames.length>0&&(o=f.SheetNames),t.bookProps&&(m.Props=f,m.Custprops=h),t.bookSheets&&"undefined"!==typeof o&&(m.SheetNames=o),t.bookSheets?m.SheetNames:t.bookProps))return m;o={};var g={};t.bookDeps&&s.calcchain&&(g=Sd(tn(e,Np(s.calcchain)),s.calcchain));var v,y,b=0,w={},x=d.Sheets;f.Worksheets=x.length,f.SheetNames=[];for(var S=0;S!=x.length;++S)f.SheetNames[S]=x[S].name;var A=l?"bin":"xml",k=s.workbooks[0].lastIndexOf("/"),C=(s.workbooks[0].slice(0,k+1)+"_rels/"+s.workbooks[0].slice(k+1)+".rels").replace(/^\//,"");qr(e,C)||(C="xl/_rels/workbook."+A+".rels");var I=ui(rn(e,C,!0),C.replace(/_rels.*/,"s5s"));(s.metadata||[]).length>=1&&(t.xlmeta=kd(tn(e,Np(s.metadata[0])),s.metadata[0],t)),(s.people||[]).length>=1&&(t.people=function(e,t){var r=[],n=!1;return e.replace(pn,(function(e){var o=gn(e);switch(yn(o[0])){case"<?xml":case"<personList":case"</personList>":case"</person>":case"<extLst":case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<person":r.push({name:o.displayname,id:o.id});break;case"<ext":n=!0;break;case"</ext>":n=!1;break;default:if(!n&&t.WTF)throw new Error("unrecognized "+o[0]+" in threaded comments")}return e})),r}(tn(e,Np(s.people[0])),t)),I&&(I=function(e,t){if(!e)return 0;try{e=t.map((function(t){return t.id||(t.id=t.strRelID),[t.name,e["!id"][t.id].Target,(r=e["!id"][t.id].Type,li.WS.indexOf(r)>-1?"sheet":li.CS&&r==li.CS?"chart":li.DS&&r==li.DS?"dialog":li.MS&&r==li.MS?"macro":r&&r.length?r:"sheet")];var r}))}catch(o6){return null}return e&&0!==e.length?e:null}(I,d.Sheets));var E=tn(e,"xl/worksheets/sheet.xml",!0)?1:0;e:for(b=0;b!=f.Worksheets;++b){var D="sheet";if(I&&I[b]?(v="xl/"+I[b][1].replace(/[\/]?xl\//,""),qr(e,v)||(v=I[b][1]),qr(e,v)||(v=C.replace(/_rels\/[\S\s]*$/,"")+I[b][1]),D=I[b][2]):v=(v="xl/worksheets/sheet"+(b+1-E)+"."+A).replace(/sheet0\./,"sheet."),y=v.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels"),t&&null!=t.sheets)switch(typeof t.sheets){case"number":if(b!=t.sheets)continue e;break;case"string":if(f.SheetNames[b].toLowerCase()!=t.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(t.sheets)){for(var T=!1,O=0;O!=t.sheets.length;++O)"number"==typeof t.sheets[O]&&t.sheets[O]==b&&(T=1),"string"==typeof t.sheets[O]&&t.sheets[O].toLowerCase()==f.SheetNames[b].toLowerCase()&&(T=1);if(!T)continue e}}_p(e,v,y,f.SheetNames[b],b,w,o,D,t,d,c,u)}return m={Directory:s,Workbook:d,Props:f,Custprops:h,Deps:g,Sheets:o,SheetNames:f.SheetNames,Strings:fu,Styles:u,Themes:c,SSF:Or(Dt)},t&&t.bookFiles&&(e.files?(m.keys=i,m.files=e.files):(m.keys=[],m.files={},e.FullPaths.forEach((function(t,r){t=t.replace(/^Root Entry[\/]/,""),m.keys.push(t),m.files[t]=e.FileIndex[r]})))),t&&t.bookVBA&&(s.vba.length>0?m.vbaraw=tn(e,Np(s.vba[0]),!0):s.defaults&&"application/vnd.ms-office.vbaProject"===s.defaults.bin&&(m.vbaraw=tn(e,"xl/vbaProject.bin",!0))),m.bookType=l?"xlsb":"xlsx",m}function Up(e,t){var r=t||{},n="Workbook",o=fr.find(e,n);try{if(n="/!DataSpaces/Version",!(o=fr.find(e,n))||!o.content)throw new Error("ECMA-376 Encrypted file missing "+n);if(function(e){var t={};t.id=e.read_shift(0,"lpp4"),t.R=ul(e,4),t.U=ul(e,4),t.W=ul(e,4)}(o.content),n="/!DataSpaces/DataSpaceMap",!(o=fr.find(e,n))||!o.content)throw new Error("ECMA-376 Encrypted file missing "+n);var a=function(e){var t=[];e.l+=4;for(var r=e.read_shift(4);r-- >0;)t.push(dl(e));return t}(o.content);if(1!==a.length||1!==a[0].comps.length||0!==a[0].comps[0].t||"StrongEncryptionDataSpace"!==a[0].name||"EncryptedPackage"!==a[0].comps[0].v)throw new Error("ECMA-376 Encrypted file bad "+n);if(n="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace",!(o=fr.find(e,n))||!o.content)throw new Error("ECMA-376 Encrypted file missing "+n);var i=function(e){var t=[];e.l+=4;for(var r=e.read_shift(4);r-- >0;)t.push(e.read_shift(0,"lpp4"));return t}(o.content);if(1!=i.length||"StrongEncryptionTransform"!=i[0])throw new Error("ECMA-376 Encrypted file bad "+n);if(n="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary",!(o=fr.find(e,n))||!o.content)throw new Error("ECMA-376 Encrypted file missing "+n);fl(o.content)}catch(o6){}if(n="/EncryptionInfo",!(o=fr.find(e,n))||!o.content)throw new Error("ECMA-376 Encrypted file missing "+n);var s=function(e){var t=ul(e);switch(t.Minor){case 2:return[t.Minor,ml(e)];case 3:return[t.Minor,gl()];case 4:return[t.Minor,vl(e)]}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+t.Minor)}(o.content);if(n="/EncryptedPackage",!(o=fr.find(e,n))||!o.content)throw new Error("ECMA-376 Encrypted file missing "+n);if(4==s[0]&&"undefined"!==typeof decrypt_agile)return decrypt_agile(s[1],o.content,r.password||"",r);if(2==s[0]&&"undefined"!==typeof decrypt_std76)return decrypt_std76(s[1],o.content,r.password||"",r);throw new Error("File is password-protected")}function Bp(e,t){e&&!e.SSF&&(e.SSF=Or(Dt)),e&&e.SSF&&(ar(),or(e.SSF),t.revssf=yr(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF),t.rels={},t.wbrels={},t.Strings=[],t.Strings.Count=0,t.Strings.Unique=0,hu?t.revStrings=new Map:(t.revStrings={},t.revStrings.foo=[],delete t.revStrings.foo);var r="xml",n=mc.indexOf(t.bookType)>-1,o={workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""};jp(t=t||{});var a=sn(),i="",s=0;if(t.cellXfs=[],yu(t.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={}),an(a,i="docProps/core.xml",yi(e.Props,t)),o.coreprops.push(i),fi(t.rels,2,i,li.CORE_PROPS),i="docProps/app.xml",e.Props&&e.Props.SheetNames);else if(e.Workbook&&e.Workbook.Sheets){for(var l=[],c=0;c<e.SheetNames.length;++c)2!=(e.Workbook.Sheets[c]||{}).Hidden&&l.push(e.SheetNames[c]);e.Props.SheetNames=l}else e.Props.SheetNames=e.SheetNames;e.Props.Worksheets=e.Props.SheetNames.length,an(a,i,Si(e.Props)),o.extprops.push(i),fi(t.rels,3,i,li.EXT_PROPS),e.Custprops!==e.Props&&mr(e.Custprops||{}).length>0&&(an(a,i="docProps/custom.xml",ki(e.Custprops)),o.custprops.push(i),fi(t.rels,4,i,li.CUST_PROPS));var u=["SheetJ5"];for(t.tcid=0,s=1;s<=e.SheetNames.length;++s){var d={"!id":{}},f=e.Sheets[e.SheetNames[s-1]];(f||{})["!type"];if(an(a,i="xl/worksheets/sheet"+s+"."+r,_u(s-1,t,e,d)),o.sheets.push(i),fi(t.wbrels,-1,"worksheets/sheet"+s+"."+r,li.WS[0]),f){var p=f["!comments"],h=!1,m="";if(p&&p.length>0){var g=!1;p.forEach((function(e){e[1].forEach((function(e){1==e.T&&(g=!0)}))})),g&&(an(a,m="xl/threadedComments/threadedComment"+s+".xml",uc(p,u,t)),o.threadedcomments.push(m),fi(d,-1,"../threadedComments/threadedComment"+s+".xml",li.TCMNT)),an(a,m="xl/comments"+s+"."+r,cc(p)),o.comments.push(m),fi(d,-1,"../comments"+s+"."+r,li.CMNT),h=!0}f["!legacy"]&&h&&an(a,"xl/drawings/vmlDrawing"+s+".vml",sc(s,f["!comments"])),delete f["!comments"],delete f["!legacy"]}d["!id"].rId1&&an(a,ci(i),di(d))}return null!=t.Strings&&t.Strings.length>0&&(an(a,i="xl/sharedStrings."+r,function(e,t){if(!t.bookSST)return"";var r=[un];r[r.length]=Hn("sst",null,{xmlns:io[0],count:e.Count,uniqueCount:e.Unique});for(var n=0;n!=e.length;++n)if(null!=e[n]){var o=e[n],a="<si>";o.r?a+=o.r:(a+="<t",o.t||(o.t=""),"string"!==typeof o.t&&(o.t=String(o.t)),o.t.match(il)&&(a+=' xml:space="preserve"'),a+=">"+kn(o.t)+"</t>"),a+="</si>",r[r.length]=a}return r.length>2&&(r[r.length]="</sst>",r[1]=r[1].replace("/>",">")),r.join("")}(t.Strings,t)),o.strs.push(i),fi(t.wbrels,-1,"sharedStrings."+r,li.SST)),an(a,i="xl/workbook."+r,function(e){var t=[un];t[t.length]=Hn("workbook",null,{xmlns:io[0],"xmlns:r":ro});var r=e.Workbook&&(e.Workbook.Names||[]).length>0,n={codeName:"ThisWorkbook"};e.Workbook&&e.Workbook.WBProps&&(ed.forEach((function(t){null!=e.Workbook.WBProps[t[0]]&&e.Workbook.WBProps[t[0]]!=t[1]&&(n[t[0]]=e.Workbook.WBProps[t[0]])})),e.Workbook.WBProps.CodeName&&(n.codeName=e.Workbook.WBProps.CodeName,delete n.CodeName)),t[t.length]=Hn("workbookPr",null,n);var o=e.Workbook&&e.Workbook.Sheets||[],a=0;if(o&&o[0]&&o[0].Hidden){for(t[t.length]="<bookViews>",a=0;a!=e.SheetNames.length&&o[a]&&o[a].Hidden;++a);a==e.SheetNames.length&&(a=0),t[t.length]='<workbookView firstSheet="'+a+'" activeTab="'+a+'"/>',t[t.length]="</bookViews>"}for(t[t.length]="<sheets>",a=0;a!=e.SheetNames.length;++a){var i={name:kn(e.SheetNames[a].slice(0,31))};if(i.sheetId=""+(a+1),i["r:id"]="rId"+(a+1),o[a])switch(o[a].Hidden){case 1:i.state="hidden";break;case 2:i.state="veryHidden"}t[t.length]=Hn("sheet",null,i)}return t[t.length]="</sheets>",r&&(t[t.length]="<definedNames>",e.Workbook&&e.Workbook.Names&&e.Workbook.Names.forEach((function(e){var r={name:e.Name};e.Comment&&(r.comment=e.Comment),null!=e.Sheet&&(r.localSheetId=""+e.Sheet),e.Hidden&&(r.hidden="1"),e.Ref&&(t[t.length]=Hn("definedName",kn(e.Ref),r))})),t[t.length]="</definedNames>"),t.length>2&&(t[t.length]="</workbook>",t[1]=t[1].replace("/>",">")),t.join("")}(e)),o.workbooks.push(i),fi(t.rels,1,i,li.WB),an(a,i="xl/theme/theme1.xml",nc(e.Themes,t)),o.themes.push(i),fi(t.wbrels,-1,"theme/theme1.xml",li.THEME),an(a,i="xl/styles."+r,Fl(e,t)),o.styles.push(i),fi(t.wbrels,-1,"styles."+r,li.STY),e.vbaraw&&n&&(an(a,i="xl/vbaProject.bin",e.vbaraw),o.vba.push(i),fi(t.wbrels,-1,"vbaProject.bin",li.VBA)),an(a,i="xl/metadata."+r,function(){var e=[un];return e.push('<metadata xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:xlrd="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata" xmlns:xda="http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray">\n  <metadataTypes count="1">\n    <metadataType name="XLDAPR" minSupportedVersion="120000" copy="1" pasteAll="1" pasteValues="1" merge="1" splitFirst="1" rowColShift="1" clearFormats="1" clearComments="1" assign="1" coerce="1" cellMeta="1"/>\n  </metadataTypes>\n  <futureMetadata name="XLDAPR" count="1">\n    <bk>\n      <extLst>\n        <ext uri="{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}">\n          <xda:dynamicArrayProperties fDynamic="1" fCollapsed="0"/>\n        </ext>\n      </extLst>\n    </bk>\n  </futureMetadata>\n  <cellMetadata count="1">\n    <bk>\n      <rc t="1" v="0"/>\n    </bk>\n  </cellMetadata>\n</metadata>'),e.join("")}()),o.metadata.push(i),fi(t.wbrels,-1,"metadata."+r,li.XLMETA),u.length>1&&(an(a,i="xl/persons/person.xml",dc(u)),o.people.push(i),fi(t.wbrels,-1,"persons/person.xml",li.PEOPLE)),an(a,"[Content_Types].xml",si(o,t)),an(a,"_rels/.rels",di(t.rels)),an(a,"xl/_rels/workbook.xml.rels",di(t.wbrels)),delete t.revssf,delete t.ssf,a}function Fp(e,t){var r="";switch((t||{}).type||"base64"){case"buffer":case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":r=it(e.slice(0,12));break;case"binary":r=e;break;default:throw new Error("Unrecognized type "+(t&&t.type||"undefined"))}return[r.charCodeAt(0),r.charCodeAt(1),r.charCodeAt(2),r.charCodeAt(3),r.charCodeAt(4),r.charCodeAt(5),r.charCodeAt(6),r.charCodeAt(7)]}function zp(e,t){var r=0;e:for(;r<e.length;)switch(e.charCodeAt(r)){case 10:case 13:case 32:++r;break;case 60:return Nd(e.slice(r),t);default:break e}return Js.to_workbook(e,t)}function Wp(e,t){var r=e;return"base64"==t.type&&(r=it(r)),"undefined"!==typeof ArrayBuffer&&e instanceof ArrayBuffer&&(r=new Uint8Array(e)),r="undefined"!==typeof Be?Be.utils.decode(1200,r.slice(2),"str"):st&&Buffer.isBuffer(e)?e.slice(2).toString("utf16le"):"undefined"!==typeof Uint8Array&&r instanceof Uint8Array?"undefined"!==typeof TextDecoder?new TextDecoder("utf-16le").decode(r.slice(2)):function(e){for(var t=[],r=0;r<e.length>>1;++r)t[r]=String.fromCharCode(e[2*r]+(e[2*r+1]<<8));return t.join("")}(r.slice(2)):$e(r.slice(2)),t.type="binary",zp(r,t)}function Hp(e,t,r,n){return n?(r.type="string",Js.to_workbook(e,r)):Js.to_workbook(t,r)}function Yp(e,t){Xe();var r=t||{};if(r.codepage&&"undefined"===typeof Be&&console.error("Codepage tables are not loaded.  Non-ASCII characters may not give expected results"),"undefined"!==typeof ArrayBuffer&&e instanceof ArrayBuffer)return Yp(new Uint8Array(e),((r=Or(r)).type="array",r));if("undefined"!==typeof Int8Array&&e instanceof Int8Array)return Yp(new Uint8Array(e.buffer,e.byteOffset,e.length),r);"undefined"!==typeof Uint8Array&&e instanceof Uint8Array&&!r.type&&(r.type="undefined"!==typeof Deno?"buffer":"array");var n,o=e,a=!1;if(r.cellStyles&&(r.cellNF=!0,r.sheetStubs=!0),pu={},r.dateNF&&(pu.dateNF=r.dateNF),r.type||(r.type=st&&Buffer.isBuffer(e)?"buffer":"base64"),"file"==r.type&&(r.type=st?"buffer":"binary",o=function(e){if("undefined"!==typeof ur)return ur.readFileSync(e);if("undefined"!==typeof Deno)return Deno.readFileSync(e);if("undefined"!==typeof $&&"undefined"!==typeof File&&"undefined"!==typeof Folder)try{var t=File(e);t.open("r"),t.encoding="binary";var r=t.read();return t.close(),r}catch(o6){if(!o6.message||-1==o6.message.indexOf("onstruct"))throw o6}throw new Error("Cannot access file "+e)}(e),"undefined"===typeof Uint8Array||st||(r.type="array")),"string"==r.type&&(a=!0,r.type="binary",r.codepage=65001,o=function(e){return e.match(/[^\x00-\x7F]/)?_n(e):e}(e)),"array"==r.type&&"undefined"!==typeof Uint8Array&&e instanceof Uint8Array&&"undefined"!==typeof ArrayBuffer){var i=new ArrayBuffer(3),s=new Uint8Array(i);if(s.foo="bar",!s.foo)return(r=Or(r)).type="array",Yp(mt(o),r)}switch((n=Fp(o,r))[0]){case 208:if(207===n[1]&&17===n[2]&&224===n[3]&&161===n[4]&&177===n[5]&&26===n[6]&&225===n[7])return function(e,t){return fr.find(e,"EncryptedPackage")?Up(e,t):rf(e,t)}(fr.read(o,r),r);break;case 9:if(n[1]<=8)return rf(o,r);break;case 60:return Nd(o,r);case 73:if(73===n[1]&&42===n[2]&&0===n[3])throw new Error("TIFF Image File is not a spreadsheet");if(68===n[1])return function(e,t){var r=t||{},n=!!r.WTF;r.WTF=!0;try{var o=Qs.to_workbook(e,r);return r.WTF=n,o}catch(o6){if(r.WTF=n,-1==o6.message.indexOf("SYLK bad record ID")&&n)throw o6;return Js.to_workbook(e,t)}}(o,r);break;case 84:if(65===n[1]&&66===n[2]&&76===n[3])return Ks.to_workbook(o,r);break;case 80:return 75===n[1]&&n[2]<9&&n[3]<9?function(e,t){var r=e,n=t||{};return n.type||(n.type=st&&Buffer.isBuffer(e)?"buffer":"base64"),Lp(ln(r,n),n)}(o,r):Hp(e,o,r,a);case 239:return 60===n[3]?Nd(o,r):Hp(e,o,r,a);case 255:if(254===n[1])return Wp(o,r);if(0===n[1]&&2===n[2]&&0===n[3])return $s.to_workbook(o,r);break;case 0:if(0===n[1]){if(n[2]>=2&&0===n[3])return $s.to_workbook(o,r);if(0===n[2]&&(8===n[3]||9===n[3]))return $s.to_workbook(o,r)}break;case 3:case 131:case 139:case 140:return Zs.to_workbook(o,r);case 123:if(92===n[1]&&114===n[2]&&116===n[3])return Al(o,r);break;case 10:case 13:case 32:return function(e,t){var r="",n=Fp(e,t);switch(t.type){case"base64":r=it(e);break;case"binary":r=e;break;case"buffer":r=e.toString("binary");break;case"array":r=Tr(e);break;default:throw new Error("Unrecognized type "+t.type)}return 239==n[0]&&187==n[1]&&191==n[2]&&(r=Rn(r)),t.type="binary",zp(r,t)}(o,r);case 137:if(80===n[1]&&78===n[2]&&71===n[3])throw new Error("PNG Image File is not a spreadsheet");break;case 8:if(231===n[1])throw new Error("Unsupported Multiplan 1.x file!");break;case 12:if(236===n[1])throw new Error("Unsupported Multiplan 2.x file!");if(237===n[1])throw new Error("Unsupported Multiplan 3.x file!")}return Gs.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31?Zs.to_workbook(o,r):Hp(e,o,r,a)}function Vp(e,t){switch(t.type){case"base64":case"binary":break;case"buffer":case"array":t.type="";break;case"file":return hr(t.file,fr.write(e,{type:st?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+t.bookType+"' files");default:throw new Error("Unrecognized type "+t.type)}return fr.write(e,t)}function Gp(e,t){switch(t.bookType){case"ods":return Uf(e,t);case"numbers":return kp(e,t);case"xlsb":return function(e,t){e&&!e.SSF&&(e.SSF=Or(Dt)),e&&e.SSF&&(ar(),or(e.SSF),t.revssf=yr(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF),t.rels={},t.wbrels={},t.Strings=[],t.Strings.Count=0,t.Strings.Unique=0,hu?t.revStrings=new Map:(t.revStrings={},t.revStrings.foo=[],delete t.revStrings.foo);var r="bin",n={workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""};jp(t=t||{});var o=sn(),a="",i=0;if(t.cellXfs=[],yu(t.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={}),an(o,a="docProps/core.xml",yi(e.Props,t)),n.coreprops.push(a),fi(t.rels,2,a,li.CORE_PROPS),a="docProps/app.xml",e.Props&&e.Props.SheetNames);else if(e.Workbook&&e.Workbook.Sheets){for(var s=[],l=0;l<e.SheetNames.length;++l)2!=(e.Workbook.Sheets[l]||{}).Hidden&&s.push(e.SheetNames[l]);e.Props.SheetNames=s}else e.Props.SheetNames=e.SheetNames;e.Props.Worksheets=e.Props.SheetNames.length,an(o,a,Si(e.Props)),n.extprops.push(a),fi(t.rels,3,a,li.EXT_PROPS),e.Custprops!==e.Props&&mr(e.Custprops||{}).length>0&&(an(o,a="docProps/custom.xml",ki(e.Custprops)),n.custprops.push(a),fi(t.rels,4,a,li.CUST_PROPS));var c=["SheetJ5"];for(t.tcid=0,i=1;i<=e.SheetNames.length;++i){var u={"!id":{}},d=e.Sheets[e.SheetNames[i-1]];if((d||{})["!type"],an(o,a="xl/worksheets/sheet"+i+"."+r,$u(i-1,t,e,u)),n.sheets.push(a),fi(t.wbrels,-1,"worksheets/sheet"+i+"."+r,li.WS[0]),d){var f=d["!comments"],p=!1,h="";if(f&&f.length>0){var m=!1;f.forEach((function(e){e[1].forEach((function(e){1==e.T&&(m=!0)}))})),m&&(an(o,h="xl/threadedComments/threadedComment"+i+".xml",uc(f,c,t)),n.threadedcomments.push(h),fi(u,-1,"../threadedComments/threadedComment"+i+".xml",li.TCMNT)),an(o,h="xl/comments"+i+"."+r,hc(f)),n.comments.push(h),fi(u,-1,"../comments"+i+"."+r,li.CMNT),p=!0}d["!legacy"]&&p&&an(o,"xl/drawings/vmlDrawing"+i+".vml",sc(i,d["!comments"])),delete d["!comments"],delete d["!legacy"]}u["!id"].rId1&&an(o,ci(a),di(u))}return null!=t.Strings&&t.Strings.length>0&&(an(o,a="xl/sharedStrings."+r,ll(t.Strings)),n.strs.push(a),fi(t.wbrels,-1,"sharedStrings."+r,li.SST)),an(o,a="xl/workbook."+r,md(e)),n.workbooks.push(a),fi(t.rels,1,a,li.WB),an(o,a="xl/theme/theme1.xml",nc(e.Themes,t)),n.themes.push(a),fi(t.wbrels,-1,"theme/theme1.xml",li.THEME),an(o,a="xl/styles."+r,ql(e,t)),n.styles.push(a),fi(t.wbrels,-1,"styles."+r,li.STY),e.vbaraw&&(an(o,a="xl/vbaProject.bin",e.vbaraw),n.vba.push(a),fi(t.wbrels,-1,"vbaProject.bin",li.VBA)),an(o,a="xl/metadata."+r,ic()),n.metadata.push(a),fi(t.wbrels,-1,"metadata."+r,li.XLMETA),c.length>1&&(an(o,a="xl/persons/person.xml",dc(c)),n.people.push(a),fi(t.wbrels,-1,"persons/person.xml",li.PEOPLE)),an(o,"[Content_Types].xml",si(n,t)),an(o,"_rels/.rels",di(t.rels)),an(o,"xl/_rels/workbook.bin.rels",di(t.wbrels)),delete t.revssf,delete t.ssf,o}(e,t);default:return Bp(e,t)}}function Zp(e,t){var r={},n=st?"nodebuffer":"undefined"!==typeof Uint8Array?"array":"string";if(t.compression&&(r.compression="DEFLATE"),t.password)r.type=n;else switch(t.type){case"base64":r.type="base64";break;case"binary":r.type="string";break;case"string":throw new Error("'string' output type invalid for '"+t.bookType+"' files");case"buffer":case"file":r.type=n;break;default:throw new Error("Unrecognized type "+t.type)}var o=e.FullPaths?fr.write(e,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[r.type]||r.type,compression:!!t.compression}):e.generate(r);if("undefined"!==typeof Deno&&"string"==typeof o){if("binary"==t.type||"base64"==t.type)return o;o=new Uint8Array(pt(o))}return t.password&&"undefined"!==typeof encrypt_agile?Vp(encrypt_agile(o,t.password),t):"file"===t.type?hr(t.file,o):"string"==t.type?Rn(o):o}function Qp(e,t,r){r||(r="");var n=r+e;switch(t.type){case"base64":return at(_n(n));case"binary":return _n(n);case"string":return e;case"file":return hr(t.file,n,"utf8");case"buffer":return st?lt(n,"utf8"):"undefined"!==typeof TextEncoder?(new TextEncoder).encode(n):Qp(n,{type:"binary"}).split("").map((function(e){return e.charCodeAt(0)}))}throw new Error("Unrecognized type "+t.type)}function Kp(e,t){switch(t.type){case"base64":return function(e){for(var t="",r=0,n=0,o=0,a=0,i=0,s=0,l=0,c=0;c<e.length;)(r=e.charCodeAt(c++))>255&&(r=95),a=r>>2,(n=e.charCodeAt(c++))>255&&(n=95),i=(3&r)<<4|n>>4,(o=e.charCodeAt(c++))>255&&(o=95),s=(15&n)<<2|o>>6,l=63&o,isNaN(n)?s=l=64:isNaN(o)&&(l=64),t+=ot.charAt(a)+ot.charAt(i)+ot.charAt(s)+ot.charAt(l);return t}(e);case"binary":case"string":return e;case"file":return hr(t.file,e,"binary");case"buffer":return st?lt(e,"binary"):e.split("").map((function(e){return e.charCodeAt(0)}))}throw new Error("Unrecognized type "+t.type)}function Xp(e,t){switch(t.type){case"string":case"base64":case"binary":for(var r="",n=0;n<e.length;++n)r+=String.fromCharCode(e[n]);return"base64"==t.type?at(r):"string"==t.type?Rn(r):r;case"file":return hr(t.file,e);case"buffer":return e;default:throw new Error("Unrecognized type "+t.type)}}function Jp(e,t){Xe(),cd(e);var r=Or(t||{});if(r.cellStyles&&(r.cellNF=!0,r.sheetStubs=!0),"array"==r.type){r.type="binary";var n=Jp(e,r);return r.type="array",pt(n)}var o=0;if(r.sheet&&(o="number"==typeof r.sheet?r.sheet:e.SheetNames.indexOf(r.sheet),!e.SheetNames[o]))throw new Error("Sheet not found: "+r.sheet+" : "+typeof r.sheet);switch(r.bookType||"xlsb"){case"xml":case"xlml":return Qp(function(e,t){t||(t={}),e.SSF||(e.SSF=Or(Dt)),e.SSF&&(ar(),or(e.SSF),t.revssf=yr(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF,t.cellXfs=[],yu(t.cellXfs,{},{revssf:{General:0}}));var r=[];r.push(Ld(e,t)),r.push(Ud(e)),r.push(""),r.push(zd(e));for(var n=0;n<e.SheetNames.length;++n)r.push(Hn("Worksheet",Gd(n,t,e),{"ss:Name":kn(e.SheetNames[n])}));return r[2]=Bd(0,t),un+Hn("Workbook",r.join(""),{xmlns:co,"xmlns:o":so,"xmlns:x":lo,"xmlns:ss":co,"xmlns:dt":uo,"xmlns:html":ho})}(e,r),r);case"slk":case"sylk":return Qp(Qs.from_sheet(e.Sheets[e.SheetNames[o]],r,e),r);case"htm":case"html":return Qp(Cf(e.Sheets[e.SheetNames[o]],r),r);case"txt":return Kp(ah(e.Sheets[e.SheetNames[o]],r),r);case"csv":return Qp(oh(e.Sheets[e.SheetNames[o]],r),r,"\ufeff");case"dif":return Qp(Ks.from_sheet(e.Sheets[e.SheetNames[o]],r),r);case"dbf":return Xp(Zs.from_sheet(e.Sheets[e.SheetNames[o]],r),r);case"prn":return Qp(Js.from_sheet(e.Sheets[e.SheetNames[o]],r),r);case"rtf":return Qp(function(e){var t=["{\\rtf1\\ansi"];if(!e["!ref"])return t[0]+"}";for(var r,n=ma(e["!ref"]),o=null!=e["!data"],a=[],i=n.s.r;i<=n.e.r;++i){t.push("\\trowd\\trautofit1");for(var s=n.s.c;s<=n.e.c;++s)t.push("\\cellx"+(s+1));for(t.push("\\pard\\intbl"),o&&(a=e["!data"][i]||[]),s=n.s.c;s<=n.e.c;++s){var l=ua({r:i,c:s});(r=o?a[s]:e[l])&&(null!=r.v||r.f&&!r.F)?(t.push(" "+(r.w||(va(r),r.w)||"").replace(/[\r\n]/g,"\\par ")),t.push("\\cell")):t.push(" \\cell")}t.push("\\pard\\intbl\\row")}return t.join("")+"}"}(e.Sheets[e.SheetNames[o]]),r);case"eth":return Qp(Xs.from_sheet(e.Sheets[e.SheetNames[o]],r),r);case"fods":return Qp(Uf(e,r),r);case"wk1":return Xp($s.sheet_to_wk1(e.Sheets[e.SheetNames[o]],r),r);case"wk3":return Xp($s.book_to_wk3(e,r),r);case"biff2":r.biff||(r.biff=2);case"biff3":r.biff||(r.biff=3);case"biff4":return r.biff||(r.biff=4),Xp(bf(e,r),r);case"biff5":r.biff||(r.biff=5);case"biff8":case"xla":case"xls":return r.biff||(r.biff=8),function(e,t){var r=t||{};return Vp(nf(e,r),r)}(e,r);case"xlsx":case"xlsm":case"xlam":case"xlsb":case"numbers":case"ods":return function(e,t){var r=Or(t||{});return Zp(Gp(e,r),r)}(e,r);default:throw new Error("Unrecognized bookType |"+r.bookType+"|")}}function $p(e){if(!e.bookType){var t=e.file.slice(e.file.lastIndexOf(".")).toLowerCase();t.match(/^\.[a-z]+$/)&&(e.bookType=t.slice(1)),e.bookType={xls:"biff8",htm:"html",slk:"sylk",socialcalc:"eth",Sh33tJS:"WTF"}[e.bookType]||e.bookType}}function qp(e,t,r){var n=r||{};return n.type="file",n.file=t,$p(n),Jp(e,n)}function eh(e,t,r,n,o,a,i){var s=ia(r),l=i.defval,c=i.raw||!Object.prototype.hasOwnProperty.call(i,"raw"),u=!0,d=null!=e["!data"],f=1===o?[]:{};if(1!==o)if(Object.defineProperty)try{Object.defineProperty(f,"__rowNum__",{value:r,enumerable:!1})}catch(o6){f.__rowNum__=r}else f.__rowNum__=r;if(!d||e["!data"][r])for(var p=t.s.c;p<=t.e.c;++p){var h=d?(e["!data"][r]||[])[p]:e[n[p]+s];if(null!=h&&void 0!==h.t){var m=h.v;switch(h.t){case"z":if(null==m)break;continue;case"e":m=0==m?null:void 0;break;case"s":case"b":case"n":if(!h.z||!$t(h.z))break;if("number"==typeof(m=Ar(m)))break;case"d":i&&(i.UTC||!1===i.raw)||(m=Fr(new Date(m)));break;default:throw new Error("unrecognized type "+h.t)}if(null!=a[p]){if(null==m)if("e"==h.t&&null===m)f[a[p]]=null;else if(void 0!==l)f[a[p]]=l;else{if(!c||null!==m)continue;f[a[p]]=null}else f[a[p]]=("n"===h.t&&"boolean"===typeof i.rawNumbers?i.rawNumbers:c)?m:va(h,m,i);null!=m&&(u=!1)}}else{if(void 0===l)continue;null!=a[p]&&(f[a[p]]=l)}}return{row:f,isempty:u}}function th(e,t){if(null==e||null==e["!ref"])return[];var r={t:"n",v:0},n=0,o=1,a=[],i=0,s="",l={s:{r:0,c:0},e:{r:0,c:0}},c=t||{},u=null!=c.range?c.range:e["!ref"];switch(1===c.header?n=1:"A"===c.header?n=2:Array.isArray(c.header)?n=3:null==c.header&&(n=0),typeof u){case"string":l=ma(u);break;case"number":(l=ma(e["!ref"])).s.r=u;break;default:l=u}n>0&&(o=0);var d=ia(l.s.r),f=[],p=[],h=0,m=0,g=null!=e["!data"],v=l.s.r,y=0,b={};g&&!e["!data"][v]&&(e["!data"][v]=[]);var w=c.skipHidden&&e["!cols"]||[],x=c.skipHidden&&e["!rows"]||[];for(y=l.s.c;y<=l.e.c;++y)if(!(w[y]||{}).hidden)switch(f[y]=la(y),r=g?e["!data"][v][y]:e[f[y]+d],n){case 1:a[y]=y-l.s.c;break;case 2:a[y]=f[y];break;case 3:a[y]=c.header[y-l.s.c];break;default:if(null==r&&(r={w:"__EMPTY",t:"s"}),s=i=va(r,null,c),m=b[i]||0){do{s=i+"_"+m++}while(b[s]);b[i]=m,b[s]=1}else b[i]=1;a[y]=s}for(v=l.s.r+o;v<=l.e.r;++v)if(!(x[v]||{}).hidden){var S=eh(e,l,v,f,n,a,c);(!1===S.isempty||(1===n?!1!==c.blankrows:c.blankrows))&&(p[h++]=S.row)}return p.length=h,p}var rh=/"/g;function nh(e,t,r,n,o,a,i,s,l){for(var c=!0,u=[],d="",f=ia(r),p=null!=e["!data"],h=p&&e["!data"][r]||[],m=t.s.c;m<=t.e.c;++m)if(n[m]){var g=p?h[m]:e[n[m]+f];if(null==g)d="";else if(null!=g.v){c=!1,d=""+(l.rawNumbers&&"n"==g.t?g.v:va(g,null,l));for(var v=0,y=0;v!==d.length;++v)if((y=d.charCodeAt(v))===o||y===a||34===y||l.forceQuotes){d='"'+d.replace(rh,'""')+'"';break}"ID"==d&&0==s&&0==u.length&&(d='"ID"')}else null==g.f||g.F?d="":(c=!1,(d="="+g.f).indexOf(",")>=0&&(d='"'+d.replace(rh,'""')+'"'));u.push(d)}if(l.strip)for(;""===u[u.length-1];)--u.length;return!1===l.blankrows&&c?null:u.join(i)}function oh(e,t){var r=[],n=null==t?{}:t;if(null==e||null==e["!ref"])return"";for(var o=ma(e["!ref"]),a=void 0!==n.FS?n.FS:",",i=a.charCodeAt(0),s=void 0!==n.RS?n.RS:"\n",l=s.charCodeAt(0),c="",u=[],d=n.skipHidden&&e["!cols"]||[],f=n.skipHidden&&e["!rows"]||[],p=o.s.c;p<=o.e.c;++p)(d[p]||{}).hidden||(u[p]=la(p));for(var h=0,m=o.s.r;m<=o.e.r;++m)(f[m]||{}).hidden||null!=(c=nh(e,o,m,u,i,l,a,h,n))&&(c||!1!==n.blankrows)&&r.push((h++?s:"")+c);return r.join("")}function ah(e,t){t||(t={}),t.FS="\t",t.RS="\n";var r=oh(e,t);if("undefined"==typeof Be||"string"==t.type)return r;var n=Be.utils.encode(1200,r,"str");return String.fromCharCode(255)+String.fromCharCode(254)+n}function ih(e,t,r){var n=r||{},o=e?null!=e["!data"]:n.dense;var a=+!n.skipHeader,i=e||{};!e&&o&&(i["!data"]=[]);var s=0,l=0;if(i&&null!=n.origin)if("number"==typeof n.origin)s=n.origin;else{var c="string"==typeof n.origin?ca(n.origin):n.origin;s=c.r,l=c.c}var u={s:{c:0,r:0},e:{c:l,r:s+t.length-1+a}};if(i["!ref"]){var d=ma(i["!ref"]);u.e.c=Math.max(u.e.c,d.e.c),u.e.r=Math.max(u.e.r,d.e.r),-1==s&&(s=d.e.r+1,u.e.r=s+t.length-1+a)}else-1==s&&(s=0,u.e.r=t.length-1+a);var f=n.header||[],p=0,h=[];t.forEach((function(e,t){o&&!i["!data"][s+t+a]&&(i["!data"][s+t+a]=[]),o&&(h=i["!data"][s+t+a]),mr(e).forEach((function(r){-1==(p=f.indexOf(r))&&(f[p=f.length]=r);var c=e[r],u="z",d="",m=o?"":la(l+p)+ia(s+t+a),g=o?h[l+p]:i[m];!c||"object"!==typeof c||c instanceof Date?("number"==typeof c?u="n":"boolean"==typeof c?u="b":"string"==typeof c?u="s":c instanceof Date?(u="d",n.UTC||(c=zr(c)),n.cellDates||(u="n",c=Sr(c)),d=null!=g&&g.z&&$t(g.z)?g.z:n.dateNF||Dt[14]):null===c&&n.nullError&&(u="e",c=0),g?(g.t=u,g.v=c,delete g.w,delete g.R,d&&(g.z=d)):o?h[l+p]=g={t:u,v:c}:i[m]=g={t:u,v:c},d&&(g.z=d)):o?h[l+p]=c:i[m]=c}))})),u.e.c=Math.max(u.e.c,l+f.length-1);var m=ia(s);if(o&&!i["!data"][s]&&(i["!data"][s]=[]),a)for(p=0;p<f.length;++p)o?i["!data"][s][p+l]={t:"s",v:f[p]}:i[la(p+l)+m]={t:"s",v:f[p]};return i["!ref"]=fa(u),i}function sh(e,t,r){if("string"==typeof t){if(null!=e["!data"]){var n=ca(t);return e["!data"][n.r]||(e["!data"][n.r]=[]),e["!data"][n.r][n.c]||(e["!data"][n.r][n.c]={t:"z"})}return e[t]||(e[t]={t:"z"})}return sh(e,"number"!=typeof t?ua(t):la(r||0)+ia(t))}function lh(e,t){var r={SheetNames:[],Sheets:{}};return e&&ch(r,e,t||"Sheet1"),r}function ch(e,t,r,n){var o=1;if(!r)for(;o<=65535&&-1!=e.SheetNames.indexOf(r="Sheet"+o);++o,r=void 0);if(!r||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(n&&e.SheetNames.indexOf(r)>=0&&r.length<32){var a=r.match(/\d+$/);o=a&&+a[0]||0;var i=a&&r.slice(0,a.index)||r;for(++o;o<=65535&&-1!=e.SheetNames.indexOf(r=i+o);++o);}if(ld(r),e.SheetNames.indexOf(r)>=0)throw new Error("Worksheet with name |"+r+"| already exists!");return e.SheetNames.push(r),e.Sheets[r]=t,r}function uh(e,t,r){return t?(e.l={Target:t},r&&(e.l.Tooltip=r)):delete e.l,e}var dh={encode_col:la,encode_row:ia,encode_cell:ua,encode_range:fa,decode_col:sa,decode_row:aa,split_cell:function(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")},decode_cell:ca,decode_range:da,format_cell:va,sheet_new:function(e){var t={};return(e||{}).dense&&(t["!data"]=[]),t},sheet_add_aoa:ba,sheet_add_json:ih,sheet_add_dom:If,aoa_to_sheet:wa,json_to_sheet:function(e,t){return ih(null,e,t)},table_to_sheet:Ef,table_to_book:function(e,t){return ya(Ef(e,t),t)},sheet_to_csv:oh,sheet_to_txt:ah,sheet_to_json:th,sheet_to_html:Cf,sheet_to_formulae:function(e,t){var r,n="",o="";if(null==e||null==e["!ref"])return[];var a,i=ma(e["!ref"]),s="",l=[],c=[],u=null!=e["!data"];for(a=i.s.c;a<=i.e.c;++a)l[a]=la(a);for(var d=i.s.r;d<=i.e.r;++d)for(s=ia(d),a=i.s.c;a<=i.e.c;++a)if(n=l[a]+s,o="",void 0!==(r=u?(e["!data"][d]||[])[a]:e[n])){if(null!=r.F){if(n=r.F,!r.f)continue;o=r.f,-1==n.indexOf(":")&&(n=n+":"+n)}if(null!=r.f)o=r.f;else{if(t&&!1===t.values)continue;if("z"==r.t)continue;if("n"==r.t&&null!=r.v)o=""+r.v;else if("b"==r.t)o=r.v?"TRUE":"FALSE";else if(void 0!==r.w)o="'"+r.w;else{if(void 0===r.v)continue;o="s"==r.t?"'"+r.v:""+r.v}}c[c.length]=n+"="+o}return c},sheet_to_row_object_array:th,sheet_get_cell:sh,book_new:lh,book_append_sheet:ch,book_set_sheet_visibility:function(e,t,r){e.Workbook||(e.Workbook={}),e.Workbook.Sheets||(e.Workbook.Sheets=[]);var n=function(e,t){if("number"==typeof t){if(t>=0&&e.SheetNames.length>t)return t;throw new Error("Cannot find sheet # "+t)}if("string"==typeof t){var r=e.SheetNames.indexOf(t);if(r>-1)return r;throw new Error("Cannot find sheet name |"+t+"|")}throw new Error("Cannot find sheet |"+t+"|")}(e,t);switch(e.Workbook.Sheets[n]||(e.Workbook.Sheets[n]={}),r){case 0:case 1:case 2:break;default:throw new Error("Bad sheet visibility setting "+r)}e.Workbook.Sheets[n].Hidden=r},cell_set_number_format:function(e,t){return e.z=t,e},cell_set_hyperlink:uh,cell_set_internal_link:function(e,t,r){return uh(e,"#"+t,r)},cell_add_comment:function(e,t,r){e.c||(e.c=[]),e.c.push({t:t,a:r||"SheetJS"})},sheet_set_array_formula:function(e,t,r,n){for(var o="string"!=typeof t?t:ma(t),a="string"==typeof t?t:fa(t),i=o.s.r;i<=o.e.r;++i)for(var s=o.s.c;s<=o.e.c;++s){var l=sh(e,i,s);l.t="n",l.F=a,delete l.v,i==o.s.r&&s==o.s.c&&(l.f=r,n&&(l.D=!0))}var c=da(e["!ref"]);return c.s.r>o.s.r&&(c.s.r=o.s.r),c.s.c>o.s.c&&(c.s.c=o.s.c),c.e.r<o.e.r&&(c.e.r=o.e.r),c.e.c<o.e.c&&(c.e.c=o.e.c),e["!ref"]=fa(c),e},consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};He.version;const fh="\u30e6\u30fc\u30b6\u30fc\u540d",ph="\u8a8d\u8a3c\u6a5f\u5668",hh="\u6697\u8a3c\u756a\u53f7";function mh(e){try{let t=[];const r=window.location.pathname;if("/biz/employees/list"===r)t=[{"\u30e6\u30fc\u30b6\u30fc\u540d":"","\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9":"","\u6240\u5c5e\uff08\u4efb\u610f\uff09":"","\u96fb\u8a71\u756a\u53f7\uff08\u4efb\u610f\uff09":""}];else if("/biz/access-control/cards"===r||"/biz/cards"===r)t=[{"\u30ab\u30fc\u30c9\u540d":"",ID:"","\u30e6\u30fc\u30b6\u30fc":""}];else{if("/biz/access-control/passwords"!==r)return;t=[{"\u6697\u8a3c\u756a\u53f7\u540d":"","\u6697\u8a3c\u756a\u53f7":""}]}if("csv"===e){const e=We().unparse(t),r=new Blob([e],{type:"text/csv;charset=utf-8"});(0,Fe.saveAs)(r,"sesamebiz.csv")}else if("excel"===e){const e=dh.json_to_sheet(t),r=dh.book_new();dh.book_append_sheet(r,e,"Sheet1");const n=Jp(r,{bookType:"xlsx",type:"array"}),o=new Blob([n],{type:"application/octet-stream"});(0,Fe.saveAs)(o,"sesamebiz.xlsx")}}catch(t){console.error("An error occurred:",t)}}const gh=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"sesamebiz",n={};n="/biz/access-control/cards"===t||"/biz/cards"===t?e.map((e=>({...e,[ph]:Array.isArray(e.\u8a8d\u8a3c\u6a5f\u5668)?e.\u8a8d\u8a3c\u6a5f\u5668.join(", "):e.\u8a8d\u8a3c\u6a5f\u5668}))):e.map((e=>({...e})));const o=dh.book_new(),a=dh.json_to_sheet(n);dh.book_append_sheet(o,a,"Sheet1"),qp(o,`${r}.xlsx`)},vh={downloadCsv:function(){mh("csv")},downloadLists:function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"sesamebiz";const n={name:"\u30b0\u30eb\u30fc\u30d7\u540d",gid:"UUID",uuids:"\u7d10\u4ed8\u3051\u3066\u3044\u308b\u30e6\u30fc\u30b6\u30fc"},o={name:"\u30b0\u30eb\u30fc\u30d7\u540d",gid:"UUID",uuids:"\u7d10\u4ed8\u3051\u3066\u3044\u308b\u30c7\u30d0\u30a4\u30b9"},a={type:"\u72b6\u614b",timestamp:"\u6642\u9593",history_tag:"\u30e6\u30fc\u30b6\u30fc\u540d",via:"\u64cd\u4f5c\u65b9\u6cd5"},i={employeeName:"\u30e6\u30fc\u30b6\u30fc\u540d",employeeEmail:"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",subUUID:"\u30b5\u30d6UUID",tag:"\u30ed\u30fc\u30eb",department:"\u6240\u5c5e\uff08\u4efb\u610f\uff09",phone:"\u96fb\u8a71\u756a\u53f7\uff08\u4efb\u610f\uff09"},s={deviceName:"\u30c7\u30d0\u30a4\u30b9\u540d",deviceModel:"\u30e2\u30c7\u30eb",deviceUUID:"\u30c7\u30d0\u30a4\u30b9UUID",battery:"\u96fb\u6c60\u6b8b\u91cf"},l={deviceName:"\u30c7\u30d0\u30a4\u30b9\u540d",deviceModel:"\u30e2\u30c7\u30eb",deviceUUID:"\u30c7\u30d0\u30a4\u30b9UUID",battery:"\u96fb\u6c60\u6b8b\u91cf"},c={deviceName:"\u30c7\u30d0\u30a4\u30b9\u540d",deviceModel:"\u30e2\u30c7\u30eb",deviceUUID:"\u30c7\u30d0\u30a4\u30b9UUID",battery:"\u96fb\u6c60\u6b8b\u91cf"},u={name:"\u30ab\u30fc\u30c9\u540d",cardID:"ID",subUUID:"\u30e6\u30fc\u30b6\u30fc",uuids:"\u8a8d\u8a3c\u6a5f\u5668"},d={name:"\u6307\u7d0b\u540d",fingerID:"ID",memberName:"\u30e6\u30fc\u30b6\u30fc"},f={name:"\u6697\u8a3c\u756a\u53f7\u540d",passwordID:"\u6697\u8a3c\u756a\u53f7"},p=window.location.pathname;var h=!1;let m=e.map((e=>{let t,r={};if("/biz/employees/group"===p)t=n;else if("/biz/devices/group"===p)t=o;else if("/biz/employees/list"===p||"/biz/employees/group-item"===p)t=i;else if("/biz/devices/list"===p){var m,g;if(t=s,null!==(m=e.stateInfo)&&void 0!==m&&m.batteryPercentage)e.battery=null===(g=e.stateInfo)||void 0===g?void 0:g.batteryPercentage}else if("/biz/devices/list-item"===p||"/biz/access-control/region"===p)t=a,e=function(e){const t={...e};let r=t.type;switch(r){case 1:case 6:case 7:case 14:case 16:t.type="\u65bd\u9320";break;case 2:case 8:case 15:case 17:t.type="\u89e3\u9320";break;case 18:case 19:case 20:t.type="bot \u65bd\u89e3\u9320";break;case 90:t.type="\u958b";break;case 91:t.type="\u9589";break;default:t.type=""}if(t.timestamp){const e=t.timestamp;t.timestamp=new Date(e).toLocaleString("ja-JP",{year:"numeric",month:"long",day:"numeric"})+new Date(e).toLocaleTimeString("ja-JP",{hour12:!0})}if(t.history_tag)try{t.history_tag=Te.hp.from(t.history_tag,"base64").toString("utf8")}catch(o6){console.error("\u89e3\u7801\u7528\u6237\u540d\u5931\u8d25",o6),t.history_tag=""}else t.history_tag="";switch(r){case 7:case 8:t.via="\u624b\u52d5";break;case 1:case 2:case 18:case 90:case 91:t.via="Bluetooth";break;case 6:t.via="\u30aa\u30fc\u30c8\u30ed\u30c3\u30af";break;case 14:case 15:case 19:t.via="WiFi\u30e2\u30b8\u30e5\u30fc\u30eb";break;case 16:case 17:case 20:t.via="web API";break;default:t.via=""}return t}(e);else if("/biz/devices/group-item"===p)t=l;else if("/biz/access-control/index"===p)t=c;else if("/biz/access-control/cards"===p||"/biz/cards"===p){if(t=u,e.hasOwnProperty("uuids")&&Array.isArray(e.uuids)){const t=e.uuids.filter((e=>!e.startsWith("cus_")));e.uuids=t}}else"/biz/access-control/fingers"===p?t=d:"/biz/access-control/passwords"===p&&(h=!0,t=f);return Object.keys(t).forEach((n=>{e.hasOwnProperty(n)?r[t[n]]="passwordID"===n&&h?Dh.binaryToDecimal(e[n]):e[n]:r[t[n]]=""})),r}));if(t){const e=m.length>0?Object.keys(m[0]):[],t=We().unparse({fields:e,data:m,header:!0,skipEmptyLines:!0}),n=new Blob([t],{type:"text/csv;charset=utf-8"});(0,Fe.saveAs)(n,`${r}.csv`)}else gh(m,p,r)},downloadExcelTemp:function(){mh("excel")}},yh=(e,t)=>{if(!e||0===e.length)return[];const r=t.reduce(((e,t)=>(e[t.deviceUUID.toUpperCase()]=t.deviceName,e)),{});return e.reduce(((e,t)=>{const n=r[t.toUpperCase()];return n&&e.push(n),e}),[])},bh=(e,t)=>"string"===typeof e&&e.toUpperCase().includes(t);const wh={members:"\u30e6\u30fc\u30b6\u30fc",membersGroup:"\u30e6\u30fc\u30b6\u30fc\u30b0\u30eb\u30fc\u30d7",membersRole:"\u30ed\u30fc\u30eb",historys:"\u5168\u4f53\u5c65\u6b74",scheduleList:"\u4e88\u7d04\u4e00\u89a7",developer:"\u958b\u767a\u8005\u5411\u3051",cards:"\u30ab\u30fc\u30c9\u7ba1\u7406",devices:"\u30c7\u30d0\u30a4\u30b9\uff08\u30c9\u30a2\u30fb\u8a8d\u8a3c\u6a5f\u5668\uff09",touchDevices:"\u8a8d\u8a3c\u6a5f\u5668",ssmDevices:"\u30c9\u30a2",ssmDevicesGroup:"\u30c9\u30a2\u30b0\u30eb\u30fc\u30d7",vision:"Vision",appDevices:"\u30bb\u30b5\u30df",appContacts:"\u9023\u7d61\u5148",appMe:"\u81ea\u5206"},xh=[{id:wh.appDevices,router:"/",isRoot:!0,icon:"sesame"},{id:wh.appContacts,router:"/contacts",isRoot:!0,icon:"contacts"},{id:wh.appMe,router:"/me",isRoot:!0,icon:"me"},{id:wh.vision,name:"navigator.Vision",router:"/vision",isRoot:!0,icon:"vision"},{id:wh.members,router:"/biz/employees",icon:"members",items:[{id:wh.members,router:"/biz/employees/list"},{id:wh.membersGroup,router:"/biz/employees/group"},{id:wh.membersRole,router:"/biz/employees/role"}]},{id:wh.ssmDevices,router:"/biz/devices",icon:"ssmDevices",items:[{id:wh.ssmDevices,router:"/biz/devices/list"},{id:wh.ssmDevicesGroup,router:"/biz/devices/group"}]},{id:wh.touchDevices,router:"/biz/access-control/index",isRoot:!0,icon:"touchDevices"},{id:wh.cards,router:"/biz/cards",isRoot:!0,icon:"cards"},{id:wh.historys,router:"/biz/history",isRoot:!0,icon:"history"},{id:wh.scheduleList,router:"/biz/schedule-list",isRoot:!0,icon:"schedule"},{id:wh.developer,router:"/biz/developer",isRoot:!0}],Sh=[wh.members,wh.devices,wh.cards,wh.historys,wh.developer],Ah=e=>-1!==[l.sesameDeviceModel.ssm_touch,l.sesameDeviceModel.ssm_touch_pro,l.sesameDeviceModel.sesame_face,l.sesameDeviceModel.sesame_face_pro,l.sesameDeviceModel.sesame_face_ai,l.sesameDeviceModel.sesame_face_pro_ai,l.sesameDeviceModel.ssm_touch_2,l.sesameDeviceModel.ssm_touch_2_pro,l.sesameDeviceModel.sesame_face_2,l.sesameDeviceModel.sesame_face_2_pro,l.sesameDeviceModel.sesame_face_2_ai,l.sesameDeviceModel.sesame_face_2_pro_ai].indexOf(e),kh=[l.sesameDeviceModel.sesame_miwa,l.sesameDeviceModel.sesame_2,l.sesameDeviceModel.sesame_4,l.sesameDeviceModel.sesame_5,l.sesameDeviceModel.sesame_5_pro,l.sesameDeviceModel.sesame_5_us,l.sesameDeviceModel.bot_2,l.sesameDeviceModel.bot_3,l.sesameDeviceModel.ssmbot_1,l.sesameDeviceModel.sesame_6,l.sesameDeviceModel.sesame_6_pro,l.sesameDeviceModel.sesame_6_pro_slidingdoor,l.sesameDeviceModel.ble_connector,l.sesameDeviceModel.ssm_bike2,l.sesameDeviceModel.ssm_bike3],Ch=e=>-1!==[l.sesameDeviceModel.ssm_touch,l.sesameDeviceModel.ssm_touch_pro,l.sesameDeviceModel.sesame_face,l.sesameDeviceModel.sesame_face_pro,l.sesameDeviceModel.ssm_touch_2,l.sesameDeviceModel.ssm_touch_2_pro,l.sesameDeviceModel.sesame_face_2,l.sesameDeviceModel.sesame_face_2_pro].indexOf(e),Ih=e=>-1!==[l.sesameDeviceModel.ssm_touch_pro,l.sesameDeviceModel.sesame_face_pro,l.sesameDeviceModel.sesame_face_pro_ai,l.sesameDeviceModel.ssm_touch_2_pro,l.sesameDeviceModel.sesame_face_2_pro,l.sesameDeviceModel.sesame_face_2_pro_ai].indexOf(e),Eh=e=>-1!==[l.sesameDeviceModel.sesame_face,l.sesameDeviceModel.sesame_face_pro,l.sesameDeviceModel.sesame_face_ai,l.sesameDeviceModel.sesame_face_pro_ai,l.sesameDeviceModel.sesame_face_2,l.sesameDeviceModel.sesame_face_2_pro,l.sesameDeviceModel.sesame_face_2_ai,l.sesameDeviceModel.sesame_face_2_pro_ai].indexOf(e);const Dh={csvUtils:vh,uuidsToNames:yh,findSearchList:(e,t,r)=>{const n=e.toUpperCase();return t.filter((e=>!!bh(e.name,n)||(!!bh(e.cardID,n)||(!!bh(e.fingerID,n)||(!!bh(e.passwordID,n)||(!(!e.uuids||!e.uuids.some((e=>bh(e,n)))&&!yh(e.uuids,r).some((e=>bh(e,n))))||(!!bh(e.deviceName,n)||(!!bh(e.deviceModel,n)||!(!Array.isArray(e.groupName)||!e.groupName.some((e=>bh(e,n))))))))))))},toCardInfo:function(e,t,r){if(!e)return;t||(t=0),"string"!==typeof e&&(e=String(e)),"string"!==typeof r&&(r=String(r));let n="";n+="F0",n+=t.toString(16).padStart(2,"0").toUpperCase(),n+=(e.length/2).toString(16).padStart(2,"0").toUpperCase(),n+=e.toUpperCase();let o=(new TextEncoder).encode(r),a=Array.from(o,(e=>e.toString(16).padStart(2,"0"))).join("").toUpperCase(),i=a.length/2;return n=n.padEnd(38,"F"),n+=i.toString(16).padStart(2,"0").toUpperCase(),n+=a,n=n.padEnd(80,"0"),n},binaryToDecimal:function(e){try{return e.split("").map(((e,t)=>t%2!==0?e:"")).join("")}catch(o6){}return e},timeToDate:function(e){const t=new Date(1e3*e);return`${t.getFullYear()}\u5e74${t.getMonth()+1}\u6708${t.getDate()}\u65e5`},uniqueByProperty:function(e,t){const r=new Set;return e.filter((e=>{const n=e[t];return!r.has(n)&&(r.add(n),!0)}))},allTags:Sh,pageNames:wh,categoriesConf:xh,isWifiModel:e=>-1!==[l.sesameDeviceModel.wm_2,l.sesameDeviceModel.hub_3,l.sesameDeviceModel.hub3_pro].indexOf(e),isDeviceKeyOwner:e=>0===e,isDeviceKeyGuest:e=>2===e,isSesameAccessControlDevice:Ah,isLockModel:e=>-1!==kh.indexOf(e),canPasswordControl:Ih,readQrcode:(e,t)=>Ue.readQrcode(e,t),hasListObj:(e,t,r)=>e.some((e=>t.some((t=>t[r]===e[r])))),hasObj:(e,t,r)=>e.some((e=>e[r]===t[r])),isBotModel:e=>-1!==[l.sesameDeviceModel.ssmbot_1,l.sesameDeviceModel.bot_2,l.sesameDeviceModel.bot_3].indexOf(e),isOPSModel:e=>-1!==[l.sesameDeviceModel.ssm_opensensor_1,l.sesameDeviceModel.ssm_opensensor_2].indexOf(e),isHub3Pro:e=>-1!==[l.sesameDeviceModel.hub3_pro].indexOf(e),getStartTimeEndTime:function(e){let t=e.startTime?e.startTime:e.startAt,r=e.startTime?e.endTime:e.endAt,n=new Date(1e3*t),o=new Date(1e3*r);return n.getFullYear()+"-"+("0"+(n.getMonth()+1)).slice(-2)+"-"+("0"+n.getDate()).slice(-2)+" "+("0"+n.getHours()).slice(-2)+":"+("0"+n.getMinutes()).slice(-2)+":"+("0"+n.getSeconds()).slice(-2)+" - "+(o.getFullYear()+"-"+("0"+(o.getMonth()+1)).slice(-2)+"-"+("0"+o.getDate()).slice(-2)+" "+("0"+o.getHours()).slice(-2)+":"+("0"+o.getMinutes()).slice(-2)+":"+("0"+o.getSeconds()).slice(-2))},isValidEmail:function(e){return/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{1,}))$/.test(e)},isShowType:(e,t)=>{switch(t){case l.sesameTouchProAuthType.card:return Ch(e);case l.sesameTouchProAuthType.finger:return(e=>Ch(e))(e);case l.sesameTouchProAuthType.password:return Ih(e);case l.sesameTouchProAuthType.face:return Eh(e);case l.sesameTouchProAuthType.palm:return(e=>Eh(e))(e);default:return!1}},isContainPage:function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!e)return!1;if(e.some((e=>e===t)))return!0;if(e.some((e=>e===wh.devices))&&(t===wh.touchDevices||t===wh.ssmDevices))return!0;if(r){return[wh.ssmDevices,wh.touchDevices,wh.members].includes(t)}return!1},canWifiModuleControl:e=>{const t=kh.filter((e=>{const t=Object.keys(i).find((t=>i[t]===e));return t&&parseInt(t)>4}));return Ah(e)||-1!==t.indexOf(e)},formatTimestampToMonthDayLocal:function(e){const t=String(e);if(!/^\d{10}$/.test(t))return null;const r=new Date(1e3*parseInt(t,10));return`${(r.getMonth()+1).toString()}/${r.getDate().toString()} ${r.getHours().toString()}:${r.getMinutes().toString()}`},isSupportRechargeableBattery:e=>{const t=Object.keys(i).find((t=>i[t]===e));return parseInt(null!==t&&void 0!==t?t:21)-21>=0},authText:{fontCfpCards:{title:"\u65b0\u898f\u30ab\u30fc\u30c9\u8ffd\u52a0",h2:"\u30ab\u30fc\u30c9\u8aad\u307f\u53d6\u308a",b2t:"\uff0b\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u30bf\u30c3\u30c1/\u30bf\u30c3\u30c1\u30d7\u30ed\u306b\u30ab\u30fc\u30c9\u3092\u304b\u3056\u3057\u3066\u4e0b\u3055\u3044\u3002",warningMsg:"\u4e00\u62ec\u767b\u9332\u30fb\u66f4\u65b0\u3092\u3059\u308b\u3068\u65e2\u5b58\u30c7\u30fc\u30bf\u306f\u4e00\u5ea6\u5168\u3066\u524a\u9664\u3055\u308c\u3001\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u5185\u5bb9\u306b\u7f6e\u304d\u63db\u308f\u308a\u307e\u3059\u3002\u8ffd\u52a0\u30fb\u5909\u66f4\u3059\u308b\u5834\u5408\u306f\u73fe\u5728\u306e\u4e00\u89a7\u3092CSV\u307e\u305f\u306fExcel\u3067\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3001\u65b0\u3057\u3044\u30ab\u30fc\u30c9/\u6697\u8a3c\u756a\u53f7\u3092\u8ffd\u52a0\u307e\u305f\u306f\u65e2\u5b58\u30ab\u30fc\u30c9/\u6697\u8a3c\u756a\u53f7\u3092\u7de8\u96c6\u3057\u305f\u3046\u3048\u3067\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u304f\u3060\u3055\u3044\u3002"},fontCfpPw:{title:"\u65b0\u898f\u6697\u8a3c\u756a\u53f7\u8ffd\u52a0",h2:"\u6697\u8a3c\u756a\u53f7\u5165\u529b",b2t:"\uff0b\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u30bf\u30c3\u30c1\u30d7\u30ed\u306b\u6697\u8a3c\u756a\u53f7\u3092\u5165\u529b\u3057\u3001\u89e3\u9320\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u3066\u304f\u3060\u3055\u3044\u3002"}}};var Th,Oh,Mh=function(e){var t="function"===typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"===typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},Ph=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},jh=function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o<a;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},Rh={VERBOSE:1,DEBUG:2,INFO:3,WARN:4,ERROR:5};(Oh=Th||(Th={})).DEBUG="DEBUG",Oh.ERROR="ERROR",Oh.INFO="INFO",Oh.WARN="WARN",Oh.VERBOSE="VERBOSE";var _h=function(){function e(e,t){void 0===t&&(t=Th.WARN),this.name=e,this.level=t,this._pluggables=[]}return e.prototype._padding=function(e){return e<10?"0"+e:""+e},e.prototype._ts=function(){var e=new Date;return[this._padding(e.getMinutes()),this._padding(e.getSeconds())].join(":")+"."+e.getMilliseconds()},e.prototype.configure=function(e){return e?(this._config=e,this._config):this._config},e.prototype._log=function(t){for(var r,n,o=[],a=1;a<arguments.length;a++)o[a-1]=arguments[a];var i=this.level;if(e.LOG_LEVEL&&(i=e.LOG_LEVEL),"undefined"!==typeof window&&window.LOG_LEVEL&&(i=window.LOG_LEVEL),Rh[t]>=Rh[i]){var s=console.log.bind(console);t===Th.ERROR&&console.error&&(s=console.error.bind(console)),t===Th.WARN&&console.warn&&(s=console.warn.bind(console));var l="[".concat(t,"] ").concat(this._ts()," ").concat(this.name),c="";if(1===o.length&&"string"===typeof o[0])s(c="".concat(l," - ").concat(o[0]));else if(1===o.length)c="".concat(l," ").concat(o[0]),s(l,o[0]);else if("string"===typeof o[0]){var u=o.slice(1);1===u.length&&(u=u[0]),c="".concat(l," - ").concat(o[0]," ").concat(u),s("".concat(l," - ").concat(o[0]),u)}else c="".concat(l," ").concat(o),s(l,o);try{for(var d=Mh(this._pluggables),f=d.next();!f.done;f=d.next()){var p=f.value,h={message:c,timestamp:Date.now()};p.pushLogs([h])}}catch(m){r={error:m}}finally{try{f&&!f.done&&(n=d.return)&&n.call(d)}finally{if(r)throw r.error}}}},e.prototype.log=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this._log.apply(this,jh([Th.INFO],Ph(e),!1))},e.prototype.info=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this._log.apply(this,jh([Th.INFO],Ph(e),!1))},e.prototype.warn=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this._log.apply(this,jh([Th.WARN],Ph(e),!1))},e.prototype.error=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this._log.apply(this,jh([Th.ERROR],Ph(e),!1))},e.prototype.debug=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this._log.apply(this,jh([Th.DEBUG],Ph(e),!1))},e.prototype.verbose=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this._log.apply(this,jh([Th.VERBOSE],Ph(e),!1))},e.prototype.addPluggable=function(e){e&&"Logging"===e.getCategoryName()&&(this._pluggables.push(e),e.configure(this._config))},e.prototype.listPluggables=function(){return this._pluggables},e.LOG_LEVEL=null,e}(),Nh=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},Lh=new _h("Amplify"),Uh=new(function(){function e(){this._components=[],this._config={},this._modules={},this.Auth=null,this.Analytics=null,this.API=null,this.Credentials=null,this.Storage=null,this.I18n=null,this.Cache=null,this.PubSub=null,this.Interactions=null,this.Pushnotification=null,this.UI=null,this.XR=null,this.Predictions=null,this.DataStore=null,this.Geo=null,this.Notifications=null,this.Logger=_h,this.ServiceWorker=null}return e.prototype.register=function(e){Lh.debug("component registered in amplify",e),this._components.push(e),"function"===typeof e.getModuleName?(this._modules[e.getModuleName()]=e,this[e.getModuleName()]=e):Lh.debug("no getModuleName method for component",e),e.configure(this._config)},e.prototype.configure=function(e){var t=this;return e?(this._config=Object.assign(this._config,e),Lh.debug("amplify config",this._config),Object.entries(this._modules).forEach((function(e){var r=Nh(e,2),n=(r[0],r[1]);Object.keys(n).forEach((function(e){t._modules[e]&&(n[e]=t._modules[e])}))})),this._components.map((function(e){e.configure(t._config)})),this._config):this._config},e.prototype.addPluggable=function(e){e&&e.getCategory&&"function"===typeof e.getCategory&&this._components.map((function(t){t.addPluggable&&"function"===typeof t.addPluggable&&t.addPluggable(e)}))},e}()),Bh=r(87233),Fh=r(72004),zh=r(22382);const Wh=e=>e,Hh=(()=>{let e=Wh;return{configure(t){e=t},generate:t=>e(t),reset(){e=Wh}}})(),Yh={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function Vh(e,t){const r=Yh[t];return r?`${arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui"}-${r}`:`${Hh.generate(e)}-${t}`}function Gh(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;const n={};for(const o in e){const a=e[o];let i="",s=!0;for(let e=0;e<a.length;e+=1){const n=a[e];n&&(i+=(!0===s?"":" ")+t(n),s=!1,r&&r[n]&&(i+=" "+r[n]))}n[o]=i}return n}const Zh=(0,r(69).Ay)();var Qh=r(62161),Kh=r(80237),Xh=r(95593),Jh=r(23505),$h=r(28195),qh=r(44414);const em=(0,Xh.A)(),tm=Zh("div",{name:"MuiStack",slot:"Root",overridesResolver:(e,t)=>t.root});function rm(e){return(0,Qh.A)({props:e,name:"MuiStack",defaultTheme:em})}function nm(e,r){const n=t.Children.toArray(e).filter(Boolean);return n.reduce(((e,o,a)=>(e.push(o),a<n.length-1&&e.push(t.cloneElement(r,{key:`separator-${a}`})),e)),[])}const om=e=>{let{ownerState:t,theme:r}=e,n={display:"flex",flexDirection:"column",...(0,Jh.NI)({theme:r},(0,Jh.kW)({values:t.direction,breakpoints:r.breakpoints.values}),(e=>({flexDirection:e})))};if(t.spacing){const e=(0,$h.LX)(r),o=Object.keys(r.breakpoints.values).reduce(((e,r)=>(("object"===typeof t.spacing&&null!=t.spacing[r]||"object"===typeof t.direction&&null!=t.direction[r])&&(e[r]=!0),e)),{}),a=(0,Jh.kW)({values:t.direction,base:o}),i=(0,Jh.kW)({values:t.spacing,base:o});"object"===typeof a&&Object.keys(a).forEach(((e,t,r)=>{if(!a[e]){const n=t>0?a[r[t-1]]:"column";a[e]=n}}));const s=(r,n)=>{return t.useFlexGap?{gap:(0,$h._W)(e,r)}:{"& > :not(style):not(style)":{margin:0},"& > :not(style) ~ :not(style)":{[`margin${o=n?a[n]:t.direction,{row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"}[o]}`]:(0,$h._W)(e,r)}};var o};n=(0,zh.A)(n,(0,Jh.NI)({theme:r},i,s))}return n=(0,Jh.iZ)(r.breakpoints,n),n};var am=r(59254),im=r(18463);const sm=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{createStyledComponent:r=tm,useThemeProps:n=rm,componentName:o="MuiStack"}=e,a=r(om);return t.forwardRef((function(e,t){const r=n(e),i=(0,Kh.A)(r),{component:s="div",direction:l="column",spacing:c=0,divider:u,children:d,className:f,useFlexGap:p=!1,...h}=i,m={direction:l,spacing:c,useFlexGap:p},g=Gh({root:["root"]},(e=>Vh(o,e)),{});return(0,qh.jsx)(a,{as:s,ownerState:m,ref:t,className:(0,Fh.A)(g.root,f),...h,children:u?nm(d,u):d})}))}({createStyledComponent:(0,am.Ay)("div",{name:"MuiStack",slot:"Root",overridesResolver:(e,t)=>t.root}),useThemeProps:e=>(0,im.b)({props:e,name:"MuiStack"})});var lm=r(2199),cm=r(70505),um=r(35619);function dm(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{themeId:r,defaultTheme:n,defaultClassName:o="MuiBox-root",generateClassName:a}=e,i=(0,lm.Ay)("div",{shouldForwardProp:e=>"theme"!==e&&"sx"!==e&&"as"!==e})(cm.A);return t.forwardRef((function(e,t){const s=(0,um.A)(n),{className:l,component:c="div",...u}=(0,Kh.A)(e);return(0,qh.jsx)(i,{as:c,ref:t,className:(0,Fh.A)(l,a?a(o):o),theme:r&&s[r]||s,...u})}))}var fm=r(41644),pm=r(90176),hm=r(67550),mm=r(45558);const gm=(0,mm.A)("MuiBox",["root"]),vm=(0,pm.A)(),ym=dm({themeId:hm.A,defaultTheme:vm,defaultClassName:gm.root,generateClassName:fm.A.generate});r(54599);var bm="popstate";function wm(){return Em((function(e,t){let{pathname:r,search:n,hash:o}=e.location;return km("",{pathname:r,search:n,hash:o},t.state&&t.state.usr||null,t.state&&t.state.key||"default")}),(function(e,t){return"string"===typeof t?t:Cm(t)}),null,arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}function xm(e,t){if(!1===e||null===e||"undefined"===typeof e)throw new Error(t)}function Sm(e,t){if(!e){"undefined"!==typeof console&&console.warn(t);try{throw new Error(t)}catch(o6){}}}function Am(e,t){return{usr:e.state,key:e.key,idx:t}}function km(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,n=arguments.length>3?arguments[3]:void 0;return{pathname:"string"===typeof e?e:e.pathname,search:"",hash:"",..."string"===typeof t?Im(t):t,state:r,key:t&&t.key||n||Math.random().toString(36).substring(2,10)}}function Cm(e){let{pathname:t="/",search:r="",hash:n=""}=e;return r&&"?"!==r&&(t+="?"===r.charAt(0)?r:"?"+r),n&&"#"!==n&&(t+="#"===n.charAt(0)?n:"#"+n),t}function Im(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substring(r),e=e.substring(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substring(n),e=e.substring(0,n)),e&&(t.pathname=e)}return t}function Em(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},{window:o=document.defaultView,v5Compat:a=!1}=n,i=o.history,s="POP",l=null,c=u();function u(){return(i.state||{idx:null}).idx}function d(){s="POP";let e=u(),t=null==e?null:e-c;c=e,l&&l({action:s,location:p.location,delta:t})}function f(e){let t="null"!==o.location.origin?o.location.origin:o.location.href,r="string"===typeof e?e:Cm(e);return r=r.replace(/ $/,"%20"),xm(t,`No window.location.(origin|href) available to create URL for href: ${r}`),new URL(r,t)}null==c&&(c=0,i.replaceState({...i.state,idx:c},""));let p={get action(){return s},get location(){return e(o,i)},listen(e){if(l)throw new Error("A history only accepts one active listener");return o.addEventListener(bm,d),l=e,()=>{o.removeEventListener(bm,d),l=null}},createHref:e=>t(o,e),createURL:f,encodeLocation(e){let t=f(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){s="PUSH";let n=km(p.location,e,t);r&&r(n,e),c=u()+1;let d=Am(n,c),f=p.createHref(n);try{i.pushState(d,"",f)}catch(h){if(h instanceof DOMException&&"DataCloneError"===h.name)throw h;o.location.assign(f)}a&&l&&l({action:s,location:p.location,delta:1})},replace:function(e,t){s="REPLACE";let n=km(p.location,e,t);r&&r(n,e),c=u();let o=Am(n,c),d=p.createHref(n);i.replaceState(o,"",d),a&&l&&l({action:s,location:p.location,delta:0})},go:e=>i.go(e)};return p}function Dm(e,t){return Tm(e,t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:"/",!1)}function Tm(e,t,r,n){let o=Hm(("string"===typeof t?Im(t):t).pathname||"/",r);if(null==o)return null;let a=Om(e);!function(e){e.sort(((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){let r=e.length===t.length&&e.slice(0,-1).every(((e,r)=>e===t[r]));return r?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((e=>e.childrenIndex)),t.routesMeta.map((e=>e.childrenIndex)))))}(a);let i=null;for(let s=0;null==i&&s<a.length;++s){let e=Wm(o);i=Fm(a[s],e,n)}return i}function Om(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",o=(e,o,a)=>{let i={relativePath:void 0===a?e.path||"":a,caseSensitive:!0===e.caseSensitive,childrenIndex:o,route:e};i.relativePath.startsWith("/")&&(xm(i.relativePath.startsWith(n),`Absolute route path "${i.relativePath}" nested under path "${n}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),i.relativePath=i.relativePath.slice(n.length));let s=Qm([n,i.relativePath]),l=r.concat(i);e.children&&e.children.length>0&&(xm(!0!==e.index,`Index routes must not have child routes. Please remove all child routes from route path "${s}".`),Om(e.children,t,l,s)),(null!=e.path||e.index)&&t.push({path:s,score:Bm(s,e.index),routesMeta:l})};return e.forEach(((e,t)=>{if(""!==e.path&&e.path?.includes("?"))for(let r of Mm(e.path))o(e,t,r);else o(e,t)})),t}function Mm(e){let t=e.split("/");if(0===t.length)return[];let[r,...n]=t,o=r.endsWith("?"),a=r.replace(/\?$/,"");if(0===n.length)return o?[a,""]:[a];let i=Mm(n.join("/")),s=[];return s.push(...i.map((e=>""===e?a:[a,e].join("/")))),o&&s.push(...i),s.map((t=>e.startsWith("/")&&""===t?"/":t))}var Pm=/^:[\w-]+$/,jm=3,Rm=2,_m=1,Nm=10,Lm=-2,Um=e=>"*"===e;function Bm(e,t){let r=e.split("/"),n=r.length;return r.some(Um)&&(n+=Lm),t&&(n+=Rm),r.filter((e=>!Um(e))).reduce(((e,t)=>e+(Pm.test(t)?jm:""===t?_m:Nm)),n)}function Fm(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],{routesMeta:n}=e,o={},a="/",i=[];for(let s=0;s<n.length;++s){let e=n[s],l=s===n.length-1,c="/"===a?t:t.slice(a.length)||"/",u=zm({path:e.relativePath,caseSensitive:e.caseSensitive,end:l},c),d=e.route;if(!u&&l&&r&&!n[n.length-1].route.index&&(u=zm({path:e.relativePath,caseSensitive:e.caseSensitive,end:!1},c)),!u)return null;Object.assign(o,u.params),i.push({params:o,pathname:Qm([a,u.pathname]),pathnameBase:Km(Qm([a,u.pathnameBase])),route:d}),"/"!==u.pathnameBase&&(a=Qm([a,u.pathnameBase]))}return i}function zm(e,t){"string"===typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[r,n]=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];Sm("*"===e||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let n=[],o="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,((e,t,r)=>(n.push({paramName:t,isOptional:null!=r}),r?"/?([^\\/]+)?":"/([^\\/]+)")));e.endsWith("*")?(n.push({paramName:"*"}),o+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?o+="\\/*$":""!==e&&"/"!==e&&(o+="(?:(?=\\/|$))");let a=new RegExp(o,t?void 0:"i");return[a,n]}(e.path,e.caseSensitive,e.end),o=t.match(r);if(!o)return null;let a=o[0],i=a.replace(/(.)\/+$/,"$1"),s=o.slice(1);return{params:n.reduce(((e,t,r)=>{let{paramName:n,isOptional:o}=t;if("*"===n){let e=s[r]||"";i=a.slice(0,a.length-e.length).replace(/(.)\/+$/,"$1")}const l=s[r];return e[n]=o&&!l?void 0:(l||"").replace(/%2F/g,"/"),e}),{}),pathname:a,pathnameBase:i,pattern:e}}function Wm(e){try{return e.split("/").map((e=>decodeURIComponent(e).replace(/\//g,"%2F"))).join("/")}catch(t){return Sm(!1,`The URL path "${e}" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function Hm(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&"/"!==n?null:e.slice(r)||"/"}function Ym(e,t,r,n){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(n)}].  Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Vm(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function Gm(e){let t=Vm(e);return t.map(((e,r)=>r===t.length-1?e.pathname:e.pathnameBase))}function Zm(e,t,r){let n,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];"string"===typeof e?n=Im(e):(n={...e},xm(!n.pathname||!n.pathname.includes("?"),Ym("?","pathname","search",n)),xm(!n.pathname||!n.pathname.includes("#"),Ym("#","pathname","hash",n)),xm(!n.search||!n.search.includes("#"),Ym("#","search","hash",n)));let a,i=""===e||""===n.pathname,s=i?"/":n.pathname;if(null==s)a=r;else{let e=t.length-1;if(!o&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;n.pathname=t.join("/")}a=e>=0?t[e]:"/"}let l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",{pathname:r,search:n="",hash:o=""}="string"===typeof e?Im(e):e,a=r?r.startsWith("/")?r:function(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((e=>{".."===e?r.length>1&&r.pop():"."!==e&&r.push(e)})),r.length>1?r.join("/"):"/"}(r,t):t;return{pathname:a,search:Xm(n),hash:Jm(o)}}(n,a),c=s&&"/"!==s&&s.endsWith("/"),u=(i||"."===s)&&r.endsWith("/");return l.pathname.endsWith("/")||!c&&!u||(l.pathname+="/"),l}var Qm=e=>e.join("/").replace(/\/\/+/g,"/"),Km=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Xm=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",Jm=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";function $m(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}var qm=["POST","PUT","PATCH","DELETE"],eg=(new Set(qm),["GET",...qm]);new Set(eg),Symbol("ResetLoaderData");var tg=t.createContext(null);tg.displayName="DataRouter";var rg=t.createContext(null);rg.displayName="DataRouterState";var ng=t.createContext({isTransitioning:!1});ng.displayName="ViewTransition";var og=t.createContext(new Map);og.displayName="Fetchers";var ag=t.createContext(null);ag.displayName="Await";var ig=t.createContext(null);ig.displayName="Navigation";var sg=t.createContext(null);sg.displayName="Location";var lg=t.createContext({outlet:null,matches:[],isDataRoute:!1});lg.displayName="Route";var cg=t.createContext(null);cg.displayName="RouteError";function ug(){return null!=t.useContext(sg)}function dg(){return xm(ug(),"useLocation() may be used only in the context of a <Router> component."),t.useContext(sg).location}var fg="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function pg(e){t.useContext(ig).static||t.useLayoutEffect(e)}function hg(){let{isDataRoute:e}=t.useContext(lg);return e?function(){let{router:e}=kg("useNavigate"),r=Ig("useNavigate"),n=t.useRef(!1);pg((()=>{n.current=!0}));let o=t.useCallback((async function(t){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Sm(n.current,fg),n.current&&("number"===typeof t?e.navigate(t):await e.navigate(t,{fromRouteId:r,...o}))}),[e,r]);return o}():function(){xm(ug(),"useNavigate() may be used only in the context of a <Router> component.");let e=t.useContext(tg),{basename:r,navigator:n}=t.useContext(ig),{matches:o}=t.useContext(lg),{pathname:a}=dg(),i=JSON.stringify(Gm(o)),s=t.useRef(!1);pg((()=>{s.current=!0}));let l=t.useCallback((function(t){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(Sm(s.current,fg),!s.current)return;if("number"===typeof t)return void n.go(t);let l=Zm(t,JSON.parse(i),a,"path"===o.relative);null==e&&"/"!==r&&(l.pathname="/"===l.pathname?r:Qm([r,l.pathname])),(o.replace?n.replace:n.push)(l,o.state,o)}),[r,n,i,a,e]);return l}()}var mg=t.createContext(null);function gg(e){let{relative:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{matches:n}=t.useContext(lg),{pathname:o}=dg(),a=JSON.stringify(Gm(n));return t.useMemo((()=>Zm(e,JSON.parse(a),o,"path"===r)),[e,a,o,r])}function vg(e,r,n,o){xm(ug(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:a}=t.useContext(ig),{matches:i}=t.useContext(lg),s=i[i.length-1],l=s?s.params:{},c=s?s.pathname:"/",u=s?s.pathnameBase:"/",d=s&&s.route;{let e=d&&d.path||"";Tg(c,!d||e.endsWith("*")||e.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${c}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.\n\nPlease change the parent <Route path="${e}"> to <Route path="${"/"===e?"*":`${e}/*`}">.`)}let f,p=dg();if(r){let e="string"===typeof r?Im(r):r;xm("/"===u||e.pathname?.startsWith(u),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${u}" but pathname "${e.pathname}" was given in the \`location\` prop.`),f=e}else f=p;let h=f.pathname||"/",m=h;if("/"!==u){let e=u.replace(/^\//,"").split("/");m="/"+h.replace(/^\//,"").split("/").slice(e.length).join("/")}let g=Dm(e,{pathname:m});Sm(d||null!=g,`No routes matched location "${f.pathname}${f.search}${f.hash}" `),Sm(null==g||void 0!==g[g.length-1].route.element||void 0!==g[g.length-1].route.Component||void 0!==g[g.length-1].route.lazy,`Matched leaf route at location "${f.pathname}${f.search}${f.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let v=Sg(g&&g.map((e=>Object.assign({},e,{params:Object.assign({},l,e.params),pathname:Qm([u,a.encodeLocation?a.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?u:Qm([u,a.encodeLocation?a.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])}))),i,n,o);return r&&v?t.createElement(sg.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...f},navigationType:"POP"}},v):v}function yg(){let e=Eg(),r=$m(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,o="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:o},i={padding:"2px 4px",backgroundColor:o},s=null;return console.error("Error handled by React Router default ErrorBoundary:",e),s=t.createElement(t.Fragment,null,t.createElement("p",null,"\ud83d\udcbf Hey developer \ud83d\udc4b"),t.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",t.createElement("code",{style:i},"ErrorBoundary")," or"," ",t.createElement("code",{style:i},"errorElement")," prop on your route.")),t.createElement(t.Fragment,null,t.createElement("h2",null,"Unexpected Application Error!"),t.createElement("h3",{style:{fontStyle:"italic"}},r),n?t.createElement("pre",{style:a},n):null,s)}var bg=t.createElement(yg,null),wg=class extends t.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return void 0!==this.state.error?t.createElement(lg.Provider,{value:this.props.routeContext},t.createElement(cg.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function xg(e){let{routeContext:r,match:n,children:o}=e,a=t.useContext(tg);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),t.createElement(lg.Provider,{value:r},o)}function Sg(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(null==e){if(!n)return null;if(n.errors)e=n.matches;else{if(0!==r.length||n.initialized||!(n.matches.length>0))return null;e=n.matches}}let o=e,a=n?.errors;if(null!=a){let e=o.findIndex((e=>e.route.id&&void 0!==a?.[e.route.id]));xm(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(",")}`),o=o.slice(0,Math.min(o.length,e+1))}let i=!1,s=-1;if(n)for(let t=0;t<o.length;t++){let e=o[t];if((e.route.HydrateFallback||e.route.hydrateFallbackElement)&&(s=t),e.route.id){let{loaderData:t,errors:r}=n,a=e.route.loader&&!t.hasOwnProperty(e.route.id)&&(!r||void 0===r[e.route.id]);if(e.route.lazy||a){i=!0,o=s>=0?o.slice(0,s+1):[o[0]];break}}}return o.reduceRight(((e,l,c)=>{let u,d=!1,f=null,p=null;n&&(u=a&&l.route.id?a[l.route.id]:void 0,f=l.route.errorElement||bg,i&&(s<0&&0===c?(Tg("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=l.route.hydrateFallbackElement||null)));let h=r.concat(o.slice(0,c+1)),m=()=>{let r;return r=u?f:d?p:l.route.Component?t.createElement(l.route.Component,null):l.route.element?l.route.element:e,t.createElement(xg,{match:l,routeContext:{outlet:e,matches:h,isDataRoute:null!=n},children:r})};return n&&(l.route.ErrorBoundary||l.route.errorElement||0===c)?t.createElement(wg,{location:n.location,revalidation:n.revalidation,component:f,error:u,children:m(),routeContext:{outlet:null,matches:h,isDataRoute:!0}}):m()}),null)}function Ag(e){return`${e} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function kg(e){let r=t.useContext(tg);return xm(r,Ag(e)),r}function Cg(e){let r=t.useContext(rg);return xm(r,Ag(e)),r}function Ig(e){let r=function(e){let r=t.useContext(lg);return xm(r,Ag(e)),r}(e),n=r.matches[r.matches.length-1];return xm(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function Eg(){let e=t.useContext(cg),r=Cg("useRouteError"),n=Ig("useRouteError");return void 0!==e?e:r.errors?.[n]}var Dg={};function Tg(e,t,r){t||Dg[e]||(Dg[e]=!0,Sm(!1,r))}t.memo((function(e){let{routes:t,future:r,state:n}=e;return vg(t,void 0,n,r)}));function Og(e){let{to:r,replace:n,state:o,relative:a}=e;xm(ug(),"<Navigate> may be used only in the context of a <Router> component.");let{static:i}=t.useContext(ig);Sm(!i,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:s}=t.useContext(lg),{pathname:l}=dg(),c=hg(),u=Zm(r,Gm(s),l,"path"===a),d=JSON.stringify(u);return t.useEffect((()=>{c(JSON.parse(d),{replace:n,state:o,relative:a})}),[c,d,a,n,o]),null}function Mg(e){return function(e){let r=t.useContext(lg).outlet;return r?t.createElement(mg.Provider,{value:e},r):r}(e.context)}function Pg(e){xm(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function jg(e){let{basename:r="/",children:n=null,location:o,navigationType:a="POP",navigator:i,static:s=!1}=e;xm(!ug(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let l=r.replace(/^\/*/,"/"),c=t.useMemo((()=>({basename:l,navigator:i,static:s,future:{}})),[l,i,s]);"string"===typeof o&&(o=Im(o));let{pathname:u="/",search:d="",hash:f="",state:p=null,key:h="default"}=o,m=t.useMemo((()=>{let e=Hm(u,l);return null==e?null:{location:{pathname:e,search:d,hash:f,state:p,key:h},navigationType:a}}),[l,u,d,f,p,h,a]);return Sm(null!=m,`<Router basename="${l}"> is not able to match the URL "${u}${d}${f}" because it does not start with the basename, so the <Router> won't render anything.`),null==m?null:t.createElement(ig.Provider,{value:c},t.createElement(sg.Provider,{children:n,value:m}))}function Rg(e){let{children:t,location:r}=e;return vg(_g(t),r)}t.Component;function _g(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=[];return t.Children.forEach(e,((e,o)=>{if(!t.isValidElement(e))return;let a=[...r,o];if(e.type===t.Fragment)return void n.push.apply(n,_g(e.props.children,a));xm(e.type===Pg,`[${"string"===typeof e.type?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),xm(!e.props.index||!e.props.children,"An index route cannot have child routes.");let i={id:e.props.id||a.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:!0===e.props.hasErrorBoundary||null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(i.children=_g(e.props.children,a)),n.push(i)})),n}var Ng="get",Lg="application/x-www-form-urlencoded";function Ug(e){return null!=e&&"string"===typeof e.tagName}function Bg(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return new URLSearchParams("string"===typeof e||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce(((t,r)=>{let n=e[r];return t.concat(Array.isArray(n)?n.map((e=>[r,e])):[[r,n]])}),[]))}var Fg=null;var zg=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Wg(e){return null==e||zg.has(e)?e:(Sm(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Lg}"`),null)}function Hg(e,t){let r,n,o,a,i;if(Ug(s=e)&&"form"===s.tagName.toLowerCase()){let i=e.getAttribute("action");n=i?Hm(i,t):null,r=e.getAttribute("method")||Ng,o=Wg(e.getAttribute("enctype"))||Lg,a=new FormData(e)}else if(function(e){return Ug(e)&&"button"===e.tagName.toLowerCase()}(e)||function(e){return Ug(e)&&"input"===e.tagName.toLowerCase()}(e)&&("submit"===e.type||"image"===e.type)){let i=e.form;if(null==i)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let s=e.getAttribute("formaction")||i.getAttribute("action");if(n=s?Hm(s,t):null,r=e.getAttribute("formmethod")||i.getAttribute("method")||Ng,o=Wg(e.getAttribute("formenctype"))||Wg(i.getAttribute("enctype"))||Lg,a=new FormData(i,e),!function(){if(null===Fg)try{new FormData(document.createElement("form"),0),Fg=!1}catch(o6){Fg=!0}return Fg}()){let{name:t,type:r,value:n}=e;if("image"===r){let e=t?`${t}.`:"";a.append(`${e}x`,"0"),a.append(`${e}y`,"0")}else t&&a.append(t,n)}}else{if(Ug(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=Ng,n=null,o=Lg,i=e}var s;return a&&"text/plain"===o&&(i=a,a=void 0),{action:n,method:r.toLowerCase(),encType:o,formData:a,body:i}}function Yg(e,t){if(!1===e||null===e||"undefined"===typeof e)throw new Error(t)}async function Vg(e,t){if(e.id in t)return t[e.id];try{let r=await import(e.module);return t[e.id]=r,r}catch(r){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(r),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise((()=>{}))}}function Gg(e){return null!=e&&"string"===typeof e.page}function Zg(e){return null!=e&&(null==e.href?"preload"===e.rel&&"string"===typeof e.imageSrcSet&&"string"===typeof e.imageSizes:"string"===typeof e.rel&&"string"===typeof e.href)}function Qg(e,t,r,n,o,a){let i=(e,t)=>!r[t]||e.route.id!==r[t].route.id,s=(e,t)=>r[t].pathname!==e.pathname||r[t].route.path?.endsWith("*")&&r[t].params["*"]!==e.params["*"];return"assets"===a?t.filter(((e,t)=>i(e,t)||s(e,t))):"data"===a?t.filter(((t,a)=>{let l=n.routes[t.route.id];if(!l||!l.hasLoader)return!1;if(i(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let n=t.route.shouldRevalidate({currentUrl:new URL(o.pathname+o.search+o.hash,window.origin),currentParams:r[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if("boolean"===typeof n)return n}return!0})):[]}function Kg(e){return[...new Set(e)]}function Xg(e,t){let r=new Set,n=new Set(t);return e.reduce(((e,o)=>{if(t&&!Gg(o)&&"script"===o.as&&o.href&&n.has(o.href))return e;let a=JSON.stringify(function(e){let t={},r=Object.keys(e).sort();for(let n of r)t[n]=e[n];return t}(o));return r.has(a)||(r.add(a),e.push({key:a,link:o})),e}),[])}function Jg(e){return{__html:e}}Symbol("SingleFetchRedirect");function $g(e){let t="string"===typeof e?new URL(e,"undefined"===typeof window?"server://singlefetch/":window.location.origin):e;return"/"===t.pathname?t.pathname="_root.data":t.pathname=`${t.pathname.replace(/\/$/,"")}.data`,t}t.Component;function qg(e){let{error:r,isOutsideRemixApp:n}=e;console.error(r);let o,a=t.createElement("script",{dangerouslySetInnerHTML:{__html:'\n        console.log(\n          "\ud83d\udcbf Hey developer \ud83d\udc4b. You can provide a way better UX than this when your app throws errors. Check out https://remix.run/guides/errors for more information."\n        );\n      '}});if($m(r))return t.createElement(ev,{title:"Unhandled Thrown Response!"},t.createElement("h1",{style:{fontSize:"24px"}},r.status," ",r.statusText),a);if(r instanceof Error)0;else{let e=null==r?"Unknown Error":"object"===typeof r&&"toString"in r?r.toString():JSON.stringify(r);new Error(e)}return t.createElement(ev,{title:"Application Error!",isOutsideRemixApp:n},t.createElement("h1",{style:{fontSize:"24px"}},"Application Error"),t.createElement("pre",{style:{padding:"2rem",background:"hsla(10, 50%, 50%, 0.1)",color:"red",overflow:"auto"}},o.stack),a)}function ev(e){let{title:r,renderScripts:n,isOutsideRemixApp:o,children:a}=e,{routeModules:i}=av();return i.root?.Layout&&!o?a:t.createElement("html",{lang:"en"},t.createElement("head",null,t.createElement("meta",{charSet:"utf-8"}),t.createElement("meta",{name:"viewport",content:"width=device-width,initial-scale=1,viewport-fit=cover"}),t.createElement("title",null,r)),t.createElement("body",null,t.createElement("main",{style:{fontFamily:"system-ui, sans-serif",padding:"2rem"}},a,n?t.createElement(fv,null):null)))}function tv(e){return!e}function rv(){let e=t.useContext(tg);return Yg(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function nv(){let e=t.useContext(rg);return Yg(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}var ov=t.createContext(void 0);function av(){let e=t.useContext(ov);return Yg(e,"You must render this element inside a <HydratedRouter> element"),e}function iv(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function sv(e,t,r){if(r&&!dv)return[e[0]];if(t){let r=e.findIndex((e=>void 0!==t[e.route.id]));return e.slice(0,r+1)}return e}function lv(e){let{page:r,...n}=e,{router:o}=rv(),a=t.useMemo((()=>Dm(o.routes,r,o.basename)),[o.routes,r,o.basename]);return a?t.createElement(uv,{page:r,matches:a,...n}):(console.warn(`Tried to prefetch ${r} but no routes matched.`),null)}function cv(e){let{manifest:r,routeModules:n}=av(),[o,a]=t.useState([]);return t.useEffect((()=>{let t=!1;return async function(e,t,r){return Xg((await Promise.all(e.map((async e=>{let n=t.routes[e.route.id];if(n){let e=await Vg(n,r);return e.links?e.links():[]}return[]})))).flat(1).filter(Zg).filter((e=>"stylesheet"===e.rel||"preload"===e.rel)).map((e=>"stylesheet"===e.rel?{...e,rel:"prefetch",as:"style"}:{...e,rel:"prefetch"})))}(e,r,n).then((e=>{t||a(e)})),()=>{t=!0}}),[e,r,n]),o}function uv(e){let{page:r,matches:n,...o}=e,a=dg(),{manifest:i,routeModules:s}=av(),{loaderData:l,matches:c}=nv(),u=t.useMemo((()=>Qg(r,n,c,i,a,"data")),[r,n,c,i,a]),d=t.useMemo((()=>Qg(r,n,c,i,a,"assets")),[r,n,c,i,a]),f=t.useMemo((()=>{if(r===a.pathname+a.search+a.hash)return[];let e=new Set,t=!1;if(n.forEach((r=>{let n=i.routes[r.route.id];n&&n.hasLoader&&(!u.some((e=>e.route.id===r.route.id))&&r.route.id in l&&s[r.route.id]?.shouldRevalidate||n.hasClientLoader?t=!0:e.add(r.route.id))})),0===e.size)return[];let o=$g(r);return t&&e.size>0&&o.searchParams.set("_routes",n.filter((t=>e.has(t.route.id))).map((e=>e.route.id)).join(",")),[o.pathname+o.search]}),[l,a,i,u,n,r,s]),p=t.useMemo((()=>function(e,t){return Kg(e.map((e=>{let r=t.routes[e.route.id];if(!r)return[];let n=[r.module];return r.imports&&(n=n.concat(r.imports)),n})).flat(1))}(d,i)),[d,i]),h=cv(d);return t.createElement(t.Fragment,null,f.map((e=>t.createElement("link",{key:e,rel:"prefetch",as:"fetch",href:e,...o}))),p.map((e=>t.createElement("link",{key:e,rel:"modulepreload",href:e,...o}))),h.map((e=>{let{key:r,link:n}=e;return t.createElement("link",{key:r,...n})})))}ov.displayName="FrameworkContext";var dv=!1;function fv(e){let{manifest:r,serverHandoffString:n,isSpaMode:o,renderMeta:a}=av(),{router:i,static:s,staticContext:l}=rv(),{matches:c}=nv(),u=tv(o);a&&(a.didRenderScripts=!0);let d=sv(c,null,o);t.useEffect((()=>{0}),[]);let f=t.useMemo((()=>{let o=l?`window.__reactRouterContext = ${n};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamController = controller;}}).pipeThrough(new TextEncoderStream());`:" ",a=s?`${r.hmr?.runtime?`import ${JSON.stringify(r.hmr.runtime)};`:""}${u?"":`import ${JSON.stringify(r.url)}`};\n${d.map(((e,t)=>`import * as route${t} from ${JSON.stringify(r.routes[e.route.id].module)};`)).join("\n")}\n  ${u?`window.__reactRouterManifest = ${JSON.stringify(function(e,t){let r=new Set(t.state.matches.map((e=>e.route.id))),n=t.state.location.pathname.split("/").filter(Boolean),o=["/"];for(n.pop();n.length>0;)o.push(`/${n.join("/")}`),n.pop();o.forEach((e=>{let n=Dm(t.routes,e,t.basename);n&&n.forEach((e=>r.add(e.route.id)))}));let a=[...r].reduce(((t,r)=>Object.assign(t,{[r]:e.routes[r]})),{});return{...e,routes:a}}(r,i),null,2)};`:""}\n  window.__reactRouterRouteModules = {${d.map(((e,t)=>`${JSON.stringify(e.route.id)}:route${t}`)).join(",")}};\n\nimport(${JSON.stringify(r.entry.module)});`:" ";return t.createElement(t.Fragment,null,t.createElement("script",{...e,suppressHydrationWarning:!0,dangerouslySetInnerHTML:Jg(o),type:void 0}),t.createElement("script",{...e,suppressHydrationWarning:!0,dangerouslySetInnerHTML:Jg(a),type:"module",async:!0}))}),[]),p=d.map((e=>{let t=r.routes[e.route.id];return t?(t.imports||[]).concat([t.module]):[]})).flat(1),h=dv?[]:r.entry.imports.concat(p);return dv?null:t.createElement(t.Fragment,null,u?null:t.createElement("link",{rel:"modulepreload",href:r.url,crossOrigin:e.crossOrigin}),t.createElement("link",{rel:"modulepreload",href:r.entry.module,crossOrigin:e.crossOrigin}),[...new Set(m)].map((r=>t.createElement("link",{key:r,rel:"modulepreload",href:r,crossOrigin:e.crossOrigin}))),f);var m}function pv(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return e=>{t.forEach((t=>{"function"===typeof t?t(e):null!=t&&(t.current=e)}))}}var hv="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement;try{hv&&(window.__reactRouterVersion="7.0.2")}catch(o6){}function mv(e){let{basename:r,children:n,window:o}=e,a=t.useRef();null==a.current&&(a.current=wm({window:o,v5Compat:!0}));let i=a.current,[s,l]=t.useState({action:i.action,location:i.location}),c=t.useCallback((e=>{t.startTransition((()=>l(e)))}),[l]);return t.useLayoutEffect((()=>i.listen(c)),[i,c]),t.createElement(jg,{basename:r,children:n,location:s.location,navigationType:s.action,navigator:i})}var gv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,vv=t.forwardRef((function(e,r){let n,{onClick:o,discover:a="render",prefetch:i="none",relative:s,reloadDocument:l,replace:c,state:u,target:d,to:f,preventScrollReset:p,viewTransition:h,...m}=e,{basename:g}=t.useContext(ig),v="string"===typeof f&&gv.test(f),y=!1;if("string"===typeof f&&v&&(n=f,hv))try{let e=new URL(window.location.href),t=f.startsWith("//")?new URL(e.protocol+f):new URL(f),r=Hm(t.pathname,g);t.origin===e.origin&&null!=r?f=r+t.search+t.hash:y=!0}catch(o6){Sm(!1,`<Link to="${f}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}let b=function(e){let{relative:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};xm(ug(),"useHref() may be used only in the context of a <Router> component.");let{basename:n,navigator:o}=t.useContext(ig),{hash:a,pathname:i,search:s}=gg(e,{relative:r}),l=i;return"/"!==n&&(l="/"===i?n:Qm([n,i])),o.createHref({pathname:l,search:s,hash:a})}(f,{relative:s}),[w,x,S]=function(e,r){let n=t.useContext(ov),[o,a]=t.useState(!1),[i,s]=t.useState(!1),{onFocus:l,onBlur:c,onMouseEnter:u,onMouseLeave:d,onTouchStart:f}=r,p=t.useRef(null);t.useEffect((()=>{if("render"===e&&s(!0),"viewport"===e){let e=new IntersectionObserver((e=>{e.forEach((e=>{s(e.isIntersecting)}))}),{threshold:.5});return p.current&&e.observe(p.current),()=>{e.disconnect()}}}),[e]),t.useEffect((()=>{if(o){let e=setTimeout((()=>{s(!0)}),100);return()=>{clearTimeout(e)}}}),[o]);let h=()=>{a(!0)},m=()=>{a(!1),s(!1)};return n?"intent"!==e?[i,p,{}]:[i,p,{onFocus:iv(l,h),onBlur:iv(c,m),onMouseEnter:iv(u,h),onMouseLeave:iv(d,m),onTouchStart:iv(f,h)}]:[!1,p,{}]}(i,m),A=function(e){let{target:r,replace:n,state:o,preventScrollReset:a,relative:i,viewTransition:s}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=hg(),c=dg(),u=gg(e,{relative:i});return t.useCallback((t=>{if(function(e,t){return 0===e.button&&(!t||"_self"===t)&&!function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)}(t,r)){t.preventDefault();let r=void 0!==n?n:Cm(c)===Cm(u);l(e,{replace:r,state:o,preventScrollReset:a,relative:i,viewTransition:s})}}),[c,l,u,n,o,r,e,a,i,s])}(f,{replace:c,state:u,target:d,preventScrollReset:p,relative:s,viewTransition:h});let k=t.createElement("a",{...m,...S,href:n||b,onClick:y||l?o:function(e){o&&o(e),e.defaultPrevented||A(e)},ref:pv(r,x),target:d,"data-discover":v||"render"!==a?void 0:"true"});return w&&!v?t.createElement(t.Fragment,null,k,t.createElement(lv,{page:b})):k}));vv.displayName="Link",t.forwardRef((function(e,r){let{"aria-current":n="page",caseSensitive:o=!1,className:a="",end:i=!1,style:s,to:l,viewTransition:c,children:u,...d}=e,f=gg(l,{relative:d.relative}),p=dg(),h=t.useContext(rg),{navigator:m,basename:g}=t.useContext(ig),v=null!=h&&function(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.useContext(ng);xm(null!=n,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`.  Did you accidentally import `RouterProvider` from `react-router`?");let{basename:o}=wv("useViewTransitionState"),a=gg(e,{relative:r.relative});if(!n.isTransitioning)return!1;let i=Hm(n.currentLocation.pathname,o)||n.currentLocation.pathname,s=Hm(n.nextLocation.pathname,o)||n.nextLocation.pathname;return null!=zm(a.pathname,s)||null!=zm(a.pathname,i)}(f)&&!0===c,y=m.encodeLocation?m.encodeLocation(f).pathname:f.pathname,b=p.pathname,w=h&&h.navigation&&h.navigation.location?h.navigation.location.pathname:null;o||(b=b.toLowerCase(),w=w?w.toLowerCase():null,y=y.toLowerCase()),w&&g&&(w=Hm(w,g)||w);const x="/"!==y&&y.endsWith("/")?y.length-1:y.length;let S,A=b===y||!i&&b.startsWith(y)&&"/"===b.charAt(x),k=null!=w&&(w===y||!i&&w.startsWith(y)&&"/"===w.charAt(y.length)),C={isActive:A,isPending:k,isTransitioning:v},I=A?n:void 0;S="function"===typeof a?a(C):[a,A?"active":null,k?"pending":null,v?"transitioning":null].filter(Boolean).join(" ");let E="function"===typeof s?s(C):s;return t.createElement(vv,{...d,"aria-current":I,className:S,ref:r,style:E,to:l,viewTransition:c},"function"===typeof u?u(C):u)})).displayName="NavLink";var yv=t.forwardRef(((e,r)=>{let{discover:n="render",fetcherKey:o,navigate:a,reloadDocument:i,replace:s,state:l,method:c=Ng,action:u,onSubmit:d,relative:f,preventScrollReset:p,viewTransition:h,...m}=e,g=kv(),v=function(e){let{relative:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{basename:n}=t.useContext(ig),o=t.useContext(lg);xm(o,"useFormAction must be used inside a RouteContext");let[a]=o.matches.slice(-1),i={...gg(e||".",{relative:r})},s=dg();if(null==e){i.search=s.search;let e=new URLSearchParams(i.search),t=e.getAll("index");if(t.some((e=>""===e))){e.delete("index"),t.filter((e=>e)).forEach((t=>e.append("index",t)));let r=e.toString();i.search=r?`?${r}`:""}}e&&"."!==e||!a.route.index||(i.search=i.search?i.search.replace(/^\?/,"?index&"):"?index");"/"!==n&&(i.pathname="/"===i.pathname?n:Qm([n,i.pathname]));return Cm(i)}(u,{relative:f}),y="get"===c.toLowerCase()?"get":"post",b="string"===typeof u&&gv.test(u);return t.createElement("form",{ref:r,method:y,action:v,onSubmit:i?d:e=>{if(d&&d(e),e.defaultPrevented)return;e.preventDefault();let t=e.nativeEvent.submitter,r=t?.getAttribute("formmethod")||c;g(t||e.currentTarget,{fetcherKey:o,method:r,navigate:a,replace:s,state:l,relative:f,preventScrollReset:p,viewTransition:h})},...m,"data-discover":b||"render"!==n?void 0:"true"})}));function bv(e){return`${e} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function wv(e){let r=t.useContext(tg);return xm(r,bv(e)),r}function xv(e){Sm("undefined"!==typeof URLSearchParams,"You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let r=t.useRef(Bg(e)),n=t.useRef(!1),o=dg(),a=t.useMemo((()=>function(e,t){let r=Bg(e);return t&&t.forEach(((e,n)=>{r.has(n)||t.getAll(n).forEach((e=>{r.append(n,e)}))})),r}(o.search,n.current?null:r.current)),[o.search]),i=hg(),s=t.useCallback(((e,t)=>{const r=Bg("function"===typeof e?e(a):e);n.current=!0,i("?"+r,t)}),[i,a]);return[a,s]}yv.displayName="Form";var Sv=0,Av=()=>`__${String(++Sv)}__`;function kv(){let{router:e}=wv("useSubmit"),{basename:r}=t.useContext(ig),n=Ig("useRouteId");return t.useCallback((async function(t){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{action:a,method:i,encType:s,formData:l,body:c}=Hg(t,r);if(!1===o.navigate){let t=o.fetcherKey||Av();await e.fetch(t,n,o.action||a,{preventScrollReset:o.preventScrollReset,formData:l,body:c,formMethod:o.method||i,formEncType:o.encType||s,flushSync:o.flushSync})}else await e.navigate(o.action||a,{preventScrollReset:o.preventScrollReset,formData:l,body:c,formMethod:o.method||i,formEncType:o.encType||s,replace:o.replace,state:o.state,fromRouteId:n,flushSync:o.flushSync,viewTransition:o.viewTransition})}),[e,r,n])}new TextEncoder;r(57413);Object.create(null);const Cv={},Iv=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];Ov(t[0])&&Cv[t[0]]||(Ov(t[0])&&(Cv[t[0]]=new Date),function(){if(console?.warn){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];Ov(t[0])&&(t[0]=`react-i18next:: ${t[0]}`),console.warn(...t)}}(...t))},Ev=(e,t)=>()=>{if(e.isInitialized)t();else{const r=()=>{setTimeout((()=>{e.off("initialized",r)}),0),t()};e.on("initialized",r)}},Dv=(e,t,r)=>{e.loadNamespaces(t,Ev(e,r))},Tv=(e,t,r,n)=>{if(Ov(r)&&(r=[r]),e.options.preload&&e.options.preload.indexOf(t)>-1)return Dv(e,r,n);r.forEach((t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)})),e.loadLanguages(t,Ev(e,n))},Ov=e=>"string"===typeof e,Mv=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Pv={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"\xa9","&#169;":"\xa9","&reg;":"\xae","&#174;":"\xae","&hellip;":"\u2026","&#8230;":"\u2026","&#x2F;":"/","&#47;":"/"},jv=e=>Pv[e];let Rv={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:e=>e.replace(Mv,jv)};let _v;const Nv={type:"3rdParty",init(e){!function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Rv={...Rv,...e}}(e.options.react),(e=>{_v=e})(e)}},Lv=(0,t.createContext)();class Uv{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach((e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)}))}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}const Bv=(e,t,r,n)=>e.getFixedT(t,r,n),Fv=function(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{i18n:n}=r,{i18n:o,defaultNS:a}=(0,t.useContext)(Lv)||{},i=n||o||_v;if(i&&!i.reportNamespaces&&(i.reportNamespaces=new Uv),!i){Iv("You will need to pass in an i18next instance by using initReactI18next");const e=(e,t)=>{return Ov(t)?t:"object"===typeof(r=t)&&null!==r&&Ov(t.defaultValue)?t.defaultValue:Array.isArray(e)?e[e.length-1]:e;var r},t=[e,{},!1];return t.t=e,t.i18n={},t.ready=!1,t}i.options.react?.wait&&Iv("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");const s={...Rv,...i.options.react,...r},{useSuspense:l,keyPrefix:c}=s;let u=e||a||i.options?.defaultNS;u=Ov(u)?[u]:u||["translation"],i.reportNamespaces.addUsedNamespaces?.(u);const d=(i.isInitialized||i.initializedStoreOnce)&&u.every((e=>function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.languages&&t.languages.length?t.hasLoadedNamespace(e,{lng:r.lng,precheck:(t,n)=>{if(r.bindI18n?.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!n(t.isLanguageChangingTo,e))return!1}}):(Iv("i18n.languages were undefined or empty",t.languages),!0)}(e,i,s))),f=((e,r,n,o)=>(0,t.useCallback)(Bv(e,r,n,o),[e,r,n,o]))(i,r.lng||null,"fallback"===s.nsMode?u:u[0],c),p=()=>f,h=()=>Bv(i,r.lng||null,"fallback"===s.nsMode?u:u[0],c),[m,g]=(0,t.useState)(p);let v=u.join();r.lng&&(v=`${r.lng}${v}`);const y=((e,r)=>{const n=(0,t.useRef)();return(0,t.useEffect)((()=>{n.current=r?n.current:e}),[e,r]),n.current})(v),b=(0,t.useRef)(!0);(0,t.useEffect)((()=>{const{bindI18n:e,bindI18nStore:t}=s;b.current=!0,d||l||(r.lng?Tv(i,r.lng,u,(()=>{b.current&&g(h)})):Dv(i,u,(()=>{b.current&&g(h)}))),d&&y&&y!==v&&b.current&&g(h);const n=()=>{b.current&&g(h)};return e&&i?.on(e,n),t&&i?.store.on(t,n),()=>{b.current=!1,i&&e?.split(" ").forEach((e=>i.off(e,n))),t&&i&&t.split(" ").forEach((e=>i.store.off(e,n)))}}),[i,v]),(0,t.useEffect)((()=>{b.current&&d&&g(p)}),[i,c,d]);const w=[m,i,d];if(w.t=m,w.i18n=i,w.ready=d,d)return w;if(!d&&!l)return w;throw new Promise((e=>{r.lng?Tv(i,r.lng,u,(()=>e())):Dv(i,u,(()=>e()))}))};var zv=r(3484),Wv=r(70134),Hv=r(52215),Yv=r(59520),Vv=r(12620);const Gv=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{autoHideDuration:r=null,disableWindowBlurListener:n=!1,onClose:o,open:a,resumeHideDuration:i}=e,s=(0,Hv.A)();t.useEffect((()=>{if(a)return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)};function e(e){e.defaultPrevented||"Escape"===e.key&&o?.(e,"escapeKeyDown")}}),[a,o]);const l=(0,Yv.A)(((e,t)=>{o?.(e,t)})),c=(0,Yv.A)((e=>{o&&null!=e&&s.start(e,(()=>{l(null,"timeout")}))}));t.useEffect((()=>(a&&c(r),s.clear)),[a,r,c,s]);const u=s.clear,d=t.useCallback((()=>{null!=r&&c(null!=i?i:.5*r)}),[r,i,c]),f=e=>t=>{const r=e.onFocus;r?.(t),u()},p=e=>t=>{const r=e.onMouseEnter;r?.(t),u()},h=e=>t=>{const r=e.onMouseLeave;r?.(t),d()};return t.useEffect((()=>{if(!n&&a)return window.addEventListener("focus",d),window.addEventListener("blur",u),()=>{window.removeEventListener("focus",d),window.removeEventListener("blur",u)}}),[n,a,d,u]),{getRootProps:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const r={...(0,Vv.A)(e),...(0,Vv.A)(t)};return{role:"presentation",...t,...r,onBlur:(n=r,e=>{const t=n.onBlur;t?.(e),d()}),onFocus:f(r),onMouseEnter:p(r),onMouseLeave:h(r)};var n},onClickAway:e=>{o?.(e,"clickaway")}}};var Zv=r(49456),Qv=r(61262),Kv=r(69688);function Xv(e){return e.substring(2).toLowerCase()}function Jv(e){const{children:r,disableReactTree:n=!1,mouseEvent:o="onClick",onClickAway:a,touchEvent:i="onTouchEnd"}=e,s=t.useRef(!1),l=t.useRef(null),c=t.useRef(!1),u=t.useRef(!1);t.useEffect((()=>(setTimeout((()=>{c.current=!0}),0),()=>{c.current=!1})),[]);const d=(0,Zv.A)((0,Kv.A)(r),l),f=(0,Yv.A)((e=>{const t=u.current;u.current=!1;const r=(0,Qv.A)(l.current);if(!c.current||!l.current||"clientX"in e&&function(e,t){return t.documentElement.clientWidth<e.clientX||t.documentElement.clientHeight<e.clientY}(e,r))return;if(s.current)return void(s.current=!1);let o;o=e.composedPath?e.composedPath().includes(l.current):!r.documentElement.contains(e.target)||l.current.contains(e.target),o||!n&&t||a(e)})),p=e=>t=>{u.current=!0;const n=r.props[e];n&&n(t)},h={ref:d};return!1!==i&&(h[i]=p(i)),t.useEffect((()=>{if(!1!==i){const e=Xv(i),t=(0,Qv.A)(l.current),r=()=>{s.current=!0};return t.addEventListener(e,f),t.addEventListener("touchmove",r),()=>{t.removeEventListener(e,f),t.removeEventListener("touchmove",r)}}}),[f,i]),!1!==o&&(h[o]=p(o)),t.useEffect((()=>{if(!1!==o){const e=Xv(o),t=(0,Qv.A)(l.current);return t.addEventListener(e,f),()=>{t.removeEventListener(e,f)}}}),[f,o]),(0,qh.jsx)(t.Fragment,{children:t.cloneElement(r,h)})}var $v=r(14857),qv=r(54265),ey=r(89548),ty=r(40165),ry=r(39624),ny=r(35661),oy=r(1614);function ay(e){return(0,oy.Ay)("MuiSnackbarContent",e)}(0,mm.A)("MuiSnackbarContent",["root","message","action"]);const iy=(0,am.Ay)(ny.A,{name:"MuiSnackbarContent",slot:"Root",overridesResolver:(e,t)=>t.root})((0,qv.A)((e=>{let{theme:t}=e;const r="light"===t.palette.mode?.8:.98,n=(0,ry.tL)(t.palette.background.default,r);return{...t.typography.body2,color:t.vars?t.vars.palette.SnackbarContent.color:t.palette.getContrastText(n),backgroundColor:t.vars?t.vars.palette.SnackbarContent.bg:n,display:"flex",alignItems:"center",flexWrap:"wrap",padding:"6px 16px",borderRadius:(t.vars||t).shape.borderRadius,flexGrow:1,[t.breakpoints.up("sm")]:{flexGrow:"initial",minWidth:288}}}))),sy=(0,am.Ay)("div",{name:"MuiSnackbarContent",slot:"Message",overridesResolver:(e,t)=>t.message})({padding:"8px 0"}),ly=(0,am.Ay)("div",{name:"MuiSnackbarContent",slot:"Action",overridesResolver:(e,t)=>t.action})({display:"flex",alignItems:"center",marginLeft:"auto",paddingLeft:16,marginRight:-8}),cy=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiSnackbarContent"}),{action:n,className:o,message:a,role:i="alert",...s}=r,l=r,c=(e=>{const{classes:t}=e;return(0,zv.A)({root:["root"],action:["action"],message:["message"]},ay,t)})(l);return(0,qh.jsxs)(iy,{role:i,square:!0,elevation:6,className:(0,Fh.A)(c.root,o),ownerState:l,ref:t,...s,children:[(0,qh.jsx)(sy,{className:c.message,ownerState:l,children:a}),n?(0,qh.jsx)(ly,{className:c.action,ownerState:l,children:n}):null]})}));function uy(e){return(0,oy.Ay)("MuiSnackbar",e)}(0,mm.A)("MuiSnackbar",["root","anchorOriginTopCenter","anchorOriginBottomCenter","anchorOriginTopRight","anchorOriginBottomRight","anchorOriginTopLeft","anchorOriginBottomLeft"]);const dy=(0,am.Ay)("div",{name:"MuiSnackbar",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[`anchorOrigin${(0,ey.A)(r.anchorOrigin.vertical)}${(0,ey.A)(r.anchorOrigin.horizontal)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{zIndex:(t.vars||t).zIndex.snackbar,position:"fixed",display:"flex",left:8,right:8,justifyContent:"center",alignItems:"center",variants:[{props:e=>{let{ownerState:t}=e;return"top"===t.anchorOrigin.vertical},style:{top:8,[t.breakpoints.up("sm")]:{top:24}}},{props:e=>{let{ownerState:t}=e;return"top"!==t.anchorOrigin.vertical},style:{bottom:8,[t.breakpoints.up("sm")]:{bottom:24}}},{props:e=>{let{ownerState:t}=e;return"left"===t.anchorOrigin.horizontal},style:{justifyContent:"flex-start",[t.breakpoints.up("sm")]:{left:24,right:"auto"}}},{props:e=>{let{ownerState:t}=e;return"right"===t.anchorOrigin.horizontal},style:{justifyContent:"flex-end",[t.breakpoints.up("sm")]:{right:24,left:"auto"}}},{props:e=>{let{ownerState:t}=e;return"center"===t.anchorOrigin.horizontal},style:{[t.breakpoints.up("sm")]:{left:"50%",right:"auto",transform:"translateX(-50%)"}}}]}}))),fy=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiSnackbar"}),o=(0,$v.A)(),a={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},{action:i,anchorOrigin:{vertical:s,horizontal:l}={vertical:"bottom",horizontal:"left"},autoHideDuration:c=null,children:u,className:d,ClickAwayListenerProps:f,ContentProps:p,disableWindowBlurListener:h=!1,message:m,onBlur:g,onClose:v,onFocus:y,onMouseEnter:b,onMouseLeave:w,open:x,resumeHideDuration:S,TransitionComponent:A=ty.A,transitionDuration:k=a,TransitionProps:{onEnter:C,onExited:I,...E}={},...D}=n,T={...n,anchorOrigin:{vertical:s,horizontal:l},autoHideDuration:c,disableWindowBlurListener:h,TransitionComponent:A,transitionDuration:k},O=(e=>{const{classes:t,anchorOrigin:r}=e,n={root:["root",`anchorOrigin${(0,ey.A)(r.vertical)}${(0,ey.A)(r.horizontal)}`]};return(0,zv.A)(n,uy,t)})(T),{getRootProps:M,onClickAway:P}=Gv({...T}),[j,R]=t.useState(!0),_=(0,Wv.A)({elementType:dy,getSlotProps:M,externalForwardedProps:D,ownerState:T,additionalProps:{ref:r},className:[O.root,d]});return!x&&j?null:(0,qh.jsx)(Jv,{onClickAway:P,...f,children:(0,qh.jsx)(dy,{..._,children:(0,qh.jsx)(A,{appear:!0,in:x,timeout:k,direction:"top"===s?"down":"up",onEnter:(e,t)=>{R(!1),C&&C(e,t)},onExited:e=>{R(!0),I&&I(e)},...E,children:u||(0,qh.jsx)(cy,{message:m,action:i,...p})})})})})),py=e=>{let{value:r}=e;const[n,o]=(0,t.useState)(r),{gMediaType:a,gStripe:i}=(0,t.useContext)(VI),s=a.isMobile,l=i.isFromApp;(0,t.useEffect)((()=>{o(r)}),[r]);const c=()=>{o((e=>({...e,open:!1})))},u=s||l;return(0,qh.jsx)(fy,{style:u?{position:"fixed",left:"0",right:"0",width:"100vw",maxWidth:"100vw",margin:0,padding:"0 2.5vw",boxSizing:"border-box",zIndex:9999}:{position:"fixed",left:"50%",transform:"translateX(-50%)",zIndex:9999},container:document.body,disablePortal:!1,sx:{whiteSpace:"pre-line",wordBreak:"break-word",...u&&{"& .MuiSnackbarContent-root":{width:"100%",maxWidth:"100%",margin:"0",borderRadius:10,backgroundColor:"rgba(255, 255, 255, 0.80)",color:"#000000"},"& .MuiSnackbarContent-message":{color:"#000000"}},...!u&&{"& .MuiSnackbarContent-root":{borderRadius:10,backgroundColor:"rgba(255, 255, 255, 0.80)",color:"#000000"},"& .MuiSnackbarContent-message":{color:"#000000"}}},anchorOrigin:{vertical:"top",horizontal:"center"},open:n.open,autoHideDuration:1500,onClose:c,message:n.msg||"\u672a\u77e5\u4fe1\u606f",onClick:()=>c()})};var hy=r(66633);const my=e=>{let{open:r,onClose:n,children:o,title:a}=e;const{modalTitle:i,setModalTitle:s,gMediaType:l}=(0,t.useContext)(VI),c=l.isMobile,u={position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",minWidth:c?"280px":"550px",width:c?"90%":"auto",bgcolor:"background.paper",borderRadius:"5px",border:"none",outline:"none",padding:c?"12px":"16px"};return(0,t.useEffect)((()=>{r||s("")}),[r]),(0,qh.jsx)(hy.A,{open:r,onClose:n,children:(0,qh.jsxs)(ym,{sx:u,children:[(0,qh.jsxs)(Bh.A,{sx:{fontSize:c?16:18,fontWeight:"bold",wordBreak:"break-word"},children:[i," ",a]}),o]})})},gy=(0,pm.A)({palette:{primary:{light:"#68c6c8",main:"#28aeb1",dark:"#1d7f7f"},secondary:{light:"#F1F1F1",main:"#F1F1F1",other:"#cccccc"},success:{main:"#68C6C8"},title:{main:"#333333",light:"#666666",other:"#999999"},info:{light:"#cccccc",main:"#666666"},warn:{main:"#f3dd71"},error:{light:"#db807c",main:"#CC4A44"}},typography:{fontFamily:"'Noto Sans JP', sans-serif",h2:{fontSize:"22px",fontWeight:"bold"},h3:{fontSize:"18px",fontWeight:"bolder"},h4:{fontSize:"16px"},h5:{fontSize:"14px"},h6:{fontSize:"12px"},button:{textTransform:"none"}},components:{MuiCssBaseline:{styleOverrides:{".ptr--ptr":{boxShadow:"none !important"}}},MuiTypography:{styleOverrides:{root:{letterSpacing:"0.02rem"}}},MuiTextField:{styleOverrides:{root:{"& .MuiFilledInput-root":{backgroundColor:"#FAFAFA","&:after":{borderBottomColor:"#28aeb1"},"&:hover:not(.Mui-disabled):before":{borderBottomColor:"#28aeb1"},"&:before":{borderBottomColor:"#FAFAFA"}}}}},MuiCardHeader:{styleOverrides:{root:{margin:"0px",padding:"0px"}}},MuiCardContent:{styleOverrides:{root:{margin:"0px",padding:"5px","&:last-child":{paddingBottom:0},overflow:"unset"}}},MuiCard:{styleOverrides:{root:{borderRadius:"0%",margin:"0px",padding:"16px"}},defaultProps:{elevation:0}},MuiFormLabel:{styleOverrides:{asterisk:{color:"#d32f2f"}}},MuiSvgIcon:{styleOverrides:{root:{'&[data-testid="KeyboardArrowLeftIcon"]':{color:"rgba(0, 0, 0, 0.87)"},"&.keyboard-arrow-left":{color:"rgba(0, 0, 0, 0.87)"}}}}}}),vy="undefined"!==typeof window?t.useLayoutEffect:t.useEffect;var yy=r(51522),by=r(35789);function wy(e,r,n,o,a){const[i,s]=t.useState((()=>a&&n?n(e).matches:o?o(e).matches:r));return vy((()=>{if(!n)return;const t=n(e),r=()=>{s(t.matches)};return r(),t.addEventListener("change",r),()=>{t.removeEventListener("change",r)}}),[e,n]),i}const xy={...n}.useSyncExternalStore;function Sy(e,r,n,o,a){const i=t.useCallback((()=>r),[r]),s=t.useMemo((()=>{if(a&&n)return()=>n(e).matches;if(null!==o){const{matches:t}=o(e);return()=>t}return i}),[i,e,o,a,n]),[l,c]=t.useMemo((()=>{if(null===n)return[i,()=>()=>{}];const t=n(e);return[()=>t.matches,e=>(t.addEventListener("change",e),()=>{t.removeEventListener("change",e)})]}),[i,n,e]);return xy(c,l,s)}function Ay(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{themeId:t}=e;return function(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=(0,by.A)();n&&t&&(n=n[t]||n);const o="undefined"!==typeof window&&"undefined"!==typeof window.matchMedia,{defaultMatches:a=!1,matchMedia:i=(o?window.matchMedia:null),ssrMatchMedia:s=null,noSsr:l=!1}=(0,yy.A)({name:"MuiUseMediaQuery",props:r,theme:n});let c="function"===typeof e?e(n):e;c=c.replace(/^@media( ?)/m,"");return(void 0!==xy?Sy:wy)(c,a,i,s,l)}}Ay();const ky=Ay({themeId:hm.A});var Cy=r(49092);const Iy="appGuestDevices",Ey=()=>JSON.parse(localStorage.getItem(Iy)||"[]"),Dy=e=>localStorage.setItem(Iy,JSON.stringify(e));function Ty(e){Dy(Ey().filter((t=>t.subUUID!==e.subUUID||t.deviceUUID!==e.deviceUUID||t.target!==e.target)))}var Oy,My,Py,jy,Ry,_y,Ny=r(61873);function Ly(e){return e&&!!["provider"].find((function(t){return e.hasOwnProperty(t)}))}function Uy(e){return void 0!==e.redirectSignIn}(My=Oy||(Oy={})).Cognito="COGNITO",My.Google="Google",My.Facebook="Facebook",My.Amazon="LoginWithAmazon",My.Apple="SignInWithApple",(jy=Py||(Py={})).NoConfig="noConfig",jy.MissingAuthConfig="missingAuthConfig",jy.EmptyUsername="emptyUsername",jy.InvalidUsername="invalidUsername",jy.EmptyPassword="emptyPassword",jy.EmptyCode="emptyCode",jy.SignUpError="signUpError",jy.NoMFA="noMFA",jy.InvalidMFA="invalidMFA",jy.EmptyChallengeResponse="emptyChallengeResponse",jy.NoUserSession="noUserSession",jy.Default="default",jy.DeviceConfig="deviceConfig",jy.NetworkError="networkError",jy.AutoSignInError="autoSignInError",(_y=Ry||(Ry={})).API_KEY="API_KEY",_y.AWS_IAM="AWS_IAM",_y.OPENID_CONNECT="OPENID_CONNECT",_y.AMAZON_COGNITO_USER_POOLS="AMAZON_COGNITO_USER_POOLS",_y.AWS_LAMBDA="AWS_LAMBDA";var By=function(){return By=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},By.apply(this,arguments)},Fy=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},zy=function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o<a;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},Wy=new _h("Hub"),Hy="undefined"!==typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("amplify_default"):"@@amplify_default";var Yy=function(){function e(e){this.listeners=[],this.patterns=[],this.protectedChannels=["core","auth","api","analytics","interactions","pubsub","storage","ui","xr"],this.name=e}return e.prototype._remove=function(e,t){if(e instanceof RegExp){var r=this.patterns.find((function(t){return t.pattern.source===e.source}));if(!r)return void Wy.warn("No listeners for ".concat(e));this.patterns=zy([],Fy(this.patterns.filter((function(e){return e!==r}))),!1)}else{var n=this.listeners[e];if(!n)return void Wy.warn("No listeners for ".concat(e));this.listeners[e]=zy([],Fy(n.filter((function(e){return e.callback!==t}))),!1)}},e.prototype.remove=function(e,t){this._remove(e,t)},e.prototype.dispatch=function(e,t,r,n){(void 0===r&&(r=""),this.protectedChannels.indexOf(e)>-1)&&(n===Hy||Wy.warn("WARNING: ".concat(e," is protected and dispatching on it can have unintended consequences")));var o={channel:e,payload:By({},t),source:r,patternInfo:[]};try{this._toListeners(o)}catch(o6){Wy.error(o6)}},e.prototype.listen=function(e,t,r){var n,o=this;if(void 0===r&&(r="noname"),function(e){return void 0!==e.onHubCapsule}(t))Wy.warn("WARNING onHubCapsule is Deprecated. Please pass in a callback."),n=t.onHubCapsule.bind(t);else{if("function"!==typeof t)throw new Error("No callback supplied to Hub");n=t}if(e instanceof RegExp)this.patterns.push({pattern:e,callback:n});else{var a=this.listeners[e];a||(a=[],this.listeners[e]=a),a.push({name:r,callback:n})}return function(){o._remove(e,n)}},e.prototype._toListeners=function(e){var t=e.channel,r=e.payload,n=this.listeners[t];if(n&&n.forEach((function(n){Wy.debug("Dispatching to ".concat(t," with "),r);try{n.callback(e)}catch(o6){Wy.error(o6)}})),this.patterns.length>0){if(!r.message)return void Wy.warn("Cannot perform pattern matching without a message key");var o=r.message;this.patterns.forEach((function(t){var r=o.match(t.pattern);if(r){var n=Fy(r).slice(1),a=By(By({},e),{patternInfo:n});try{t.callback(a)}catch(o6){Wy.error(o6)}}}))}},e}(),Vy=new Yy("__default__"),Gy={},Zy=function(){function e(){}return e.setItem=function(e,t){return Gy[e]=t,Gy[e]},e.getItem=function(e){return Object.prototype.hasOwnProperty.call(Gy,e)?Gy[e]:void 0},e.removeItem=function(e){return delete Gy[e]},e.clear=function(){return Gy={}},e}(),Qy=function(){function e(){try{this.storageWindow=window.localStorage,this.storageWindow.setItem("aws.amplify.test-ls",1),this.storageWindow.removeItem("aws.amplify.test-ls")}catch(e){this.storageWindow=Zy}}return e.prototype.getStorage=function(){return this.storageWindow},e}(),Ky=function(){return{isBrowser:"undefined"!==typeof window&&"undefined"!==typeof window.document,isNode:"undefined"!==typeof process&&null!=process.versions&&null!=process.versions.node}},Xy=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},e(t,r)};return function(t,r){if("function"!==typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Jy=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},$y=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},qy=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},eb=function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o<a;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},tb=new _h("Util"),rb=function(e){function t(t){var r=e.call(this,t)||this;return r.nonRetryable=!0,r}return Xy(t,e),t}(Error);var nb=3e5;function ob(e){void 0===e&&(e=nb);return function(t){var r=100*Math.pow(2,t)+100*Math.random();return!(r>e)&&r}}var ab,ib,sb,lb,cb,ub,db,fb,pb,hb,mb,gb,vb,yb,bb,wb,xb,Sb,Ab,kb,Cb=function(e,t,r,n){return void 0===r&&(r=nb),function(e,t,r,n){return Jy(this,void 0,void 0,(function(){var o=this;return $y(this,(function(a){if("function"!==typeof e)throw Error("functionToRetry must be a function");return[2,new Promise((function(a,i){return Jy(o,void 0,void 0,(function(){var o,s,l,c,u,d,f;return $y(this,(function(p){switch(p.label){case 0:o=0,s=!1,c=function(){},n&&n.then((function(){s=!0,clearTimeout(l),c()})),d=function(){var n,d,f,p;return $y(this,(function(h){switch(h.label){case 0:o++,tb.debug("".concat(e.name," attempt #").concat(o," with this vars: ").concat(JSON.stringify(t))),h.label=1;case 1:return h.trys.push([1,3,,7]),n={},d=a,[4,e.apply(void 0,eb([],qy(t),!1))];case 2:return[2,(n.value=d.apply(void 0,[h.sent()]),n)];case 3:return f=h.sent(),u=f,tb.debug("error on ".concat(e.name),f),(m=f)&&m.nonRetryable?(tb.debug("".concat(e.name," non retryable error"),f),[2,{value:i(f)}]):(p=r(o,t,f),tb.debug("".concat(e.name," retrying in ").concat(p," ms")),!1===p||s?[2,{value:i(f)}]:[3,4]);case 4:return[4,new Promise((function(e){c=e,l=setTimeout(c,p)}))];case 5:h.sent(),h.label=6;case 6:return[3,7];case 7:return[2]}var m}))},p.label=1;case 1:return s?[3,3]:[5,d()];case 2:return"object"===typeof(f=p.sent())?[2,f.value]:[3,1];case 3:return i(u),[2]}}))}))}))]}))}))}(e,t,ob(r),n)},Ib=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},Eb=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},Db=new _h("CognitoCredentials"),Tb=new Promise((function(e,t){return Ky().isBrowser?(window.gapi&&window.gapi.auth2?window.gapi.auth2:null)?(Db.debug("google api already loaded"),e()):void setTimeout((function(){return e()}),2e3):(Db.debug("not in the browser, directly resolved"),e())})),Ob=function(){function e(){this.initialized=!1,this.refreshGoogleToken=this.refreshGoogleToken.bind(this),this._refreshGoogleTokenImpl=this._refreshGoogleTokenImpl.bind(this)}return e.prototype.refreshGoogleToken=function(){return Ib(this,void 0,void 0,(function(){return Eb(this,(function(e){switch(e.label){case 0:return this.initialized?[3,2]:(Db.debug("need to wait for the Google SDK loaded"),[4,Tb]);case 1:e.sent(),this.initialized=!0,Db.debug("finish waiting"),e.label=2;case 2:return[2,this._refreshGoogleTokenImpl()]}}))}))},e.prototype._refreshGoogleTokenImpl=function(){var e=null;return Ky().isBrowser&&(e=window.gapi&&window.gapi.auth2?window.gapi.auth2:null),e?new Promise((function(t,r){e.getAuthInstance().then((function(e){e||(Db.debug("google Auth undefined"),r(new rb("google Auth undefined")));var n=e.currentUser.get();n.isSignedIn()?(Db.debug("refreshing the google access token"),n.reloadAuthResponse().then((function(e){var r=e.id_token,n=e.expires_at;t({token:r,expires_at:n})})).catch((function(e){e&&"network_error"===e.error?r("Network error reloading google auth response"):r(new rb("Failed to reload google auth response"))}))):r(new rb("User is not signed in with Google"))})).catch((function(e){Db.debug("Failed to refresh google token",e),r(new rb("Failed to refresh google token"))}))})):(Db.debug("no gapi auth2 available"),Promise.reject("no gapi auth2 available"))},e}(),Mb=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},Pb=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},jb=new _h("CognitoCredentials"),Rb=new Promise((function(e,t){return Ky().isBrowser?window.FB?(jb.debug("FB SDK already loaded"),e()):void setTimeout((function(){return e()}),2e3):(jb.debug("not in the browser, directly resolved"),e())})),_b=function(){function e(){this.initialized=!1,this.refreshFacebookToken=this.refreshFacebookToken.bind(this),this._refreshFacebookTokenImpl=this._refreshFacebookTokenImpl.bind(this)}return e.prototype.refreshFacebookToken=function(){return Mb(this,void 0,void 0,(function(){return Pb(this,(function(e){switch(e.label){case 0:return this.initialized?[3,2]:(jb.debug("need to wait for the Facebook SDK loaded"),[4,Rb]);case 1:e.sent(),this.initialized=!0,jb.debug("finish waiting"),e.label=2;case 2:return[2,this._refreshFacebookTokenImpl()]}}))}))},e.prototype._refreshFacebookTokenImpl=function(){var e=null;if(Ky().isBrowser&&(e=window.FB),!e){var t="no fb sdk available";return jb.debug(t),Promise.reject(new rb(t))}return new Promise((function(t,r){e.getLoginStatus((function(e){if(e&&e.authResponse){var n=e.authResponse,o=n.accessToken,a=1e3*n.expiresIn+(new Date).getTime();if(!o){i="the jwtToken is undefined";jb.debug(i),r(new rb(i))}t({token:o,expires_at:a})}else{var i="no response from facebook when refreshing the jwt token";jb.debug(i),r(new rb(i))}}),{scope:"public_profile,email"})}))},e}(),Nb=new Ob,Lb=new _b,Ub={id:"aws",outputs:{dnsSuffix:"amazonaws.com"},regionRegex:"^(us|eu|ap|sa|ca|me|af)\\-\\w+\\-\\d+$",regions:["aws-global"]},Bb={partitions:[Ub,{id:"aws-cn",outputs:{dnsSuffix:"amazonaws.com.cn"},regionRegex:"^cn\\-\\w+\\-\\d+$",regions:["aws-cn-global"]}]},Fb=function(e){var t="function"===typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"===typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},zb=function(e){var t,r,n=Bb.partitions;try{for(var o=Fb(n),a=o.next();!a.done;a=o.next()){var i=a.value,s=i.regions,l=i.outputs,c=i.regionRegex,u=new RegExp(c);if(s.includes(e)||u.test(e))return l.dnsSuffix}}catch(d){t={error:d}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}return Ub.outputs.dnsSuffix},Wb=function(){return Wb=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},Wb.apply(this,arguments)},Hb=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},Yb=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},Vb=function(e,t){if(null===t||void 0===t?void 0:t.aborted)return Promise.resolve();var r,n,o=new Promise((function(t){n=t,r=setTimeout(t,e)}));return null===t||void 0===t||t.addEventListener("abort",(function e(o){clearTimeout(r),null===t||void 0===t||t.removeEventListener("abort",e),n()})),o},Gb=function(e,t){var r;"[object Object]"===Object.prototype.toString.call(e)&&(e.$metadata=Wb(Wb({},null!==(r=e.$metadata)&&void 0!==r?r:{}),{attempts:t}))},Zb=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},Qb=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},Kb=function(e,t){return function(r,n){for(var o={},a=function(t){return e(t,n)},i=t.length-1;i>=0;i--){a=(0,t[i])(n)(a,o)}return a(r)}},Xb=(r(62838),function(e){var t;return function(){return t||(t=e()),t}}),Jb=function(){return Jb=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},Jb.apply(this,arguments)},$b=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},qb=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},ew=function(e){return!["HEAD","GET","DELETE"].includes(e.toUpperCase())},tw=Kb((function(e,t){var r=e.url,n=e.method,o=e.headers,a=e.body,i=t.abortSignal;return $b(void 0,void 0,void 0,(function(){var e,t,s,l,c,u,d;return qb(this,(function(f){switch(f.label){case 0:return f.trys.push([0,2,,3]),[4,fetch(r,{method:n,headers:o,body:ew(n)?a:void 0,signal:i})];case 1:return e=f.sent(),[3,3];case 2:if((t=f.sent())instanceof TypeError)throw new Error("Network error");throw t;case 3:return s={},null===(u=e.headers)||void 0===u||u.forEach((function(e,t){s[t.toLowerCase()]=e})),l={statusCode:e.status,headers:s,body:null},c=Object.assign(null!==(d=e.body)&&void 0!==d?d:{},{text:Xb((function(){return e.text()})),blob:Xb((function(){return e.blob()})),json:Xb((function(){return e.json()}))}),[2,Jb(Jb({},l),{body:c})]}}))}))}),[function(e){var t=e.userAgentHeader,r=void 0===t?"x-amz-user-agent":t,n=e.userAgentValue,o=void 0===n?"":n;return function(e){return function(t){return Zb(this,void 0,void 0,(function(){var n;return Qb(this,(function(a){switch(a.label){case 0:return 0!==o.trim().length?[3,2]:[4,e(t)];case 1:return[2,a.sent()];case 2:return n=r.toLowerCase(),t.headers[n]=t.headers[n]?"".concat(t.headers[n]," ").concat(o):o,[4,e(t)];case 3:return[2,a.sent()]}}))}))}}},function(e){var t=e.maxAttempts,r=void 0===t?3:t,n=e.retryDecider,o=e.computeDelay,a=e.abortSignal;if(r<1)throw new Error("maxAttempts must be greater than 0");return function(e,t){return function(i){var s;return Hb(this,void 0,void 0,(function(){var l,c,u,d,f,p;return Yb(this,(function(h){switch(h.label){case 0:c=null!==(s=t.attemptsCount)&&void 0!==s?s:0,d=function(){if(u)return Gb(u,c),u;throw Gb(l,c),l},h.label=1;case 1:if((null===a||void 0===a?void 0:a.aborted)||!(c<r))return[3,11];h.label=2;case 2:return h.trys.push([2,4,,5]),[4,e(i)];case 3:return u=h.sent(),l=void 0,[3,5];case 4:return f=h.sent(),l=f,u=void 0,[3,5];case 5:return c=t.attemptsCount>c?t.attemptsCount:c+1,t.attemptsCount=c,[4,n(u,l)];case 6:return h.sent()?!(null===a||void 0===a?void 0:a.aborted)&&c<r?(p=o(c),[4,Vb(p,a)]):[3,8]:[3,9];case 7:h.sent(),h.label=8;case 8:return[3,1];case 9:return[2,d()];case 10:return[3,1];case 11:if(null===a||void 0===a?void 0:a.aborted)throw new Error("Request aborted.");return[2,d()]}}))}))}}}]),rw=function(){return rw=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},rw.apply(this,arguments)},nw=function(e){var t,r,n=e.headers,o=e.statusCode;return rw(rw({},ow(e)?e.$metadata:{}),{httpStatusCode:o,requestId:null!==(r=null!==(t=n["x-amzn-requestid"])&&void 0!==t?t:n["x-amzn-request-id"])&&void 0!==r?r:n["x-amz-request-id"],extendedRequestId:n["x-amz-id-2"],cfId:n["x-amz-cf-id"]})},ow=function(e){return"object"===typeof(null===e||void 0===e?void 0:e.$metadata)},aw=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},iw=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},sw=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},lw=function(e){return aw(void 0,void 0,void 0,(function(){var t,r,n,o,a,i,s,l,c;return iw(this,(function(u){switch(u.label){case 0:return!e||e.statusCode<300?[2]:[4,cw(e)];case 1:return t=u.sent(),r=function(e){var t=sw(e.toString().split(/[\,\:]+/),1)[0];return t.includes("#")?t.split("#")[1]:t}(null!==(s=null!==(i=null!==(a=e.headers["x-amzn-errortype"])&&void 0!==a?a:t.code)&&void 0!==i?i:t.__type)&&void 0!==s?s:"UnknownError"),n=null!==(c=null!==(l=t.message)&&void 0!==l?l:t.Message)&&void 0!==c?c:"Unknown error",o=new Error(n),[2,Object.assign(o,{name:r,$metadata:nw(e)})]}}))}))},cw=function(e){return aw(void 0,void 0,void 0,(function(){var t;return iw(this,(function(r){switch(r.label){case 0:if(!e.body)throw new Error("Missing response payload");return[4,e.body.json()];case 1:return t=r.sent(),[2,Object.assign(t,{$metadata:nw(e)})]}}))}))},uw=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch","BadRequestException"],dw=function(e){return uw.includes(e)},fw=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},pw=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},hw=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException"],mw=["TimeoutError","RequestTimeout","RequestTimeoutException"],gw=function(e,t){return 429===e||hw.includes(t)},vw=function(e){return"Network error"===(null===e||void 0===e?void 0:e.name)},yw=function(e,t){return[500,502,503,504].includes(e)||mw.includes(t)},bw=3e5;(ib=ab||(ab={})).WebUnknown="0",ib.React="1",ib.NextJs="2",ib.Angular="3",ib.VueJs="4",ib.Nuxt="5",ib.Svelte="6",ib.ServerSideUnknown="100",ib.ReactSSR="101",ib.NextJsSSR="102",ib.AngularSSR="103",ib.VueJsSSR="104",ib.NuxtSSR="105",ib.SvelteSSR="106",ib.ReactNative="201",ib.Expo="202",(lb=sb||(sb={})).API="api",lb.Auth="auth",lb.Analytics="analytics",lb.DataStore="datastore",lb.Geo="geo",lb.InAppMessaging="inappmessaging",lb.Interactions="interactions",lb.Predictions="predictions",lb.PubSub="pubsub",lb.PushNotification="pushnotification",lb.Storage="storage",(ub=cb||(cb={})).Record="1",ub.UpdateEndpoint="2",(fb=db||(db={})).GraphQl="1",fb.Get="2",fb.Post="3",fb.Put="4",fb.Patch="5",fb.Del="6",fb.Head="7",(pb||(pb={})).FederatedSignIn="30",(mb=hb||(hb={})).Subscribe="1",mb.GraphQl="2",(gb||(gb={})).None="0",(vb||(vb={})).None="0",(yb||(yb={})).None="0",(wb=bb||(bb={})).Convert="1",wb.Identify="2",wb.Interpret="3",(xb||(xb={})).Subscribe="1",(Sb||(Sb={})).None="0",(kb=Ab||(Ab={})).Put="1",kb.Get="2",kb.List="3",kb.Copy="4",kb.Remove="5",kb.GetProperties="6";var ww="5.3.26",xw=function(){return"undefined"!==typeof r.g},Sw=function(){return"undefined"!==typeof window},Aw=function(){return"undefined"!==typeof document},kw=function(){return"undefined"!==typeof process},Cw=function(e,t){return!!Object.keys(e).find((function(e){return e.startsWith(t)}))};var Iw,Ew=[{platform:ab.Expo,detectionMethod:function(){return xw()&&"undefined"!==typeof r.g.expo}},{platform:ab.ReactNative,detectionMethod:function(){return"undefined"!==typeof navigator&&"undefined"!==typeof navigator.product&&"ReactNative"===navigator.product}},{platform:ab.NextJs,detectionMethod:function(){return Sw()&&window.next&&"object"===typeof window.next}},{platform:ab.Nuxt,detectionMethod:function(){return Sw()&&(void 0!==window.__NUXT__||void 0!==window.$nuxt)}},{platform:ab.Angular,detectionMethod:function(){var e=Boolean(Aw()&&document.querySelector("[ng-version]")),t=Boolean(Sw()&&"undefined"!==typeof window.ng);return e||t}},{platform:ab.React,detectionMethod:function(){var e=function(e){return e.startsWith("_react")||e.startsWith("__react")};return Aw()&&Array.from(document.querySelectorAll("[id]")).some((function(t){return Object.keys(t).find(e)}))}},{platform:ab.VueJs,detectionMethod:function(){return Sw()&&Cw(window,"__VUE")}},{platform:ab.Svelte,detectionMethod:function(){return Sw()&&Cw(window,"__SVELTE")}},{platform:ab.WebUnknown,detectionMethod:function(){return Sw()}},{platform:ab.NextJsSSR,detectionMethod:function(){return xw()&&(Cw(r.g,"__next")||Cw(r.g,"__NEXT"))}},{platform:ab.NuxtSSR,detectionMethod:function(){return xw()&&"undefined"!==typeof r.g.__NUXT_PATHS__}},{platform:ab.ReactSSR,detectionMethod:function(){return kw()&&!!Object.keys({NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}).find((function(e){return e.includes("react")}))}},{platform:ab.VueJsSSR,detectionMethod:function(){return xw()&&Cw(r.g,"__VUE")}},{platform:ab.AngularSSR,detectionMethod:function(){var e;return kw()&&(null===(e={NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.npm_lifecycle_script)||void 0===e?void 0:e.startsWith("ng "))||!1}},{platform:ab.SvelteSSR,detectionMethod:function(){return kw()&&!!Object.keys({NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}).find((function(e){return e.includes("svelte")}))}}];var Dw=[],Tw=!1,Ow=function(){if(!Iw){if(Iw=function(){var e;return(null===(e=Ew.find((function(e){return e.detectionMethod()})))||void 0===e?void 0:e.platform)||ab.ServerSideUnknown}(),Tw)for(;Dw.length;)Dw.pop()();else Dw.forEach((function(e){return e()}));Pw(ab.ServerSideUnknown,10),Pw(ab.WebUnknown,10)}return Iw},Mw=function(e){Tw||Dw.push(e)};function Pw(e,t){Iw!==e||Tw||setTimeout((function(){Iw=void 0,Tw=!0,setTimeout(Ow,1e3)}),t)}var jw,Rw=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},_w="aws-amplify",Nw=new(function(){function e(){this.userAgent="".concat(_w,"/").concat(ww)}return Object.defineProperty(e.prototype,"framework",{get:function(){return Ow()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isReactNative",{get:function(){return this.framework===ab.ReactNative||this.framework===ab.Expo},enumerable:!1,configurable:!0}),e.prototype.observeFrameworkChanges=function(e){Mw(e)},e}()),Lw=function(e){return function(e){var t=void 0===e?{}:e,r=t.category,n=t.action,o=(t.framework,[[_w,ww]]);return r&&o.push([r,n]),o.push(["framework",Ow()]),o}(e).map((function(e){var t=Rw(e,2),r=t[0],n=t[1];return"".concat(r,"/").concat(n)})).join(" ")},Uw=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},Bw=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},Fw=Kb(tw,[function(){return function(e,t){return function(t){return Uw(this,void 0,void 0,(function(){return Bw(this,(function(r){return t.headers["cache-control"]="no-store",[2,e(t)]}))}))}}}]),zw={service:"cognito-identity",endpointResolver:function(e){var t=e.region;return{url:new URL("https://cognito-identity.".concat(t,".").concat(zb(t)))}},retryDecider:(jw=lw,function(e,t){return fw(void 0,void 0,void 0,(function(){var r,n,o,a;return pw(this,(function(i){switch(i.label){case 0:return null===t||void 0===t?[3,1]:(n=t,[3,3]);case 1:return[4,jw(e)];case 2:n=i.sent(),i.label=3;case 3:return r=(null!==(a=n)&&void 0!==a?a:{}).name,o=null===e||void 0===e?void 0:e.statusCode,[2,vw(t)||gw(o,r)||dw(r)||yw(o,r)]}}))}))}),computeDelay:function(e){var t=ob(bw)(e);return!1===t?bw:t},userAgentValue:Lw()};Mw((function(){zw.userAgentValue=Lw()}));var Ww=function(e){return{"content-type":"application/x-amz-json-1.1","x-amz-target":"AWSCognitoIdentityService.".concat(e)}},Hw=function(e,t,r){return{headers:t,url:e.url,body:r,method:"POST"}},Yw=function(){return Yw=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},Yw.apply(this,arguments)},Vw=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},Gw=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},Zw=function(e,t,r,n){return function(o,a){return Vw(void 0,void 0,void 0,(function(){var i,s,l,c;return Gw(this,(function(u){switch(u.label){case 0:return[4,(i=Yw(Yw({},n),o)).endpointResolver(i,a)];case 1:return s=u.sent(),[4,t(a,s)];case 2:return l=u.sent(),[4,e(l,Yw({},i))];case 3:return c=u.sent(),[4,r(c)];case 4:return[2,u.sent()]}}))}))}},Qw=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},Kw=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},Xw=Zw(Fw,(function(e,t){var r=Ww("GetId"),n=JSON.stringify(e);return Hw(t,r,n)}),(function(e){return Qw(void 0,void 0,void 0,(function(){return Kw(this,(function(t){switch(t.label){case 0:return e.statusCode>=300?[4,lw(e)]:[3,2];case 1:throw t.sent();case 2:return[4,cw(e)];case 3:return[2,{IdentityId:t.sent().IdentityId,$metadata:nw(e)}]}}))}))}),zw),Jw=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},$w=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},qw=function(e){return void 0===e&&(e={}),{AccessKeyId:e.AccessKeyId,SecretKey:e.SecretKey,SessionToken:e.SessionToken,Expiration:new Date(1e3*e.Expiration)}},ex=Zw(Fw,(function(e,t){var r=Ww("GetCredentialsForIdentity"),n=JSON.stringify(e);return Hw(t,r,n)}),(function(e){return Jw(void 0,void 0,void 0,(function(){var t;return $w(this,(function(r){switch(r.label){case 0:return e.statusCode>=300?[4,lw(e)]:[3,2];case 1:throw r.sent();case 2:return[4,cw(e)];case 3:return[2,{IdentityId:(t=r.sent()).IdentityId,Credentials:qw(t.Credentials),$metadata:nw(e)}]}}))}))}),zw),tx=function(){return tx=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},tx.apply(this,arguments)},rx=new _h("Parser"),nx=function(e){var t,r={};if(e.aws_mobile_analytics_app_id){var n={AWSPinpoint:{appId:e.aws_mobile_analytics_app_id,region:e.aws_mobile_analytics_app_region}};r.Analytics=n}return(e.aws_cognito_identity_pool_id||e.aws_user_pools_id)&&(r.Auth={userPoolId:e.aws_user_pools_id,userPoolWebClientId:e.aws_user_pools_web_client_id,region:e.aws_cognito_region,identityPoolId:e.aws_cognito_identity_pool_id,identityPoolRegion:e.aws_cognito_region,mandatorySignIn:"enable"===e.aws_mandatory_sign_in,signUpVerificationMethod:e.aws_cognito_sign_up_verification_method||"code"}),t=e.aws_user_files_s3_bucket?{AWSS3:{bucket:e.aws_user_files_s3_bucket,region:e.aws_user_files_s3_bucket_region,dangerouslyConnectToHttpEndpointForTesting:e.aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing}}:e?e.Storage||e:{},e.Logging&&(r.Logging=tx(tx({},e.Logging),{region:e.aws_project_region})),e.geo&&(r.Geo=Object.assign({},e.geo),e.geo.amazon_location_service&&(r.Geo={AmazonLocationService:e.geo.amazon_location_service})),r.Analytics=Object.assign({},r.Analytics,e.Analytics),r.Auth=Object.assign({},r.Auth,e.Auth),r.Storage=Object.assign({},t),r.Logging=Object.assign({},r.Logging,e.Logging),rx.debug("parse config",e,"to amplifyconfig",r),r},ox=function(){return ox=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},ox.apply(this,arguments)},ax=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(o6){a(o6)}}function s(e){try{l(n.throw(e))}catch(o6){a(o6)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}l((n=n.apply(e,t||[])).next())}))},ix=function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(o6){s=[6,o6],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},sx=new _h("Credentials"),lx="undefined"!==typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("amplify_default"):"@@amplify_default",cx=function(){function e(e){this._gettingCredPromise=null,this._refreshHandlers={},this.Auth=void 0,this.configure(e),this._refreshHandlers.google=Nb.refreshGoogleToken,this._refreshHandlers.facebook=Lb.refreshFacebookToken}return e.prototype.getModuleName=function(){return"Credentials"},e.prototype.getCredSource=function(){return this._credentials_source},e.prototype.configure=function(e){if(!e)return this._config||{};this._config=Object.assign({},this._config,e);var t,r,n,o=this._config.refreshHandlers;return o&&(this._refreshHandlers=ox(ox({},this._refreshHandlers),o)),this._storage=this._config.storage,this._storage||(this._storage=(new Qy).getStorage()),this._storageSync=Promise.resolve(),"function"===typeof this._storage.sync&&(this._storageSync=this._storage.sync()),t="credentials_configured",r=null,n="Credentials has been configured successfully",Vy.dispatch("core",{event:t,data:r,message:n},"Credentials",lx),this._config},e.prototype.get=function(){return sx.debug("getting credentials"),this._pickupCredentials()},e.prototype._getCognitoIdentityIdStorageKey=function(e){return"".concat("CognitoIdentityId-").concat(e)},e.prototype._pickupCredentials=function(){return sx.debug("picking up credentials"),this._gettingCredPromise&&this._gettingCredPromise.isPending()?sx.debug("getting old cred promise"):(sx.debug("getting new cred promise"),this._gettingCredPromise=function(e){if(e.isResolved)return e;var t=!0,r=!1,n=!1,o=e.then((function(e){return n=!0,t=!1,e}),(function(e){throw r=!0,t=!1,e}));return o.isFullfilled=function(){return n},o.isPending=function(){return t},o.isRejected=function(){return r},o}(this._keepAlive())),this._gettingCredPromise},e.prototype._keepAlive=function(){return ax(this,void 0,void 0,(function(){var e,t,r,n,o,a,i;return ix(this,(function(s){switch(s.label){case 0:if(sx.debug("checking if credentials exists and not expired"),(e=this._credentials)&&!this._isExpired(e)&&!this._isPastTTL())return sx.debug("credentials not changed and not expired, directly return"),[2,Promise.resolve(e)];if(sx.debug("need to get a new credential or refresh the existing one"),t=this.Auth,!(r=void 0===t?Uh.Auth:t)||"function"!==typeof r.currentUserCredentials)return[2,this._setCredentialsForGuest()];if(this._isExpired(e)||!this._isPastTTL())return[3,6];sx.debug("ttl has passed but token is not yet expired"),s.label=1;case 1:return s.trys.push([1,5,,6]),[4,r.currentUserPoolUser()];case 2:return n=s.sent(),[4,r.currentSession()];case 3:return o=s.sent(),a=o.refreshToken,[4,new Promise((function(e,t){n.refreshSession(a,(function(r,n){return r?t(r):e(n)}))}))];case 4:return s.sent(),[3,6];case 5:return i=s.sent(),sx.debug("Error attempting to refreshing the session",i),[3,6];case 6:return[2,r.currentUserCredentials()]}}))}))},e.prototype.refreshFederatedToken=function(e){sx.debug("Getting federated credentials");var t=e.provider,r=e.user,n=e.token,o=e.identity_id,a=e.expires_at;a=1970===new Date(a).getFullYear()?1e3*a:a;var i=this;return sx.debug("checking if federated jwt token expired"),a>(new Date).getTime()?(sx.debug("token not expired"),this._setCredentialsFromFederation({provider:t,token:n,user:r,identity_id:o,expires_at:a})):i._refreshHandlers[t]&&"function"===typeof i._refreshHandlers[t]?(sx.debug("getting refreshed jwt token from federation provider"),this._providerRefreshWithRetry({refreshHandler:i._refreshHandlers[t],provider:t,user:r})):(sx.debug("no refresh handler for provider:",t),this.clear(),Promise.reject("no refresh handler for provider"))},e.prototype._providerRefreshWithRetry=function(e){var t=this,r=e.refreshHandler,n=e.provider,o=e.user;return Cb(r,[],1e4).then((function(e){return sx.debug("refresh federated token sucessfully",e),t._setCredentialsFromFederation({provider:n,token:e.token,user:o,identity_id:e.identity_id,expires_at:e.expires_at})})).catch((function(e){return"string"===typeof e&&0===e.toLowerCase().lastIndexOf("network error",e.length)||t.clear(),sx.debug("refresh federated token failed",e),Promise.reject("refreshing federation token failed: "+e)}))},e.prototype._isExpired=function(e){if(!e)return sx.debug("no credentials for expiration check"),!0;sx.debug("are these credentials expired?",e);var t=Date.now();return e.expiration.getTime()<=t},e.prototype._isPastTTL=function(){return this._nextCredentialsRefresh<=Date.now()},e.prototype._setCredentialsForGuest=function(){var e;return ax(this,void 0,void 0,(function(){var t,r,n,o,a,i,s,l,c,u,d=this;return ix(this,(function(f){switch(f.label){case 0:return sx.debug("setting credentials for guest"),(null===(e=this._config)||void 0===e?void 0:e.identityPoolId)||(this._config=Object.assign({},this._config,nx(this._config||{}).Auth)),t=this._config,r=t.identityPoolId,n=t.region,o=t.mandatorySignIn,a=t.identityPoolRegion,o?[2,Promise.reject("cannot get guest credentials when mandatory signin enabled")]:r?a||n?(s=this,[4,this._getGuestIdentityId()]):(sx.debug("region is not configured for getting the credentials"),[2,Promise.reject("region is not configured for getting the credentials")]):(sx.debug("No Cognito Identity pool provided for unauthenticated access"),[2,Promise.reject("No Cognito Identity pool provided for unauthenticated access")]);case 1:return i=s._identityId=f.sent(),l={region:null!==a&&void 0!==a?a:n},c=function(){return ax(d,void 0,void 0,(function(){var e,t;return ix(this,(function(n){switch(n.label){case 0:return i?[3,2]:[4,Xw(l,{IdentityPoolId:r})];case 1:e=n.sent().IdentityId,this._identityId=e,n.label=2;case 2:return[4,ex(l,{IdentityId:this._identityId})];case 3:return t=n.sent().Credentials,[2,{identityId:this._identityId,accessKeyId:t.AccessKeyId,secretAccessKey:t.SecretKey,sessionToken:t.SessionToken,expiration:t.Expiration}]}}))}))},u=c().catch((function(e){return ax(d,void 0,void 0,(function(){return ix(this,(function(t){throw e}))}))})),[2,this._loadCredentials(u,"guest",!1,null).then((function(e){return e})).catch((function(e){return ax(d,void 0,void 0,(function(){var t,n=this;return ix(this,(function(o){switch(o.label){case 0:return"ResourceNotFoundException"!==e.name||e.message!=="Identity '".concat(i,"' not found.")?[3,2]:(sx.debug("Failed to load guest credentials"),[4,this._removeGuestIdentityId()]);case 1:return o.sent(),t=function(){return ax(n,void 0,void 0,(function(){var e,t;return ix(this,(function(n){switch(n.label){case 0:return[4,Xw(l,{IdentityPoolId:r})];case 1:return e=n.sent().IdentityId,this._identityId=e,[4,ex(l,{IdentityId:e})];case 2:return t=n.sent().Credentials,[2,{identityId:e,accessKeyId:t.AccessKeyId,secretAccessKey:t.SecretKey,sessionToken:t.SessionToken,expiration:t.Expiration}]}}))}))},u=t().catch((function(e){return ax(n,void 0,void 0,(function(){return ix(this,(function(t){throw e}))}))})),[2,this._loadCredentials(u,"guest",!1,null)];case 2:return[2,e]}}))}))}))]}}))}))},e.prototype._setCredentialsFromFederation=function(e){var t=this,r=e.provider,n=e.token,o=e.identity_id,a={google:"accounts.google.com",facebook:"graph.facebook.com",amazon:"www.amazon.com",developer:"cognito-identity.amazonaws.com"}[r]||r;if(!a)return Promise.reject("You must specify a federated provider");var i={};i[a]=n;var s=this._config,l=s.identityPoolId,c=s.region,u=s.identityPoolRegion;if(!l)return sx.debug("No Cognito Federated Identity pool provided"),Promise.reject("No Cognito Federated Identity pool provided");if(!u&&!c)return sx.debug("region is not configured for getting the credentials"),Promise.reject("region is not configured for getting the credentials");var d={region:null!==u&&void 0!==u?u:c},f=ax(t,void 0,void 0,(function(){var e,t;return ix(this,(function(r){switch(r.label){case 0:return o?[3,2]:[4,Xw(d,{IdentityPoolId:l,Logins:i})];case 1:e=r.sent().IdentityId,o=e,r.label=2;case 2:return[4,ex(d,{IdentityId:o,Logins:i})];case 3:return t=r.sent().Credentials,[2,{identityId:o,accessKeyId:t.AccessKeyId,secretAccessKey:t.SecretKey,sessionToken:t.SessionToken,expiration:t.Expiration}]}}))})).catch((function(e){return ax(t,void 0,void 0,(function(){return ix(this,(function(t){throw e}))}))}));return this._loadCredentials(f,"federated",!0,e)},e.prototype._setCredentialsFromSession=function(e){var t=this;sx.debug("set credentials from session");var r=e.getIdToken().getJwtToken(),n=this._config,o=n.region,a=n.userPoolId,i=n.identityPoolId,s=n.identityPoolRegion;if(!i)return sx.debug("No Cognito Federated Identity pool provided"),Promise.reject("No Cognito Federated Identity pool provided");if(!s&&!o)return sx.debug("region is not configured for getting the credentials"),Promise.reject("region is not configured for getting the credentials");var l={};l["cognito-idp."+o+".amazonaws.com/"+a]=r;var c={region:null!==s&&void 0!==s?s:o},u=ax(t,void 0,void 0,(function(){var e,t,r,n,o,a,s,u,d,f;return ix(this,(function(p){switch(p.label){case 0:return[4,this._getGuestIdentityId()];case 1:return(e=p.sent())?[3,3]:[4,Xw(c,{IdentityPoolId:i,Logins:l})];case 2:r=p.sent().IdentityId,t=r,p.label=3;case 3:return[4,ex(c,{IdentityId:e||t,Logins:l})];case 4:return n=p.sent(),o=n.Credentials,a=o.AccessKeyId,s=o.Expiration,u=o.SecretKey,d=o.SessionToken,f=n.IdentityId,this._identityId=f,e?(sx.debug("The guest identity ".concat(e," has been successfully linked to the logins")),e===f&&sx.debug("The guest identity ".concat(e," has become the primary identity")),[4,this._removeGuestIdentityId()]):[3,6];case 5:p.sent(),p.label=6;case 6:return[2,{accessKeyId:a,secretAccessKey:u,sessionToken:d,expiration:s,identityId:f}]}}))})).catch((function(e){return ax(t,void 0,void 0,(function(){return ix(this,(function(t){throw e}))}))}));return this._loadCredentials(u,"userPool",!0,null)},e.prototype._loadCredentials=function(e,t,r,n){var o=this,a=this;return new Promise((function(i,s){e.then((function(e){return ax(o,void 0,void 0,(function(){var o,s,l,c,u;return ix(this,(function(d){switch(d.label){case 0:if(sx.debug("Load credentials successfully",e),this._identityId&&!e.identityId&&(e.identityId=this._identityId),a._credentials=e,a._credentials.authenticated=r,a._credentials_source=t,a._nextCredentialsRefresh=(new Date).getTime()+3e6,"federated"===t){o=Object.assign({id:this._credentials.identityId},n.user),s=n.provider,l=n.token,c=n.expires_at,u=n.identity_id;try{this._storage.setItem("aws-amplify-federatedInfo",JSON.stringify({provider:s,token:l,user:o,expires_at:c,identity_id:u}))}catch(o6){sx.debug("Failed to put federated info into auth storage",o6)}}return"guest"!==t?[3,2]:[4,this._setGuestIdentityId(e.identityId)];case 1:d.sent(),d.label=2;case 2:return i(a._credentials),[2]}}))}))})).catch((function(t){if(t)return sx.debug("Failed to load credentials",e),sx.debug("Error loading credentials",t),void s(t)}))}))},e.prototype.set=function(e,t){return"session"===t?this._setCredentialsFromSession(e):"federation"===t?this._setCredentialsFromFederation(e):"guest"===t?this._setCredentialsForGuest():(sx.debug("no source specified for setting credentials"),Promise.reject("invalid source"))},e.prototype.clear=function(){return ax(this,void 0,void 0,(function(){return ix(this,(function(e){return this._credentials=null,this._credentials_source=null,sx.debug("removing aws-amplify-federatedInfo from storage"),this._storage.removeItem("aws-amplify-federatedInfo"),[2]}))}))},e.prototype._getGuestIdentityId=function(){return ax(this,void 0,void 0,(function(){var e,t;return ix(this,(function(r){switch(r.label){case 0:e=this._config.identityPoolId,r.label=1;case 1:return r.trys.push([1,3,,4]),[4,this._storageSync];case 2:return r.sent(),[2,this._storage.getItem(this._getCognitoIdentityIdStorageKey(e))];case 3:return t=r.sent(),sx.debug("Failed to get the cached guest identityId",t),[3,4];case 4:return[2]}}))}))},e.prototype._setGuestIdentityId=function(e){return ax(this,void 0,void 0,(function(){var t,r;return ix(this,(function(n){switch(n.label){case 0:t=this._config.identityPoolId,n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this._storageSync];case 2:return n.sent(),this._storage.setItem(this._getCognitoIdentityIdStorageKey(t),e),[3,4];case 3:return r=n.sent(),sx.debug("Failed to cache guest identityId",r),[3,4];case 4:return[2]}}))}))},e.prototype._removeGuestIdentityId=function(){return ax(this,void 0,void 0,(function(){var e;return ix(this,(function(t){return e=this._config.identityPoolId,sx.debug("removing ".concat(this._getCognitoIdentityIdStorageKey(e)," from storage")),this._storage.removeItem(this._getCognitoIdentityIdStorageKey(e)),[2]}))}))},e.prototype.shear=function(e){return{accessKeyId:e.accessKeyId,sessionToken:e.sessionToken,secretAccessKey:e.secretAccessKey,identityId:e.identityId,authenticated:e.authenticated}},e}(),ux=new cx(null);Uh.register(ux);var dx,fx={};var px=function(){if(dx)return fx;dx=1,fx.parse=function(e,r){if("string"!==typeof e)throw new TypeError("argument str must be a string");var n={},o=e.length;if(o<2)return n;var a=r&&r.decode||l,u=0,d=0,f=0;do{if(-1===(d=e.indexOf("=",u)))break;if(-1===(f=e.indexOf(";",u)))f=o;else if(d>f){u=e.lastIndexOf(";",d-1)+1;continue}var p=i(e,u,d),h=s(e,d,p),m=e.slice(p,h);if(!t.call(n,m)){var g=i(e,d+1,f),v=s(e,f,g);34===e.charCodeAt(g)&&34===e.charCodeAt(v-1)&&(g++,v--);var y=e.slice(g,v);n[m]=c(y,a)}u=f+1}while(u<o);return n},fx.serialize=function(t,i,s){var l=s&&s.encode||encodeURIComponent;if("function"!==typeof l)throw new TypeError("option encode is invalid");if(!r.test(t))throw new TypeError("argument name is invalid");var c=l(i);if(!n.test(c))throw new TypeError("argument val is invalid");var u=t+"="+c;if(!s)return u;if(null!=s.maxAge){var d=Math.floor(s.maxAge);if(!isFinite(d))throw new TypeError("option maxAge is invalid");u+="; Max-Age="+d}if(s.domain){if(!o.test(s.domain))throw new TypeError("option domain is invalid");u+="; Domain="+s.domain}if(s.path){if(!a.test(s.path))throw new TypeError("option path is invalid");u+="; Path="+s.path}if(s.expires){var f=s.expires;if(!function(t){return"[object Date]"===e.call(t)}(f)||isNaN(f.valueOf()))throw new TypeError("option expires is invalid");u+="; Expires="+f.toUTCString()}s.httpOnly&&(u+="; HttpOnly");s.secure&&(u+="; Secure");s.partitioned&&(u+="; Partitioned");if(s.priority){switch("string"===typeof s.priority?s.priority.toLowerCase():s.priority){case"low":u+="; Priority=Low";break;case"medium":u+="; Priority=Medium";break;case"high":u+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(s.sameSite){switch("string"===typeof s.sameSite?s.sameSite.toLowerCase():s.sameSite){case!0:u+="; SameSite=Strict";break;case"lax":u+="; SameSite=Lax";break;case"strict":u+="; SameSite=Strict";break;case"none":u+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return u};var e=Object.prototype.toString,t=Object.prototype.hasOwnProperty,r=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,n=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,o=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,a=/^[\u0020-\u003A\u003D-\u007E]*$/;function i(e,t,r){do{var n=e.charCodeAt(t);if(32!==n&&9!==n)return t}while(++t<r);return r}function s(e,t,r){for(;t>r;){var n=e.charCodeAt(--t);if(32!==n&&9!==n)return t+1}return r}function l(e){return-1!==e.indexOf("%")?decodeURIComponent(e):e}function c(e,t){try{return t(e)}catch(o6){return e}}return fx}();function hx(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=function(e){if(e&&"j"===e[0]&&":"===e[1])return e.substr(2);return e}(e);if(!t.doNotParse)try{return JSON.parse(r)}catch(o6){}return e}class mx{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.changeListeners=[],this.HAS_DOCUMENT_COOKIE=!1,this.update=()=>{if(!this.HAS_DOCUMENT_COOKIE)return;const e=this.cookies;this.cookies=px.parse(document.cookie),this._checkChanges(e)};const r="undefined"===typeof document?"":document.cookie;this.cookies=function(e){return"string"===typeof e?px.parse(e):"object"===typeof e&&null!==e?e:{}}(e||r),this.defaultSetOptions=t,this.HAS_DOCUMENT_COOKIE=function(){const e="undefined"===typeof global?void 0:global.TEST_HAS_DOCUMENT_COOKIE;return"boolean"===typeof e?e:"object"===typeof document&&"string"===typeof document.cookie}()}_emitChange(e){for(let t=0;t<this.changeListeners.length;++t)this.changeListeners[t](e)}_checkChanges(e){new Set(Object.keys(e).concat(Object.keys(this.cookies))).forEach((t=>{e[t]!==this.cookies[t]&&this._emitChange({name:t,value:hx(this.cookies[t])})}))}_startPolling(){this.pollingInterval=setInterval(this.update,300)}_stopPolling(){this.pollingInterval&&clearInterval(this.pollingInterval)}get(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.doNotUpdate||this.update(),hx(this.cookies[e],t)}getAll(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.doNotUpdate||this.update();const t={};for(let r in this.cookies)t[r]=hx(this.cookies[r],e);return t}set(e,t,r){r=r?Object.assign(Object.assign({},this.defaultSetOptions),r):this.defaultSetOptions;const n="string"===typeof t?t:JSON.stringify(t);this.cookies=Object.assign(Object.assign({},this.cookies),{[e]:n}),this.HAS_DOCUMENT_COOKIE&&(document.cookie=px.serialize(e,n,r)),this._emitChange({name:e,value:t,options:r})}remove(e,t){const r=t=Object.assign(Object.assign(Object.assign({},this.defaultSetOptions),t),{expires:new Date(1970,1,1,0,0,1),maxAge:0});this.cookies=Object.assign({},this.cookies),delete this.cookies[e],this.HAS_DOCUMENT_COOKIE&&(document.cookie=px.serialize(e,"",r)),this._emitChange({name:e,value:void 0,options:t})}addChangeListener(e){this.changeListeners.push(e),this.HAS_DOCUMENT_COOKIE&&1===this.changeListeners.length&&("object"===typeof window&&"cookieStore"in window?window.cookieStore.addEventListener("change",this.update):this._startPolling())}removeChangeListener(e){const t=this.changeListeners.indexOf(e);t>=0&&this.changeListeners.splice(t,1),this.HAS_DOCUMENT_COOKIE&&0===this.changeListeners.length&&("object"===typeof window&&"cookieStore"in window?window.cookieStore.removeEventListener("change",this.update):this._stopPolling())}}var gx=function(){return gx=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},gx.apply(this,arguments)},vx=Ky().isBrowser,yx=function(){function e(e){void 0===e&&(e={}),this.cookies=new mx,this.store=vx?window.localStorage:Object.create(null),this.cookies=e.req?new mx(decodeURIComponent(e.req.headers.cookie)):new mx,Object.assign(this.store,this.cookies.getAll())}return Object.defineProperty(e.prototype,"length",{get:function(){return Object.entries(this.store).length},enumerable:!1,configurable:!0}),e.prototype.clear=function(){var e=this;Array.from(new Array(this.length)).map((function(t,r){return e.key(r)})).forEach((function(t){return e.removeItem(t)}))},e.prototype.getItem=function(e){return this.getLocalItem(e)},e.prototype.getLocalItem=function(e){return Object.prototype.hasOwnProperty.call(this.store,e)?this.store[e]:null},e.prototype.getUniversalItem=function(e){return this.cookies.get(e)},e.prototype.key=function(e){return Object.keys(this.store)[e]},e.prototype.removeItem=function(e){this.removeLocalItem(e),this.removeUniversalItem(e)},e.prototype.removeLocalItem=function(e){delete this.store[e]},e.prototype.removeUniversalItem=function(e){this.cookies.remove(e,{path:"/"})},e.prototype.setItem=function(e,t){this.setLocalItem(e,t);var r=e.split(".").pop();["LastAuthUser","accessToken","refreshToken","idToken"].includes(null!==r&&void 0!==r?r:"")&&this.setUniversalItem(e,t,{expires:new Date(Date.now()+31536e6)})},e.prototype.setLocalItem=function(e,t){this.store[e]=t},e.prototype.setUniversalItem=function(e,t,r){void 0===r&&(r={}),this.cookies.set(e,t,gx(gx({},r),{path:"/",sameSite:!0,secure:!vx||"localhost"!==window.location.hostname}))},e}();var bx,wx=function(){function e(e){var t=e||{},r=t.ValidationData,n=t.Username,o=t.Password,a=t.AuthParameters,i=t.ClientMetadata;this.validationData=r||{},this.authParameters=a||{},this.clientMetadata=i||{},this.username=n,this.password=o}var t=e.prototype;return t.getUsername=function(){return this.username},t.getPassword=function(){return this.password},t.getValidationData=function(){return this.validationData},t.getAuthParameters=function(){return this.authParameters},t.getClientMetadata=function(){return this.clientMetadata},e}(),xx=r(26380);function Sx(){if(bx){if("function"===typeof bx.getRandomValues)try{return bx.getRandomValues(new Uint32Array(1))[0]}catch(e){}if("function"===typeof bx.randomBytes)try{return bx.randomBytes(4).readInt32LE()}catch(e){}}throw new Error("Native crypto module could not be used to get secure random number.")}"undefined"!==typeof window&&window.crypto&&(bx=window.crypto),!bx&&"undefined"!==typeof window&&window.msCrypto&&(bx=window.msCrypto);var Ax=function(){function e(e,t){e=this.words=e||[],this.sigBytes=void 0!=t?t:4*e.length}var t=e.prototype;return t.random=function(t){for(var r=[],n=0;n<t;n+=4)r.push(Sx());return new e(r,t)},t.toString=function(){return function(e){for(var t=e.words,r=e.sigBytes,n=[],o=0;o<r;o++){var a=t[o>>>2]>>>24-o%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")}(this)},e}(),kx=r(55001);const Cx=Ix;function Ix(e,t){null!=e&&this.fromString(e,t)}function Ex(){return new Ix(null)}var Dx;var Tx="undefined"!==typeof navigator;Tx&&"Microsoft Internet Explorer"==navigator.appName?(Ix.prototype.am=function(e,t,r,n,o,a){for(var i=32767&t,s=t>>15;--a>=0;){var l=32767&this[e],c=this[e++]>>15,u=s*l+c*i;o=((l=i*l+((32767&u)<<15)+r[n]+(1073741823&o))>>>30)+(u>>>15)+s*c+(o>>>30),r[n++]=1073741823&l}return o},Dx=30):Tx&&"Netscape"!=navigator.appName?(Ix.prototype.am=function(e,t,r,n,o,a){for(;--a>=0;){var i=t*this[e++]+r[n]+o;o=Math.floor(i/67108864),r[n++]=67108863&i}return o},Dx=26):(Ix.prototype.am=function(e,t,r,n,o,a){for(var i=16383&t,s=t>>14;--a>=0;){var l=16383&this[e],c=this[e++]>>14,u=s*l+c*i;o=((l=i*l+((16383&u)<<14)+r[n]+o)>>28)+(u>>14)+s*c,r[n++]=268435455&l}return o},Dx=28),Ix.prototype.DB=Dx,Ix.prototype.DM=(1<<Dx)-1,Ix.prototype.DV=1<<Dx;Ix.prototype.FV=Math.pow(2,52),Ix.prototype.F1=52-Dx,Ix.prototype.F2=2*Dx-52;var Ox,Mx,Px=new Array;for(Ox="0".charCodeAt(0),Mx=0;Mx<=9;++Mx)Px[Ox++]=Mx;for(Ox="a".charCodeAt(0),Mx=10;Mx<36;++Mx)Px[Ox++]=Mx;for(Ox="A".charCodeAt(0),Mx=10;Mx<36;++Mx)Px[Ox++]=Mx;function jx(e){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(e)}function Rx(e,t){var r=Px[e.charCodeAt(t)];return null==r?-1:r}function _x(e){var t=Ex();return t.fromInt(e),t}function Nx(e){var t,r=1;return 0!=(t=e>>>16)&&(e=t,r+=16),0!=(t=e>>8)&&(e=t,r+=8),0!=(t=e>>4)&&(e=t,r+=4),0!=(t=e>>2)&&(e=t,r+=2),0!=(t=e>>1)&&(e=t,r+=1),r}function Lx(e){this.m=e,this.mp=e.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function Ux(e){return xx.hp.from((new Ax).random(e).toString(),"hex")}Lx.prototype.convert=function(e){var t=Ex();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(Ix.ZERO)>0&&this.m.subTo(t,t),t},Lx.prototype.revert=function(e){var t=Ex();return e.copyTo(t),this.reduce(t),t},Lx.prototype.reduce=function(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=32767&e[t],n=r*this.mpl+((r*this.mph+(e[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(e[r=t+this.m.t]+=this.m.am(0,n,e,t,0,this.m.t);e[r]>=e.DV;)e[r]-=e.DV,e[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)},Lx.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},Lx.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},Ix.prototype.copyTo=function(e){for(var t=this.t-1;t>=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s},Ix.prototype.fromInt=function(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+this.DV:this.t=0},Ix.prototype.fromString=function(e,t){var r;if(16==t)r=4;else if(8==t)r=3;else if(2==t)r=1;else if(32==t)r=5;else{if(4!=t)throw new Error("Only radix 2, 4, 8, 16, 32 are supported");r=2}this.t=0,this.s=0;for(var n=e.length,o=!1,a=0;--n>=0;){var i=Rx(e,n);i<0?"-"==e.charAt(n)&&(o=!0):(o=!1,0==a?this[this.t++]=i:a+r>this.DB?(this[this.t-1]|=(i&(1<<this.DB-a)-1)<<a,this[this.t++]=i>>this.DB-a):this[this.t-1]|=i<<a,(a+=r)>=this.DB&&(a-=this.DB))}this.clamp(),o&&Ix.ZERO.subTo(this,this)},Ix.prototype.clamp=function(){for(var e=this.s&this.DM;this.t>0&&this[this.t-1]==e;)--this.t},Ix.prototype.dlShiftTo=function(e,t){var r;for(r=this.t-1;r>=0;--r)t[r+e]=this[r];for(r=e-1;r>=0;--r)t[r]=0;t.t=this.t+e,t.s=this.s},Ix.prototype.drShiftTo=function(e,t){for(var r=e;r<this.t;++r)t[r-e]=this[r];t.t=Math.max(this.t-e,0),t.s=this.s},Ix.prototype.lShiftTo=function(e,t){var r,n=e%this.DB,o=this.DB-n,a=(1<<o)-1,i=Math.floor(e/this.DB),s=this.s<<n&this.DM;for(r=this.t-1;r>=0;--r)t[r+i+1]=this[r]>>o|s,s=(this[r]&a)<<n;for(r=i-1;r>=0;--r)t[r]=0;t[i]=s,t.t=this.t+i+1,t.s=this.s,t.clamp()},Ix.prototype.rShiftTo=function(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t)t.t=0;else{var n=e%this.DB,o=this.DB-n,a=(1<<n)-1;t[0]=this[r]>>n;for(var i=r+1;i<this.t;++i)t[i-r-1]|=(this[i]&a)<<o,t[i-r]=this[i]>>n;n>0&&(t[this.t-r-1]|=(this.s&a)<<o),t.t=this.t-r,t.clamp()}},Ix.prototype.subTo=function(e,t){for(var r=0,n=0,o=Math.min(e.t,this.t);r<o;)n+=this[r]-e[r],t[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this[r],t[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e[r],t[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[r++]=this.DV+n:n>0&&(t[r++]=n),t.t=r,t.clamp()},Ix.prototype.multiplyTo=function(e,t){var r=this.abs(),n=e.abs(),o=r.t;for(t.t=o+n.t;--o>=0;)t[o]=0;for(o=0;o<n.t;++o)t[o+r.t]=r.am(0,n[o],t,o,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&Ix.ZERO.subTo(t,t)},Ix.prototype.squareTo=function(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t[r],e,2*r,0,1);(e[r+t.t]+=t.am(r+1,2*t[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e[r+t.t]-=t.DV,e[r+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(r,t[r],e,2*r,0,1)),e.s=0,e.clamp()},Ix.prototype.divRemTo=function(e,t,r){var n=e.abs();if(!(n.t<=0)){var o=this.abs();if(o.t<n.t)return null!=t&&t.fromInt(0),void(null!=r&&this.copyTo(r));null==r&&(r=Ex());var a=Ex(),i=this.s,s=e.s,l=this.DB-Nx(n[n.t-1]);l>0?(n.lShiftTo(l,a),o.lShiftTo(l,r)):(n.copyTo(a),o.copyTo(r));var c=a.t,u=a[c-1];if(0!=u){var d=u*(1<<this.F1)+(c>1?a[c-2]>>this.F2:0),f=this.FV/d,p=(1<<this.F1)/d,h=1<<this.F2,m=r.t,g=m-c,v=null==t?Ex():t;for(a.dlShiftTo(g,v),r.compareTo(v)>=0&&(r[r.t++]=1,r.subTo(v,r)),Ix.ONE.dlShiftTo(c,v),v.subTo(a,a);a.t<c;)a[a.t++]=0;for(;--g>=0;){var y=r[--m]==u?this.DM:Math.floor(r[m]*f+(r[m-1]+h)*p);if((r[m]+=a.am(0,y,r,g,0,c))<y)for(a.dlShiftTo(g,v),r.subTo(v,r);r[m]<--y;)r.subTo(v,r)}null!=t&&(r.drShiftTo(c,t),i!=s&&Ix.ZERO.subTo(t,t)),r.t=c,r.clamp(),l>0&&r.rShiftTo(l,r),i<0&&Ix.ZERO.subTo(r,r)}}},Ix.prototype.invDigit=function(){if(this.t<1)return 0;var e=this[0];if(0==(1&e))return 0;var t=3&e;return(t=(t=(t=(t=t*(2-(15&e)*t)&15)*(2-(255&e)*t)&255)*(2-((65535&e)*t&65535))&65535)*(2-e*t%this.DV)%this.DV)>0?this.DV-t:-t},Ix.prototype.addTo=function(e,t){for(var r=0,n=0,o=Math.min(e.t,this.t);r<o;)n+=this[r]+e[r],t[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this[r],t[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e[r],t[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t[r++]=n:n<-1&&(t[r++]=this.DV+n),t.t=r,t.clamp()},Ix.prototype.toString=function(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(16==e)t=4;else if(8==e)t=3;else if(2==e)t=1;else if(32==e)t=5;else{if(4!=e)throw new Error("Only radix 2, 4, 8, 16, 32 are supported");t=2}var r,n=(1<<t)-1,o=!1,a="",i=this.t,s=this.DB-i*this.DB%t;if(i-- >0)for(s<this.DB&&(r=this[i]>>s)>0&&(o=!0,a=jx(r));i>=0;)s<t?(r=(this[i]&(1<<s)-1)<<t-s,r|=this[--i]>>(s+=this.DB-t)):(r=this[i]>>(s-=t)&n,s<=0&&(s+=this.DB,--i)),r>0&&(o=!0),o&&(a+=jx(r));return o?a:"0"},Ix.prototype.negate=function(){var e=Ex();return Ix.ZERO.subTo(this,e),e},Ix.prototype.abs=function(){return this.s<0?this.negate():this},Ix.prototype.compareTo=function(e){var t=this.s-e.s;if(0!=t)return t;var r=this.t;if(0!=(t=r-e.t))return this.s<0?-t:t;for(;--r>=0;)if(0!=(t=this[r]-e[r]))return t;return 0},Ix.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+Nx(this[this.t-1]^this.s&this.DM)},Ix.prototype.mod=function(e){var t=Ex();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(Ix.ZERO)>0&&e.subTo(t,t),t},Ix.prototype.equals=function(e){return 0==this.compareTo(e)},Ix.prototype.add=function(e){var t=Ex();return this.addTo(e,t),t},Ix.prototype.subtract=function(e){var t=Ex();return this.subTo(e,t),t},Ix.prototype.multiply=function(e){var t=Ex();return this.multiplyTo(e,t),t},Ix.prototype.divide=function(e){var t=Ex();return this.divRemTo(e,t,null),t},Ix.prototype.modPow=function(e,t,r){var n,o=e.bitLength(),a=_x(1),i=new Lx(t);if(o<=0)return a;n=o<18?1:o<48?3:o<144?4:o<768?5:6;var s=new Array,l=3,c=n-1,u=(1<<n)-1;if(s[1]=i.convert(this),n>1){var d=Ex();for(i.sqrTo(s[1],d);l<=u;)s[l]=Ex(),i.mulTo(d,s[l-2],s[l]),l+=2}var f,p,h=e.t-1,m=!0,g=Ex();for(o=Nx(e[h])-1;h>=0;){for(o>=c?f=e[h]>>o-c&u:(f=(e[h]&(1<<o+1)-1)<<c-o,h>0&&(f|=e[h-1]>>this.DB+o-c)),l=n;0==(1&f);)f>>=1,--l;if((o-=l)<0&&(o+=this.DB,--h),m)s[f].copyTo(a),m=!1;else{for(;l>1;)i.sqrTo(a,g),i.sqrTo(g,a),l-=2;l>0?i.sqrTo(a,g):(p=a,a=g,g=p),i.mulTo(g,s[f],a)}for(;h>=0&&0==(e[h]&1<<o);)i.sqrTo(a,g),p=a,a=g,g=p,--o<0&&(o=this.DB-1,--h)}var v=i.revert(a);return r(null,v),v},Ix.ZERO=_x(0),Ix.ONE=_x(1);var Bx=/^[89a-f]/i,Fx=function(){function e(e){this.N=new Cx("FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA18217C32905E462E36CE3BE39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9DE2BCBF6955817183995497CEA956AE515D2261898FA051015728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6BF12FFA06D98A0864D87602733EC86A64521F2B18177B200CBBE117577A615D6C770988C0BAD946E208E24FA074E5AB3143DB5BFCE0FD108E4B82D120A93AD2CAFFFFFFFFFFFFFFFF",16),this.g=new Cx("2",16),this.k=new Cx(this.hexHash(""+this.padHex(this.N)+this.padHex(this.g)),16),this.smallAValue=this.generateRandomSmallA(),this.getLargeAValue((function(){})),this.infoBits=xx.hp.from("Caldera Derived Key","utf8"),this.poolName=e}var t=e.prototype;return t.getSmallAValue=function(){return this.smallAValue},t.getLargeAValue=function(e){var t=this;this.largeAValue?e(null,this.largeAValue):this.calculateA(this.smallAValue,(function(r,n){r&&e(r,null),t.largeAValue=n,e(null,t.largeAValue)}))},t.generateRandomSmallA=function(){var e=Ux(128).toString("hex");return new Cx(e,16)},t.generateRandomString=function(){return Ux(40).toString("base64")},t.getRandomPassword=function(){return this.randomPassword},t.getSaltDevices=function(){return this.SaltToHashDevices},t.getVerifierDevices=function(){return this.verifierDevices},t.generateHashDevice=function(e,t,r){var n=this;this.randomPassword=this.generateRandomString();var o=""+e+t+":"+this.randomPassword,a=this.hash(o),i=Ux(16).toString("hex");this.SaltToHashDevices=this.padHex(new Cx(i,16)),this.g.modPow(new Cx(this.hexHash(this.SaltToHashDevices+a),16),this.N,(function(e,t){e&&r(e,null),n.verifierDevices=n.padHex(t),r(null,null)}))},t.calculateA=function(e,t){var r=this;this.g.modPow(e,this.N,(function(e,n){e&&t(e,null),n.mod(r.N).equals(Cx.ZERO)&&t(new Error("Illegal paramater. A mod N cannot be 0."),null),t(null,n)}))},t.calculateU=function(e,t){return this.UHexHash=this.hexHash(this.padHex(e)+this.padHex(t)),new Cx(this.UHexHash,16)},t.hash=function(e){var t=new kx.Sha256;t.update(e);var r=t.digestSync(),n=xx.hp.from(r).toString("hex");return new Array(64-n.length).join("0")+n},t.hexHash=function(e){return this.hash(xx.hp.from(e,"hex"))},t.computehkdf=function(e,t){var r=xx.hp.concat([this.infoBits,xx.hp.from(String.fromCharCode(1),"utf8")]),n=new kx.Sha256(t);n.update(e);var o=n.digestSync(),a=new kx.Sha256(o);return a.update(r),a.digestSync().slice(0,16)},t.getPasswordAuthenticationKey=function(e,t,r,n,o){var a=this;if(r.mod(this.N).equals(Cx.ZERO))throw new Error("B cannot be zero.");if(this.UValue=this.calculateU(this.largeAValue,r),this.UValue.equals(Cx.ZERO))throw new Error("U cannot be zero.");var i=""+this.poolName+e+":"+t,s=this.hash(i),l=new Cx(this.hexHash(this.padHex(n)+s),16);this.calculateS(l,r,(function(e,t){e&&o(e,null);var r=a.computehkdf(xx.hp.from(a.padHex(t),"hex"),xx.hp.from(a.padHex(a.UValue),"hex"));o(null,r)}))},t.calculateS=function(e,t,r){var n=this;this.g.modPow(e,this.N,(function(o,a){o&&r(o,null),t.subtract(n.k.multiply(a)).modPow(n.smallAValue.add(n.UValue.multiply(e)),n.N,(function(e,t){e&&r(e,null),r(null,t.mod(n.N))}))}))},t.getNewPasswordRequiredChallengeUserAttributePrefix=function(){return"userAttributes."},t.padHex=function(e){if(!(e instanceof Cx))throw new Error("Not a BigInteger");var t=e.compareTo(Cx.ZERO)<0,r=e.abs().toString(16);if(r=r.length%2!==0?"0"+r:r,r=Bx.test(r)?"00"+r:r,t){var n=r.split("").map((function(e){var t=15&~parseInt(e,16);return"0123456789ABCDEF".charAt(t)})).join("");(r=new Cx(n,16).add(Cx.ONE).toString(16)).toUpperCase().startsWith("FF8")&&(r=r.substring(2))}return r},e}(),zx=function(){function e(e){this.jwtToken=e||"",this.payload=this.decodePayload()}var t=e.prototype;return t.getJwtToken=function(){return this.jwtToken},t.getExpiration=function(){return this.payload.exp},t.getIssuedAt=function(){return this.payload.iat},t.decodePayload=function(){var e=this.jwtToken.split(".")[1];try{return JSON.parse(xx.hp.from(e,"base64").toString("utf8"))}catch(t){return{}}},e}();function Wx(e,t){return Wx=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Wx(e,t)}var Hx=function(e){function t(t){var r=(void 0===t?{}:t).AccessToken;return e.call(this,r||"")||this}var r,n;return n=e,(r=t).prototype=Object.create(n.prototype),r.prototype.constructor=r,Wx(r,n),t}(zx);function Yx(e,t){return Yx=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Yx(e,t)}var Vx=function(e){function t(t){var r=(void 0===t?{}:t).IdToken;return e.call(this,r||"")||this}var r,n;return n=e,(r=t).prototype=Object.create(n.prototype),r.prototype.constructor=r,Yx(r,n),t}(zx),Gx=function(){function e(e){var t=(void 0===e?{}:e).RefreshToken;this.token=t||""}return e.prototype.getToken=function(){return this.token},e}(),Zx={userAgent:"aws-amplify/5.0.4",isReactNative:"undefined"!==typeof navigator&&"ReactNative"===navigator.product};var Qx=function(){function e(e){var t=void 0===e?{}:e,r=t.IdToken,n=t.RefreshToken,o=t.AccessToken,a=t.ClockDrift;if(null==o||null==r)throw new Error("Id token and Access Token must be present.");this.idToken=r,this.refreshToken=n,this.accessToken=o,this.clockDrift=void 0===a?this.calculateClockDrift():a}var t=e.prototype;return t.getIdToken=function(){return this.idToken},t.getRefreshToken=function(){return this.refreshToken},t.getAccessToken=function(){return this.accessToken},t.getClockDrift=function(){return this.clockDrift},t.calculateClockDrift=function(){return Math.floor(new Date/1e3)-Math.min(this.accessToken.getIssuedAt(),this.idToken.getIssuedAt())},t.isValid=function(){var e=Math.floor(new Date/1e3)-this.clockDrift;return e<this.accessToken.getExpiration()&&e<this.idToken.getExpiration()},e}(),Kx=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Xx=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],Jx=function(){function e(){}return e.prototype.getNowString=function(){var e=new Date,t=Xx[e.getUTCDay()],r=Kx[e.getUTCMonth()],n=e.getUTCDate(),o=e.getUTCHours();o<10&&(o="0"+o);var a=e.getUTCMinutes();a<10&&(a="0"+a);var i=e.getUTCSeconds();return i<10&&(i="0"+i),t+" "+r+" "+n+" "+o+":"+a+":"+i+" UTC "+e.getUTCFullYear()},e}(),$x=function(){function e(e){var t=void 0===e?{}:e,r=t.Name,n=t.Value;this.Name=r||"",this.Value=n||""}var t=e.prototype;return t.getValue=function(){return this.Value},t.setValue=function(e){return this.Value=e,this},t.getName=function(){return this.Name},t.setName=function(e){return this.Name=e,this},t.toString=function(){return JSON.stringify(this)},t.toJSON=function(){return{Name:this.Name,Value:this.Value}},e}(),qx={},eS=function(){function e(){}return e.setItem=function(e,t){return qx[e]=t,qx[e]},e.getItem=function(e){return Object.prototype.hasOwnProperty.call(qx,e)?qx[e]:void 0},e.removeItem=function(e){return delete qx[e]},e.clear=function(){return qx={}},e}(),tS=function(){function e(){try{this.storageWindow=window.localStorage,this.storageWindow.setItem("aws.cognito.test-ls",1),this.storageWindow.removeItem("aws.cognito.test-ls")}catch(e){this.storageWindow=eS}}return e.prototype.getStorage=function(){return this.storageWindow},e}(),rS="undefined"!==typeof navigator?Zx.isReactNative?"react-native":navigator.userAgent:"nodejs",nS=function(){function e(e){if(null==e||null==e.Username||null==e.Pool)throw new Error("Username and Pool information are required.");this.username=e.Username||"",this.pool=e.Pool,this.Session=null,this.client=e.Pool.client,this.signInUserSession=null,this.authenticationFlowType="USER_SRP_AUTH",this.storage=e.Storage||(new tS).getStorage(),this.keyPrefix="CognitoIdentityServiceProvider."+this.pool.getClientId(),this.userDataKey=this.keyPrefix+"."+this.username+".userData"}var t=e.prototype;return t.setSignInUserSession=function(e){this.clearCachedUserData(),this.signInUserSession=e,this.cacheTokens()},t.getSignInUserSession=function(){return this.signInUserSession},t.getUsername=function(){return this.username},t.getAuthenticationFlowType=function(){return this.authenticationFlowType},t.setAuthenticationFlowType=function(e){this.authenticationFlowType=e},t.initiateAuth=function(e,t){var r=this,n=e.getAuthParameters();n.USERNAME=this.username;var o=0!==Object.keys(e.getValidationData()).length?e.getValidationData():e.getClientMetadata(),a={AuthFlow:"CUSTOM_AUTH",ClientId:this.pool.getClientId(),AuthParameters:n,ClientMetadata:o};this.getUserContextData()&&(a.UserContextData=this.getUserContextData()),this.client.request("InitiateAuth",a,(function(e,n){if(e)return t.onFailure(e);var o=n.ChallengeName,a=n.ChallengeParameters;return"CUSTOM_CHALLENGE"===o?(r.Session=n.Session,t.customChallenge(a)):(r.signInUserSession=r.getCognitoUserSession(n.AuthenticationResult),r.cacheTokens(),t.onSuccess(r.signInUserSession))}))},t.authenticateUser=function(e,t){return"USER_PASSWORD_AUTH"===this.authenticationFlowType?this.authenticateUserPlainUsernamePassword(e,t):"USER_SRP_AUTH"===this.authenticationFlowType||"CUSTOM_AUTH"===this.authenticationFlowType?this.authenticateUserDefaultAuth(e,t):t.onFailure(new Error("Authentication flow type is invalid."))},t.authenticateUserDefaultAuth=function(e,t){var r,n,o=this,a=new Fx(this.pool.getUserPoolName()),i=new Jx,s={};null!=this.deviceKey&&(s.DEVICE_KEY=this.deviceKey),s.USERNAME=this.username,a.getLargeAValue((function(l,c){l&&t.onFailure(l),s.SRP_A=c.toString(16),"CUSTOM_AUTH"===o.authenticationFlowType&&(s.CHALLENGE_NAME="SRP_A");var u=0!==Object.keys(e.getValidationData()).length?e.getValidationData():e.getClientMetadata(),d={AuthFlow:o.authenticationFlowType,ClientId:o.pool.getClientId(),AuthParameters:s,ClientMetadata:u};o.getUserContextData(o.username)&&(d.UserContextData=o.getUserContextData(o.username)),o.client.request("InitiateAuth",d,(function(s,l){if(s)return t.onFailure(s);var c=l.ChallengeParameters;o.username=c.USER_ID_FOR_SRP,o.userDataKey=o.keyPrefix+"."+o.username+".userData",r=new Cx(c.SRP_B,16),n=new Cx(c.SALT,16),o.getCachedDeviceKeyAndPassword(),a.getPasswordAuthenticationKey(o.username,e.getPassword(),r,n,(function(e,r){e&&t.onFailure(e);var n=i.getNowString(),s=xx.hp.concat([xx.hp.from(o.pool.getUserPoolName(),"utf8"),xx.hp.from(o.username,"utf8"),xx.hp.from(c.SECRET_BLOCK,"base64"),xx.hp.from(n,"utf8")]),d=new kx.Sha256(r);d.update(s);var f=d.digestSync(),p=xx.hp.from(f).toString("base64"),h={};h.USERNAME=o.username,h.PASSWORD_CLAIM_SECRET_BLOCK=c.SECRET_BLOCK,h.TIMESTAMP=n,h.PASSWORD_CLAIM_SIGNATURE=p,null!=o.deviceKey&&(h.DEVICE_KEY=o.deviceKey);var m=function(e,t){return o.client.request("RespondToAuthChallenge",e,(function(r,n){return r&&"ResourceNotFoundException"===r.code&&-1!==r.message.toLowerCase().indexOf("device")?(h.DEVICE_KEY=null,o.deviceKey=null,o.randomPassword=null,o.deviceGroupKey=null,o.clearCachedDeviceKeyAndPassword(),m(e,t)):t(r,n)}))},g={ChallengeName:"PASSWORD_VERIFIER",ClientId:o.pool.getClientId(),ChallengeResponses:h,Session:l.Session,ClientMetadata:u};o.getUserContextData()&&(g.UserContextData=o.getUserContextData()),m(g,(function(e,r){return e?t.onFailure(e):o.authenticateUserInternal(r,a,t)}))}))}))}))},t.authenticateUserPlainUsernamePassword=function(e,t){var r=this,n={};if(n.USERNAME=this.username,n.PASSWORD=e.getPassword(),n.PASSWORD){var o=new Fx(this.pool.getUserPoolName());this.getCachedDeviceKeyAndPassword(),null!=this.deviceKey&&(n.DEVICE_KEY=this.deviceKey);var a=0!==Object.keys(e.getValidationData()).length?e.getValidationData():e.getClientMetadata(),i={AuthFlow:"USER_PASSWORD_AUTH",ClientId:this.pool.getClientId(),AuthParameters:n,ClientMetadata:a};this.getUserContextData(this.username)&&(i.UserContextData=this.getUserContextData(this.username)),this.client.request("InitiateAuth",i,(function(e,n){return e?t.onFailure(e):r.authenticateUserInternal(n,o,t)}))}else t.onFailure(new Error("PASSWORD parameter is required"))},t.authenticateUserInternal=function(e,t,r){var n=this,o=e.ChallengeName,a=e.ChallengeParameters;if("SMS_MFA"===o)return this.Session=e.Session,r.mfaRequired(o,a);if("SELECT_MFA_TYPE"===o)return this.Session=e.Session,r.selectMFAType(o,a);if("MFA_SETUP"===o)return this.Session=e.Session,r.mfaSetup(o,a);if("SOFTWARE_TOKEN_MFA"===o)return this.Session=e.Session,r.totpRequired(o,a);if("CUSTOM_CHALLENGE"===o)return this.Session=e.Session,r.customChallenge(a);if("NEW_PASSWORD_REQUIRED"===o){this.Session=e.Session;var i=null,s=null,l=[],c=t.getNewPasswordRequiredChallengeUserAttributePrefix();if(a&&(i=JSON.parse(e.ChallengeParameters.userAttributes),s=JSON.parse(e.ChallengeParameters.requiredAttributes)),s)for(var u=0;u<s.length;u++)l[u]=s[u].substr(c.length);return r.newPasswordRequired(i,l)}if("DEVICE_SRP_AUTH"===o)return this.Session=e.Session,void this.getDeviceResponse(r);this.signInUserSession=this.getCognitoUserSession(e.AuthenticationResult),this.challengeName=o,this.cacheTokens();var d=e.AuthenticationResult.NewDeviceMetadata;if(null==d)return r.onSuccess(this.signInUserSession);t.generateHashDevice(e.AuthenticationResult.NewDeviceMetadata.DeviceGroupKey,e.AuthenticationResult.NewDeviceMetadata.DeviceKey,(function(o){if(o)return r.onFailure(o);var a={Salt:xx.hp.from(t.getSaltDevices(),"hex").toString("base64"),PasswordVerifier:xx.hp.from(t.getVerifierDevices(),"hex").toString("base64")};n.verifierDevices=a.PasswordVerifier,n.deviceGroupKey=d.DeviceGroupKey,n.randomPassword=t.getRandomPassword(),n.client.request("ConfirmDevice",{DeviceKey:d.DeviceKey,AccessToken:n.signInUserSession.getAccessToken().getJwtToken(),DeviceSecretVerifierConfig:a,DeviceName:rS},(function(t,o){return t?r.onFailure(t):(n.deviceKey=e.AuthenticationResult.NewDeviceMetadata.DeviceKey,n.cacheDeviceKeyAndPassword(),!0===o.UserConfirmationNecessary?r.onSuccess(n.signInUserSession,o.UserConfirmationNecessary):r.onSuccess(n.signInUserSession))}))}))},t.completeNewPasswordChallenge=function(e,t,r,n){var o=this;if(!e)return r.onFailure(new Error("New password is required."));var a=new Fx(this.pool.getUserPoolName()),i=a.getNewPasswordRequiredChallengeUserAttributePrefix(),s={};t&&Object.keys(t).forEach((function(e){s[i+e]=t[e]})),s.NEW_PASSWORD=e,s.USERNAME=this.username;var l={ChallengeName:"NEW_PASSWORD_REQUIRED",ClientId:this.pool.getClientId(),ChallengeResponses:s,Session:this.Session,ClientMetadata:n};this.getUserContextData()&&(l.UserContextData=this.getUserContextData()),this.client.request("RespondToAuthChallenge",l,(function(e,t){return e?r.onFailure(e):o.authenticateUserInternal(t,a,r)}))},t.getDeviceResponse=function(e,t){var r=this,n=new Fx(this.deviceGroupKey),o=new Jx,a={};a.USERNAME=this.username,a.DEVICE_KEY=this.deviceKey,n.getLargeAValue((function(i,s){i&&e.onFailure(i),a.SRP_A=s.toString(16);var l={ChallengeName:"DEVICE_SRP_AUTH",ClientId:r.pool.getClientId(),ChallengeResponses:a,ClientMetadata:t,Session:r.Session};r.getUserContextData()&&(l.UserContextData=r.getUserContextData()),r.client.request("RespondToAuthChallenge",l,(function(t,a){if(t)return e.onFailure(t);var i=a.ChallengeParameters,s=new Cx(i.SRP_B,16),l=new Cx(i.SALT,16);n.getPasswordAuthenticationKey(r.deviceKey,r.randomPassword,s,l,(function(t,n){if(t)return e.onFailure(t);var s=o.getNowString(),l=xx.hp.concat([xx.hp.from(r.deviceGroupKey,"utf8"),xx.hp.from(r.deviceKey,"utf8"),xx.hp.from(i.SECRET_BLOCK,"base64"),xx.hp.from(s,"utf8")]),c=new kx.Sha256(n);c.update(l);var u=c.digestSync(),d=xx.hp.from(u).toString("base64"),f={};f.USERNAME=r.username,f.PASSWORD_CLAIM_SECRET_BLOCK=i.SECRET_BLOCK,f.TIMESTAMP=s,f.PASSWORD_CLAIM_SIGNATURE=d,f.DEVICE_KEY=r.deviceKey;var p={ChallengeName:"DEVICE_PASSWORD_VERIFIER",ClientId:r.pool.getClientId(),ChallengeResponses:f,Session:a.Session};r.getUserContextData()&&(p.UserContextData=r.getUserContextData()),r.client.request("RespondToAuthChallenge",p,(function(t,n){return t?e.onFailure(t):(r.signInUserSession=r.getCognitoUserSession(n.AuthenticationResult),r.cacheTokens(),e.onSuccess(r.signInUserSession))}))}))}))}))},t.confirmRegistration=function(e,t,r,n){var o={ClientId:this.pool.getClientId(),ConfirmationCode:e,Username:this.username,ForceAliasCreation:t,ClientMetadata:n};this.getUserContextData()&&(o.UserContextData=this.getUserContextData()),this.client.request("ConfirmSignUp",o,(function(e){return e?r(e,null):r(null,"SUCCESS")}))},t.sendCustomChallengeAnswer=function(e,t,r){var n=this,o={};o.USERNAME=this.username,o.ANSWER=e;var a=new Fx(this.pool.getUserPoolName());this.getCachedDeviceKeyAndPassword(),null!=this.deviceKey&&(o.DEVICE_KEY=this.deviceKey);var i={ChallengeName:"CUSTOM_CHALLENGE",ChallengeResponses:o,ClientId:this.pool.getClientId(),Session:this.Session,ClientMetadata:r};this.getUserContextData()&&(i.UserContextData=this.getUserContextData()),this.client.request("RespondToAuthChallenge",i,(function(e,r){return e?t.onFailure(e):n.authenticateUserInternal(r,a,t)}))},t.sendMFACode=function(e,t,r,n){var o=this,a={};a.USERNAME=this.username,a.SMS_MFA_CODE=e;var i=r||"SMS_MFA";"SOFTWARE_TOKEN_MFA"===i&&(a.SOFTWARE_TOKEN_MFA_CODE=e),null!=this.deviceKey&&(a.DEVICE_KEY=this.deviceKey);var s={ChallengeName:i,ChallengeResponses:a,ClientId:this.pool.getClientId(),Session:this.Session,ClientMetadata:n};this.getUserContextData()&&(s.UserContextData=this.getUserContextData()),this.client.request("RespondToAuthChallenge",s,(function(e,r){if(e)return t.onFailure(e);if("DEVICE_SRP_AUTH"!==r.ChallengeName){if(o.signInUserSession=o.getCognitoUserSession(r.AuthenticationResult),o.cacheTokens(),null==r.AuthenticationResult.NewDeviceMetadata)return t.onSuccess(o.signInUserSession);var n=new Fx(o.pool.getUserPoolName());n.generateHashDevice(r.AuthenticationResult.NewDeviceMetadata.DeviceGroupKey,r.AuthenticationResult.NewDeviceMetadata.DeviceKey,(function(e){if(e)return t.onFailure(e);var a={Salt:xx.hp.from(n.getSaltDevices(),"hex").toString("base64"),PasswordVerifier:xx.hp.from(n.getVerifierDevices(),"hex").toString("base64")};o.verifierDevices=a.PasswordVerifier,o.deviceGroupKey=r.AuthenticationResult.NewDeviceMetadata.DeviceGroupKey,o.randomPassword=n.getRandomPassword(),o.client.request("ConfirmDevice",{DeviceKey:r.AuthenticationResult.NewDeviceMetadata.DeviceKey,AccessToken:o.signInUserSession.getAccessToken().getJwtToken(),DeviceSecretVerifierConfig:a,DeviceName:rS},(function(e,n){return e?t.onFailure(e):(o.deviceKey=r.AuthenticationResult.NewDeviceMetadata.DeviceKey,o.cacheDeviceKeyAndPassword(),!0===n.UserConfirmationNecessary?t.onSuccess(o.signInUserSession,n.UserConfirmationNecessary):t.onSuccess(o.signInUserSession))}))}))}else o.getDeviceResponse(t)}))},t.changePassword=function(e,t,r,n){if(null==this.signInUserSession||!this.signInUserSession.isValid())return r(new Error("User is not authenticated"),null);this.client.request("ChangePassword",{PreviousPassword:e,ProposedPassword:t,AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),ClientMetadata:n},(function(e){return e?r(e,null):r(null,"SUCCESS")}))},t.enableMFA=function(e){if(null==this.signInUserSession||!this.signInUserSession.isValid())return e(new Error("User is not authenticated"),null);var t=[];t.push({DeliveryMedium:"SMS",AttributeName:"phone_number"}),this.client.request("SetUserSettings",{MFAOptions:t,AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(t){return t?e(t,null):e(null,"SUCCESS")}))},t.setUserMfaPreference=function(e,t,r){if(null==this.signInUserSession||!this.signInUserSession.isValid())return r(new Error("User is not authenticated"),null);this.client.request("SetUserMFAPreference",{SMSMfaSettings:e,SoftwareTokenMfaSettings:t,AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(e){return e?r(e,null):r(null,"SUCCESS")}))},t.disableMFA=function(e){if(null==this.signInUserSession||!this.signInUserSession.isValid())return e(new Error("User is not authenticated"),null);this.client.request("SetUserSettings",{MFAOptions:[],AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(t){return t?e(t,null):e(null,"SUCCESS")}))},t.deleteUser=function(e,t){var r=this;if(null==this.signInUserSession||!this.signInUserSession.isValid())return e(new Error("User is not authenticated"),null);this.client.request("DeleteUser",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),ClientMetadata:t},(function(t){return t?e(t,null):(r.clearCachedUser(),e(null,"SUCCESS"))}))},t.updateAttributes=function(e,t,r){var n=this;if(null==this.signInUserSession||!this.signInUserSession.isValid())return t(new Error("User is not authenticated"),null);this.client.request("UpdateUserAttributes",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),UserAttributes:e,ClientMetadata:r},(function(e,r){return e?t(e,null):n.getUserData((function(){return t(null,"SUCCESS",r)}),{bypassCache:!0})}))},t.getUserAttributes=function(e){if(null==this.signInUserSession||!this.signInUserSession.isValid())return e(new Error("User is not authenticated"),null);this.client.request("GetUser",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(t,r){if(t)return e(t,null);for(var n=[],o=0;o<r.UserAttributes.length;o++){var a={Name:r.UserAttributes[o].Name,Value:r.UserAttributes[o].Value},i=new $x(a);n.push(i)}return e(null,n)}))},t.getMFAOptions=function(e){if(null==this.signInUserSession||!this.signInUserSession.isValid())return e(new Error("User is not authenticated"),null);this.client.request("GetUser",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(t,r){return t?e(t,null):e(null,r.MFAOptions)}))},t.createGetUserRequest=function(){return this.client.promisifyRequest("GetUser",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken()})},t.refreshSessionIfPossible=function(e){var t=this;return void 0===e&&(e={}),new Promise((function(r){var n=t.signInUserSession.getRefreshToken();n&&n.getToken()?t.refreshSession(n,r,e.clientMetadata):r()}))},t.getUserData=function(e,t){var r=this;if(null==this.signInUserSession||!this.signInUserSession.isValid())return this.clearCachedUserData(),e(new Error("User is not authenticated"),null);var n=this.getUserDataFromCache();if(n)if(this.isFetchUserDataAndTokenRequired(t))this.fetchUserData().then((function(e){return r.refreshSessionIfPossible(t).then((function(){return e}))})).then((function(t){return e(null,t)})).catch(e);else try{return void e(null,JSON.parse(n))}catch(o){return this.clearCachedUserData(),void e(o,null)}else this.fetchUserData().then((function(t){e(null,t)})).catch(e)},t.getUserDataFromCache=function(){return this.storage.getItem(this.userDataKey)},t.isFetchUserDataAndTokenRequired=function(e){var t=(e||{}).bypassCache;return void 0!==t&&t},t.fetchUserData=function(){var e=this;return this.createGetUserRequest().then((function(t){return e.cacheUserData(t),t}))},t.deleteAttributes=function(e,t){var r=this;if(null==this.signInUserSession||!this.signInUserSession.isValid())return t(new Error("User is not authenticated"),null);this.client.request("DeleteUserAttributes",{UserAttributeNames:e,AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(e){return e?t(e,null):r.getUserData((function(){return t(null,"SUCCESS")}),{bypassCache:!0})}))},t.resendConfirmationCode=function(e,t){var r={ClientId:this.pool.getClientId(),Username:this.username,ClientMetadata:t};this.client.request("ResendConfirmationCode",r,(function(t,r){return t?e(t,null):e(null,r)}))},t.getSession=function(e,t){if(void 0===t&&(t={}),null==this.username)return e(new Error("Username is null. Cannot retrieve a new session"),null);if(null!=this.signInUserSession&&this.signInUserSession.isValid())return e(null,this.signInUserSession);var r="CognitoIdentityServiceProvider."+this.pool.getClientId()+"."+this.username,n=r+".idToken",o=r+".accessToken",a=r+".refreshToken",i=r+".clockDrift";if(this.storage.getItem(n)){var s=new Vx({IdToken:this.storage.getItem(n)}),l=new Hx({AccessToken:this.storage.getItem(o)}),c=new Gx({RefreshToken:this.storage.getItem(a)}),u=parseInt(this.storage.getItem(i),0)||0,d=new Qx({IdToken:s,AccessToken:l,RefreshToken:c,ClockDrift:u});if(d.isValid())return this.signInUserSession=d,e(null,this.signInUserSession);if(!c.getToken())return e(new Error("Cannot retrieve a new session. Please authenticate."),null);this.refreshSession(c,e,t.clientMetadata)}else e(new Error("Local storage is missing an ID Token, Please authenticate"),null)},t.refreshSession=function(e,t,r){var n=this,o=this.pool.wrapRefreshSessionCallback?this.pool.wrapRefreshSessionCallback(t):t,a={};a.REFRESH_TOKEN=e.getToken();var i="CognitoIdentityServiceProvider."+this.pool.getClientId(),s=i+".LastAuthUser";if(this.storage.getItem(s)){this.username=this.storage.getItem(s);var l=i+"."+this.username+".deviceKey";this.deviceKey=this.storage.getItem(l),a.DEVICE_KEY=this.deviceKey}var c={ClientId:this.pool.getClientId(),AuthFlow:"REFRESH_TOKEN_AUTH",AuthParameters:a,ClientMetadata:r};this.getUserContextData()&&(c.UserContextData=this.getUserContextData()),this.client.requestWithRetry("InitiateAuth",c,(function(t,r){if(t)return"NotAuthorizedException"===t.code&&n.clearCachedUser(),o(t,null);if(r){var a=r.AuthenticationResult;return Object.prototype.hasOwnProperty.call(a,"RefreshToken")||(a.RefreshToken=e.getToken()),n.signInUserSession=n.getCognitoUserSession(a),n.cacheTokens(),o(null,n.signInUserSession)}}))},t.cacheTokens=function(){var e="CognitoIdentityServiceProvider."+this.pool.getClientId(),t=e+"."+this.username+".idToken",r=e+"."+this.username+".accessToken",n=e+"."+this.username+".refreshToken",o=e+"."+this.username+".clockDrift",a=e+".LastAuthUser";this.storage.setItem(t,this.signInUserSession.getIdToken().getJwtToken()),this.storage.setItem(r,this.signInUserSession.getAccessToken().getJwtToken()),this.storage.setItem(n,this.signInUserSession.getRefreshToken().getToken()),this.storage.setItem(o,""+this.signInUserSession.getClockDrift()),this.storage.setItem(a,this.username)},t.cacheUserData=function(e){this.storage.setItem(this.userDataKey,JSON.stringify(e))},t.clearCachedUserData=function(){this.storage.removeItem(this.userDataKey)},t.clearCachedUser=function(){this.clearCachedTokens(),this.clearCachedUserData()},t.cacheDeviceKeyAndPassword=function(){var e="CognitoIdentityServiceProvider."+this.pool.getClientId()+"."+this.username,t=e+".deviceKey",r=e+".randomPasswordKey",n=e+".deviceGroupKey";this.storage.setItem(t,this.deviceKey),this.storage.setItem(r,this.randomPassword),this.storage.setItem(n,this.deviceGroupKey)},t.getCachedDeviceKeyAndPassword=function(){var e="CognitoIdentityServiceProvider."+this.pool.getClientId()+"."+this.username,t=e+".deviceKey",r=e+".randomPasswordKey",n=e+".deviceGroupKey";this.storage.getItem(t)&&(this.deviceKey=this.storage.getItem(t),this.randomPassword=this.storage.getItem(r),this.deviceGroupKey=this.storage.getItem(n))},t.clearCachedDeviceKeyAndPassword=function(){var e="CognitoIdentityServiceProvider."+this.pool.getClientId()+"."+this.username,t=e+".deviceKey",r=e+".randomPasswordKey",n=e+".deviceGroupKey";this.storage.removeItem(t),this.storage.removeItem(r),this.storage.removeItem(n)},t.clearCachedTokens=function(){var e="CognitoIdentityServiceProvider."+this.pool.getClientId(),t=e+"."+this.username+".idToken",r=e+"."+this.username+".accessToken",n=e+"."+this.username+".refreshToken",o=e+".LastAuthUser",a=e+"."+this.username+".clockDrift";this.storage.removeItem(t),this.storage.removeItem(r),this.storage.removeItem(n),this.storage.removeItem(o),this.storage.removeItem(a)},t.getCognitoUserSession=function(e){var t=new Vx(e),r=new Hx(e),n=new Gx(e);return new Qx({IdToken:t,AccessToken:r,RefreshToken:n})},t.forgotPassword=function(e,t){var r={ClientId:this.pool.getClientId(),Username:this.username,ClientMetadata:t};this.getUserContextData()&&(r.UserContextData=this.getUserContextData()),this.client.request("ForgotPassword",r,(function(t,r){return t?e.onFailure(t):"function"===typeof e.inputVerificationCode?e.inputVerificationCode(r):e.onSuccess(r)}))},t.confirmPassword=function(e,t,r,n){var o={ClientId:this.pool.getClientId(),Username:this.username,ConfirmationCode:e,Password:t,ClientMetadata:n};this.getUserContextData()&&(o.UserContextData=this.getUserContextData()),this.client.request("ConfirmForgotPassword",o,(function(e){return e?r.onFailure(e):r.onSuccess("SUCCESS")}))},t.getAttributeVerificationCode=function(e,t,r){if(null==this.signInUserSession||!this.signInUserSession.isValid())return t.onFailure(new Error("User is not authenticated"));this.client.request("GetUserAttributeVerificationCode",{AttributeName:e,AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),ClientMetadata:r},(function(e,r){return e?t.onFailure(e):"function"===typeof t.inputVerificationCode?t.inputVerificationCode(r):t.onSuccess("SUCCESS")}))},t.verifyAttribute=function(e,t,r){if(null==this.signInUserSession||!this.signInUserSession.isValid())return r.onFailure(new Error("User is not authenticated"));this.client.request("VerifyUserAttribute",{AttributeName:e,Code:t,AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(e){return e?r.onFailure(e):r.onSuccess("SUCCESS")}))},t.getDevice=function(e){if(null==this.signInUserSession||!this.signInUserSession.isValid())return e.onFailure(new Error("User is not authenticated"));this.client.request("GetDevice",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),DeviceKey:this.deviceKey},(function(t,r){return t?e.onFailure(t):e.onSuccess(r)}))},t.forgetSpecificDevice=function(e,t){if(null==this.signInUserSession||!this.signInUserSession.isValid())return t.onFailure(new Error("User is not authenticated"));this.client.request("ForgetDevice",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),DeviceKey:e},(function(e){return e?t.onFailure(e):t.onSuccess("SUCCESS")}))},t.forgetDevice=function(e){var t=this;this.forgetSpecificDevice(this.deviceKey,{onFailure:e.onFailure,onSuccess:function(r){return t.deviceKey=null,t.deviceGroupKey=null,t.randomPassword=null,t.clearCachedDeviceKeyAndPassword(),e.onSuccess(r)}})},t.setDeviceStatusRemembered=function(e){if(null==this.signInUserSession||!this.signInUserSession.isValid())return e.onFailure(new Error("User is not authenticated"));this.client.request("UpdateDeviceStatus",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),DeviceKey:this.deviceKey,DeviceRememberedStatus:"remembered"},(function(t){return t?e.onFailure(t):e.onSuccess("SUCCESS")}))},t.setDeviceStatusNotRemembered=function(e){if(null==this.signInUserSession||!this.signInUserSession.isValid())return e.onFailure(new Error("User is not authenticated"));this.client.request("UpdateDeviceStatus",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),DeviceKey:this.deviceKey,DeviceRememberedStatus:"not_remembered"},(function(t){return t?e.onFailure(t):e.onSuccess("SUCCESS")}))},t.listDevices=function(e,t,r){if(null==this.signInUserSession||!this.signInUserSession.isValid())return r.onFailure(new Error("User is not authenticated"));var n={AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),Limit:e};t&&(n.PaginationToken=t),this.client.request("ListDevices",n,(function(e,t){return e?r.onFailure(e):r.onSuccess(t)}))},t.globalSignOut=function(e){var t=this;if(null==this.signInUserSession||!this.signInUserSession.isValid())return e.onFailure(new Error("User is not authenticated"));this.client.request("GlobalSignOut",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(r){return r?e.onFailure(r):(t.clearCachedUser(),e.onSuccess("SUCCESS"))}))},t.signOut=function(e){var t=this;e&&"function"===typeof e?this.getSession((function(r,n){if(r)return e(r);t.revokeTokens((function(r){t.cleanClientData(),e(r)}))})):this.cleanClientData()},t.revokeTokens=function(e){if(void 0===e&&(e=function(){}),"function"!==typeof e)throw new Error("Invalid revokeTokenCallback. It should be a function.");if(!this.signInUserSession)return e(new Error("User is not authenticated"));if(!this.signInUserSession.getAccessToken())return e(new Error("No Access token available"));var t=this.signInUserSession.getRefreshToken().getToken(),r=this.signInUserSession.getAccessToken();if(this.isSessionRevocable(r)&&t)return this.revokeToken({token:t,callback:e});e()},t.isSessionRevocable=function(e){if(e&&"function"===typeof e.decodePayload)try{return!!e.decodePayload().origin_jti}catch(t){}return!1},t.cleanClientData=function(){this.signInUserSession=null,this.clearCachedUser()},t.revokeToken=function(e){var t=e.token,r=e.callback;this.client.requestWithRetry("RevokeToken",{Token:t,ClientId:this.pool.getClientId()},(function(e){if(e)return r(e);r()}))},t.sendMFASelectionAnswer=function(e,t){var r=this,n={};n.USERNAME=this.username,n.ANSWER=e;var o={ChallengeName:"SELECT_MFA_TYPE",ChallengeResponses:n,ClientId:this.pool.getClientId(),Session:this.Session};this.getUserContextData()&&(o.UserContextData=this.getUserContextData()),this.client.request("RespondToAuthChallenge",o,(function(n,o){return n?t.onFailure(n):(r.Session=o.Session,"SMS_MFA"===e?t.mfaRequired(o.ChallengeName,o.ChallengeParameters):"SOFTWARE_TOKEN_MFA"===e?t.totpRequired(o.ChallengeName,o.ChallengeParameters):void 0)}))},t.getUserContextData=function(){return this.pool.getUserContextData(this.username)},t.associateSoftwareToken=function(e){var t=this;null!=this.signInUserSession&&this.signInUserSession.isValid()?this.client.request("AssociateSoftwareToken",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken()},(function(t,r){return t?e.onFailure(t):e.associateSecretCode(r.SecretCode)})):this.client.request("AssociateSoftwareToken",{Session:this.Session},(function(r,n){return r?e.onFailure(r):(t.Session=n.Session,e.associateSecretCode(n.SecretCode))}))},t.verifySoftwareToken=function(e,t,r){var n=this;null!=this.signInUserSession&&this.signInUserSession.isValid()?this.client.request("VerifySoftwareToken",{AccessToken:this.signInUserSession.getAccessToken().getJwtToken(),UserCode:e,FriendlyDeviceName:t},(function(e,t){return e?r.onFailure(e):r.onSuccess(t)})):this.client.request("VerifySoftwareToken",{Session:this.Session,UserCode:e,FriendlyDeviceName:t},(function(e,t){if(e)return r.onFailure(e);n.Session=t.Session;var o={};o.USERNAME=n.username;var a={ChallengeName:"MFA_SETUP",ClientId:n.pool.getClientId(),ChallengeResponses:o,Session:n.Session};n.getUserContextData()&&(a.UserContextData=n.getUserContextData()),n.client.request("RespondToAuthChallenge",a,(function(e,t){return e?r.onFailure(e):(n.signInUserSession=n.getCognitoUserSession(t.AuthenticationResult),n.cacheTokens(),r.onSuccess(n.signInUserSession))}))}))},e}();function oS(){}oS.prototype.userAgent=Zx.userAgent;var aS=function(e){oS.framework=e},iS=function(e){var t=oS.category?" "+oS.category:"",r=oS.framework?" framework/"+oS.framework:"";return""+oS.prototype.userAgent+t+r};function sS(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,uS(e,t)}function lS(e){var t="function"==typeof Map?new Map:void 0;return lS=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return function(e,t,r){if(cS())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);var o=new(e.bind.apply(e,n));return r&&uS(o,r.prototype),o}(e,arguments,dS(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),uS(r,e)},lS(e)}function cS(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(cS=function(){return!!e})()}function uS(e,t){return uS=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},uS(e,t)}function dS(e){return dS=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},dS(e)}var fS=function(e){function t(t,r,n,o){var a;return(a=e.call(this,t)||this).code=r,a.name=n,a.statusCode=o,a}return sS(t,e),t}(lS(Error)),pS=function(){function e(e,t,r){this.endpoint=t||"https://cognito-idp."+e+".amazonaws.com/";var n=(r||{}).credentials;this.fetchOptions=n?{credentials:n}:{}}var t=e.prototype;return t.promisifyRequest=function(e,t){var r=this;return new Promise((function(n,o){r.request(e,t,(function(e,t){e?o(new fS(e.message,e.code,e.name,e.statusCode)):n(t)}))}))},t.requestWithRetry=function(e,t,r){var n=this;(function(e,t,r){void 0===r&&(r=vS);return gS(e,t,function(e){var t=100,r=100;return function(n){var o=Math.pow(2,n)*t+r*Math.random();return!(o>e)&&o}}(r))})((function(t){return new Promise((function(r,o){n.request(e,t,(function(e,t){e?o(e):r(t)}))}))}),[t],5e3).then((function(e){return r(null,e)})).catch((function(e){return r(e)}))},t.request=function(e,t,r){var n,o={"Content-Type":"application/x-amz-json-1.1","X-Amz-Target":"AWSCognitoIdentityProviderService."+e,"X-Amz-User-Agent":iS(),"Cache-Control":"no-store"},a=Object.assign({},this.fetchOptions,{headers:o,method:"POST",mode:"cors",body:JSON.stringify(t)});fetch(this.endpoint,a).then((function(e){return n=e,e}),(function(e){if(e instanceof TypeError)throw new Error("Network error");throw e})).then((function(e){return e.json().catch((function(){return{}}))})).then((function(e){if(n.ok)return r(null,e);0;var t=(e.__type||e.code).split("#").pop(),o=new Error(e.message||e.Message||null);return o.name=t,o.code=t,r(o)})).catch((function(e){if(n&&n.headers&&n.headers.get("x-amzn-errortype"))try{var t=n.headers.get("x-amzn-errortype").split(":")[0],o=new Error(n.status?n.status.toString():null);return o.code=t,o.name=t,o.statusCode=n.status,r(o)}catch(a){return r(e)}else e instanceof Error&&"Network error"===e.message&&(e.code="NetworkError");return r(e)}))},e}(),hS={debug:function(){}},mS=function(e){return e&&e.nonRetryable};function gS(e,t,r,n){if(void 0===n&&(n=1),"function"!==typeof e)throw Error("functionToRetry must be a function");return hS.debug(e.name+" attempt #"+n+" with args: "+JSON.stringify(t)),e.apply(void 0,t).catch((function(o){if(hS.debug("error on "+e.name,o),mS(o))throw hS.debug(e.name+" non retryable error",o),o;var a=r(n,t,o);if(hS.debug(e.name+" retrying in "+a+" ms"),!1!==a)return new Promise((function(e){return setTimeout(e,a)})).then((function(){return gS(e,t,r,n+1)}));throw o}))}var vS=3e5;var yS=function(){function e(e,t){var r=e||{},n=r.UserPoolId,o=r.ClientId,a=r.endpoint,i=r.fetchOptions,s=r.AdvancedSecurityDataCollectionFlag;if(!n||!o)throw new Error("Both UserPoolId and ClientId are required.");if(n.length>55||!/^[\w-]+_[0-9a-zA-Z]+$/.test(n))throw new Error("Invalid UserPoolId format.");var l=n.split("_")[0];this.userPoolId=n,this.clientId=o,this.client=new pS(l,a,i),this.advancedSecurityDataCollectionFlag=!1!==s,this.storage=e.Storage||(new tS).getStorage(),t&&(this.wrapRefreshSessionCallback=t)}var t=e.prototype;return t.getUserPoolId=function(){return this.userPoolId},t.getUserPoolName=function(){return this.getUserPoolId().split("_")[1]},t.getClientId=function(){return this.clientId},t.signUp=function(e,t,r,n,o,a){var i=this,s={ClientId:this.clientId,Username:e,Password:t,UserAttributes:r,ValidationData:n,ClientMetadata:a};this.getUserContextData(e)&&(s.UserContextData=this.getUserContextData(e)),this.client.request("SignUp",s,(function(t,r){if(t)return o(t,null);var n={Username:e,Pool:i,Storage:i.storage},a={user:new nS(n),userConfirmed:r.UserConfirmed,userSub:r.UserSub,codeDeliveryDetails:r.CodeDeliveryDetails};return o(null,a)}))},t.getCurrentUser=function(){var e="CognitoIdentityServiceProvider."+this.clientId+".LastAuthUser",t=this.storage.getItem(e);if(t){var r={Username:t,Pool:this,Storage:this.storage};return new nS(r)}return null},t.getUserContextData=function(e){if("undefined"!==typeof AmazonCognitoAdvancedSecurityData){var t=AmazonCognitoAdvancedSecurityData;if(this.advancedSecurityDataCollectionFlag){var r=t.getData(e,this.userPoolId,this.clientId);if(r)return{EncodedData:r}}return{}}},e}(),bS=r(63593),wS=function(){function e(e){if(void 0===e&&(e={}),e.domain&&(this.domain=e.domain),e.path?this.path=e.path:this.path="/",Object.prototype.hasOwnProperty.call(e,"expires")?this.expires=e.expires:this.expires=365,Object.prototype.hasOwnProperty.call(e,"secure")?this.secure=e.secure:this.secure=!0,Object.prototype.hasOwnProperty.call(e,"sameSite")){if(!["strict","lax","none"].includes(e.sameSite))throw new Error('The sameSite value of cookieStorage must be "lax", "strict" or "none".');if("none"===e.sameSite&&!this.secure)throw new Error("sameSite = None requires the Secure attribute in latest browser versions.");this.sameSite=e.sameSite}else this.sameSite=null}var t=e.prototype;return t.setItem=function(e,t){var r={path:this.path,expires:this.expires,domain:this.domain,secure:this.secure};return this.sameSite&&(r.sameSite=this.sameSite),bS.set(e,t,r),bS.get(e)},t.getItem=function(e){return bS.get(e)},t.removeItem=function(e){var t={path:this.path,expires:this.expires,domain:this.domain,secure:this.secure};return this.sameSite&&(t.sameSite=this.sameSite),bS.remove(e,t)},t.clear=function(){for(var e=bS.get(),t=Object.keys(e).length,r=0;r<t;++r)this.removeItem(Object.keys(e)[r]);return{}},e}(),xS=r(90625),SS=function(e){var t=window.open(e,"_self");return t?Promise.resolve(t):Promise.reject()},AS=r(5412),kS=("undefined"!==typeof Symbol&&"function"===typeof Symbol.for&&Symbol.for("INTERNAL_AWS_APPSYNC_REALTIME_PUBSUB_PROVIDER"),"undefined"!==typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("amplify_default"):"@@amplify_default"),CS=function(e,t,r){Vy.dispatch("auth",{event:e,data:t,message:r},"Auth",kS)},IS=new _h("OAuth");const ES=function(){function e(e){var t=e.config,r=e.cognitoClientId,n=e.scopes,o=void 0===n?[]:n;if(this._urlOpener=t.urlOpener||SS,this._config=t,this._cognitoClientId=r,!this.isValidScopes(o))throw Error("scopes must be a String Array");this._scopes=o}return e.prototype.isValidScopes=function(e){return Array.isArray(e)&&e.every((function(e){return"string"===typeof e}))},e.prototype.oauthSignIn=function(e,t,r,n,o,a){void 0===e&&(e="code"),void 0===o&&(o=Oy.Cognito);var i=this._generateState(32),s=a?i+"-"+a.split("").map((function(e){return e.charCodeAt(0).toString(16).padStart(2,"0")})).join(""):i;!function(e){window.sessionStorage.setItem("oauth_state",e)}(s);var l,c=this._generateRandom(128);l=c,window.sessionStorage.setItem("ouath_pkce_key",l);var u=this._generateChallenge(c),d=this._scopes.join(" "),f="https://"+t+"/oauth2/authorize?"+Object.entries((0,Ny.__assign)((0,Ny.__assign)({redirect_uri:r,response_type:e,client_id:n,identity_provider:o,scope:d,state:s},"code"===e?{code_challenge:u}:{}),"code"===e?{code_challenge_method:"S256"}:{})).map((function(e){var t=(0,Ny.__read)(e,2),r=t[0],n=t[1];return encodeURIComponent(r)+"="+encodeURIComponent(n)})).join("&");IS.debug("Redirecting to "+f),this._urlOpener(f,r)},e.prototype._handleCodeFlow=function(e){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var t,r,n,o,a,i,s,l,c,u,d,f,p,h,m,g;return(0,Ny.__generator)(this,(function(v){switch(v.label){case 0:return t=((0,xS.qg)(e).query||"").split("&").map((function(e){return e.split("=")})).reduce((function(e,t){var r,n=(0,Ny.__read)(t,2),o=n[0],a=n[1];return(0,Ny.__assign)((0,Ny.__assign)({},e),((r={})[o]=a,r))}),{code:void 0}).code,r=(0,xS.qg)(e).pathname||"/",n=(0,xS.qg)(this._config.redirectSignIn).pathname||"/",t&&r===n?(o="https://"+this._config.domain+"/oauth2/token",CS("codeFlow",{},"Retrieving tokens from "+o),a=Uy(this._config)?this._cognitoClientId:this._config.clientID,i=Uy(this._config)?this._config.redirectSignIn:this._config.redirectUri,s=function(){var e=window.sessionStorage.getItem("ouath_pkce_key");return window.sessionStorage.removeItem("ouath_pkce_key"),e}(),l=(0,Ny.__assign)({grant_type:"authorization_code",code:t,client_id:a,redirect_uri:i},s?{code_verifier:s}:{}),IS.debug("Calling token endpoint: "+o+" with",l),c=Object.entries(l).map((function(e){var t=(0,Ny.__read)(e,2),r=t[0],n=t[1];return encodeURIComponent(r)+"="+encodeURIComponent(n)})).join("&"),u={category:sb.Auth,action:pb.FederatedSignIn},[4,fetch(o,{method:"POST",headers:(g={"Content-Type":"application/x-www-form-urlencoded"},g["x-amz-user-agent"]=Lw(u),g),body:c})]):[2];case 1:return[4,v.sent().json()];case 2:if(d=v.sent(),f=d.access_token,p=d.refresh_token,h=d.id_token,m=d.error)throw new Error(m);return[2,{accessToken:f,refreshToken:p,idToken:h}]}}))}))},e.prototype._handleImplicitFlow=function(e){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var t,r,n;return(0,Ny.__generator)(this,(function(o){return t=((0,xS.qg)(e).hash||"#").substr(1).split("&").map((function(e){return e.split("=")})).reduce((function(e,t){var r,n=(0,Ny.__read)(t,2),o=n[0],a=n[1];return(0,Ny.__assign)((0,Ny.__assign)({},e),((r={})[o]=a,r))}),{id_token:void 0,access_token:void 0}),r=t.id_token,n=t.access_token,CS("implicitFlow",{},"Got tokens from "+e),IS.debug("Retrieving implicit tokens from "+e+" with"),[2,{accessToken:n,idToken:r,refreshToken:null}]}))}))},e.prototype.handleAuthResponse=function(e){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var t,r,n,o,a,i,s;return(0,Ny.__generator)(this,(function(l){switch(l.label){case 0:if(l.trys.push([0,5,,6]),t=e?(0,Ny.__assign)((0,Ny.__assign)({},((0,xS.qg)(e).hash||"#").substr(1).split("&").map((function(e){return e.split("=")})).reduce((function(e,t){var r=(0,Ny.__read)(t,2),n=r[0],o=r[1];return e[n]=o,e}),{})),((0,xS.qg)(e).query||"").split("&").map((function(e){return e.split("=")})).reduce((function(e,t){var r=(0,Ny.__read)(t,2),n=r[0],o=r[1];return e[n]=o,e}),{})):{},r=t.error,n=t.error_description,r)throw new Error(n);return o=this._validateState(t),IS.debug("Starting "+this._config.responseType+" flow with "+e),"code"!==this._config.responseType?[3,2]:(a=[{}],[4,this._handleCodeFlow(e)]);case 1:return[2,Ny.__assign.apply(void 0,[Ny.__assign.apply(void 0,a.concat([l.sent()])),{state:o}])];case 2:return i=[{}],[4,this._handleImplicitFlow(e)];case 3:return[2,Ny.__assign.apply(void 0,[Ny.__assign.apply(void 0,i.concat([l.sent()])),{state:o}])];case 4:return[3,6];case 5:throw s=l.sent(),IS.debug("Error handling auth response.",s),s;case 6:return[2]}}))}))},e.prototype._validateState=function(e){if(e){var t=function(){var e=window.sessionStorage.getItem("oauth_state");return window.sessionStorage.removeItem("oauth_state"),e}(),r=e.state;if(t&&t!==r)throw new Error("Invalid state in OAuth flow");return r}},e.prototype.signOut=function(){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var e,t,r;return(0,Ny.__generator)(this,(function(n){return e="https://"+this._config.domain+"/logout?",t=Uy(this._config)?this._cognitoClientId:this._config.oauth.clientID,r=Uy(this._config)?this._config.redirectSignOut:this._config.returnTo,e+=Object.entries({client_id:t,logout_uri:encodeURIComponent(r)}).map((function(e){var t=(0,Ny.__read)(e,2);return t[0]+"="+t[1]})).join("&"),CS("oAuthSignOut",{oAuth:"signOut"},"Signing out from "+e),IS.debug("Signing out from "+e),[2,this._urlOpener(e,r)]}))}))},e.prototype._generateState=function(e){for(var t="",r=e,n="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";r>0;--r)t+=n[Math.round(61*Math.random())];return t},e.prototype._generateChallenge=function(e){var t=new kx.Sha256;t.update(e);var r=t.digestSync(),n=AS.hp.from(r).toString("base64");return this._base64URL(n)},e.prototype._base64URL=function(e){return e.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")},e.prototype._generateRandom=function(e){var t=new Uint8Array(e);if("undefined"!==typeof window&&window.crypto)window.crypto.getRandomValues(t);else for(var r=0;r<e;r+=1)t[r]=66*Math.random()|0;return this._bufferToString(t)},e.prototype._bufferToString=function(e){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r=[],n=0;n<e.byteLength;n+=1){var o=e[n]%62;r.push(t[o])}return r.join("")},e}();var DS,TS;(TS=DS||(DS={})).DEFAULT_MSG="Authentication Error",TS.EMPTY_EMAIL="Email cannot be empty",TS.EMPTY_PHONE="Phone number cannot be empty",TS.EMPTY_USERNAME="Username cannot be empty",TS.INVALID_USERNAME="The username should either be a string or one of the sign in types",TS.EMPTY_PASSWORD="Password cannot be empty",TS.EMPTY_CODE="Confirmation code cannot be empty",TS.SIGN_UP_ERROR="Error creating account",TS.NO_MFA="No valid MFA method provided",TS.INVALID_MFA="Invalid MFA type",TS.EMPTY_CHALLENGE="Challenge response cannot be empty",TS.NO_USER_SESSION="Failed to get the session because the user is empty",TS.NETWORK_ERROR="Network Error",TS.DEVICE_CONFIG="Device tracking has not been configured in this User Pool",TS.AUTOSIGNIN_ERROR="Please use your credentials to sign in";var OS=new _h("AuthError"),MS=function(e){function t(r){var n=this,o=jS[r],a=o.message,i=o.log;return(n=e.call(this,a)||this).constructor=t,Object.setPrototypeOf(n,t.prototype),n.name="AuthError",n.log=i||a,OS.error(n.log),n}return(0,Ny.__extends)(t,e),t}(Error),PS=function(e){function t(r){var n=e.call(this,r)||this;return n.constructor=t,Object.setPrototypeOf(n,t.prototype),n.name="NoUserPoolError",n}return(0,Ny.__extends)(t,e),t}(MS),jS={noConfig:{message:DS.DEFAULT_MSG,log:"\n            Error: Amplify has not been configured correctly.\n            This error is typically caused by one of the following scenarios:\n\n            1. Make sure you're passing the awsconfig object to Amplify.configure() in your app's entry point\n                See https://aws-amplify.github.io/docs/js/authentication#configure-your-app for more information\n            \n            2. There might be multiple conflicting versions of amplify packages in your node_modules.\n\t\t\t\tRefer to our docs site for help upgrading Amplify packages (https://docs.amplify.aws/lib/troubleshooting/upgrading/q/platform/js)\n        "},missingAuthConfig:{message:DS.DEFAULT_MSG,log:"\n            Error: Amplify has not been configured correctly. \n            The configuration object is missing required auth properties.\n            This error is typically caused by one of the following scenarios:\n\n            1. Did you run `amplify push` after adding auth via `amplify add auth`?\n                See https://aws-amplify.github.io/docs/js/authentication#amplify-project-setup for more information\n\n            2. This could also be caused by multiple conflicting versions of amplify packages, see (https://docs.amplify.aws/lib/troubleshooting/upgrading/q/platform/js) for help upgrading Amplify packages.\n        "},emptyUsername:{message:DS.EMPTY_USERNAME},invalidUsername:{message:DS.INVALID_USERNAME},emptyPassword:{message:DS.EMPTY_PASSWORD},emptyCode:{message:DS.EMPTY_CODE},signUpError:{message:DS.SIGN_UP_ERROR,log:"The first parameter should either be non-null string or object"},noMFA:{message:DS.NO_MFA},invalidMFA:{message:DS.INVALID_MFA},emptyChallengeResponse:{message:DS.EMPTY_CHALLENGE},noUserSession:{message:DS.NO_USER_SESSION},deviceConfig:{message:DS.DEVICE_CONFIG},networkError:{message:DS.NETWORK_ERROR},autoSignInError:{message:DS.AUTOSIGNIN_ERROR},default:{message:DS.DEFAULT_MSG}},RS=new _h("AuthClass"),_S="aws.cognito.signin.user.admin",NS="undefined"!==typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("amplify_default"):"@@amplify_default",LS=function(e,t,r){Vy.dispatch("auth",{event:e,data:t,message:r},"Auth",NS)},US=function(){function e(e){var t=this;this.userPool=null,this.user=null,this.oAuthFlowInProgress=!1,this.autoSignInInitiated=!1,this.inflightSessionPromise=null,this.inflightSessionPromiseCounter=0,this.Credentials=ux,this.wrapRefreshSessionCallback=function(e){return function(t,r){return r?LS("tokenRefresh",void 0,"New token retrieved"):LS("tokenRefresh_failure",t,"Failed to retrieve new token"),e(t,r)}},this.configure(e),this.currentCredentials=this.currentCredentials.bind(this),this.currentUserCredentials=this.currentUserCredentials.bind(this),Vy.listen("auth",(function(e){switch(e.payload.event){case"verify":case"signIn":t._storage.setItem("amplify-signin-with-hostedUI","false");break;case"signOut":t._storage.removeItem("amplify-signin-with-hostedUI");break;case"cognitoHostedUI":t._storage.setItem("amplify-signin-with-hostedUI","true")}})),oS.category="auth",aS(Nw.framework),Nw.observeFrameworkChanges((function(){aS(Nw.framework)}))}return e.prototype.getModuleName=function(){return"Auth"},e.prototype.configure=function(e){var t=this;if(!e)return this._config||{};RS.debug("configure Auth");var r=Object.assign({},this._config,nx(e).Auth,e);this._config=r;var n=this._config,o=n.userPoolId,a=n.userPoolWebClientId,i=n.cookieStorage,s=n.oauth,l=n.region,c=n.identityPoolId,u=n.mandatorySignIn,d=n.refreshHandlers,f=n.identityPoolRegion,p=n.clientMetadata,h=n.endpoint,m=n.storage;if(m){if(!this._isValidAuthStorage(m))throw RS.error("The storage in the Auth config is not valid!"),new Error("Empty storage object");this._storage=m}else this._storage=i?new wS(i):e.ssr?new yx:(new Qy).getStorage();if(this._storageSync=Promise.resolve(),"function"===typeof this._storage.sync&&(this._storageSync=this._storage.sync()),o){var g={UserPoolId:o,ClientId:a,endpoint:h};g.Storage=this._storage,this.userPool=new yS(g,this.wrapRefreshSessionCallback)}this.Credentials.configure({mandatorySignIn:u,region:l,userPoolId:o,identityPoolId:c,refreshHandlers:d,storage:this._storage,identityPoolRegion:f});var v=s?Uy(this._config.oauth)?s:s.awsCognito:void 0;if(v){var y=Object.assign({cognitoClientId:a,UserPoolId:o,domain:v.domain,scopes:v.scope,redirectSignIn:v.redirectSignIn,redirectSignOut:v.redirectSignOut,responseType:v.responseType,Storage:this._storage,urlOpener:v.urlOpener,clientMetadata:p},v.options);this._oAuthHandler=new ES({scopes:y.scopes,config:y,cognitoClientId:y.cognitoClientId});var b={};!function(e){if(Ky().isBrowser&&window.location)e({url:window.location.href});else if(!Ky().isNode)throw new Error("Not supported")}((function(e){var r=e.url;b[r]||(b[r]=!0,t._handleAuthResponse(r))}))}(LS("configured",null,"The Auth category has been configured successfully"),this.autoSignInInitiated||"function"!==typeof this._storage.getItem)||(this.isTrueStorageValue("amplify-polling-started")&&(LS("autoSignIn_failure",null,Py.AutoSignInError),this._storage.removeItem("amplify-auto-sign-in")),this._storage.removeItem("amplify-polling-started"));return this._config},e.prototype.signUp=function(e){for(var t,r,n,o=this,a=[],i=1;i<arguments.length;i++)a[i-1]=arguments[i];if(!this.userPool)return this.rejectNoUserPool();var s,l=null,c=null,u=[],d=null,f={enabled:!1},p={},h={};if(e&&"string"===typeof e){l=e,c=a?a[0]:null;var m=a?a[1]:null,g=a?a[2]:null;m&&u.push(new $x({Name:"email",Value:m})),g&&u.push(new $x({Name:"phone_number",Value:g}))}else{if(!e||"object"!==typeof e)return this.rejectAuthError(Py.SignUpError);l=e.username,c=e.password,e&&e.clientMetadata?s=e.clientMetadata:this._config.clientMetadata&&(s=this._config.clientMetadata);var v=e.attributes;v&&Object.keys(v).map((function(e){u.push(new $x({Name:e,Value:v[e]}))}));var y=e.validationData;y&&(d=[],Object.keys(y).map((function(e){d.push(new $x({Name:e,Value:y[e]}))}))),(f=null!==(t=e.autoSignIn)&&void 0!==t?t:{enabled:!1}).enabled&&(this._storage.setItem("amplify-auto-sign-in","true"),p=null!==(r=f.validationData)&&void 0!==r?r:{},h=null!==(n=f.clientMetaData)&&void 0!==n?n:{})}return l?c?(RS.debug("signUp attrs:",u),RS.debug("signUp validation data:",d),new Promise((function(e,t){o.userPool.signUp(l,c,u,d,(function(r,n){r?(LS("signUp_failure",r,l+" failed to signup"),t(r)):(LS("signUp",n,l+" has signed up successfully"),f.enabled&&o.handleAutoSignIn(l,c,p,h,n),e(n))}),s)}))):this.rejectAuthError(Py.EmptyPassword):this.rejectAuthError(Py.EmptyUsername)},e.prototype.handleAutoSignIn=function(e,t,r,n,o){this.autoSignInInitiated=!0;var a=new wx({Username:e,Password:t,ValidationData:r,ClientMetadata:n});o.userConfirmed?this.signInAfterUserConfirmed(a):"link"===this._config.signUpVerificationMethod?this.handleLinkAutoSignIn(a):this.handleCodeAutoSignIn(a)},e.prototype.handleCodeAutoSignIn=function(e){var t=this,r=function(n){"confirmSignUp"===n.payload.event&&t.signInAfterUserConfirmed(e,r)};Vy.listen("auth",r)},e.prototype.handleLinkAutoSignIn=function(e){var t=this;this._storage.setItem("amplify-polling-started","true");var r=Date.now(),n=setInterval((function(){Date.now()-r>18e4?(clearInterval(n),LS("autoSignIn_failure",null,"Please confirm your account and use your credentials to sign in."),t._storage.removeItem("amplify-auto-sign-in")):t.signInAfterUserConfirmed(e,null,n)}),5e3)},e.prototype.signInAfterUserConfirmed=function(e,t,r){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var n,o,a=this;return(0,Ny.__generator)(this,(function(i){switch(i.label){case 0:n=this.createCognitoUser(e.getUsername()),i.label=1;case 1:return i.trys.push([1,3,,4]),[4,n.authenticateUser(e,this.authCallbacks(n,(function(n){LS("autoSignIn",n,e.getUsername()+" has signed in successfully"),t&&Vy.remove("auth",t),r&&(clearInterval(r),a._storage.removeItem("amplify-polling-started")),a._storage.removeItem("amplify-auto-sign-in")}),(function(e){RS.error(e),a._storage.removeItem("amplify-auto-sign-in")})))];case 2:return i.sent(),[3,4];case 3:return o=i.sent(),RS.error(o),[3,4];case 4:return[2]}}))}))},e.prototype.confirmSignUp=function(e,t,r){var n=this;if(!this.userPool)return this.rejectNoUserPool();if(!e)return this.rejectAuthError(Py.EmptyUsername);if(!t)return this.rejectAuthError(Py.EmptyCode);var o,a=this.createCognitoUser(e),i=!r||"boolean"!==typeof r.forceAliasCreation||r.forceAliasCreation;return r&&r.clientMetadata?o=r.clientMetadata:this._config.clientMetadata&&(o=this._config.clientMetadata),new Promise((function(r,s){a.confirmRegistration(t,i,(function(t,o){t?s(t):(LS("confirmSignUp",o,e+" has been confirmed successfully"),n.isTrueStorageValue("amplify-auto-sign-in")&&!n.autoSignInInitiated&&(LS("autoSignIn_failure",null,Py.AutoSignInError),n._storage.removeItem("amplify-auto-sign-in")),r(o))}),o)}))},e.prototype.isTrueStorageValue=function(e){var t=this._storage.getItem(e);return!!t&&"true"===t},e.prototype.resendSignUp=function(e,t){if(void 0===t&&(t=this._config.clientMetadata),!this.userPool)return this.rejectNoUserPool();if(!e)return this.rejectAuthError(Py.EmptyUsername);var r=this.createCognitoUser(e);return new Promise((function(e,n){r.resendConfirmationCode((function(t,r){t?n(t):e(r)}),t)}))},e.prototype.signIn=function(e,t,r){if(void 0===r&&(r=this._config.clientMetadata),!this.userPool)return this.rejectNoUserPool();var n=null,o=null,a={};if("string"===typeof e)n=e,o=t;else{if(!e.username)return this.rejectAuthError(Py.InvalidUsername);"undefined"!==typeof t&&RS.warn("The password should be defined under the first parameter object!"),n=e.username,o=e.password,a=e.validationData}if(!n)return this.rejectAuthError(Py.EmptyUsername);var i=new wx({Username:n,Password:o,ValidationData:a,ClientMetadata:r});return o?this.signInWithPassword(i):this.signInWithoutPassword(i)},e.prototype.authCallbacks=function(e,t,r){var n=this,o=this;return{onSuccess:function(a){return(0,Ny.__awaiter)(n,void 0,void 0,(function(){var n,i,s,l;return(0,Ny.__generator)(this,(function(c){switch(c.label){case 0:RS.debug(a),delete e.challengeName,delete e.challengeParam,c.label=1;case 1:return c.trys.push([1,4,5,9]),[4,this.Credentials.clear()];case 2:return c.sent(),[4,this.Credentials.set(a,"session")];case 3:return n=c.sent(),RS.debug("succeed to get cognito credentials",n),[3,9];case 4:return i=c.sent(),RS.debug("cannot get cognito credentials",i),[3,9];case 5:return c.trys.push([5,7,,8]),[4,this.currentUserPoolUser()];case 6:return s=c.sent(),o.user=s,LS("signIn",s,"A user "+e.getUsername()+" has been signed in"),t(s),[3,8];case 7:return l=c.sent(),RS.error("Failed to get the signed in user",l),r(l),[3,8];case 8:return[7];case 9:return[2]}}))}))},onFailure:function(t){RS.debug("signIn failure",t),LS("signIn_failure",t,e.getUsername()+" failed to signin"),r(t)},customChallenge:function(r){RS.debug("signIn custom challenge answer required"),e.challengeName="CUSTOM_CHALLENGE",e.challengeParam=r,t(e)},mfaRequired:function(r,n){RS.debug("signIn MFA required"),e.challengeName=r,e.challengeParam=n,t(e)},mfaSetup:function(r,n){RS.debug("signIn mfa setup",r),e.challengeName=r,e.challengeParam=n,t(e)},newPasswordRequired:function(r,n){RS.debug("signIn new password"),e.challengeName="NEW_PASSWORD_REQUIRED",e.challengeParam={userAttributes:r,requiredAttributes:n},t(e)},totpRequired:function(r,n){RS.debug("signIn totpRequired"),e.challengeName=r,e.challengeParam=n,t(e)},selectMFAType:function(r,n){RS.debug("signIn selectMFAType",r),e.challengeName=r,e.challengeParam=n,t(e)}}},e.prototype.signInWithPassword=function(e){var t=this;if(this.pendingSignIn)throw new Error("Pending sign-in attempt already in progress");var r=this.createCognitoUser(e.getUsername());return this.pendingSignIn=new Promise((function(n,o){r.authenticateUser(e,t.authCallbacks(r,(function(e){t.pendingSignIn=null,n(e)}),(function(e){t.pendingSignIn=null,o(e)})))})),this.pendingSignIn},e.prototype.signInWithoutPassword=function(e){var t=this,r=this.createCognitoUser(e.getUsername());return r.setAuthenticationFlowType("CUSTOM_AUTH"),new Promise((function(n,o){r.initiateAuth(e,t.authCallbacks(r,n,o))}))},e.prototype.getMFAOptions=function(e){return new Promise((function(t,r){e.getMFAOptions((function(e,n){if(e)return RS.debug("get MFA Options failed",e),void r(e);RS.debug("get MFA options success",n),t(n)}))}))},e.prototype.getPreferredMFA=function(e,t){var r=this,n=this;return new Promise((function(o,a){var i=r._config.clientMetadata,s=!!t&&t.bypassCache;e.getUserData((function(t,i){return(0,Ny.__awaiter)(r,void 0,void 0,(function(){var r,s;return(0,Ny.__generator)(this,(function(l){switch(l.label){case 0:if(!t)return[3,5];if(RS.debug("getting preferred mfa failed",t),!this.isSessionInvalid(t))return[3,4];l.label=1;case 1:return l.trys.push([1,3,,4]),[4,this.cleanUpInvalidSession(e)];case 2:return l.sent(),[3,4];case 3:return r=l.sent(),a(new Error("Session is invalid due to: "+t.message+" and failed to clean up invalid session: "+r.message)),[2];case 4:return a(t),[2];case 5:return(s=n._getMfaTypeFromUserData(i))?(o(s),[2]):(a("invalid MFA Type"),[2])}}))}))}),{bypassCache:s,clientMetadata:i})}))},e.prototype._getMfaTypeFromUserData=function(e){var t=null,r=e.PreferredMfaSetting;if(r)t=r;else{var n=e.UserMFASettingList;if(n)0===n.length?t="NOMFA":RS.debug("invalid case for getPreferredMFA",e);else t=e.MFAOptions?"SMS_MFA":"NOMFA"}return t},e.prototype._getUserData=function(e,t){var r=this;return new Promise((function(n,o){e.getUserData((function(t,a){return(0,Ny.__awaiter)(r,void 0,void 0,(function(){var r;return(0,Ny.__generator)(this,(function(i){switch(i.label){case 0:if(!t)return[3,5];if(RS.debug("getting user data failed",t),!this.isSessionInvalid(t))return[3,4];i.label=1;case 1:return i.trys.push([1,3,,4]),[4,this.cleanUpInvalidSession(e)];case 2:return i.sent(),[3,4];case 3:return r=i.sent(),o(new Error("Session is invalid due to: "+t.message+" and failed to clean up invalid session: "+r.message)),[2];case 4:return o(t),[2];case 5:n(a),i.label=6;case 6:return[2]}}))}))}),t)}))},e.prototype.setPreferredMFA=function(e,t){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var r,n,o,a,i,s,l=this;return(0,Ny.__generator)(this,(function(c){switch(c.label){case 0:return r=this._config.clientMetadata,[4,this._getUserData(e,{bypassCache:!0,clientMetadata:r})];case 1:switch(n=c.sent(),o=null,a=null,t){case"TOTP":case"SOFTWARE_TOKEN_MFA":return[3,2];case"SMS":case"SMS_MFA":return[3,3];case"NOMFA":return[3,4]}return[3,6];case 2:return a={PreferredMfa:!0,Enabled:!0},[3,7];case 3:return o={PreferredMfa:!0,Enabled:!0},[3,7];case 4:return i=n.UserMFASettingList,[4,this._getMfaTypeFromUserData(n)];case 5:if("NOMFA"===(s=c.sent()))return[2,Promise.resolve("No change for mfa type")];if("SMS_MFA"===s)o={PreferredMfa:!1,Enabled:!1};else{if("SOFTWARE_TOKEN_MFA"!==s)return[2,this.rejectAuthError(Py.InvalidMFA)];a={PreferredMfa:!1,Enabled:!1}}return i&&0!==i.length&&i.forEach((function(e){"SMS_MFA"===e?o={PreferredMfa:!1,Enabled:!1}:"SOFTWARE_TOKEN_MFA"===e&&(a={PreferredMfa:!1,Enabled:!1})})),[3,7];case 6:return RS.debug("no validmfa method provided"),[2,this.rejectAuthError(Py.NoMFA)];case 7:return[2,new Promise((function(t,n){e.setUserMfaPreference(o,a,(function(o,a){if(o)return RS.debug("Set user mfa preference error",o),n(o);RS.debug("Set user mfa success",a),RS.debug("Caching the latest user data into local"),e.getUserData((function(r,o){return(0,Ny.__awaiter)(l,void 0,void 0,(function(){var o;return(0,Ny.__generator)(this,(function(i){switch(i.label){case 0:if(!r)return[3,5];if(RS.debug("getting user data failed",r),!this.isSessionInvalid(r))return[3,4];i.label=1;case 1:return i.trys.push([1,3,,4]),[4,this.cleanUpInvalidSession(e)];case 2:return i.sent(),[3,4];case 3:return o=i.sent(),n(new Error("Session is invalid due to: "+r.message+" and failed to clean up invalid session: "+o.message)),[2];case 4:return[2,n(r)];case 5:return[2,t(a)]}}))}))}),{bypassCache:!0,clientMetadata:r})}))}))]}}))}))},e.prototype.disableSMS=function(e){return new Promise((function(t,r){e.disableMFA((function(e,n){if(e)return RS.debug("disable mfa failed",e),void r(e);RS.debug("disable mfa succeed",n),t(n)}))}))},e.prototype.enableSMS=function(e){return new Promise((function(t,r){e.enableMFA((function(e,n){if(e)return RS.debug("enable mfa failed",e),void r(e);RS.debug("enable mfa succeed",n),t(n)}))}))},e.prototype.setupTOTP=function(e){return new Promise((function(t,r){e.associateSoftwareToken({onFailure:function(e){RS.debug("associateSoftwareToken failed",e),r(e)},associateSecretCode:function(e){RS.debug("associateSoftwareToken success",e),t(e)}})}))},e.prototype.verifyTotpToken=function(e,t){var r;RS.debug("verification totp token",e,t),e&&"function"===typeof e.getSignInUserSession&&(r=e.getSignInUserSession());var n=null===r||void 0===r?void 0:r.isValid();return new Promise((function(r,o){e.verifySoftwareToken(t,"My TOTP device",{onFailure:function(e){RS.debug("verifyTotpToken failed",e),o(e)},onSuccess:function(t){n||LS("signIn",e,"A user "+e.getUsername()+" has been signed in"),LS("verify",e,"A user "+e.getUsername()+" has been verified"),RS.debug("verifyTotpToken success",t),r(t)}})}))},e.prototype.confirmSignIn=function(e,t,r,n){var o=this;if(void 0===n&&(n=this._config.clientMetadata),!t)return this.rejectAuthError(Py.EmptyCode);var a=this;return new Promise((function(i,s){e.sendMFACode(t,{onSuccess:function(t){return(0,Ny.__awaiter)(o,void 0,void 0,(function(){var r,n,o,s;return(0,Ny.__generator)(this,(function(l){switch(l.label){case 0:RS.debug(t),l.label=1;case 1:return l.trys.push([1,4,5,10]),[4,this.Credentials.clear()];case 2:return l.sent(),[4,this.Credentials.set(t,"session")];case 3:return r=l.sent(),RS.debug("succeed to get cognito credentials",r),[3,10];case 4:return n=l.sent(),RS.debug("cannot get cognito credentials",n),[3,10];case 5:a.user=e,l.label=6;case 6:return l.trys.push([6,8,,9]),[4,this.currentUserPoolUser()];case 7:return o=l.sent(),e.attributes=o.attributes,[3,9];case 8:return s=l.sent(),RS.debug("cannot get updated Cognito User",s),[3,9];case 9:return LS("signIn",e,"A user "+e.getUsername()+" has been signed in"),i(e),[7];case 10:return[2]}}))}))},onFailure:function(e){RS.debug("confirm signIn failure",e),s(e)}},r,n)}))},e.prototype.completeNewPassword=function(e,t,r,n){var o=this;if(void 0===r&&(r={}),void 0===n&&(n=this._config.clientMetadata),!t)return this.rejectAuthError(Py.EmptyPassword);var a=this;return new Promise((function(i,s){e.completeNewPasswordChallenge(t,r,{onSuccess:function(t){return(0,Ny.__awaiter)(o,void 0,void 0,(function(){var r,n;return(0,Ny.__generator)(this,(function(o){switch(o.label){case 0:RS.debug(t),o.label=1;case 1:return o.trys.push([1,4,5,6]),[4,this.Credentials.clear()];case 2:return o.sent(),[4,this.Credentials.set(t,"session")];case 3:return r=o.sent(),RS.debug("succeed to get cognito credentials",r),[3,6];case 4:return n=o.sent(),RS.debug("cannot get cognito credentials",n),[3,6];case 5:return a.user=e,LS("signIn",e,"A user "+e.getUsername()+" has been signed in"),i(e),[7];case 6:return[2]}}))}))},onFailure:function(e){RS.debug("completeNewPassword failure",e),LS("completeNewPassword_failure",e,o.user+" failed to complete the new password flow"),s(e)},mfaRequired:function(t,r){RS.debug("signIn MFA required"),e.challengeName=t,e.challengeParam=r,i(e)},mfaSetup:function(t,r){RS.debug("signIn mfa setup",t),e.challengeName=t,e.challengeParam=r,i(e)},totpRequired:function(t,r){RS.debug("signIn mfa setup",t),e.challengeName=t,e.challengeParam=r,i(e)}},n)}))},e.prototype.sendCustomChallengeAnswer=function(e,t,r){var n=this;if(void 0===r&&(r=this._config.clientMetadata),!this.userPool)return this.rejectNoUserPool();if(!t)return this.rejectAuthError(Py.EmptyChallengeResponse);return new Promise((function(o,a){e.sendCustomChallengeAnswer(t,n.authCallbacks(e,o,a),r)}))},e.prototype.deleteUserAttributes=function(e,t){var r=this;return new Promise((function(n,o){r.userSession(e).then((function(r){e.deleteAttributes(t,(function(e,t){return e?o(e):n(t)}))}))}))},e.prototype.deleteUser=function(){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var e,t,r=this;return(0,Ny.__generator)(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,this._storageSync];case 1:return n.sent(),[3,3];case 2:throw e=n.sent(),RS.debug("Failed to sync cache info into memory",e),new Error(e);case 3:return t=this._oAuthHandler&&"true"===this._storage.getItem("amplify-signin-with-hostedUI"),[2,new Promise((function(e,n){return(0,Ny.__awaiter)(r,void 0,void 0,(function(){var r,o=this;return(0,Ny.__generator)(this,(function(a){if(this.userPool){if(!(r=this.userPool.getCurrentUser()))return RS.debug("Failed to get user from user pool"),[2,n(new Error("No current user."))];r.getSession((function(a,i){return(0,Ny.__awaiter)(o,void 0,void 0,(function(){var o,i=this;return(0,Ny.__generator)(this,(function(s){switch(s.label){case 0:if(!a)return[3,5];if(RS.debug("Failed to get the user session",a),!this.isSessionInvalid(a))return[3,4];s.label=1;case 1:return s.trys.push([1,3,,4]),[4,this.cleanUpInvalidSession(r)];case 2:return s.sent(),[3,4];case 3:return o=s.sent(),n(new Error("Session is invalid due to: "+a.message+" and failed to clean up invalid session: "+o.message)),[2];case 4:return[2,n(a)];case 5:r.deleteUser((function(o,a){if(o)n(o);else{LS("userDeleted",a,"The authenticated user has been deleted."),r.signOut(),i.user=null;try{i.cleanCachedItems()}catch(o6){RS.debug("failed to clear cached items")}t?i.oAuthSignOutRedirect(e,n):(LS("signOut",i.user,"A user has been signed out"),e(a))}})),s.label=6;case 6:return[2]}}))}))}))}else RS.debug("no Congito User pool"),n(new Error("Cognito User pool does not exist"));return[2]}))}))}))]}}))}))},e.prototype.updateUserAttributes=function(e,t,r){var n=this;void 0===r&&(r=this._config.clientMetadata);var o=[],a=this;return new Promise((function(i,s){a.userSession(e).then((function(a){for(var l in t)if("sub"!==l&&l.indexOf("_verified")<0){var c={Name:l,Value:t[l]};o.push(c)}e.updateAttributes(o,(function(e,r,o){if(e)return LS("updateUserAttributes_failure",e,"Failed to update attributes"),s(e);var a=n.createUpdateAttributesResultList(t,null===o||void 0===o?void 0:o.CodeDeliveryDetailsList);return LS("updateUserAttributes",a,"Attributes successfully updated"),i(r)}),r)}))}))},e.prototype.createUpdateAttributesResultList=function(e,t){var r={};return Object.keys(e).forEach((function(e){r[e]={isUpdated:!0};var n=null===t||void 0===t?void 0:t.find((function(t){return t.AttributeName===e}));n&&(r[e].isUpdated=!1,r[e].codeDeliveryDetails=n)})),r},e.prototype.userAttributes=function(e){var t=this;return new Promise((function(r,n){t.userSession(e).then((function(t){e.getUserAttributes((function(e,t){e?n(e):r(t)}))}))}))},e.prototype.verifiedContact=function(e){var t=this;return this.userAttributes(e).then((function(e){var r=t.attributesToObject(e),n={},o={};return r.email&&(r.email_verified?o.email=r.email:n.email=r.email),r.phone_number&&(r.phone_number_verified?o.phone_number=r.phone_number:n.phone_number=r.phone_number),{verified:o,unverified:n}}))},e.prototype.isErrorWithMessage=function(e){return"object"===typeof e&&Object.prototype.hasOwnProperty.call(e,"message")},e.prototype.isTokenRevokedError=function(e){return this.isErrorWithMessage(e)&&"Access Token has been revoked"===e.message},e.prototype.isRefreshTokenRevokedError=function(e){return this.isErrorWithMessage(e)&&"Refresh Token has been revoked"===e.message},e.prototype.isUserDisabledError=function(e){return this.isErrorWithMessage(e)&&"User is disabled."===e.message},e.prototype.isUserDoesNotExistError=function(e){return this.isErrorWithMessage(e)&&"User does not exist."===e.message},e.prototype.isRefreshTokenExpiredError=function(e){return this.isErrorWithMessage(e)&&"Refresh Token has expired"===e.message},e.prototype.isPasswordResetRequiredError=function(e){return this.isErrorWithMessage(e)&&"Password reset required for the user"===e.message},e.prototype.isSignedInHostedUI=function(){return this._oAuthHandler&&"true"===this._storage.getItem("amplify-signin-with-hostedUI")},e.prototype.isSessionInvalid=function(e){return this.isUserDisabledError(e)||this.isUserDoesNotExistError(e)||this.isTokenRevokedError(e)||this.isRefreshTokenRevokedError(e)||this.isRefreshTokenExpiredError(e)||this.isPasswordResetRequiredError(e)},e.prototype.cleanUpInvalidSession=function(e){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var t=this;return(0,Ny.__generator)(this,(function(r){switch(r.label){case 0:e.signOut(),this.user=null,r.label=1;case 1:return r.trys.push([1,3,,4]),[4,this.cleanCachedItems()];case 2:return r.sent(),[3,4];case 3:return r.sent(),RS.debug("failed to clear cached items"),[3,4];case 4:return this.isSignedInHostedUI()?[2,new Promise((function(e,r){t.oAuthSignOutRedirect(e,r)}))]:(LS("signOut",this.user,"A user has been signed out"),[2])}}))}))},e.prototype.currentUserPoolUser=function(e){var t=this;return this.userPool?new Promise((function(r,n){t._storageSync.then((function(){return(0,Ny.__awaiter)(t,void 0,void 0,(function(){var t,o,a,i,s,l,c=this;return(0,Ny.__generator)(this,(function(u){switch(u.label){case 0:return this.isOAuthInProgress()?(RS.debug("OAuth signIn in progress, waiting for resolution..."),[4,new Promise((function(e){var t=setTimeout((function(){RS.debug("OAuth signIn in progress timeout"),Vy.remove("auth",r),e()}),1e4);function r(n){var o=n.payload.event;"cognitoHostedUI"!==o&&"cognitoHostedUI_failure"!==o||(RS.debug("OAuth signIn resolved: "+o),clearTimeout(t),Vy.remove("auth",r),e())}Vy.listen("auth",r)}))]):[3,2];case 1:u.sent(),u.label=2;case 2:if(!(t=this.userPool.getCurrentUser()))return RS.debug("Failed to get user from user pool"),n("No current user"),[2];u.label=3;case 3:return u.trys.push([3,7,,8]),[4,this._userSession(t)];case 4:return o=u.sent(),(a=!!e&&e.bypassCache)?[4,this.Credentials.clear()]:[3,6];case 5:u.sent(),u.label=6;case 6:return i=this._config.clientMetadata,s=o.getAccessToken().decodePayload().scope,(void 0===s?"":s).split(" ").includes(_S)?(t.getUserData((function(e,o){return(0,Ny.__awaiter)(c,void 0,void 0,(function(){var a,i,s,l,c,u,d;return(0,Ny.__generator)(this,(function(f){switch(f.label){case 0:if(!e)return[3,7];if(RS.debug("getting user data failed",e),!this.isSessionInvalid(e))return[3,5];f.label=1;case 1:return f.trys.push([1,3,,4]),[4,this.cleanUpInvalidSession(t)];case 2:return f.sent(),[3,4];case 3:return a=f.sent(),n(new Error("Session is invalid due to: "+e.message+" and failed to clean up invalid session: "+a.message)),[2];case 4:return n(e),[3,6];case 5:r(t),f.label=6;case 6:return[2];case 7:for(i=o.PreferredMfaSetting||"NOMFA",s=[],l=0;l<o.UserAttributes.length;l++)c={Name:o.UserAttributes[l].Name,Value:o.UserAttributes[l].Value},u=new $x(c),s.push(u);return d=this.attributesToObject(s),Object.assign(t,{attributes:d,preferredMFA:i}),[2,r(t)]}}))}))}),{bypassCache:a,clientMetadata:i}),[3,8]):(RS.debug("Unable to get the user data because the "+_S+" is not in the scopes of the access token"),[2,r(t)]);case 7:return l=u.sent(),n(l),[3,8];case 8:return[2]}}))}))})).catch((function(e){return RS.debug("Failed to sync cache info into memory",e),n(e)}))})):this.rejectNoUserPool()},e.prototype.isOAuthInProgress=function(){return this.oAuthFlowInProgress},e.prototype.currentAuthenticatedUser=function(e){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var t,r,n,o,a;return(0,Ny.__generator)(this,(function(i){switch(i.label){case 0:RS.debug("getting current authenticated user"),t=null,i.label=1;case 1:return i.trys.push([1,3,,4]),[4,this._storageSync];case 2:return i.sent(),[3,4];case 3:throw r=i.sent(),RS.debug("Failed to sync cache info into memory",r),r;case 4:try{(n=JSON.parse(this._storage.getItem("aws-amplify-federatedInfo")))&&(t=(0,Ny.__assign)((0,Ny.__assign)({},n.user),{token:n.token}))}catch(o6){RS.debug("cannot load federated user from auth storage")}return t?(this.user=t,RS.debug("get current authenticated federated user",this.user),[2,this.user]):[3,5];case 5:RS.debug("get current authenticated userpool user"),o=null,i.label=6;case 6:return i.trys.push([6,8,,9]),[4,this.currentUserPoolUser(e)];case 7:return o=i.sent(),[3,9];case 8:return"No userPool"===(a=i.sent())&&RS.error("Cannot get the current user because the user pool is missing. Please make sure the Auth module is configured with a valid Cognito User Pool ID"),RS.debug("The user is not authenticated by the error",a),[2,Promise.reject("The user is not authenticated")];case 9:return this.user=o,[2,this.user]}}))}))},e.prototype.currentSession=function(){var e=this;return RS.debug("Getting current session"),this.userPool?new Promise((function(t,r){e.currentUserPoolUser().then((function(n){e.userSession(n).then((function(e){t(e)})).catch((function(e){RS.debug("Failed to get the current session",e),r(e)}))})).catch((function(e){RS.debug("Failed to get the current user",e),r(e)}))})):Promise.reject(new Error("No User Pool in the configuration."))},e.prototype._userSession=function(e){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var t,r,n=this;return(0,Ny.__generator)(this,(function(o){switch(o.label){case 0:if(!e)return RS.debug("the user is null"),[2,this.rejectAuthError(Py.NoUserSession)];t=this._config.clientMetadata,0===this.inflightSessionPromiseCounter&&(this.inflightSessionPromise=new Promise((function(r,o){e.getSession((function(t,a){return(0,Ny.__awaiter)(n,void 0,void 0,(function(){var n;return(0,Ny.__generator)(this,(function(i){switch(i.label){case 0:if(!t)return[3,5];if(RS.debug("Failed to get the session from user",e),!this.isSessionInvalid(t))return[3,4];i.label=1;case 1:return i.trys.push([1,3,,4]),[4,this.cleanUpInvalidSession(e)];case 2:return i.sent(),[3,4];case 3:return n=i.sent(),o(new Error("Session is invalid due to: "+t.message+" and failed to clean up invalid session: "+n.message)),[2];case 4:return o(t),[2];case 5:return RS.debug("Succeed to get the user session",a),r(a),[2]}}))}))}),{clientMetadata:t})}))),this.inflightSessionPromiseCounter++,o.label=1;case 1:return o.trys.push([1,,3,4]),[4,this.inflightSessionPromise];case 2:return r=o.sent(),e.signInUserSession=r,[2,r];case 3:return this.inflightSessionPromiseCounter--,[7];case 4:return[2]}}))}))},e.prototype.userSession=function(e){return this._userSession(e)},e.prototype.currentUserCredentials=function(){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var e,t,r=this;return(0,Ny.__generator)(this,(function(n){switch(n.label){case 0:RS.debug("Getting current user credentials"),n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this._storageSync];case 2:return n.sent(),[3,4];case 3:throw e=n.sent(),RS.debug("Failed to sync cache info into memory",e),e;case 4:t=null;try{t=JSON.parse(this._storage.getItem("aws-amplify-federatedInfo"))}catch(o6){RS.debug("failed to get or parse item aws-amplify-federatedInfo",o6)}return t?[2,this.Credentials.refreshFederatedToken(t)]:[2,this.currentSession().then((function(e){return RS.debug("getting session success",e),r.Credentials.set(e,"session")})).catch((function(){return RS.debug("getting guest credentials"),r.Credentials.set(null,"guest")}))]}}))}))},e.prototype.currentCredentials=function(){return RS.debug("getting current credentials"),this.Credentials.get()},e.prototype.verifyUserAttribute=function(e,t,r){return void 0===r&&(r=this._config.clientMetadata),new Promise((function(n,o){e.getAttributeVerificationCode(t,{onSuccess:function(e){return n(e)},onFailure:function(e){return o(e)}},r)}))},e.prototype.verifyUserAttributeSubmit=function(e,t,r){return r?new Promise((function(n,o){e.verifyAttribute(t,r,{onSuccess:function(e){n(e)},onFailure:function(e){o(e)}})})):this.rejectAuthError(Py.EmptyCode)},e.prototype.verifyCurrentUserAttribute=function(e){var t=this;return t.currentUserPoolUser().then((function(r){return t.verifyUserAttribute(r,e)}))},e.prototype.verifyCurrentUserAttributeSubmit=function(e,t){var r=this;return r.currentUserPoolUser().then((function(n){return r.verifyUserAttributeSubmit(n,e,t)}))},e.prototype.cognitoIdentitySignOut=function(e,t){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var r,n,o=this;return(0,Ny.__generator)(this,(function(a){switch(a.label){case 0:return a.trys.push([0,2,,3]),[4,this._storageSync];case 1:return a.sent(),[3,3];case 2:throw r=a.sent(),RS.debug("Failed to sync cache info into memory",r),r;case 3:return n=this._oAuthHandler&&"true"===this._storage.getItem("amplify-signin-with-hostedUI"),[2,new Promise((function(r,a){if(e&&e.global){RS.debug("user global sign out",t);var i=o._config.clientMetadata;t.getSession((function(e,i){return(0,Ny.__awaiter)(o,void 0,void 0,(function(){var o,i=this;return(0,Ny.__generator)(this,(function(s){switch(s.label){case 0:if(!e)return[3,5];if(RS.debug("failed to get the user session",e),!this.isSessionInvalid(e))return[3,4];s.label=1;case 1:return s.trys.push([1,3,,4]),[4,this.cleanUpInvalidSession(t)];case 2:return s.sent(),[3,4];case 3:return o=s.sent(),a(new Error("Session is invalid due to: "+e.message+" and failed to clean up invalid session: "+o.message)),[2];case 4:return[2,a(e)];case 5:return t.globalSignOut({onSuccess:function(e){if(RS.debug("global sign out success"),!n)return r();i.oAuthSignOutRedirect(r,a)},onFailure:function(e){return RS.debug("global sign out failed",e),a(e)}}),[2]}}))}))}),{clientMetadata:i})}else RS.debug("user sign out",t),t.signOut((function(){if(!n)return r();o.oAuthSignOutRedirect(r,a)}))}))]}}))}))},e.prototype.oAuthSignOutRedirect=function(e,t){Ky().isBrowser?this.oAuthSignOutRedirectOrReject(t):this.oAuthSignOutAndResolve(e)},e.prototype.oAuthSignOutAndResolve=function(e){this._oAuthHandler.signOut(),e()},e.prototype.oAuthSignOutRedirectOrReject=function(e){this._oAuthHandler.signOut(),setTimeout((function(){return e(Error("Signout timeout fail"))}),3e3)},e.prototype.signOut=function(e){return void 0===e&&(e={}),(0,Ny.__awaiter)(this,void 0,void 0,(function(){var t,r;return(0,Ny.__generator)(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,this.cleanCachedItems()];case 1:return n.sent(),[3,3];case 2:return n.sent(),RS.debug("failed to clear cached items"),[3,3];case 3:if(!this.userPool)return[3,11];n.label=4;case 4:return n.trys.push([4,6,,7]),[4,this._storageSync];case 5:return n.sent(),[3,7];case 6:throw t=n.sent(),RS.debug("Failed to sync cache info into memory",t),t;case 7:return(r=this.userPool.getCurrentUser())?[4,this.cognitoIdentitySignOut(e,r)]:[3,9];case 8:return n.sent(),[3,10];case 9:RS.debug("no current Cognito user"),n.label=10;case 10:return[3,12];case 11:RS.debug("no Cognito User pool"),n.label=12;case 12:return LS("signOut",this.user,"A user has been signed out"),this.user=null,[2]}}))}))},e.prototype.cleanCachedItems=function(){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){return(0,Ny.__generator)(this,(function(e){switch(e.label){case 0:return[4,this.Credentials.clear()];case 1:return e.sent(),[2]}}))}))},e.prototype.changePassword=function(e,t,r,n){var o=this;return void 0===n&&(n=this._config.clientMetadata),new Promise((function(a,i){o.userSession(e).then((function(o){e.changePassword(t,r,(function(e,t){return e?(RS.debug("change password failure",e),i(e)):a(t)}),n)}))}))},e.prototype.forgotPassword=function(e,t){if(void 0===t&&(t=this._config.clientMetadata),!this.userPool)return this.rejectNoUserPool();if(!e)return this.rejectAuthError(Py.EmptyUsername);var r=this.createCognitoUser(e);return new Promise((function(n,o){r.forgotPassword({onSuccess:function(){n()},onFailure:function(t){RS.debug("forgot password failure",t),LS("forgotPassword_failure",t,e+" forgotPassword failed"),o(t)},inputVerificationCode:function(t){LS("forgotPassword",r,e+" has initiated forgot password flow"),n(t)}},t)}))},e.prototype.forgotPasswordSubmit=function(e,t,r,n){if(void 0===n&&(n=this._config.clientMetadata),!this.userPool)return this.rejectNoUserPool();if(!e)return this.rejectAuthError(Py.EmptyUsername);if(!t)return this.rejectAuthError(Py.EmptyCode);if(!r)return this.rejectAuthError(Py.EmptyPassword);var o=this.createCognitoUser(e);return new Promise((function(a,i){o.confirmPassword(t,r,{onSuccess:function(t){LS("forgotPasswordSubmit",o,e+" forgotPasswordSubmit successful"),a(t)},onFailure:function(t){LS("forgotPasswordSubmit_failure",t,e+" forgotPasswordSubmit failed"),i(t)}},n)}))},e.prototype.currentUserInfo=function(){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var e,t,r,n,o,a,i;return(0,Ny.__generator)(this,(function(s){switch(s.label){case 0:return(e=this.Credentials.getCredSource())&&"aws"!==e&&"userPool"!==e?[3,9]:[4,this.currentUserPoolUser().catch((function(e){return RS.error(e)}))];case 1:if(!(i=s.sent()))return[2,null];s.label=2;case 2:return s.trys.push([2,8,,9]),[4,this.userAttributes(i)];case 3:t=s.sent(),r=this.attributesToObject(t),n=null,s.label=4;case 4:return s.trys.push([4,6,,7]),[4,this.currentCredentials()];case 5:return n=s.sent(),[3,7];case 6:return o=s.sent(),RS.debug("Failed to retrieve credentials while getting current user info",o),[3,7];case 7:return[2,{id:n?n.identityId:void 0,username:i.getUsername(),attributes:r}];case 8:return a=s.sent(),RS.error("currentUserInfo error",a),[2,{}];case 9:return"federated"===e?[2,(i=this.user)||{}]:[2]}}))}))},e.prototype.federatedSignIn=function(e,t,r){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var n,o,a,i,s,l,c,u,d,f,p;return(0,Ny.__generator)(this,(function(h){switch(h.label){case 0:if(!this._config.identityPoolId&&!this._config.userPoolId)throw new Error("Federation requires either a User Pool or Identity Pool in config");if("undefined"===typeof e&&this._config.identityPoolId&&!this._config.userPoolId)throw new Error("Federation with Identity Pools requires tokens passed as arguments");return Ly(e)||(m=e)&&["customProvider"].find((function(e){return m.hasOwnProperty(e)}))||function(e){return e&&!!["customState"].find((function(t){return e.hasOwnProperty(t)}))}(e)||"undefined"===typeof e?(n=e||{provider:Oy.Cognito},s=Ly(n)?n.provider:n.customProvider,Ly(n),o=n.customState,this._config.userPoolId&&(a=Uy(this._config.oauth)?this._config.userPoolWebClientId:this._config.oauth.clientID,i=Uy(this._config.oauth)?this._config.oauth.redirectSignIn:this._config.oauth.redirectUri,this._oAuthHandler.oauthSignIn(this._config.oauth.responseType,this._config.oauth.domain,i,a,s,o)),[3,4]):[3,1];case 1:s=e;try{(l=JSON.stringify(JSON.parse(this._storage.getItem("aws-amplify-federatedInfo")).user))&&RS.warn("There is already a signed in user: "+l+" in your app.\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tYou should not call Auth.federatedSignIn method again as it may cause unexpected behavior.")}catch(o6){}return c=t.token,u=t.identity_id,d=t.expires_at,[4,this.Credentials.set({provider:s,token:c,identity_id:u,user:r,expires_at:d},"federation")];case 2:return f=h.sent(),[4,this.currentAuthenticatedUser()];case 3:return p=h.sent(),LS("signIn",p,"A user "+p.username+" has been signed in"),RS.debug("federated sign in credentials",f),[2,f];case 4:return[2]}var m}))}))},e.prototype._handleAuthResponse=function(e){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var t,r,n,o,a,i,s,l,c,u,d,f,p,h;return(0,Ny.__generator)(this,(function(m){switch(m.label){case 0:if(this.oAuthFlowInProgress)return RS.debug("Skipping URL "+e+" current flow in progress"),[2];m.label=1;case 1:if(m.trys.push([1,,8,9]),this.oAuthFlowInProgress=!0,!this._config.userPoolId)throw new Error("OAuth responses require a User Pool defined in config");if(LS("parsingCallbackUrl",{url:e},"The callback url is being parsed"),t=e||(Ky().isBrowser?window.location.href:""),r=!!((0,xS.qg)(t).query||"").split("&").map((function(e){return e.split("=")})).find((function(e){var t=(0,Ny.__read)(e,1)[0];return"code"===t||"error"===t})),n=!!((0,xS.qg)(t).hash||"#").substr(1).split("&").map((function(e){return e.split("=")})).find((function(e){var t=(0,Ny.__read)(e,1)[0];return"access_token"===t||"error"===t})),!r&&!n)return[3,7];this._storage.setItem("amplify-redirected-from-hosted-ui","true"),m.label=2;case 2:return m.trys.push([2,6,,7]),[4,this._oAuthHandler.handleAuthResponse(t)];case 3:return o=m.sent(),a=o.accessToken,i=o.idToken,s=o.refreshToken,l=o.state,c=new Qx({IdToken:new Vx({IdToken:i}),RefreshToken:new Gx({RefreshToken:s}),AccessToken:new Hx({AccessToken:a})}),u=void 0,this._config.identityPoolId?[4,this.Credentials.set(c,"session")]:[3,5];case 4:u=m.sent(),RS.debug("AWS credentials",u),m.label=5;case 5:return d=/-/.test(l),(f=this.createCognitoUser(c.getIdToken().decodePayload()["cognito:username"])).setSignInUserSession(c),window&&"undefined"!==typeof window.history&&window.history.replaceState(window.history.state,"",this._config.oauth.redirectSignIn),LS("signIn",f,"A user "+f.getUsername()+" has been signed in"),LS("cognitoHostedUI",f,"A user "+f.getUsername()+" has been signed in via Cognito Hosted UI"),d&&(p=l.split("-").splice(1).join("-"),LS("customOAuthState",p.match(/.{2}/g).map((function(e){return String.fromCharCode(parseInt(e,16))})).join(""),"State for user "+f.getUsername())),[2,u];case 6:return h=m.sent(),RS.debug("Error in cognito hosted auth response",h),window&&"undefined"!==typeof window.history&&window.history.replaceState(window.history.state,"",this._config.oauth.redirectSignIn),LS("signIn_failure",h,"The OAuth response flow failed"),LS("cognitoHostedUI_failure",h,"A failure occurred when returning to the Cognito Hosted UI"),LS("customState_failure",h,"A failure occurred when returning state"),[3,7];case 7:return[3,9];case 8:return this.oAuthFlowInProgress=!1,[7];case 9:return[2]}}))}))},e.prototype.essentialCredentials=function(e){return{accessKeyId:e.accessKeyId,sessionToken:e.sessionToken,secretAccessKey:e.secretAccessKey,identityId:e.identityId,authenticated:e.authenticated}},e.prototype.attributesToObject=function(e){var t=this,r={};return e&&e.map((function(e){"email_verified"===e.Name||"phone_number_verified"===e.Name?r[e.Name]=t.isTruthyString(e.Value)||!0===e.Value:r[e.Name]=e.Value})),r},e.prototype.isTruthyString=function(e){return"function"===typeof e.toLowerCase&&"true"===e.toLowerCase()},e.prototype.createCognitoUser=function(e){var t={Username:e,Pool:this.userPool};t.Storage=this._storage;var r=this._config.authenticationFlowType,n=new nS(t);return r&&n.setAuthenticationFlowType(r),n},e.prototype._isValidAuthStorage=function(e){return!!e&&"function"===typeof e.getItem&&"function"===typeof e.setItem&&"function"===typeof e.removeItem&&"function"===typeof e.clear},e.prototype.noUserPoolErrorHandler=function(e){return!e||e.userPoolId&&e.identityPoolId?Py.NoConfig:Py.MissingAuthConfig},e.prototype.rejectAuthError=function(e){return Promise.reject(new MS(e))},e.prototype.rejectNoUserPool=function(){var e=this.noUserPoolErrorHandler(this._config);return Promise.reject(new PS(e))},e.prototype.rememberDevice=function(){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var e,t;return(0,Ny.__generator)(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,this.currentUserPoolUser()];case 1:return e=r.sent(),[3,3];case 2:return t=r.sent(),RS.debug("The user is not authenticated by the error",t),[2,Promise.reject("The user is not authenticated")];case 3:return e.getCachedDeviceKeyAndPassword(),[2,new Promise((function(t,r){e.setDeviceStatusRemembered({onSuccess:function(e){t(e)},onFailure:function(e){"InvalidParameterException"===e.code?r(new MS(Py.DeviceConfig)):"NetworkError"===e.code?r(new MS(Py.NetworkError)):r(e)}})}))]}}))}))},e.prototype.forgetDevice=function(){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var e,t;return(0,Ny.__generator)(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,this.currentUserPoolUser()];case 1:return e=r.sent(),[3,3];case 2:return t=r.sent(),RS.debug("The user is not authenticated by the error",t),[2,Promise.reject("The user is not authenticated")];case 3:return e.getCachedDeviceKeyAndPassword(),[2,new Promise((function(t,r){e.forgetDevice({onSuccess:function(e){t(e)},onFailure:function(e){"InvalidParameterException"===e.code?r(new MS(Py.DeviceConfig)):"NetworkError"===e.code?r(new MS(Py.NetworkError)):r(e)}})}))]}}))}))},e.prototype.fetchDevices=function(){return(0,Ny.__awaiter)(this,void 0,void 0,(function(){var e,t;return(0,Ny.__generator)(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,this.currentUserPoolUser()];case 1:return e=r.sent(),[3,3];case 2:throw t=r.sent(),RS.debug("The user is not authenticated by the error",t),new Error("The user is not authenticated");case 3:return e.getCachedDeviceKeyAndPassword(),[2,new Promise((function(t,r){var n={onSuccess:function(e){var r=e.Devices.map((function(e){var t=e.DeviceAttributes.find((function(e){return"device_name"===e.Name}))||{};return{id:e.DeviceKey,name:t.Value}}));t(r)},onFailure:function(e){"InvalidParameterException"===e.code?r(new MS(Py.DeviceConfig)):"NetworkError"===e.code?r(new MS(Py.NetworkError)):r(e)}};e.listDevices(60,null,n)}))]}}))}))},e}(),BS=new US(null);Uh.register(BS);for(var FS=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},zS={clockOffset:0,getDateWithClockOffset:function(){return zS.clockOffset?new Date((new Date).getTime()+zS.clockOffset):new Date},getClockOffset:function(){return zS.clockOffset},getHeaderStringFromDate:function(e){return void 0===e&&(e=zS.getDateWithClockOffset()),e.toISOString().replace(/[:\-]|\.\d{3}/g,"")},getDateFromHeaderString:function(e){var t=FS(e.match(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2}).+/),7),r=t[1],n=t[2],o=t[3],a=t[4],i=t[5],s=t[6];return new Date(Date.UTC(Number(r),Number(n)-1,Number(o),Number(a),Number(i),Number(s)))},isClockSkewed:function(e){return Math.abs(e.getTime()-zS.getDateWithClockOffset().getTime())>=3e5},isClockSkewError:function(e){if(!e.response||!e.response.headers)return!1;var t=e.response.headers;return Boolean(["BadRequestException","InvalidSignatureException"].includes(t["x-amzn-errortype"])&&(t.date||t.Date))},setClockOffset:function(e){zS.clockOffset=e}},WS=function(e){return Object.keys(e).map((function(e){return e.toLowerCase()})).sort().join(";")},HS="X-Amz-Date",YS="X-Amz-Security-Token",VS="host",GS=HS.toLowerCase(),ZS=YS.toLowerCase(),QS="aws4_request",KS="AWS4-HMAC-SHA256",XS=function(e){var t,r,n=e.credentials,o=e.signingDate,a=void 0===o?new Date:o,i=e.signingRegion,s=e.signingService,l=e.uriEscapePath,c=void 0===l||l,u=n.accessKeyId,d=n.secretAccessKey,f=n.sessionToken,p=function(e){var t=e.toISOString().replace(/[:\-]|\.\d{3}/g,"");return{longDate:t,shortDate:t.slice(0,8)}}(a),h=p.longDate,m=p.shortDate;return{accessKeyId:u,credentialScope:(t=i,r=s,"".concat(m,"/").concat(t,"/").concat(r,"/").concat(QS)),longDate:h,secretAccessKey:d,sessionToken:f,shortDate:m,signingRegion:i,signingService:s,uriEscapePath:c}},JS={},$S={},qS=0;qS<256;qS++){var eA=qS.toString(16).toLowerCase();1===eA.length&&(eA="0"+eA),JS[qS]=eA,$S[eA]=qS}var tA=function(e,t){var r=new kx.Sha256(e);return r.update(t),r.digestSync()},rA=function(e,t){return function(e){for(var t="",r=0;r<e.byteLength;r++)t+=JS[e[r]];return t}(tA(e,t))},nA=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},oA=function(e){return Object.entries(e).map((function(e){var t,r=nA(e,2),n=r[0],o=r[1];return{key:n.toLowerCase(),value:null!==(t=null===o||void 0===o?void 0:o.trim().replace(/\s+/g," "))&&void 0!==t?t:""}})).sort((function(e,t){return e.key<t.key?-1:1})).map((function(e){return"".concat(e.key,":").concat(e.value,"\n")})).join("")},aA=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},iA=function(e){return encodeURIComponent(e).replace(/[!'()*]/g,sA)},sA=function(e){return"%".concat(e.charCodeAt(0).toString(16).toUpperCase())},lA=function(e,t){return void 0===t&&(t=!0),e?t?encodeURIComponent(e).replace(/%2F/g,"/"):e:"/"},cA=function(e){return null==e?"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855":uA(e)?rA(null,e):"UNSIGNED-PAYLOAD"},uA=function(e){return"string"===typeof e||ArrayBuffer.isView(e)||dA(e)},dA=function(e){return"function"===typeof ArrayBuffer&&e instanceof ArrayBuffer||"[object ArrayBuffer]"===Object.prototype.toString.call(e)},fA=function(e,t){var r=t.credentialScope,n=t.longDate,o=t.secretAccessKey,a=t.shortDate,i=t.signingRegion,s=t.signingService,l=function(e,t){var r,n=e.body,o=e.headers,a=e.method,i=e.url;return void 0===t&&(t=!0),[a,lA(i.pathname,t),(r=i.searchParams,Array.from(r).sort((function(e,t){var r=aA(e,2),n=r[0],o=r[1],a=aA(t,2),i=a[0],s=a[1];return n===i?o<s?-1:1:n<i?-1:1})).map((function(e){var t=aA(e,2),r=t[0],n=t[1];return"".concat(iA(r),"=").concat(iA(n))})).join("&")),oA(o),WS(o),cA(n)].join("\n")}(e,t.uriEscapePath),c=function(e,t,r){return[KS,e,t,r].join("\n")}(n,r,rA(null,l)),u=rA(function(e,t,r,n){var o="".concat("AWS4").concat(e),a=tA(o,t),i=tA(a,r),s=tA(i,n);return tA(s,QS)}(o,a,i,s),c);return u},pA=function(){return pA=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},pA.apply(this,arguments)},hA=function(){return hA=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},hA.apply(this,arguments)},mA=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r},gA=function(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},vA=function(){return vA=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},vA.apply(this,arguments)},yA=/([^\.]+)\.(?:([^\.]*)\.)?amazonaws\.com(.cn)?$/,bA=function(){function e(){}return e.sign=function(e,t,r){if(e.headers=e.headers||{},e.body&&!e.data)throw new Error('The attribute "body" was found on the request object. Please use the attribute "data" instead.');var n=vA(vA({},e),{body:e.data,url:new URL(e.url)}),o=function(e,t){var r=XS(t),n=r.accessKeyId,o=r.credentialScope,a=r.longDate,i=r.sessionToken,s=pA({},e.headers);s[VS]=e.url.host,s[GS]=a,i&&(s[ZS]=i);var l=pA(pA({},e),{headers:s}),c=fA(l,r),u="Credential=".concat(n,"/").concat(o),d="SignedHeaders=".concat(WS(s)),f="Signature=".concat(c);return s.authorization="".concat(KS," ").concat(u,", ").concat(d,", ").concat(f),l}(n,wA(n,t,r));return o.url=o.url.toString(),o.headers.Authorization=o.headers.authorization,o.headers["X-Amz-Security-Token"]=o.headers["x-amz-security-token"],delete o.headers.authorization,delete o.headers["x-amz-security-token"],o},e.signUrl=function(e,t,r,n){var o="object"===typeof e?e.url:e,a="object"===typeof e?e.method:"GET",i={body:"object"===typeof e?e.body:void 0,method:a,url:new URL(o)},s=wA(i,t,r,n),l=function(e,t){var r,n,o,a,i=e.body,s=e.method,l=void 0===s?"GET":s,c=e.url,u=t.expiration,d=mA(t,["expiration"]),f=XS(d),p=f.accessKeyId,h=f.credentialScope,m=f.longDate,g=f.sessionToken,v=new URL(c);Object.entries(hA(hA((r={},r["X-Amz-Algorithm"]=KS,r["X-Amz-Credential"]="".concat(p,"/").concat(h),r[HS]=m,r["X-Amz-SignedHeaders"]=VS,r),u&&(n={},n["X-Amz-Expires"]=u.toString(),n)),g&&(o={},o[YS]=g,o))).forEach((function(e){var t=gA(e,2),r=t[0],n=t[1];v.searchParams.append(r,n)}));var y={body:i,headers:(a={},a[VS]=c.host,a),method:l,url:v},b=fA(y,f);return v.searchParams.append("X-Amz-Signature",b),v}(i,s);return t.session_token&&!SA(s.signingService)&&l.searchParams.append(YS,t.session_token),l.toString()},e}(),wA=function(e,t,r,n){var o=null!==t&&void 0!==t?t:{},a=o.access_key,i=o.secret_key,s=o.session_token,l=xA(e.url),c=l.region,u=l.service,d=null!==r&&void 0!==r?r:{},f=d.region,p=void 0===f?c:f,h=d.service,m=void 0===h?u:h,g=vA({accessKeyId:a,secretAccessKey:i},SA(m)?{sessionToken:s}:{});return vA({credentials:g,signingDate:zS.getDateWithClockOffset(),signingRegion:p,signingService:m},n&&{expiration:n})},xA=function(e){var t,r=(null!==(t=e.host.match(yA))&&void 0!==t?t:[]).slice(1,3);return"es"===r[1]&&(r=r.reverse()),{service:r[0],region:r[1]}},SA=function(e){return"iotdevicegateway"!==e};const AA=e=>"string"===typeof e,kA=()=>{let e,t;const r=new Promise(((r,n)=>{e=r,t=n}));return r.resolve=e,r.reject=t,r},CA=e=>null==e?"":""+e,IA=/###/g,EA=e=>e&&e.indexOf("###")>-1?e.replace(IA,"."):e,DA=e=>!e||AA(e),TA=(e,t,r)=>{const n=AA(t)?t.split("."):t;let o=0;for(;o<n.length-1;){if(DA(e))return{};const t=EA(n[o]);!e[t]&&r&&(e[t]=new r),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++o}return DA(e)?{}:{obj:e,k:EA(n[o])}},OA=(e,t,r)=>{const{obj:n,k:o}=TA(e,t,Object);if(void 0!==n||1===t.length)return void(n[o]=r);let a=t[t.length-1],i=t.slice(0,t.length-1),s=TA(e,i,Object);for(;void 0===s.obj&&i.length;)a=`${i[i.length-1]}.${a}`,i=i.slice(0,i.length-1),s=TA(e,i,Object),s&&s.obj&&"undefined"!==typeof s.obj[`${s.k}.${a}`]&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=r},MA=(e,t)=>{const{obj:r,k:n}=TA(e,t);if(r)return r[n]},PA=(e,t,r)=>{for(const n in t)"__proto__"!==n&&"constructor"!==n&&(n in e?AA(e[n])||e[n]instanceof String||AA(t[n])||t[n]instanceof String?r&&(e[n]=t[n]):PA(e[n],t[n],r):e[n]=t[n]);return e},jA=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var RA={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};const _A=e=>AA(e)?e.replace(/[&<>"'\/]/g,(e=>RA[e])):e;const NA=[" ",",","?","!",";"],LA=new class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const t=this.regExpMap.get(e);if(void 0!==t)return t;const r=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,r),this.regExpQueue.push(e),r}}(20),UA=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(!e)return;if(e[t])return e[t];const n=t.split(r);let o=e;for(let a=0;a<n.length;){if(!o||"object"!==typeof o)return;let e,t="";for(let i=a;i<n.length;++i)if(i!==a&&(t+=r),t+=n[i],e=o[t],void 0!==e){if(["string","number","boolean"].indexOf(typeof e)>-1&&i<n.length-1)continue;a+=i-a+1;break}o=e}return o},BA=e=>e&&e.replace("_","-"),FA={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class zA{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.init(e,t)}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||FA,this.options=t,this.debug=t.debug}log(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.forward(t,"log","",!0)}warn(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.forward(t,"warn","",!0)}error(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.forward(t,"error","")}deprecate(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}forward(e,t,r,n){return n&&!this.debug?null:(AA(e[0])&&(e[0]=`${r}${this.prefix} ${e[0]}`),this.logger[t](e))}create(e){return new zA(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new zA(this.logger,e)}}var WA=new zA;class HA{constructor(){this.observers={}}on(e,t){return e.split(" ").forEach((e=>{this.observers[e]||(this.observers[e]=new Map);const r=this.observers[e].get(t)||0;this.observers[e].set(t,r+1)})),this}off(e,t){this.observers[e]&&(t?this.observers[e].delete(t):delete this.observers[e])}emit(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];if(this.observers[e]){Array.from(this.observers[e].entries()).forEach((e=>{let[t,n]=e;for(let o=0;o<n;o++)t(...r)}))}if(this.observers["*"]){Array.from(this.observers["*"].entries()).forEach((t=>{let[n,o]=t;for(let a=0;a<o;a++)n.apply(n,[e,...r])}))}}}class YA extends HA{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=e||{},this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const o=void 0!==n.keySeparator?n.keySeparator:this.options.keySeparator,a=void 0!==n.ignoreJSONStructure?n.ignoreJSONStructure:this.options.ignoreJSONStructure;let i;e.indexOf(".")>-1?i=e.split("."):(i=[e,t],r&&(Array.isArray(r)?i.push(...r):AA(r)&&o?i.push(...r.split(o)):i.push(r)));const s=MA(this.data,i);return!s&&!t&&!r&&e.indexOf(".")>-1&&(e=i[0],t=i[1],r=i.slice(2).join(".")),!s&&a&&AA(r)?UA(this.data&&this.data[e]&&this.data[e][t],r,o):s}addResource(e,t,r,n){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1};const a=void 0!==o.keySeparator?o.keySeparator:this.options.keySeparator;let i=[e,t];r&&(i=i.concat(a?r.split(a):r)),e.indexOf(".")>-1&&(i=e.split("."),n=t,t=i[1]),this.addNamespaces(t),OA(this.data,i,n),o.silent||this.emit("added",e,t,r,n)}addResources(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(const o in r)(AA(r[o])||Array.isArray(r[o]))&&this.addResource(e,t,o,r[o],{silent:!0});n.silent||this.emit("added",e,t,r)}addResourceBundle(e,t,r,n,o){let a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1,skipCopy:!1},i=[e,t];e.indexOf(".")>-1&&(i=e.split("."),n=r,r=t,t=i[1]),this.addNamespaces(t);let s=MA(this.data,i)||{};a.skipCopy||(r=JSON.parse(JSON.stringify(r))),n?PA(s,r,o):s={...s,...r},OA(this.data,i,s),a.silent||this.emit("added",e,t,r)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}hasResourceBundle(e,t){return void 0!==this.getResource(e,t)}getResourceBundle(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?{...this.getResource(e,t)}:this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((e=>t[e]&&Object.keys(t[e]).length>0))}toJSON(){return this.data}}var VA={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,r,n,o){return e.forEach((e=>{this.processors[e]&&(t=this.processors[e].process(t,r,n,o))})),t}};const GA={};class ZA extends HA{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var r,n;super(),r=e,n=this,["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"].forEach((e=>{r[e]&&(n[e]=r[e])})),this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=WA.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(void 0===e||null===e)return!1;const r=this.resolve(e,t);return r&&void 0!==r.res}extractFromKey(e,t){let r=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===r&&(r=":");const n=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let o=t.ns||this.options.defaultNS||[];const a=r&&e.indexOf(r)>-1,i=!this.options.userDefinedKeySeparator&&!t.keySeparator&&!this.options.userDefinedNsSeparator&&!t.nsSeparator&&!((e,t,r)=>{t=t||"",r=r||"";const n=NA.filter((e=>t.indexOf(e)<0&&r.indexOf(e)<0));if(0===n.length)return!0;const o=LA.getRegExp(`(${n.map((e=>"?"===e?"\\?":e)).join("|")})`);let a=!o.test(e);if(!a){const t=e.indexOf(r);t>0&&!o.test(e.substring(0,t))&&(a=!0)}return a})(e,r,n);if(a&&!i){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:AA(o)?[o]:o};const a=e.split(r);(r!==n||r===n&&this.options.ns.indexOf(a[0])>-1)&&(o=a.shift()),e=a.join(n)}return{key:e,namespaces:AA(o)?[o]:o}}translate(e,t,r){if("object"!==typeof t&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"===typeof t&&(t={...t}),t||(t={}),void 0===e||null===e)return"";Array.isArray(e)||(e=[String(e)]);const n=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,o=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,{key:a,namespaces:i}=this.extractFromKey(e[e.length-1],t),s=i[i.length-1],l=t.lng||this.language,c=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(l&&"cimode"===l.toLowerCase()){if(c){const e=t.nsSeparator||this.options.nsSeparator;return n?{res:`${s}${e}${a}`,usedKey:a,exactUsedKey:a,usedLng:l,usedNS:s,usedParams:this.getUsedParamsDetails(t)}:`${s}${e}${a}`}return n?{res:a,usedKey:a,exactUsedKey:a,usedLng:l,usedNS:s,usedParams:this.getUsedParamsDetails(t)}:a}const u=this.resolve(e,t);let d=u&&u.res;const f=u&&u.usedKey||a,p=u&&u.exactUsedKey||a,h=Object.prototype.toString.apply(d),m=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject,v=!AA(d)&&"boolean"!==typeof d&&"number"!==typeof d;if(!(g&&d&&v&&["[object Number]","[object Function]","[object RegExp]"].indexOf(h)<0)||AA(m)&&Array.isArray(d))if(g&&AA(m)&&Array.isArray(d))d=d.join(m),d&&(d=this.extendTranslation(d,e,t,r));else{let n=!1,i=!1;const c=void 0!==t.count&&!AA(t.count),f=ZA.hasDefaultValue(t),p=c?this.pluralResolver.getSuffix(l,t.count,t):"",h=t.ordinal&&c?this.pluralResolver.getSuffix(l,t.count,{ordinal:!1}):"",m=c&&!t.ordinal&&0===t.count&&this.pluralResolver.shouldUseIntlApi(),g=m&&t[`defaultValue${this.options.pluralSeparator}zero`]||t[`defaultValue${p}`]||t[`defaultValue${h}`]||t.defaultValue;!this.isValidLookup(d)&&f&&(n=!0,d=g),this.isValidLookup(d)||(i=!0,d=a);const v=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&i?void 0:d,y=f&&g!==d&&this.options.updateMissing;if(i||n||y){if(this.logger.log(y?"updateKey":"missingKey",l,s,a,y?g:d),o){const e=this.resolve(a,{...t,keySeparator:!1});e&&e.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let e=[];const r=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&r&&r[0])for(let t=0;t<r.length;t++)e.push(r[t]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(t.lng||this.language):e.push(t.lng||this.language);const n=(e,r,n)=>{const o=f&&n!==d?n:v;this.options.missingKeyHandler?this.options.missingKeyHandler(e,s,r,o,y,t):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(e,s,r,o,y,t),this.emit("missingKey",e,s,r,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&c?e.forEach((e=>{const r=this.pluralResolver.getSuffixes(e,t);m&&t[`defaultValue${this.options.pluralSeparator}zero`]&&r.indexOf(`${this.options.pluralSeparator}zero`)<0&&r.push(`${this.options.pluralSeparator}zero`),r.forEach((r=>{n([e],a+r,t[`defaultValue${r}`]||g)}))})):n(e,a,g))}d=this.extendTranslation(d,e,t,u,r),i&&d===a&&this.options.appendNamespaceToMissingKey&&(d=`${s}:${a}`),(i||n)&&this.options.parseMissingKeyHandler&&(d="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${s}:${a}`:a,n?d:void 0):this.options.parseMissingKeyHandler(d))}else{if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(f,d,{...t,ns:i}):`key '${a} (${this.language})' returned an object instead of string.`;return n?(u.res=e,u.usedParams=this.getUsedParamsDetails(t),u):e}if(o){const e=Array.isArray(d),r=e?[]:{},n=e?p:f;for(const a in d)if(Object.prototype.hasOwnProperty.call(d,a)){const e=`${n}${o}${a}`;r[a]=this.translate(e,{...t,joinArrays:!1,ns:i}),r[a]===e&&(r[a]=d[a])}d=r}}return n?(u.res=d,u.usedParams=this.getUsedParamsDetails(t),u):d}extendTranslation(e,t,r,n,o){var a=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...r},r.lng||this.language||n.usedLng,n.usedNS,n.usedKey,{resolved:n});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const i=AA(e)&&(r&&r.interpolation&&void 0!==r.interpolation.skipOnVariables?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let s;if(i){const t=e.match(this.interpolator.nestingRegexp);s=t&&t.length}let l=r.replace&&!AA(r.replace)?r.replace:r;if(this.options.interpolation.defaultVariables&&(l={...this.options.interpolation.defaultVariables,...l}),e=this.interpolator.interpolate(e,l,r.lng||this.language||n.usedLng,r),i){const t=e.match(this.interpolator.nestingRegexp);s<(t&&t.length)&&(r.nest=!1)}!r.lng&&"v1"!==this.options.compatibilityAPI&&n&&n.res&&(r.lng=this.language||n.usedLng),!1!==r.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];return o&&o[0]===n[0]&&!r.context?(a.logger.warn(`It seems you are nesting recursively key: ${n[0]} in key: ${t[0]}`),null):a.translate(...n,t)}),r)),r.interpolation&&this.interpolator.reset()}const i=r.postProcess||this.options.postProcess,s=AA(i)?[i]:i;return void 0!==e&&null!==e&&s&&s.length&&!1!==r.applyPostProcessor&&(e=VA.handle(s,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...n,usedParams:this.getUsedParamsDetails(r)},...r}:r,this)),e}resolve(e){let t,r,n,o,a,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return AA(e)&&(e=[e]),e.forEach((e=>{if(this.isValidLookup(t))return;const s=this.extractFromKey(e,i),l=s.key;r=l;let c=s.namespaces;this.options.fallbackNS&&(c=c.concat(this.options.fallbackNS));const u=void 0!==i.count&&!AA(i.count),d=u&&!i.ordinal&&0===i.count&&this.pluralResolver.shouldUseIntlApi(),f=void 0!==i.context&&(AA(i.context)||"number"===typeof i.context)&&""!==i.context,p=i.lngs?i.lngs:this.languageUtils.toResolveHierarchy(i.lng||this.language,i.fallbackLng);c.forEach((e=>{this.isValidLookup(t)||(a=e,!GA[`${p[0]}-${e}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(a)&&(GA[`${p[0]}-${e}`]=!0,this.logger.warn(`key "${r}" for languages "${p.join(", ")}" won't get resolved as namespace "${a}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),p.forEach((r=>{if(this.isValidLookup(t))return;o=r;const a=[l];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(a,l,r,e,i);else{let e;u&&(e=this.pluralResolver.getSuffix(r,i.count,i));const t=`${this.options.pluralSeparator}zero`,n=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(u&&(a.push(l+e),i.ordinal&&0===e.indexOf(n)&&a.push(l+e.replace(n,this.options.pluralSeparator)),d&&a.push(l+t)),f){const r=`${l}${this.options.contextSeparator}${i.context}`;a.push(r),u&&(a.push(r+e),i.ordinal&&0===e.indexOf(n)&&a.push(r+e.replace(n,this.options.pluralSeparator)),d&&a.push(r+t))}}let s;for(;s=a.pop();)this.isValidLookup(t)||(n=s,t=this.getResource(r,e,s,i))})))}))})),{res:t,usedKey:r,exactUsedKey:n,usedLng:o,usedNS:a}}isValidLookup(e){return void 0!==e&&!(!this.options.returnNull&&null===e)&&!(!this.options.returnEmptyString&&""===e)}getResource(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,r,n):this.resourceStore.getResource(e,t,r,n)}getUsedParamsDetails(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],r=e.replace&&!AA(e.replace);let n=r?e.replace:e;if(r&&"undefined"!==typeof e.count&&(n.count=e.count),this.options.interpolation.defaultVariables&&(n={...this.options.interpolation.defaultVariables,...n}),!r){n={...n};for(const e of t)delete n[e]}return n}static hasDefaultValue(e){const t="defaultValue";for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t===r.substring(0,12)&&void 0!==e[r])return!0;return!1}}const QA=e=>e.charAt(0).toUpperCase()+e.slice(1);class KA{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=WA.create("languageUtils")}getScriptPartFromCode(e){if(!(e=BA(e))||e.indexOf("-")<0)return null;const t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}getLanguagePartFromCode(e){if(!(e=BA(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(AA(e)&&e.indexOf("-")>-1){if("undefined"!==typeof Intl&&"undefined"!==typeof Intl.getCanonicalLocales)try{let t=Intl.getCanonicalLocales(e)[0];if(t&&this.options.lowerCaseLng&&(t=t.toLowerCase()),t)return t}catch(o6){}const t=["hans","hant","latn","cyrl","cans","mong","arab"];let r=e.split("-");return this.options.lowerCaseLng?r=r.map((e=>e.toLowerCase())):2===r.length?(r[0]=r[0].toLowerCase(),r[1]=r[1].toUpperCase(),t.indexOf(r[1].toLowerCase())>-1&&(r[1]=QA(r[1].toLowerCase()))):3===r.length&&(r[0]=r[0].toLowerCase(),2===r[1].length&&(r[1]=r[1].toUpperCase()),"sgn"!==r[0]&&2===r[2].length&&(r[2]=r[2].toUpperCase()),t.indexOf(r[1].toLowerCase())>-1&&(r[1]=QA(r[1].toLowerCase())),t.indexOf(r[2].toLowerCase())>-1&&(r[2]=QA(r[2].toLowerCase()))),r.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach((e=>{if(t)return;const r=this.formatLanguageCode(e);this.options.supportedLngs&&!this.isSupportedCode(r)||(t=r)})),!t&&this.options.supportedLngs&&e.forEach((e=>{if(t)return;const r=this.getLanguagePartFromCode(e);if(this.isSupportedCode(r))return t=r;t=this.options.supportedLngs.find((e=>e===r?e:e.indexOf("-")<0&&r.indexOf("-")<0?void 0:e.indexOf("-")>0&&r.indexOf("-")<0&&e.substring(0,e.indexOf("-"))===r||0===e.indexOf(r)&&r.length>1?e:void 0))})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(e,t){if(!e)return[];if("function"===typeof e&&(e=e(t)),AA(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let r=e[t];return r||(r=e[this.getScriptPartFromCode(t)]),r||(r=e[this.formatLanguageCode(t)]),r||(r=e[this.getLanguagePartFromCode(t)]),r||(r=e.default),r||[]}toResolveHierarchy(e,t){const r=this.getFallbackCodes(t||this.options.fallbackLng||[],e),n=[],o=e=>{e&&(this.isSupportedCode(e)?n.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return AA(e)&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&o(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&o(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&o(this.getLanguagePartFromCode(e))):AA(e)&&o(this.formatLanguageCode(e)),r.forEach((e=>{n.indexOf(e)<0&&o(this.formatLanguageCode(e))})),n}}let XA=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],JA={1:e=>Number(e>1),2:e=>Number(1!=e),3:e=>0,4:e=>Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2),5:e=>Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5),6:e=>Number(1==e?0:e>=2&&e<=4?1:2),7:e=>Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2),8:e=>Number(1==e?0:2==e?1:8!=e&&11!=e?2:3),9:e=>Number(e>=2),10:e=>Number(1==e?0:2==e?1:e<7?2:e<11?3:4),11:e=>Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3),12:e=>Number(e%10!=1||e%100==11),13:e=>Number(0!==e),14:e=>Number(1==e?0:2==e?1:3==e?2:3),15:e=>Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2),16:e=>Number(e%10==1&&e%100!=11?0:0!==e?1:2),17:e=>Number(1==e||e%10==1&&e%100!=11?0:1),18:e=>Number(0==e?0:1==e?1:2),19:e=>Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3),20:e=>Number(1==e?0:0==e||e%100>0&&e%100<20?1:2),21:e=>Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0),22:e=>Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)};const $A=["v1","v2","v3"],qA=["v4"],ek={zero:0,one:1,two:2,few:3,many:4,other:5};class tk{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.languageUtils=e,this.options=t,this.logger=WA.create("pluralResolver"),this.options.compatibilityJSON&&!qA.includes(this.options.compatibilityJSON)||"undefined"!==typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=(()=>{const e={};return XA.forEach((t=>{t.lngs.forEach((r=>{e[r]={numbers:t.nr,plurals:JA[t.fc]}}))})),e})(),this.pluralRulesCache={}}addRule(e,t){this.rules[e]=t}clearCache(){this.pluralRulesCache={}}getRule(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi()){const n=BA("dev"===e?"en":e),o=t.ordinal?"ordinal":"cardinal",a=JSON.stringify({cleanedCode:n,type:o});if(a in this.pluralRulesCache)return this.pluralRulesCache[a];let i;try{i=new Intl.PluralRules(n,{type:o})}catch(r){if(!e.match(/-|_/))return;const n=this.languageUtils.getLanguagePartFromCode(e);i=this.getRule(n,t)}return this.pluralRulesCache[a]=i,i}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}needsPlural(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=this.getRule(e,t);return this.shouldUseIntlApi()?r&&r.resolvedOptions().pluralCategories.length>1:r&&r.numbers.length>1}getPluralFormsOfKey(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(e,r).map((e=>`${t}${e}`))}getSuffixes(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=this.getRule(e,t);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort(((e,t)=>ek[e]-ek[t])).map((e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${e}`)):r.numbers.map((r=>this.getSuffix(e,r,t))):[]}getSuffix(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=this.getRule(e,r);return n?this.shouldUseIntlApi()?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${n.select(t)}`:this.getSuffixRetroCompatible(n,t):(this.logger.warn(`no plural rule found for: ${e}`),"")}getSuffixRetroCompatible(e,t){const r=e.noAbs?e.plurals(t):e.plurals(Math.abs(t));let n=e.numbers[r];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===n?n="plural":1===n&&(n=""));const o=()=>this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString();return"v1"===this.options.compatibilityJSON?1===n?"":"number"===typeof n?`_plural_${n.toString()}`:o():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?o():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}shouldUseIntlApi(){return!$A.includes(this.options.compatibilityJSON)}}const rk=function(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=((e,t,r)=>{const n=MA(e,r);return void 0!==n?n:MA(t,r)})(e,t,r);return!a&&o&&AA(r)&&(a=UA(e,r,n),void 0===a&&(a=UA(t,r,n))),a},nk=e=>e.replace(/\$/g,"$$$$");class ok{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=WA.create("interpolator"),this.options=e,this.format=e.interpolation&&e.interpolation.format||(e=>e),this.init(e)}init(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});const{escape:t,escapeValue:r,useRawValueToEscape:n,prefix:o,prefixEscaped:a,suffix:i,suffixEscaped:s,formatSeparator:l,unescapeSuffix:c,unescapePrefix:u,nestingPrefix:d,nestingPrefixEscaped:f,nestingSuffix:p,nestingSuffixEscaped:h,nestingOptionsSeparator:m,maxReplaces:g,alwaysFormat:v}=e.interpolation;this.escape=void 0!==t?t:_A,this.escapeValue=void 0===r||r,this.useRawValueToEscape=void 0!==n&&n,this.prefix=o?jA(o):a||"{{",this.suffix=i?jA(i):s||"}}",this.formatSeparator=l||",",this.unescapePrefix=c?"":u||"-",this.unescapeSuffix=this.unescapePrefix?"":c||"",this.nestingPrefix=d?jA(d):f||jA("$t("),this.nestingSuffix=p?jA(p):h||jA(")"),this.nestingOptionsSeparator=m||",",this.maxReplaces=g||1e3,this.alwaysFormat=void 0!==v&&v,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(e,t)=>e&&e.source===t?(e.lastIndex=0,e):new RegExp(t,"g");this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(e,t,r,n){let o,a,i;const s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},l=e=>{if(e.indexOf(this.formatSeparator)<0){const o=rk(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(o,void 0,r,{...n,...t,interpolationkey:e}):o}const o=e.split(this.formatSeparator),a=o.shift().trim(),i=o.join(this.formatSeparator).trim();return this.format(rk(t,s,a,this.options.keySeparator,this.options.ignoreJSONStructure),i,r,{...n,...t,interpolationkey:a})};this.resetRegExp();const c=n&&n.missingInterpolationHandler||this.options.missingInterpolationHandler,u=n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>nk(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?nk(this.escape(e)):nk(e)}].forEach((t=>{for(i=0;o=t.regex.exec(e);){const r=o[1].trim();if(a=l(r),void 0===a)if("function"===typeof c){const t=c(e,o,n);a=AA(t)?t:""}else if(n&&Object.prototype.hasOwnProperty.call(n,r))a="";else{if(u){a=o[0];continue}this.logger.warn(`missed to pass in variable ${r} for interpolating ${e}`),a=""}else AA(a)||this.useRawValueToEscape||(a=CA(a));const s=t.safeValue(a);if(e=e.replace(o[0],s),u?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=o[0].length):t.regex.lastIndex=0,i++,i>=this.maxReplaces)break}})),e}nest(e,t){let r,n,o,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=(e,t)=>{const r=this.nestingOptionsSeparator;if(e.indexOf(r)<0)return e;const n=e.split(new RegExp(`${r}[ ]*{`));let a=`{${n[1]}`;e=n[0],a=this.interpolate(a,o);const i=a.match(/'/g),s=a.match(/"/g);(i&&i.length%2===0&&!s||s.length%2!==0)&&(a=a.replace(/'/g,'"'));try{o=JSON.parse(a),t&&(o={...t,...o})}catch(o6){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,o6),`${e}${r}${a}`}return o.defaultValue&&o.defaultValue.indexOf(this.prefix)>-1&&delete o.defaultValue,e};for(;r=this.nestingRegexp.exec(e);){let s=[];o={...a},o=o.replace&&!AA(o.replace)?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let l=!1;if(-1!==r[0].indexOf(this.formatSeparator)&&!/{.*}/.test(r[1])){const e=r[1].split(this.formatSeparator).map((e=>e.trim()));r[1]=e.shift(),s=e,l=!0}if(n=t(i.call(this,r[1].trim(),o),o),n&&r[0]===e&&!AA(n))return n;AA(n)||(n=CA(n)),n||(this.logger.warn(`missed to resolve ${r[1]} for nesting ${e}`),n=""),l&&(n=s.reduce(((e,t)=>this.format(e,t,a.lng,{...a,interpolationkey:r[1].trim()})),n.trim())),e=e.replace(r[0],n),this.regexp.lastIndex=0}return e}}const ak=e=>{const t={};return(r,n,o)=>{let a=o;o&&o.interpolationkey&&o.formatParams&&o.formatParams[o.interpolationkey]&&o[o.interpolationkey]&&(a={...a,[o.interpolationkey]:void 0});const i=n+JSON.stringify(a);let s=t[i];return s||(s=e(BA(n),o),t[i]=s),s(r)}};class ik{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=WA.create("formatter"),this.options=e,this.formats={number:ak(((e,t)=>{const r=new Intl.NumberFormat(e,{...t});return e=>r.format(e)})),currency:ak(((e,t)=>{const r=new Intl.NumberFormat(e,{...t,style:"currency"});return e=>r.format(e)})),datetime:ak(((e,t)=>{const r=new Intl.DateTimeFormat(e,{...t});return e=>r.format(e)})),relativetime:ak(((e,t)=>{const r=new Intl.RelativeTimeFormat(e,{...t});return e=>r.format(e,t.range||"day")})),list:ak(((e,t)=>{const r=new Intl.ListFormat(e,{...t});return e=>r.format(e)}))},this.init(e)}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};this.formatSeparator=t.interpolation.formatSeparator||","}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=ak(t)}format(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const o=t.split(this.formatSeparator);if(o.length>1&&o[0].indexOf("(")>1&&o[0].indexOf(")")<0&&o.find((e=>e.indexOf(")")>-1))){const e=o.findIndex((e=>e.indexOf(")")>-1));o[0]=[o[0],...o.splice(1,e)].join(this.formatSeparator)}return o.reduce(((e,t)=>{const{formatName:o,formatOptions:a}=(e=>{let t=e.toLowerCase().trim();const r={};if(e.indexOf("(")>-1){const n=e.split("(");t=n[0].toLowerCase().trim();const o=n[1].substring(0,n[1].length-1);"currency"===t&&o.indexOf(":")<0?r.currency||(r.currency=o.trim()):"relativetime"===t&&o.indexOf(":")<0?r.range||(r.range=o.trim()):o.split(";").forEach((e=>{if(e){const[t,...n]=e.split(":"),o=n.join(":").trim().replace(/^'+|'+$/g,""),a=t.trim();r[a]||(r[a]=o),"false"===o&&(r[a]=!1),"true"===o&&(r[a]=!0),isNaN(o)||(r[a]=parseInt(o,10))}}))}return{formatName:t,formatOptions:r}})(t);if(this.formats[o]){let t=e;try{const i=n&&n.formatParams&&n.formatParams[n.interpolationkey]||{},s=i.locale||i.lng||n.locale||n.lng||r;t=this.formats[o](e,s,{...a,...n,...i})}catch(i){this.logger.warn(i)}return t}return this.logger.warn(`there was no format function for ${o}`),e}),e)}}class sk extends HA{constructor(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};super(),this.backend=e,this.store=t,this.services=r,this.languageUtils=r.languageUtils,this.options=n,this.logger=WA.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=n.maxParallelReads||10,this.readingCalls=0,this.maxRetries=n.maxRetries>=0?n.maxRetries:5,this.retryTimeout=n.retryTimeout>=1?n.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(r,n.backend,n)}queueLoad(e,t,r,n){const o={},a={},i={},s={};return e.forEach((e=>{let n=!0;t.forEach((t=>{const i=`${e}|${t}`;!r.reload&&this.store.hasResourceBundle(e,t)?this.state[i]=2:this.state[i]<0||(1===this.state[i]?void 0===a[i]&&(a[i]=!0):(this.state[i]=1,n=!1,void 0===a[i]&&(a[i]=!0),void 0===o[i]&&(o[i]=!0),void 0===s[t]&&(s[t]=!0)))})),n||(i[e]=!0)})),(Object.keys(o).length||Object.keys(a).length)&&this.queue.push({pending:a,pendingCount:Object.keys(a).length,loaded:{},errors:[],callback:n}),{toLoad:Object.keys(o),pending:Object.keys(a),toLoadLanguages:Object.keys(i),toLoadNamespaces:Object.keys(s)}}loaded(e,t,r){const n=e.split("|"),o=n[0],a=n[1];t&&this.emit("failedLoading",o,a,t),!t&&r&&this.store.addResourceBundle(o,a,r,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&r&&(this.state[e]=0);const i={};this.queue.forEach((r=>{((e,t,r)=>{const{obj:n,k:o}=TA(e,t,Object);n[o]=n[o]||[],n[o].push(r)})(r.loaded,[o],a),((e,t)=>{void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)})(r,e),t&&r.errors.push(t),0!==r.pendingCount||r.done||(Object.keys(r.loaded).forEach((e=>{i[e]||(i[e]={});const t=r.loaded[e];t.length&&t.forEach((t=>{void 0===i[e][t]&&(i[e][t]=!0)}))})),r.done=!0,r.errors.length?r.callback(r.errors):r.callback())})),this.emit("loaded",i),this.queue=this.queue.filter((e=>!e.done))}read(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,a=arguments.length>5?arguments[5]:void 0;if(!e.length)return a(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:e,ns:t,fcName:r,tried:n,wait:o,callback:a});this.readingCalls++;const i=(i,s)=>{if(this.readingCalls--,this.waitingReads.length>0){const e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}i&&s&&n<this.maxRetries?setTimeout((()=>{this.read.call(this,e,t,r,n+1,2*o,a)}),o):a(i,s)},s=this.backend[r].bind(this.backend);if(2!==s.length)return s(e,t,i);try{const r=s(e,t);r&&"function"===typeof r.then?r.then((e=>i(null,e))).catch(i):i(null,r)}catch(l){i(l)}}prepareLoading(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),n&&n();AA(e)&&(e=this.languageUtils.toResolveHierarchy(e)),AA(t)&&(t=[t]);const o=this.queueLoad(e,t,r,n);if(!o.toLoad.length)return o.pending.length||n(),null;o.toLoad.forEach((e=>{this.loadOne(e)}))}load(e,t,r){this.prepareLoading(e,t,{},r)}reload(e,t,r){this.prepareLoading(e,t,{reload:!0},r)}loadOne(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const r=e.split("|"),n=r[0],o=r[1];this.read(n,o,"read",void 0,void 0,((r,a)=>{r&&this.logger.warn(`${t}loading namespace ${o} for language ${n} failed`,r),!r&&a&&this.logger.log(`${t}loaded namespace ${o} for language ${n}`,a),this.loaded(e,r,a)}))}saveMissing(e,t,r,n,o){let a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},i=arguments.length>6&&void 0!==arguments[6]?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn(`did not save key "${r}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(void 0!==r&&null!==r&&""!==r){if(this.backend&&this.backend.create){const l={...a,isUpdate:o},c=this.backend.create.bind(this.backend);if(c.length<6)try{let o;o=5===c.length?c(e,t,r,n,l):c(e,t,r,n),o&&"function"===typeof o.then?o.then((e=>i(null,e))).catch(i):i(null,o)}catch(s){i(s)}else c(e,t,r,n,i,l)}e&&e[0]&&this.store.addResource(e[0],t,r,n)}}}const lk=()=>({debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if("object"===typeof e[1]&&(t=e[1]),AA(e[1])&&(t.defaultValue=e[1]),AA(e[2])&&(t.tDescription=e[2]),"object"===typeof e[2]||"object"===typeof e[3]){const r=e[3]||e[2];Object.keys(r).forEach((e=>{t[e]=r[e]}))}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}),ck=e=>(AA(e.ns)&&(e.ns=[e.ns]),AA(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),AA(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e),uk=()=>{};class dk extends HA{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;var r;if(super(),this.options=ck(e),this.services={},this.logger=WA,this.modules={external:[]},r=this,Object.getOwnPropertyNames(Object.getPrototypeOf(r)).forEach((e=>{"function"===typeof r[e]&&(r[e]=r[e].bind(r))})),t&&!this.isInitialized&&!e.isClone){if(!this.options.initImmediate)return this.init(e,t),this;setTimeout((()=>{this.init(e,t)}),0)}}init(){var e=this;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,"function"===typeof t&&(r=t,t={}),!t.defaultNS&&!1!==t.defaultNS&&t.ns&&(AA(t.ns)?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));const n=lk();this.options={...n,...this.options,...ck(t)},"v1"!==this.options.compatibilityAPI&&(this.options.interpolation={...n.interpolation,...this.options.interpolation}),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator);const o=e=>e?"function"===typeof e?new e:e:null;if(!this.options.isClone){let t;this.modules.logger?WA.init(o(this.modules.logger),this.options):WA.init(null,this.options),this.modules.formatter?t=this.modules.formatter:"undefined"!==typeof Intl&&(t=ik);const r=new KA(this.options);this.store=new YA(this.options.resources,this.options);const a=this.services;a.logger=WA,a.resourceStore=this.store,a.languageUtils=r,a.pluralResolver=new tk(r,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!t||this.options.interpolation.format&&this.options.interpolation.format!==n.interpolation.format||(a.formatter=o(t),a.formatter.init(a,this.options),this.options.interpolation.format=a.formatter.format.bind(a.formatter)),a.interpolator=new ok(this.options),a.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},a.backendConnector=new sk(o(this.modules.backend),a.resourceStore,a,this.options),a.backendConnector.on("*",(function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];e.emit(t,...n)})),this.modules.languageDetector&&(a.languageDetector=o(this.modules.languageDetector),a.languageDetector.init&&a.languageDetector.init(a,this.options.detection,this.options)),this.modules.i18nFormat&&(a.i18nFormat=o(this.modules.i18nFormat),a.i18nFormat.init&&a.i18nFormat.init(this)),this.translator=new ZA(this.services,this.options),this.translator.on("*",(function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];e.emit(t,...n)})),this.modules.external.forEach((e=>{e.init&&e.init(this)}))}if(this.format=this.options.interpolation.format,r||(r=uk),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&"dev"!==e[0]&&(this.options.lng=e[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((t=>{this[t]=function(){return e.store[t](...arguments)}}));["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((t=>{this[t]=function(){return e.store[t](...arguments),e}}));const a=kA(),i=()=>{const e=(e,t)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),a.resolve(t),r(e,t)};if(this.languages&&"v1"!==this.options.compatibilityAPI&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initImmediate?i():setTimeout(i,0),a}loadResources(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:uk;const r=AA(e)?e:this.language;if("function"===typeof e&&(t=e),!this.options.resources||this.options.partialBundledLanguages){if(r&&"cimode"===r.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return t();const e=[],n=t=>{if(!t)return;if("cimode"===t)return;this.services.languageUtils.toResolveHierarchy(t).forEach((t=>{"cimode"!==t&&e.indexOf(t)<0&&e.push(t)}))};if(r)n(r);else{this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((e=>n(e)))}this.options.preload&&this.options.preload.forEach((e=>n(e))),this.services.backendConnector.load(e,this.options.ns,(e=>{e||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),t(e)}))}else t(null)}reloadResources(e,t,r){const n=kA();return"function"===typeof e&&(r=e,e=void 0),"function"===typeof t&&(r=t,t=void 0),e||(e=this.languages),t||(t=this.options.ns),r||(r=uk),this.services.backendConnector.reload(e,t,(e=>{n.resolve(),r(e)})),n}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&VA.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}setResolvedLanguage(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(let t=0;t<this.languages.length;t++){const e=this.languages[t];if(!(["cimode","dev"].indexOf(e)>-1)&&this.store.hasLanguageSomeTranslations(e)){this.resolvedLanguage=e;break}}}changeLanguage(e,t){var r=this;this.isLanguageChangingTo=e;const n=kA();this.emit("languageChanging",e);const o=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},a=(e,a)=>{a?(o(a),this.translator.changeLanguage(a),this.isLanguageChangingTo=void 0,this.emit("languageChanged",a),this.logger.log("languageChanged",a)):this.isLanguageChangingTo=void 0,n.resolve((function(){return r.t(...arguments)})),t&&t(e,(function(){return r.t(...arguments)}))},i=t=>{e||t||!this.services.languageDetector||(t=[]);const r=AA(t)?t:this.services.languageUtils.getBestMatchFromCodes(t);r&&(this.language||o(r),this.translator.language||this.translator.changeLanguage(r),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(r)),this.loadResources(r,(e=>{a(e,r)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(i):this.services.languageDetector.detect(i):i(e):i(this.services.languageDetector.detect()),n}getFixedT(e,t,r){var n=this;const o=function(e,t){let a;if("object"!==typeof t){for(var i=arguments.length,s=new Array(i>2?i-2:0),l=2;l<i;l++)s[l-2]=arguments[l];a=n.options.overloadTranslationOptionHandler([e,t].concat(s))}else a={...t};a.lng=a.lng||o.lng,a.lngs=a.lngs||o.lngs,a.ns=a.ns||o.ns,""!==a.keyPrefix&&(a.keyPrefix=a.keyPrefix||r||o.keyPrefix);const c=n.options.keySeparator||".";let u;return u=a.keyPrefix&&Array.isArray(e)?e.map((e=>`${a.keyPrefix}${c}${e}`)):a.keyPrefix?`${a.keyPrefix}${c}${e}`:e,n.t(u,a)};return AA(e)?o.lng=e:o.lngs=e,o.ns=t,o.keyPrefix=r,o}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=t.lng||this.resolvedLanguage||this.languages[0],n=!!this.options&&this.options.fallbackLng,o=this.languages[this.languages.length-1];if("cimode"===r.toLowerCase())return!0;const a=(e,t)=>{const r=this.services.backendConnector.state[`${e}|${t}`];return-1===r||0===r||2===r};if(t.precheck){const e=t.precheck(this,a);if(void 0!==e)return e}return!!this.hasResourceBundle(r,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!a(r,e)||n&&!a(o,e)))}loadNamespaces(e,t){const r=kA();return this.options.ns?(AA(e)&&(e=[e]),e.forEach((e=>{this.options.ns.indexOf(e)<0&&this.options.ns.push(e)})),this.loadResources((e=>{r.resolve(),t&&t(e)})),r):(t&&t(),Promise.resolve())}loadLanguages(e,t){const r=kA();AA(e)&&(e=[e]);const n=this.options.preload||[],o=e.filter((e=>n.indexOf(e)<0&&this.services.languageUtils.isSupportedCode(e)));return o.length?(this.options.preload=n.concat(o),this.loadResources((e=>{r.resolve(),t&&t(e)})),r):(t&&t(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";const t=this.services&&this.services.languageUtils||new KA(lk());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){return new dk(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}cloneInstance(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:uk;const r=e.forkResourceStore;r&&delete e.forkResourceStore;const n={...this.options,...e,isClone:!0},o=new dk(n);void 0===e.debug&&void 0===e.prefix||(o.logger=o.logger.clone(e));return["store","services","language"].forEach((e=>{o[e]=this[e]})),o.services={...this.services},o.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},r&&(o.store=new YA(this.store.data,n),o.services.resourceStore=o.store),o.translator=new ZA(o.services,n),o.translator.on("*",(function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];o.emit(e,...r)})),o.init(n,t),o.translator.options=n,o.translator.backendConnector.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},o}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const fk=dk.createInstance();fk.createInstance=dk.createInstance;fk.createInstance,fk.dir,fk.init,fk.loadResources,fk.reloadResources,fk.use,fk.changeLanguage,fk.getFixedT,fk.t,fk.exists,fk.setDefaultNamespace,fk.hasLoadedNamespace,fk.loadNamespaces,fk.loadLanguages;const{slice:pk,forEach:hk}=[];const mk=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,gk={create(e,t,r,n){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{path:"/",sameSite:"strict"};r&&(o.expires=new Date,o.expires.setTime(o.expires.getTime()+60*r*1e3)),n&&(o.domain=n),document.cookie=((e,t,r)=>{const n=r||{};n.path=n.path||"/";let o=`${e}=${encodeURIComponent(t)}`;if(n.maxAge>0){const e=n.maxAge-0;if(Number.isNaN(e))throw new Error("maxAge should be a Number");o+=`; Max-Age=${Math.floor(e)}`}if(n.domain){if(!mk.test(n.domain))throw new TypeError("option domain is invalid");o+=`; Domain=${n.domain}`}if(n.path){if(!mk.test(n.path))throw new TypeError("option path is invalid");o+=`; Path=${n.path}`}if(n.expires){if("function"!==typeof n.expires.toUTCString)throw new TypeError("option expires is invalid");o+=`; Expires=${n.expires.toUTCString()}`}if(n.httpOnly&&(o+="; HttpOnly"),n.secure&&(o+="; Secure"),n.sameSite)switch("string"===typeof n.sameSite?n.sameSite.toLowerCase():n.sameSite){case!0:o+="; SameSite=Strict";break;case"lax":o+="; SameSite=Lax";break;case"strict":o+="; SameSite=Strict";break;case"none":o+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}return o})(e,encodeURIComponent(t),o)},read(e){const t=`${e}=`,r=document.cookie.split(";");for(let n=0;n<r.length;n++){let e=r[n];for(;" "===e.charAt(0);)e=e.substring(1,e.length);if(0===e.indexOf(t))return e.substring(t.length,e.length)}return null},remove(e){this.create(e,"",-1)}};var vk={name:"cookie",lookup(e){let{lookupCookie:t}=e;if(t&&"undefined"!==typeof document)return gk.read(t)||void 0},cacheUserLanguage(e,t){let{lookupCookie:r,cookieMinutes:n,cookieDomain:o,cookieOptions:a}=t;r&&"undefined"!==typeof document&&gk.create(r,e,n,o,a)}},yk={name:"querystring",lookup(e){let t,{lookupQuerystring:r}=e;if("undefined"!==typeof window){let{search:e}=window.location;!window.location.search&&window.location.hash?.indexOf("?")>-1&&(e=window.location.hash.substring(window.location.hash.indexOf("?")));const n=e.substring(1).split("&");for(let o=0;o<n.length;o++){const e=n[o].indexOf("=");if(e>0){n[o].substring(0,e)===r&&(t=n[o].substring(e+1))}}}return t}};let bk=null;const wk=()=>{if(null!==bk)return bk;try{bk="undefined"!==window&&null!==window.localStorage;const e="i18next.translate.boo";window.localStorage.setItem(e,"foo"),window.localStorage.removeItem(e)}catch(o6){bk=!1}return bk};var xk={name:"localStorage",lookup(e){let{lookupLocalStorage:t}=e;if(t&&wk())return window.localStorage.getItem(t)||void 0},cacheUserLanguage(e,t){let{lookupLocalStorage:r}=t;r&&wk()&&window.localStorage.setItem(r,e)}};let Sk=null;const Ak=()=>{if(null!==Sk)return Sk;try{Sk="undefined"!==window&&null!==window.sessionStorage;const e="i18next.translate.boo";window.sessionStorage.setItem(e,"foo"),window.sessionStorage.removeItem(e)}catch(o6){Sk=!1}return Sk};var kk={name:"sessionStorage",lookup(e){let{lookupSessionStorage:t}=e;if(t&&Ak())return window.sessionStorage.getItem(t)||void 0},cacheUserLanguage(e,t){let{lookupSessionStorage:r}=t;r&&Ak()&&window.sessionStorage.setItem(r,e)}},Ck={name:"navigator",lookup(e){const t=[];if("undefined"!==typeof navigator){const{languages:e,userLanguage:r,language:n}=navigator;if(e)for(let o=0;o<e.length;o++)t.push(e[o]);r&&t.push(r),n&&t.push(n)}return t.length>0?t:void 0}},Ik={name:"htmlTag",lookup(e){let t,{htmlTag:r}=e;const n=r||("undefined"!==typeof document?document.documentElement:null);return n&&"function"===typeof n.getAttribute&&(t=n.getAttribute("lang")),t}},Ek={name:"path",lookup(e){let{lookupFromPathIndex:t}=e;if("undefined"===typeof window)return;const r=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(!Array.isArray(r))return;const n="number"===typeof t?t:0;return r[n]?.replace("/","")}},Dk={name:"subdomain",lookup(e){let{lookupFromSubdomainIndex:t}=e;const r="number"===typeof t?t+1:1,n="undefined"!==typeof window&&window.location?.hostname?.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(n)return n[r]}};class Tk{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.type="languageDetector",this.detectors={},this.init(e,t)}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.services=e||{languageUtils:{}},this.options=function(e){return hk.call(pk.call(arguments,1),(t=>{if(t)for(const r in t)void 0===e[r]&&(e[r]=t[r])})),e}(t,this.options||{},{order:["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"],lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:e=>e}),"string"===typeof this.options.convertDetectedLanguage&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=e=>e.replace("-","_")),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=r,this.addDetector(vk),this.addDetector(yk),this.addDetector(xk),this.addDetector(kk),this.addDetector(Ck),this.addDetector(Ik),this.addDetector(Ek),this.addDetector(Dk)}addDetector(e){return this.detectors[e.name]=e,this}detect(e){e||(e=this.options.order);let t=[];return e.forEach((e=>{if(this.detectors[e]){let r=this.detectors[e].lookup(this.options);r&&"string"===typeof r&&(r=[r]),r&&(t=t.concat(r))}})),t=t.map((e=>this.options.convertDetectedLanguage(e))),this.services.languageUtils.getBestMatchFromCodes?t:t.length>0?t[0]:null}cacheUserLanguage(e,t){t||(t=this.options.caches),t&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(e)>-1||t.forEach((t=>{this.detectors[t]&&this.detectors[t].cacheUserLanguage(e,this.options)})))}}Tk.type="languageDetector";const Ok=navigator.userAgent.includes("SesameAndroid/1");let Mk,Pk=0;const jk=new Map,Rk=new Set;let _k;const Nk=new Promise((e=>{_k=e}));function Lk(e){return Rk.add(e),()=>Rk.delete(e)}function Uk(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Ok?new Promise(((r,n)=>{const o="native_"+ ++Pk,a=setTimeout((()=>{jk.delete(o),n(new Error("Native operation timed out"))}),"register"===e?9e4:3e4);jk.set(o,{resolve:r,reject:n,timer:a}),Nk.then((()=>{jk.has(o)&&Mk.postMessage(JSON.stringify({action:`home.${e}`,requestId:o,...t}))}))})):Promise.reject(new Error("Native bridge unavailable"))}function Bk(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Mk&&Mk.postMessage(JSON.stringify({action:`home.${e}`,...t}))}window.addEventListener("message",(e=>{var t;Ok&&e.data===window.__sesamePortNonce&&window.__sesamePortNonce&&1===e.ports.length&&(delete window.__sesamePortNonce,null===(t=Mk)||void 0===t||t.close(),Mk=e.ports[0],Mk.onmessage=e=>{let t,{data:r}=e;try{t=JSON.parse(r)}catch(n){return}if("result"===t.type){const e=t.data,r=jk.get(e.requestId);if(!r)return;clearTimeout(r.timer),jk.delete(e.requestId),e.success?r.resolve(e):r.reject(new Error(e.error||"Native operation failed"))}else Rk.forEach((e=>e(t)))},Mk.start(),_k())}));const Fk="1"===new URLSearchParams(window.location.search).get("appHome");let zk={};const Wk=new Set,Hk=new Set,Yk={onDiscovery:e=>(Hk.add(e),()=>Hk.delete(e)),receiveDiscovery(e){Hk.forEach((t=>t(e)))},subscribe:e=>(Wk.add(e),()=>Wk.delete(e)),getSnapshot:()=>zk,receiveSnapshot(e){zk=Object.fromEntries(e.map((e=>[e.deviceUUID.toUpperCase(),e]))),Wk.forEach((e=>e()))},request(e){return Ok?Uk(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}):Promise.reject(new Error("Native bridge unavailable"))},notify(e){Bk(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{})}},Vk=JSON.parse('{"peripheral":{"deviceFull":"Device Full","deviceUnsupported":"Device not supported","password":"Password","network":"Network status","online":"Online","offline":"Offline","boundDevices":"Paired devices","addDevice":"Add Sesame to\u2026","bindHint":"Add Sesame to be connected within 1 meter of this {{device}}:","removeBinding":"Remove pairing","noDevices":"No available devices","triggerDelay":"Press and hold to activate","sleeping":"Once you leave the settings page, restart after updating SesameOS, or disconnect the Bluetooth connection with your Android phone, the {{device}} will automatically switch to power-saving mode. If you would update SesameOS or add a new Sesame, reset the {{device}} by pressing and holding the reset button with a thin stick for about 5 seconds until the LED turns off. Then, register again from the \u2295 button.","unsupported":"Unsupported device capability","back":"Back","stopEnroll":"Stop enrollment","enroll":"Enroll","retry":"Retry","rename":"Rename","delete":"Delete","hint_card":"Connect  {{device}} with Bluetooth, tap \u2295, and place your NFC card on {{device}} to add the NFC card, tap X when finished.\\n\\nAndroid phones or watches usually have multiple built-in NFC cards, and the NFC card number you add each time may vary. It is recommended that you add all built-in IC cards to reduce the likelihood of misjudgment.","hint_passcode":"Connect {{device}} with Bluetooth, tap \u2295, enter the passcode and press the lock or unlock button to add the passcode, tap X when finished.","hint_face":"Connect {{device}} with Bluetooth, tap \u2295. Show your Face then tap X. Register after mounting for supreme recognition rates.","hint_palm":"Connect {{device}} with Bluetooth, tap \u2295. Show Palm Veins then tap X. Register after mounting for supreme recognition rates.","hint_fingerprint":"Connect {{device}} with Bluetooth, tap \u2295, and place your finger on {{device}} to add a fingerprint, tap X when finished.\\n\\nAlso, by registering the same finger at different angles, the recognition rate can greatly improve\ud83d\udc4d","wifiBindHint":"Add Sesame to be connected within 5 meters of this WiFi Module:","default_card":"NFC Card\ud83d\udd8a\ufe0f","default_fingerprint":"Fingerprint\ud83d\udd8a\ufe0f","default_passcode":"Passcode\ud83d\udd8a\ufe0f","default_face":"Face\ud83d\udd8a\ufe0f","default_palm":"Palm Veins\ud83d\udd8a\ufe0f","nanoName":"Remote nano","openSensorName":"Open Sensor","distance":"Distance","radarDescription":"\u30fbThis is the Radar wake-up detection range.\\n\u30fbOver 10 visits/day: shorten range(even to 0cm) to save power !\\n\u30fb10 or fewer visits/day: extend to max range for the best experience.\\n\u30fbEven at minimum range, pressing the Unlock Button/Side Button triggers face or palm-vein recognition, balancing power saving with a supreme user experience.\\n\u30fbDo not mix batteries of different brands, ages, or model types. \\n\u30fbUse all the batteries, not just 2. More batteries, better load sharing, more voltage stability, longer battery life.","delayValue":"{{value}} second later"},"pages":{"login":{"Email":"E-mail Address","EmailAddressFormatIsIncorrect":"Email address format is incorrect","TermsOfService":"Terms of Service","PrivacyPolicy":"Privacy Policy","IfYouAgreePleaseLogIn":"If you agree, please log in.","And":"and","Login":"Login","EnterVerificationCode":"Enter the verification code sent to your email","ReturnToMailInput":"Back to previous page"},"sesameAccessControlDevice":{"index":{"PersonallyRegisteredDevices":"Personally registered devices","SelectAuthenticationDevice":"Select authentication device","Email":"Email","UserKeyList":"List of key","DeleteFrienddHint":"Delete the Contact","NoResult":"No search results found.","NotifyCenterHint":"Please allow the Sesame app to receive notifications in Phone Settings > Notifications","ShareTheKey":"Share the key of the Sesame","ModifyGuestKeyTag":"Rename the Guest Key","AddDeviceKeyByScan":"Key of the device","AddDeviceKeyByScanHint":"Scan the QR code with Sesame app","AddKeyByScan":"Key of the device","MatterPairingHint":"Hub3 has entered Matter Pairing Mode. Please complete the Matter Pairing within 15 minutes. If the setup fails, please return to this page to re-enter Matter Pairing Mode.","DeviceModel":"Model","WiFiSSID":"WiFi SSID","WiFiPWD":"WiFi Password","InternetStatus":"Internet Status","LED":"LED \ud83d\udd06","EnableRelay1":"Enable Relay 1","EnableRelay2":"Enable Relay 2","RegisterTime":"Registration Time","UUID":"UUID","Matter":"Matter","BindDeviceToHub3Hint":"Add Sesame to be connected within 5 meters of this {{deviceName}}:","BindIRToHub3Hint":"Add Infrared device to be connected within 5 meters of this Hub3:","OSUpdate":"Software Update\uff06Restart","Latest":"(Latest)","UpgradeHint":"Update {{sesame}} firmware: Please ensure {{sesame}} maintains Bluetooth connection with {{hub}} and {{hub}}\'s network environment is stable","AddSesame":"Add Sesame...","DFU_CONNECTING":"Connecting to DFU...","DFU_STARTING":"Initializing DFU...","DFU_ENABLING_DFU_MODE":"Starting DFU...","DFU_VALIDATING":"Validating DFU...","DFU_DISCONNECTING":"Disconnecting DFU...","DFU_COMPLETED":"DFU Completed","DFU_ABORTED":"DFU Aborted","DFU_CONNECTED":"DFU Connected","DFU_STARTED":"DFU Started","DFU_DISCONNECTED":"DFU Disconnected","DropKeyDesc":"Deleting {{deviceName}} won\'t reset {{deviceName}}. To reset {{deviceName}}, please press the reset button with a pin until the LED light turns off.","Battery":"Battery Level","LightV":"High Voltage","HeavyV":"Low Voltage","VoltageValue":"Voltage Value","Percentage":"Percentage","RechargeableBattery":"3.7V Rechargeable Battery","RechargeableBatteryNotice":"The current device does not support battery level optimization for 3.7V rechargeable batteries","SetAngle":"Set Angle","LockWithOpenSensor":"Lock with Open Sensor","AutoLockCountdown":"Auto Lock Countdown","SiriCustomPhrase":"Siri Custom Phrase","connectedIRDevices":"Connected to Sesame IR Device","LoadEarlier":"<< Earlier"},"event":{"manualLock":"Manually Locked","manualUnlock":"Manually Unlocked"}},"ir":{"remote":{"remoteControl":"Remote","sendSuccess":"Sent successfully","sendFail":"Send failed","addIRRemoteFail":"Failed to add remote control","updateIRRemoteFail":"Failed to update remote control","addIRCodeFail":"Failed to add IR button","updateIRCodeFail":"Failed to update IR button","deleteIRCodeFail":"Failed to delete IR button","invalidRemoteParam":"Invalid remote control parameters","learn":"Self-learning","setIRModeFail":"Failed to set IR mode","nameCannotBeEmpty":"Button name cannot be empty","networkIssuePleaseRetry":"Network issue, please retry","networkError":"Device connection failed, please check network connection","learnInstruction":"Click \u2295 icon to enter learning mode, point the remote at Hub3, press the remote button to add new IR button","edit":"Edit name","delete":"Delete","cancel":"Cancel","save":"Save","autoMode":"Auto mode","coolMode":"Cool mode","dehumidifyMode":"Dehumidify mode","fanMode":"Fan mode","heatMode":"Heat mode","fanSpeedAuto":"Auto fan speed","fanSpeedLow":"Low fan speed","fanSpeedMedium":"Medium fan speed","fanSpeedHigh":"High fan speed","windDirectionUp":"Wind direction up","windDirectionCenter":"Wind direction center","windDirectionDown":"Wind direction down","autoSwing":"Auto swing","stopSwing":"Stop swing","on":"On","off":"Off","temperature":"Temperature","operationFailed":"Failed to generate command","handleFailed":"Operation failed","cannotControlAirConditionerAutoMatchRemote":"Cannot control air conditioner? Auto-match remote","selectRemote":"Select remote","loading":"Loading remote list...","searchHint":"Can\'t find your appliance\'s remote model? Try searching for the appliance brand or model.","searching":"Searching...","noSearchResults":"No matching remotes found","noRemoteData":"No remote data available","loadingMore":"Loading more...","loadedAll":"Loaded all {{count}} remotes","matchInstruction":"Point the remote at Hub3, press any button to auto-match","noMatchResults":"No matching {{type}} remote found, please try again","matchingRemote":"Searching for {{type}} remote...","cannotControlAutoMatchRemote":"Cannot control {{type}}? Auto-match remote","mobileDefaultKeyName":"Tap to emit\ud83d\ude80","toMaxRemoteLimit":"You have reached the maximum number of remotes allowed.","power":"Power","mode":"Mode","headShake":"Oscillation","lowSpeed":"Low Speed","mediumSpeed":"Medium Speed","highSpeed":"High Speed","fanSpeed":"Fan Speed","openLight":"Light On","closeLight":"Light Off","brightnessUp":"Brightness +","brightnessDown":"Brightness -","colorTempUp":"Color Temp +","colorTempDown":"Color Temp -","home":"Home","back":"Back","menu":"Menu","ok":"OK","volumeUp":"Volume +","volumeDown":"Volume -","channelUp":"Channel +","channelDown":"Channel -","mute":"Mute","up":"Up","down":"Down","left":"Left","right":"Right","addRemote":"Add infrared data...","detail":"Details","cannotSendInLearnMode":"Please exit learning mode to send commands"},"list":{"airConditioner":"Air Conditioner","tv":"TV","light":"Light","fan":"Fan","learn":"Learn","fromHXD":"From HXD","fromIRremoteESP8266":"From IRremoteESP8266","fromSB":"From SB"}}},"accessCtl":{"auth":{"card":"NFC Card","fingerprint":"Fingerprint","password":"Passcode","face":"Face","palm":"Palm Veins","manageCard":"Manage NFC Card","manageFingerprint":"Manage Fingerprint","managePasscode":"Manage Passcode","manageFace":"Manage Face","managePalmVeins":"Manage Palm Veins","radarDetectionDistance":"Radar Detection Distance"}},"deviceMember":{"user":"User","permission":"Role & Permission","role":{"owner":"Owner","manager":"Manager","guest":"Guest"},"opt":{"revoke":"Revoke","addContact":"Add to Contacts","cancel":"Cancel","ok":"OK"},"qr":"QR Code","qrEncrypted":"Encrypt QR code, scannable for 10 min","nickName":"Nick name","findFriendHint":"Please enter friend\'s email address","modifyDeviceNameHint":"Please enter a new device name","editName":"Edit Name","shareManagement":"Share Access"},"index":{"WelcomeTo":"Welcome to Biz, this is your current usage."},"setting":{"enableNotification":"Notifications","notificationEnabled":"Notification permission granted","notificationDisabled":"Notification permission not granted","shop":"Shop","loginRegist":"Log In / Sign Up","logout":"Log Out","deleteAccount":"Delete account","logoutConfirm":"Are you sure you want to log out?","deleteAccountConfirm":"Are you sure you want to delete your account?","deleteOrgConfirm":"Once deleted, all data in the current organization cannot be recovered (app data is not affected). Are you sure you want to continue?","cancel":"Cancel","delete":"OK"},"navigator":{"Home":"Home","Support":"Support","Settings":"Settings","Vision":"Vision"},"developer":{"ForDeveloper":"For Developer"},"factoryInfo":{"title":"Factory Info","labelStatus":"Label Status","materialCode":"Material Code","materialDesc":"Material Desc","packageStatus":"Package Status","printOperator":"Print Operator","printTime":"Print Time","productionOrderNo":"Production Order No","scrapOperator":"Scrap Operator","scrapTime":"Scrap Time","workOrderNo":"Work Order No","avgCurrent":"Avg Current","maxCurrent":"Max Current","testResult":"Test Result"},"envSnapshot":{"title":"Environment Snapshot","bundleId":"Bundle ID","language":"Language","region":"Region","build":"Build","version":"Version","displayName":"Name","collectedAt":"Collected At","deviceType":"Device Type","cardType":"Card Type","screenWidth":"Screen Width","screenScale":"Screen Scale","systemName":"System Name","screenHeight":"Screen Height","timeZone":"Time Zone","model":"Model","systemVersion":"System Version","batteryLevel":"Battery Level","lightLoadVoltage_mV":"High Voltage","heavyLoadVoltage_mV":"Low Voltage","isRechargeBattery":"3.7V Rechargeable Battery","notification":"Notification","location":"Location","bluetooth":"Bluetooth","network":"Network","noData":"No Data"},"CardList":"Card List","face3":{"binding":"Binding\u2026","success":"Bound successfully","boundAs":"You are now the {{role}} of this Face3","deviceId":"Face3 device ID","retry":"Retry","errInvalidQr":"This QR code could not be read. Make sure you scanned the code shown on the Face3 device","errNotFace3":"This is not a Face3 device QR code","errAlreadyRedeemed":"This QR code has already been used. Open the QR code page on the device again to get a new one","errRevoked":"This QR code is no longer valid. Get a new one from the device","errNotFound":"Invalid QR code. Get a new one from the device","errClaimedByOther":"This device is already bound to another account. Its current owner has to unbind it first","errNotAuthenticated":"Please log in before scanning to bind","errTimeout":"No response from the network. Check your connection and try again","errUnknown":"Binding failed. Please try again later","errLiveTimeout":"The device didn\'t respond. A device that was just woken needs a moment to start up \u2014 please try again shortly.","errLiveUnknown":"Playback failed. Please try again later.","live":"Live","offline":"Offline","justNow":"just now","minutesAgo":"{{n}} min ago","hoursAgo":"{{n}} h ago","daysAgo":"{{n}} d ago","noFace3Devices":"No Face3 devices yet","noFace3DevicesHint":"Open the QR code on the Face3 screen and scan it with the app","listFailed":"Could not load your Face3 devices. Check your connection and try again","viewFace3Devices":"View my Face3 devices","myFace3Devices":"My Face3 devices","addFace3Device":"Add Face3 device","addFace3DeviceHint":"Open the QR code page on the Face3 screen, then scan it","scanQr":"Scan QR code","pasteQr":"Or paste the QR code content","bind":"Bind","cancel":"Cancel","scanNeedsApp":"Scanning only works inside the app. In a browser, paste the QR code content instead","wake":"Wake camera","wakeSent":"Wake-up sent. The camera is starting up.","wakeOffline":"Device is offline and can\'t be woken.","wakeNotBound":"You don\'t have access to this device.","wakeFailed":"Couldn\'t wake the device. Please try again.","wakeNeedsUpdate":"This device needs a firmware update before it can be woken remotely.","errInvalidIdentity":"We couldn\'t verify your identity. Please update the app and try again.","wakeIdentityRejected":"This device\'s identity could not be verified. Please contact support.","liveConnecting":"Connecting to the camera\u2026","liveTapToPlay":"Tap the video for sound","liveNotReady":"The camera isn\'t ready yet. Wake the device and try again.","errNotBound":"You don\'t have access to this device.","errBadConfig":"Invalid connection settings. Please try again.","errPeerFailed":"Couldn\'t establish the video connection. Your network may be blocking it \u2014 try a different network.","errSignaling":"Couldn\'t reach the video service. Check your network and try again.","errSignalingClosed":"The connection was interrupted. Please try again.","errInsecureContext":"This page is not served over HTTPS, so the browser disables the crypto API needed for playback. Open it over https or localhost.","moreActions":"More actions","unbind":"Unbind","unbindConfirmTitle":"Unbind this device?","unbindConfirmBody":"This removes \u201c{{name}}\u201d from your list; you will no longer be able to wake or view it. You can bind it again anytime by scanning its QR code.","unbindSuccess":"Unbound","unbindFailed":"Unbind failed, please try again later"},"appHome":{"noDevices":"Press \u2295 to register a new device, or scan the QR code to obtain access to an already registered device","sesame":"Sesame","vision":"Vision","contacts":"Contacts","me":"Me","networkError":"Unable to connect. Check your network and retry.","retry":"Retry","enableBluetooth":"Turn on Bluetooth","searching":"Searching for nearby unregistered devices. Move the device closer to your phone.","loginRequired":"Please log in","unsupportedQr":"Unsupported QR code","refreshing":"Refreshing"},"lockSettings":{"immediate":"Immediately","off":"Off","seconds":"{{count}} sec","connectBluetooth":"Turn on Bluetooth and connect to the device","failed":"Operation failed. Please retry.","setLocked":"Set Lock Position","setUnlocked":"Set Unlock Position","magnet":"Horizontal calibration","switchPoint":"Set the lock/unlock boundary","frequency":"Angle detection frequency","stopped":"Power Saving Mode","hertz":"{{count}} times/sec","downloading":"Downloading firmware","retry":"Retry","configure":"Please configure the locked/unlocked positions.","instructions":"Please manually turn Sesame to fully locked/unlocked positions, and tap the buttons below to configure the locked/unlocked positions respectively.","minutes":"{{count}} min","hours":"{{count}} hr","back":"Back"},"bleStatus":{"off":"Bluetooth is off","noSignal":"Bluetooth signal not found, please get closer","tooMany":"android has too many Bluetooth connections and is not functioning well. Please turn off and then turn on android\'s Bluetooth."},"lockExtras":{"notificationGranted":"Android notification permissions granted","on":"On","txPower":"BLE TX power","nfcHint":"Setup by tapping the NFC tag","nfcReset":"Delete the NFC tag","widget":"Notification widget","notificationHint":"Android notification permissions NOT granted(Tap here)","autoUnlock":"Auto Unlock","autoHint":"1. Set the red circle around your Sesame. Leaving the circle arms one Auto Unlock. When you return, the door unlocks only after this phone connects to the registered Sesame over nearby Bluetooth.\\n2. If location detection is unstable, make the red circle larger. You can adjust Sesame\\\\\'s location by tapping the map.\\n3. Restart your smartphone if Auto Unlock is not functional.","radius":"Radius: {{value}} m","deleteName":"Delete {{deviceName}}"},"botSettings":{"script":"Script","add":"Add action","duration":"Duration","seconds":"{{value}} sec","type0":"Forward","type1":"Reverse","type2":"Stop","type3":"Sleep","hint":"Click \u2295 to add actions.\\nIf the duration is \\\\\\"forever\\\\\\" and executed, SesameBot2 will never stop until switched to another script and executed.\\nMotor speed varies. Make press time longer than release slightly.","forever":"forever"},"hubWifi":{"title":"Select your WiFi network","refresh":"\u2193You can pull to refresh","password":"Please enter the WiFi password","close":"Close","status":{"ReceivedAdV":"Received Ble","BleConnecting":"Ble Connecting","DiscoverServices":"Waiting gatt","WaitingGatt":"Waiting gatt","WaitingForAuth":"Waiting auth","BleLogining":"Ble Loging in","ReadyToRegister":"Ready to register","Registering":"Registering","Reset":"Reset"}}}'),Gk=JSON.parse('{"peripheral":{"deviceFull":"\u30c7\u30d0\u30a4\u30b9\u6e80\u676f","deviceUnsupported":"\u3053\u306e\u30c7\u30d0\u30a4\u30b9\u306f\u5bfe\u5fdc\u3057\u3066\u3044\u307e\u305b\u3093","password":"\u30d1\u30b9\u30ef\u30fc\u30c9","network":"\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u72b6\u614b","online":"\u30aa\u30f3\u30e9\u30a4\u30f3","offline":"\u30aa\u30d5\u30e9\u30a4\u30f3","boundDevices":"\u9023\u643a\u6e08\u307f\u306e\u30bb\u30b5\u30df","addDevice":"\u30bb\u30b5\u30df\u3092\u8ffd\u52a0\u2026","bindHint":"\u3053\u306e{{device}}\u30681\u30e1\u30fc\u30c8\u30eb\u4ee5\u5185\u306b\u63a5\u7d9a\u3059\u308b\u30bb\u30b5\u30df\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\uff1a","removeBinding":"\u9023\u643a\u3092\u89e3\u9664","noDevices":"\u8ffd\u52a0\u3067\u304d\u308b\u30c7\u30d0\u30a4\u30b9\u304c\u3042\u308a\u307e\u305b\u3093","triggerDelay":"\u8aa4\u64cd\u4f5c\u9632\u6b62\u306e\u9577\u62bc\u3057\u6642\u9593","sleeping":"\u8a2d\u5b9a\u30da\u30fc\u30b8\u304b\u3089\u4e00\u5ea6\u9000\u51fa\u3057\u305f\u5834\u5408\u3001SesameOS\u3092\u66f4\u65b0\u5f8c\u306b\u518d\u8d77\u52d5\u3057\u305f\u5834\u5408\u3001\u307e\u305f\u306f\u30b9\u30de\u30fc\u30c8\u30d5\u30a9\u30f3\u3068\u306eBluetooth\u63a5\u7d9a\u304c\u5207\u308c\u305f\u5834\u5408\u3001{{device}}\u306f\u7701\u30a8\u30cd\u30e2\u30fc\u30c9\u306b\u81ea\u52d5\u7684\u306b\u5207\u308a\u66ff\u308f\u308a\u307e\u3059\u3002SesameOS\u3092\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u305f\u3044\u3001\u307e\u305f\u306f\u65b0\u305f\u306b\u30bb\u30b5\u30df\u3092\u8ffd\u52a0\u3057\u305f\u3044\u5834\u5408\u306f\u3001\u7d30\u3044\u68d2\u3067{{device}}\u306e\u30ea\u30bb\u30c3\u30c8\u30dc\u30bf\u30f3\u3092\u7d045\u79d2\u9593\u9577\u62bc\u3057\u3057\u3001LED\u304c\u6d88\u706f\u3059\u308b\u307e\u3067\u30ea\u30bb\u30c3\u30c8\u3092\u884c\u3063\u3066\u304f\u3060\u3055\u3044\u3002\u305d\u306e\u5f8c\u3001\u518d\u5ea6\u2295\u30dc\u30bf\u30f3\u304b\u3089\u767b\u9332\u3092\u884c\u3063\u3066\u304f\u3060\u3055\u3044\u3002","unsupported":"\u3053\u306e\u6a5f\u80fd\u306b\u306f\u5bfe\u5fdc\u3057\u3066\u3044\u307e\u305b\u3093","back":"\u623b\u308b","stopEnroll":"\u767b\u9332\u3092\u7d42\u4e86","enroll":"\u767b\u9332","retry":"\u518d\u8a66\u884c","rename":"\u540d\u524d\u3092\u5909\u66f4","delete":"\u524a\u9664","hint_card":"{{device}}\u306b\u8fd1\u3065\u304dBluetooth\u63a5\u7d9a\u3057\u3001\u2295 \u3092\u30bf\u30c3\u30d7\u3057\u3066{{device}}\u306bIC\u30ab\u30fc\u30c9\u3092\u304b\u3056\u3057\u3066IC\u30ab\u30fc\u30c9\u3092\u767b\u9332\u3002\u767b\u9332\u5f8c X \u3092\u30bf\u30c3\u30d7\u3002\\n\\nAndroid\u30b9\u30de\u30db\u3084\u30a6\u30a9\u30c3\u30c1\u306f\u901a\u5e38\u3001\u8907\u6570\u306eIC\u30ab\u30fc\u30c9\u3092\u5185\u8535\u3057\u3066\u304a\u308a\u3001\u6bce\u56de\u8ffd\u52a0\u3059\u308bIC\u30ab\u30fc\u30c9\u756a\u53f7\u304c\u5909\u308f\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\u8aa4\u5224\u5b9a\u3092\u6e1b\u3089\u3059\u305f\u3081\u3001\u5185\u8535\u306eIC\u30ab\u30fc\u30c9\u3092\u5168\u3066\u8ffd\u52a0\u3059\u308b\u306e\u3092\u304a\u52e7\u3081\u3057\u307e\u3059\u3002","hint_passcode":"{{device}}\u306b\u8fd1\u3065\u304dBluetooth\u63a5\u7d9a\u3057\u3001\u2295 \u3092\u30bf\u30c3\u30d7\u3057\u3066{{device}}\u306b\u6697\u8a3c\u756a\u53f7\u3092\u5165\u529b\u3057\u3066\u65bd\u9320\u307e\u305f\u89e3\u9320\u30dc\u30bf\u30f3\u3067\u767b\u9332\u3002\u767b\u9332\u5f8c X \u3092\u30bf\u30c3\u30d7\u3002","hint_face":"{{device}}\u306b\u8fd1\u3065\u304dBluetooth\u63a5\u7d9a\u3057\u3001\u2295 \u3092\u30bf\u30c3\u30d7\u3057\u3066\u9854\u3092\u767b\u9332\u3002\u767b\u9332\u5f8c X \u3092\u30bf\u30c3\u30d7\u3002\u53d6\u4ed8\u3051\u305f\u72b6\u614b\u3067\u767b\u9332\u3057\u305f\u65b9\u304c\u8a8d\u8a3c\u7387\u304c\u9065\u304b\u306b\u9ad8\u3044\u3002","hint_palm":"{{device}}\u306b\u8fd1\u3065\u304dBluetooth\u63a5\u7d9a\u3057\u3001\u2295 \u3092\u30bf\u30c3\u30d7\u3057\u3066\u624b\u306e\u3072\u3089\u9759\u8108\u3092\u767b\u9332\u3002\u767b\u9332\u5f8c X \u3092\u30bf\u30c3\u30d7\u3002\u53d6\u4ed8\u3051\u305f\u72b6\u614b\u3067\u767b\u9332\u3057\u305f\u65b9\u304c\u8a8d\u8a3c\u7387\u304c\u9065\u304b\u306b\u9ad8\u3044\u3002","hint_fingerprint":"{{device}}\u306b\u8fd1\u3065\u304dBluetooth\u63a5\u7d9a\u3057\u3001\u2295 \u3092\u30bf\u30c3\u30d7\u3057\u3066{{device}}\u306b\u6307\u3092\u304b\u3056\u3057\u3066\u6307\u7d0b\u3092\u767b\u9332\u3002\u767b\u9332\u5f8c X \u3092\u30bf\u30c3\u30d7\u3002\\n\\n\u307e\u305f\u3001\u6307\u306e\u89d2\u5ea6\u3092\u5909\u3048\u3066\u4f55\u5ea6\u3082\u540c\u4e00\u306e\u6307\u3092\u767b\u9332\u3059\u308b\u3068\u3001\u3055\u3089\u306b\u8a8d\u8b58\u7387\u306f\u5927\u5e45\u5411\u4e0a\ud83d\udc4d","wifiBindHint":"\u3053\u306eWiFi\u30e2\u30b8\u30e5\u30fc\u30eb\u30685\u30e1\u30fc\u30c8\u30eb\u4ee5\u5185\u306b\u63a5\u7d9a\u3059\u308b\u30bb\u30b5\u30df\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\uff1a","default_card":"IC\u30ab\u30fc\u30c9\ud83d\udd8a\ufe0f","default_fingerprint":"\u6307\u7d0b\ud83d\udd8a\ufe0f","default_passcode":"\u6697\u8a3c\u756a\u53f7\ud83d\udd8a\ufe0f","default_face":"\u9854 \ud83d\udd8a\ufe0f","default_palm":"\u624b\u306e\u3072\u3089\u9759\u8108\ud83d\udd8a\ufe0f","nanoName":"\u30ea\u30e2\u30fc\u30c8 nano","openSensorName":"\u30aa\u30fc\u30d7\u30f3\u30bb\u30f3\u30b5\u30fc","distance":"\u8ddd\u96e2","radarDescription":"\u30fb\u30ec\u30fc\u30c0\u30fc\u304c\u30b7\u30b9\u30c6\u30e0\u3092\u7761\u7720\u72b6\u614b\u304b\u3089\u8d77\u3053\u3059\u8ddd\u96e2\u3067\u3059\u3002\\n\u30fb\u4eba\u901a\u308a\u304c\u4e00\u65e510\u56de\u3092\u8d85\u3048\u308b\u5834\u5408\u3001\u7bc0\u96fb\u306e\u305f\u3081\u3001\u30ec\u30fc\u30c0\u30fc\u306e\u63a2\u77e5\u8ddd\u96e2\u3092\u77ed\u3081\u306b\u8a2d\u5b9a\u3057\u3066\u4e0b\u3055\u3044(\u5834\u5408\u306b\u3088\u3063\u30660cm\u306e\u6700\u77ed\u306b)\uff01\\n\u30fb\u4eba\u901a\u308a\u304c\u4e00\u65e510\u56de\u4ee5\u4e0b\u306e\u5834\u5408\u3001\u6700\u9577\u8ddd\u96e2\u306b\u8a2d\u5b9a\u3059\u308b\u3068\u975e\u5e38\u306b\u5feb\u9069\u306b\u3054\u5229\u7528\u9802\u3051\u307e\u3059\u3002\\n\u30fb\u6700\u77ed\u8ddd\u96e2\u306b\u8a2d\u5b9a\u3057\u3066\u3082\u3001\u65bd\u9320\u72b6\u614b\u3067\u300c\u89e3\u9320\u30dc\u30bf\u30f3/\u5074\u9762\u30dc\u30bf\u30f3\u300d\u3092\u62bc\u3059\u3068\u3001\u9854\u8a8d\u8a3c\u3084\u624b\u306e\u3072\u3089\u9759\u8108\u8a8d\u8a3c\u304c\u5373\u5ea7\u306b\u958b\u59cb\u3055\u308c\u308b\u305f\u3081\u3001\u3042\u308b\u7a0b\u5ea6\u3001\u6975\u5ea6\u306a\u7701\u96fb\u529b\u3068\u6975\u4e0a\u306e\u30e6\u30fc\u30b6\u30fc\u4f53\u9a13\u306e\u4e21\u7acb\u3092\u5b9f\u73fe\u3067\u304d\u307e\u3059\u3002\\n\u30fb\u7570\u306a\u308b\u30e1\u30fc\u30ab\u30fc\u30fb\u65b0\u65e7\u30fb\u578b\u756a\u306e\u96fb\u6c60\u3092\u6df7\u7528\u3057\u306a\u3044\u3002\\n\u30fb\u96fb\u6c60\u306f2\u672c\u3067\u306f\u306a\u304f\u3001\u5168\u3066\u5165\u308c\u308b\u4e8b\u3092\u304a\u52e7\u3081\u3057\u307e\u3059\u3002\u591a\u3044\u307b\u3069\u8ca0\u8377\u5206\u6563\u3001\u96fb\u5727\u5b89\u5b9a\u3001\u96fb\u6c60\u5bff\u547d\u3082\u9577\u6301\u3061\u3002","delayValue":"{{value}} \u79d2 \u5f8c"},"pages":{"login":{"Email":"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9","EmailAddressFormatIsIncorrect":"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306e\u5f62\u5f0f\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093","TermsOfService":"\u5229\u7528\u898f\u7d04","PrivacyPolicy":"\u30d7\u30e9\u30a4\u30d0\u30b7\u30fc\u30dd\u30ea\u30b7\u30fc","IfYouAgreePleaseLogIn":"\u306b\u540c\u610f\u3044\u305f\u3060\u3051\u308b\u5834\u5408\u306f\u30ed\u30b0\u30a4\u30f3\u3057\u3066\u4e0b\u3055\u3044","And":"\u3068","Login":"\u30ed\u30b0\u30a4\u30f3","EnterVerificationCode":"\u30e1\u30fc\u30eb\u306b\u9001\u4fe1\u3055\u308c\u305f\u78ba\u8a8d\u30b3\u30fc\u30c9\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044","ReturnToMailInput":"\u524d\u30da\u30fc\u30b8\u306b\u623b\u308b"},"sesameAccessControlDevice":{"index":{"PersonallyRegisteredDevices":"\u500b\u4eba\u3067\u767b\u9332\u6e08\u306e\u30c7\u30d0\u30a4\u30b9","SelectAuthenticationDevice":"\u8a8d\u8a3c\u6a5f\u5668\u3092\u9078\u629e","Email":"E\u30e1\u30fc\u30eb","UserKeyList":"\u5408\u9375\u4e00\u89a7","DeleteFrienddHint":"\u9023\u7d61\u5148\u3092\u524a\u9664","NoResult":"\u691c\u7d22\u7d50\u679c\u306f\uff10\u4ef6\u3067\u3059","NotifyCenterHint":"\u30b9\u30de\u30db\u8a2d\u5b9a>\u901a\u77e5 \u306b\u3066\u3001\u30bb\u30b5\u30df\u30a2\u30d7\u30ea\u306b\u901a\u77e5\u306e\u8a31\u53ef\u3092\u304a\u9858\u3044\u81f4\u3057\u307e\u3059","ShareTheKey":"\u3053\u306e\u30bb\u30b5\u30df\u306e\u9375\u3092\u30b7\u30a7\u30a2","ModifyGuestKeyTag":"\u30b2\u30b9\u30c8\u30ad\u30fc\u540d\u306e\u5909\u66f4","AddDeviceKeyByScan":"\u30c7\u30d0\u30a4\u30b9\u306e\u9375","AddDeviceKeyByScanHint":"\u30bb\u30b5\u30df\u30a2\u30d7\u30ea\u3067QR\u30b3\u30fc\u30c9\u3092\u30b9\u30ad\u30e3\u30f3\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","AddKeyByScan":"\u30c7\u30d0\u30a4\u30b9\u306e\u9375","MatterPairingHint":"Matter\u30da\u30a2\u30ea\u30f3\u30b0\u30e2\u30fc\u30c9\u306b\u5165\u308a\u307e\u3057\u305f\u300215\u5206\u4ee5\u5185\u306bMatter\u30da\u30a2\u30ea\u30f3\u30b0\u3092\u5b8c\u4e86\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b\u3002\u4e07\u304c\u4e00\u5931\u6557\u3057\u305f\u5834\u5408\u306f\u3001\u3053\u306e\u30da\u30fc\u30b8\u306b\u623b\u3063\u3066\u304d\u3066\u518d\u5ea6Matter\u30da\u30a2\u30ea\u30f3\u30b0\u30e2\u30fc\u30c9\u306b\u5165\u3063\u3066\u304f\u3060\u3055\u3044\u307e\u305b","DeviceModel":"\u6a5f\u7a2e","WiFiSSID":"WiFi SSID","WiFiPWD":"WiFi \u30d1\u30b9\u30ef\u30fc\u30c9","InternetStatus":"\u30cd\u30c3\u30c8\u63a5\u7d9a\u72b6\u614b","LED":"LED \ud83d\udd06","EnableRelay1":"\u30ea\u30ec\u30fc1 \u6709\u52b9","EnableRelay2":"\u30ea\u30ec\u30fc2 \u6709\u52b9","RegisterTime":"\u767b\u9332\u6642\u9593","UUID":"UUID","Matter":"Matter","BindDeviceToHub3Hint":"\u3053\u306e{{deviceName}}\u306e5\u30e1\u30fc\u30c8\u30eb\u4ee5\u5185\u306b\u30bb\u30b5\u30df\u3092\u8ffd\u52a0\u3057\u3066\u63a5\u7d9a\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b\uff1a","BindIRToHub3Hint":"\u3053\u306eHub3\u304b\u30895\u30e1\u30fc\u30c8\u30eb\u4ee5\u5185\u306b\u63a5\u7d9a\u3059\u308b\u8d64\u5916\u7dda\u30c7\u30d0\u30a4\u30b9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b\uff1a","OSUpdate":"OS\u66f4\u65b0\u3068\u518d\u8d77\u52d5","Latest":"(\u6700\u65b0)","UpgradeHint":"{{sesame}}\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u66f4\u65b0\uff1a{{sesame}}\u3068{{hub}}\u304cBluetooth\u63a5\u7d9a\u3092\u7dad\u6301\u3057\u3066\u3044\u308b\u3053\u3068\u3001\u304a\u3088\u3073{{hub}}\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u74b0\u5883\u304c\u6b63\u5e38\u3067\u3042\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","AddSesame":"\u30bb\u30b5\u30df\u3092\u8ffd\u52a0...","DFU_CONNECTING":"DFU\u306b\u63a5\u7d9a\u4e2d...","DFU_STARTING":"DFU\u3092\u521d\u671f\u5316\u4e2d...","DFU_ENABLING_DFU_MODE":"DFU\u30e2\u30fc\u30c9\u3092\u958b\u59cb\u4e2d...","DFU_VALIDATING":"DFU\u3092\u691c\u8a3c\u4e2d...","DFU_DISCONNECTING":"DFU\u3092\u5207\u65ad\u4e2d...","DFU_COMPLETED":"DFU\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f","DFU_ABORTED":"DFU\u304c\u4e2d\u6b62\u3055\u308c\u307e\u3057\u305f","DFU_CONNECTED":"DFU\u306b\u63a5\u7d9a\u3055\u308c\u307e\u3057\u305f","DFU_STARTED":"DFU\u304c\u958b\u59cb\u3055\u308c\u307e\u3057\u305f","DFU_DISCONNECTED":"DFU\u304c\u5207\u65ad\u3055\u308c\u307e\u3057\u305f","DropKeyDesc":"{{deviceName}} \u3092\u524a\u9664\u3057\u3066\u3082 {{deviceName}} \u306f\u30ea\u30bb\u30c3\u30c8\u3055\u308c\u307e\u305b\u3093\u3002{{deviceName}} \u3092\u30ea\u30bb\u30c3\u30c8\u3059\u308b\u306b\u306f\u3001LED\u30e9\u30a4\u30c8\u304c\u6d88\u3048\u308b\u307e\u3067\u30d4\u30f3\u3067\u30ea\u30bb\u30c3\u30c8\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u3066\u304f\u3060\u3055\u3044","Battery":"\u96fb\u6c60\u6b8b\u91cf","LightV":"\u9ad8\u96fb\u5727","HeavyV":"\u4f4e\u96fb\u5727","VoltageValue":"\u96fb\u5727\u5024","Percentage":"\u30d1\u30fc\u30bb\u30f3\u30c6\u30fc\u30b8","RechargeableBattery":"3.7V \u5145\u96fb\u5f0f\u96fb\u6c60","RechargeableBatteryNotice":"\u73fe\u5728\u306e\u30c7\u30d0\u30a4\u30b9\u306f3.7V\u5145\u96fb\u6c60\u306e\u6b8b\u91cf\u8868\u793a\u306e\u6700\u9069\u5316\u306b\u306f\u5bfe\u5fdc\u3057\u3066\u304a\u308a\u307e\u305b\u3093","SetAngle":"\u89d2\u5ea6\u306e\u8a2d\u5b9a","LockWithOpenSensor":"\u30aa\u30fc\u30d7\u30f3\u30bb\u30f3\u30b5\u30fc\u3067\u65bd\u9320","AutoLockCountdown":"\u30bf\u30a4\u30de\u30fc\u5f0f\u306e\u30aa\u30fc\u30c8\u30ed\u30c3\u30af","SiriCustomPhrase":"Siri\u97f3\u58f0\u30b3\u30de\u30f3\u30c9","connectedIRDevices":"\u8ffd\u52a0\u6e08\u307f\u306e\u30c7\u30d0\u30a4\u30b9","LoadEarlier":"<< \u4ee5\u524d"},"event":{"manualLock":"\u624b\u52d5\u65bd\u9320","manualUnlock":"\u624b\u52d5\u89e3\u9320"}},"ir":{"remote":{"remoteControl":"\u30ea\u30e2\u30b3\u30f3","sendSuccess":"\u9001\u4fe1\u6210\u529f","sendFail":"\u9001\u4fe1\u5931\u6557","addIRRemoteFail":"\u30ea\u30e2\u30b3\u30f3\u306e\u8ffd\u52a0\u306b\u5931\u6557\u3057\u307e\u3057\u305f","updateIRRemoteFail":"\u30ea\u30e2\u30b3\u30f3\u306e\u66f4\u65b0\u306b\u5931\u6557\u3057\u307e\u3057\u305f","addIRCodeFail":"\u8d64\u5916\u7dda\u30dc\u30bf\u30f3\u306e\u8ffd\u52a0\u306b\u5931\u6557\u3057\u307e\u3057\u305f","updateIRCodeFail":"\u8d64\u5916\u7dda\u30dc\u30bf\u30f3\u306e\u66f4\u65b0\u306b\u5931\u6557\u3057\u307e\u3057\u305f","deleteIRCodeFail":"\u8d64\u5916\u7dda\u30dc\u30bf\u30f3\u306e\u524a\u9664\u306b\u5931\u6557\u3057\u307e\u3057\u305f","invalidRemoteParam":"\u30ea\u30e2\u30b3\u30f3\u30d1\u30e9\u30e1\u30fc\u30bf\u304c\u7121\u52b9\u3067\u3059","learn":"\u81ea\u5df1\u5b66\u7fd2","setIRModeFail":"IR\u30e2\u30fc\u30c9\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f","nameCannotBeEmpty":"\u30dc\u30bf\u30f3\u540d\u3092\u7a7a\u306b\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093","networkIssuePleaseRetry":"\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","networkError":"\u30c7\u30d0\u30a4\u30b9\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u63a5\u7d9a\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","learnInstruction":"\u2295\u30a2\u30a4\u30b3\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u5b66\u7fd2\u30e2\u30fc\u30c9\u306b\u5165\u308a\u3001\u30ea\u30e2\u30b3\u30f3\u3092Hub3\u306b\u5411\u3051\u3066\u3001\u30ea\u30e2\u30b3\u30f3\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u3066\u65b0\u3057\u3044\u8d64\u5916\u7dda\u30dc\u30bf\u30f3\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","edit":"\u540d\u524d\u3092\u7de8\u96c6","delete":"\u524a\u9664","cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","save":"\u4fdd\u5b58","autoMode":"\u81ea\u52d5\u30e2\u30fc\u30c9","coolMode":"\u51b7\u623f\u30e2\u30fc\u30c9","dehumidifyMode":"\u9664\u6e7f\u30e2\u30fc\u30c9","fanMode":"\u9001\u98a8\u30e2\u30fc\u30c9","heatMode":"\u6696\u623f\u30e2\u30fc\u30c9","fanSpeedAuto":"\u81ea\u52d5\u98a8\u91cf","fanSpeedLow":"\u5f31\u98a8","fanSpeedMedium":"\u4e2d\u98a8","fanSpeedHigh":"\u5f37\u98a8","windDirectionUp":"\u4e0a\u5411\u304d\u98a8\u5411","windDirectionCenter":"\u4e2d\u592e\u98a8\u5411","windDirectionDown":"\u4e0b\u5411\u304d\u98a8\u5411","autoSwing":"\u81ea\u52d5\u30b9\u30a4\u30f3\u30b0","stopSwing":"\u30b9\u30a4\u30f3\u30b0\u505c\u6b62","on":"\u30aa\u30f3","off":"\u30aa\u30d5","temperature":"\u6e29\u5ea6","operationFailed":"\u30b3\u30de\u30f3\u30c9\u306e\u751f\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f","handleFailed":"\u64cd\u4f5c\u306b\u5931\u6557\u3057\u307e\u3057\u305f","cannotControlAirConditionerAutoMatchRemote":"\u30a8\u30a2\u30b3\u30f3\u3092\u5236\u5fa1\u3067\u304d\u307e\u305b\u3093\u304b\uff1f\u30ea\u30e2\u30b3\u30f3\u3092\u81ea\u52d5\u30de\u30c3\u30c1\u30f3\u30b0","selectRemote":"\u30ea\u30e2\u30b3\u30f3\u3092\u9078\u629e","loading":"\u30ea\u30e2\u30b3\u30f3\u30ea\u30b9\u30c8\u3092\u8aad\u307f\u8fbc\u307f\u4e2d...","searchHint":"\u304a\u4f7f\u3044\u306e\u5bb6\u96fb\u306e\u30ea\u30e2\u30b3\u30f3\u578b\u756a\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u304b\uff1f\u5bb6\u96fb\u306e\u30d6\u30e9\u30f3\u30c9\u3084\u578b\u756a\u3067\u691c\u7d22\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u307e\u305b\u3002","searching":"\u691c\u7d22\u4e2d...","noSearchResults":"\u4e00\u81f4\u3059\u308b\u30ea\u30e2\u30b3\u30f3\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093","noRemoteData":"\u30ea\u30e2\u30b3\u30f3\u30c7\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093","loadingMore":"\u3055\u3089\u306b\u8aad\u307f\u8fbc\u307f\u4e2d...","loadedAll":"\u5168{{count}}\u500b\u306e\u30ea\u30e2\u30b3\u30f3\u3092\u8aad\u307f\u8fbc\u307f\u307e\u3057\u305f","matchInstruction":"\u30ea\u30e2\u30b3\u30f3\u3092Hub3\u306b\u5411\u3051\u3066\u3001\u4efb\u610f\u306e\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u3066\u81ea\u52d5\u30de\u30c3\u30c1\u30f3\u30b0\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","noMatchResults":"\u4e00\u81f4\u3059\u308b{{type}}\u30ea\u30e2\u30b3\u30f3\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002\u3082\u3046\u4e00\u5ea6\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u307e\u305b","matchingRemote":"{{type}}\u30ea\u30e2\u30b3\u30f3\u3092\u691c\u7d22\u4e2d...","cannotControlAutoMatchRemote":"{{type}}\u3092\u5236\u5fa1\u3067\u304d\u307e\u305b\u3093\u304b\uff1f\u30ea\u30e2\u30b3\u30f3\u3092\u81ea\u52d5\u30de\u30c3\u30c1\u30f3\u30b0","mobileDefaultKeyName":"\u30bf\u30c3\u30d7\u3067\u9001\u4fe1\ud83d\ude80","toMaxRemoteLimit":"\u30ea\u30e2\u30b3\u30f3\u306e\u6700\u5927\u6570\u306b\u9054\u3057\u307e\u3057\u305f\u3002","power":"\u96fb\u6e90","mode":"\u30e2\u30fc\u30c9","headShake":"\u9996\u632f\u308a","lowSpeed":"\u4f4e\u901f","mediumSpeed":"\u4e2d\u901f","highSpeed":"\u9ad8\u901f","fanSpeed":"\u98a8\u901f","openLight":"\u30e9\u30a4\u30c8\u30aa\u30f3","closeLight":"\u30e9\u30a4\u30c8\u30aa\u30d5","brightnessUp":"\u660e\u308b\u3055 +","brightnessDown":"\u660e\u308b\u3055 -","colorTempUp":"\u8272\u6e29\u5ea6 +","colorTempDown":"\u8272\u6e29\u5ea6 -","home":"\u30db\u30fc\u30e0","back":"\u623b\u308b","menu":"\u30e1\u30cb\u30e5\u30fc","ok":"OK","volumeUp":"\u97f3\u91cf +","volumeDown":"\u97f3\u91cf -","channelUp":"\u30c1\u30e3\u30f3\u30cd\u30eb +","channelDown":"\u30c1\u30e3\u30f3\u30cd\u30eb -","mute":"\u30df\u30e5\u30fc\u30c8","up":"\u4e0a","down":"\u4e0b","left":"\u5de6","right":"\u53f3","addRemote":"\u8d64\u5916\u7dda\u30c7\u30fc\u30bf\u3092\u8ffd\u52a0...","detail":"\u8a73\u7d30","cannotSendInLearnMode":"\u5b66\u7fd2\u30e2\u30fc\u30c9\u3092\u7d42\u4e86\u3057\u3066\u304b\u3089\u30b3\u30de\u30f3\u30c9\u3092\u9001\u4fe1\u3057\u3066\u304f\u3060\u3055\u3044"},"list":{"airConditioner":"\u30a8\u30a2\u30b3\u30f3","tv":"\u30c6\u30ec\u30d3","light":"\u7167\u660e","fan":"\u6247\u98a8\u6a5f","learn":"\u5b66\u7fd2","fromHXD":"\u63d0\u4f9b\u5143: HXD","fromIRremoteESP8266":"\u63d0\u4f9b\u5143: IRremoteESP8266","fromSB":"\u63d0\u4f9b\u5143: SB"}}},"accessCtl":{"auth":{"card":"IC\u30ab\u30fc\u30c9","fingerprint":"\u6307\u7d0b","password":"\u6697\u8a3c\u756a\u53f7","face":"\u9854","palm":"\u624b\u306e\u3072\u3089\u9759\u8108","manageCard":"IC\u30ab\u30fc\u30c9\u306e\u7ba1\u7406","manageFingerprint":"\u6307\u7d0b\u306e\u7ba1\u7406","managePasscode":"\u6697\u8a3c\u756a\u53f7\u306e\u7ba1\u7406","manageFace":"\u9854\u8a8d\u8b58\u306e\u7ba1\u7406","managePalmVeins":"\u624b\u306e\u3072\u3089\u9759\u8108\u306e\u7ba1\u7406","radarDetectionDistance":"\u30ec\u30fc\u30c0\u30fc\u306e\\n\u63a2\u77e5\u8ddd\u96e2"}},"deviceMember":{"user":"\u5229\u7528\u8005","permission":"\u5f79\u5272\u3068\u6a29\u9650","role":{"owner":"\u30aa\u30fc\u30ca\u30fc","manager":"\u30de\u30cd\u30b8\u30e3\u30fc","guest":"\u30b2\u30b9\u30c8"},"opt":{"revoke":"\u9375\u3092\u53d6\u308a\u6d88\u3059","addContact":"\u9023\u7d61\u5148\u306b\u8ffd\u52a0","cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","ok":"\u6c7a\u5b9a"},"qr":"QR\u30b3\u30fc\u30c9","qrEncrypted":"QR\u30b3\u30fc\u30c9\u3092\u6697\u53f7\u5316\u300110\u5206\u9593\u306e\u307f\u30b9\u30ad\u30e3\u30f3\u53ef\u80fd","nickName":"\u30e6\u30fc\u30b6\u30fc\u540d","findFriendHint":"\u76f8\u624b\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","modifyDeviceNameHint":"\u65b0\u3057\u3044\u30c7\u30d0\u30a4\u30b9\u540d\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","editName":"\u540d\u524d\u3092\u5909\u66f4","shareManagement":"\u6a29\u9650\u3092\u30b7\u30a7\u30a2"},"index":{"WelcomeTo":"Biz\u3078\u3088\u3046\u3053\u305d\u3001\u73fe\u5728\u306e\u3054\u4f7f\u7528\u72b6\u6cc1\u3067\u3059\u3002"},"setting":{"enableNotification":"\u901a\u77e5","notificationEnabled":"\u901a\u77e5\u306f\u8a31\u53ef\u3055\u308c\u3066\u3044\u307e\u3059","notificationDisabled":"\u901a\u77e5\u306f\u8a31\u53ef\u3055\u308c\u3066\u3044\u307e\u305b\u3093","shop":"\u304a\u5e97","loginRegist":"\u30ed\u30b0\u30a4\u30f3/\u767b\u9332","logout":"\u30ed\u30b0\u30a2\u30a6\u30c8","deleteAccount":"\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u524a\u9664\u3059\u308b","logoutConfirm":"\u30ed\u30b0\u30a2\u30a6\u30c8\u3057\u307e\u3059\u304b\uff1f","deleteAccountConfirm":"\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u524a\u9664\u3057\u307e\u3059\u304b\uff1f","deleteOrgConfirm":"\u524a\u9664\u3059\u308b\u3068\u3001\u73fe\u5728\u306e\u7d44\u7e54\u5185\u306e\u3059\u3079\u3066\u306e\u30c7\u30fc\u30bf\u306f\u5fa9\u5143\u3067\u304d\u307e\u305b\u3093\uff08\u30a2\u30d7\u30ea\u306e\u30c7\u30fc\u30bf\u306b\u306f\u5f71\u97ff\u3057\u307e\u305b\u3093\uff09\u3002\u7d9a\u884c\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b\uff1f","cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","delete":"\u6c7a\u5b9a"},"navigator":{"Home":"\u30db\u30fc\u30e0","Support":"\u30b5\u30dd\u30fc\u30c8","Settings":"\u8a2d\u5b9a","Vision":"\u30d3\u30b8\u30e7\u30f3"},"developer":{"ForDeveloper":"\u958b\u767a\u8005\u5411\u3051"},"factoryInfo":{"title":"\u5de5\u5834\u60c5\u5831","labelStatus":"\u30e9\u30d9\u30eb\u72b6\u614b","materialCode":"\u90e8\u6750\u30b3\u30fc\u30c9","materialDesc":"\u90e8\u6750\u8aac\u660e","packageStatus":"\u68b1\u5305\u72b6\u614b","printOperator":"\u5370\u5237\u62c5\u5f53\u8005","printTime":"\u5370\u5237\u6642\u9593","productionOrderNo":"\u88fd\u9020\u30aa\u30fc\u30c0\u30fc\u756a\u53f7","scrapOperator":"\u5ec3\u68c4\u62c5\u5f53\u8005","scrapTime":"\u5ec3\u68c4\u6642\u9593","workOrderNo":"\u4f5c\u696d\u6307\u793a\u756a\u53f7","avgCurrent":"\u5e73\u5747\u96fb\u6d41","maxCurrent":"\u6700\u5927\u96fb\u6d41","testResult":"\u30c6\u30b9\u30c8\u7d50\u679c"},"envSnapshot":{"title":"\u74b0\u5883\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8","bundleId":"\u30d0\u30f3\u30c9\u30ebID","language":"\u8a00\u8a9e","region":"\u5730\u57df","build":"\u30d3\u30eb\u30c9","version":"\u30d0\u30fc\u30b8\u30e7\u30f3","displayName":"\u540d\u524d","collectedAt":"\u53d6\u5f97\u65e5\u6642","deviceType":"\u30c7\u30d0\u30a4\u30b9\u30bf\u30a4\u30d7","cardType":"\u30ab\u30fc\u30c9\u30bf\u30a4\u30d7","screenWidth":"\u753b\u9762\u5e45","screenScale":"\u753b\u9762\u30b9\u30b1\u30fc\u30eb","systemName":"\u30b7\u30b9\u30c6\u30e0\u540d","screenHeight":"\u753b\u9762\u9ad8\u3055","timeZone":"\u30bf\u30a4\u30e0\u30be\u30fc\u30f3","model":"\u30e2\u30c7\u30eb","systemVersion":"\u30b7\u30b9\u30c6\u30e0\u30d0\u30fc\u30b8\u30e7\u30f3","batteryLevel":"\u30d0\u30c3\u30c6\u30ea\u30fc\u6b8b\u91cf","lightLoadVoltage_mV":"\u9ad8\u96fb\u5727","heavyLoadVoltage_mV":"\u4f4e\u96fb\u5727","isRechargeBattery":"3.7V \u5145\u96fb\u5f0f\u96fb\u6c60","notification":"\u901a\u77e5","location":"\u4f4d\u7f6e\u60c5\u5831","bluetooth":"Bluetooth","network":"\u30cd\u30c3\u30c8\u30ef\u30fc\u30af","noData":"\u30c7\u30fc\u30bf\u306a\u3057"},"CardList":"\u306e\u30ab\u30fc\u30c9\u4e00\u89a7","face3":{"binding":"\u767b\u9332\u4e2d\u2026","success":"\u767b\u9332\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f","boundAs":"\u3053\u306e Face3 \u30c7\u30d0\u30a4\u30b9\u306e{{role}}\u306b\u306a\u308a\u307e\u3057\u305f","deviceId":"Face3 \u30c7\u30d0\u30a4\u30b9ID","retry":"\u518d\u8a66\u884c","errInvalidQr":"QR\u30b3\u30fc\u30c9\u3092\u8aad\u307f\u53d6\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002Face3\u672c\u4f53\u306b\u8868\u793a\u3055\u308c\u305f\u30b3\u30fc\u30c9\u3092\u30b9\u30ad\u30e3\u30f3\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","errNotFace3":"Face3\u30c7\u30d0\u30a4\u30b9\u306eQR\u30b3\u30fc\u30c9\u3067\u306f\u3042\u308a\u307e\u305b\u3093","errAlreadyRedeemed":"\u3053\u306eQR\u30b3\u30fc\u30c9\u306f\u4f7f\u7528\u6e08\u307f\u3067\u3059\u3002\u30c7\u30d0\u30a4\u30b9\u3067QR\u30b3\u30fc\u30c9\u753b\u9762\u3092\u958b\u304d\u76f4\u3057\u3066\u65b0\u3057\u3044\u30b3\u30fc\u30c9\u3092\u53d6\u5f97\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","errRevoked":"\u3053\u306eQR\u30b3\u30fc\u30c9\u306f\u7121\u52b9\u306b\u306a\u308a\u307e\u3057\u305f\u3002\u30c7\u30d0\u30a4\u30b9\u3067\u518d\u53d6\u5f97\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","errNotFound":"QR\u30b3\u30fc\u30c9\u304c\u7121\u52b9\u3067\u3059\u3002\u30c7\u30d0\u30a4\u30b9\u3067\u518d\u53d6\u5f97\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","errClaimedByOther":"\u3053\u306e\u30c7\u30d0\u30a4\u30b9\u306f\u65e2\u306b\u5225\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u306b\u767b\u9332\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u73fe\u5728\u306e\u30aa\u30fc\u30ca\u30fc\u304c\u89e3\u9664\u3059\u308b\u5fc5\u8981\u304c\u3054\u3056\u3044\u307e\u3059","errNotAuthenticated":"\u30ed\u30b0\u30a4\u30f3\u3057\u3066\u304b\u3089\u30b9\u30ad\u30e3\u30f3\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","errTimeout":"\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304b\u3089\u5fdc\u7b54\u304c\u3042\u308a\u307e\u305b\u3093\u3002\u63a5\u7d9a\u3092\u78ba\u8a8d\u3057\u3066\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","errUnknown":"\u767b\u9332\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u3057\u3070\u3089\u304f\u3057\u3066\u304b\u3089\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","errLiveTimeout":"\u30c7\u30d0\u30a4\u30b9\u304b\u3089\u5fdc\u7b54\u304c\u3042\u308a\u307e\u305b\u3093\u3002\u8d77\u52d5\u76f4\u5f8c\u306f\u6e96\u5099\u306b\u5c11\u3057\u6642\u9593\u304c\u304b\u304b\u308a\u307e\u3059\u3002\u3057\u3070\u3089\u304f\u3057\u3066\u304b\u3089\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","errLiveUnknown":"\u518d\u751f\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3057\u3070\u3089\u304f\u3057\u3066\u304b\u3089\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","live":"\u30e9\u30a4\u30d6","offline":"\u30aa\u30d5\u30e9\u30a4\u30f3","justNow":"\u305f\u3063\u305f\u4eca","minutesAgo":"{{n}} \u5206\u524d","hoursAgo":"{{n}} \u6642\u9593\u524d","daysAgo":"{{n}} \u65e5\u524d","noFace3Devices":"\u767b\u9332\u6e08\u307f\u306e Face3 \u30c7\u30d0\u30a4\u30b9\u306f\u3042\u308a\u307e\u305b\u3093","noFace3DevicesHint":"Face3 \u306e\u753b\u9762\u3067QR\u30b3\u30fc\u30c9\u3092\u8868\u793a\u3057\u3001\u30a2\u30d7\u30ea\u3067\u30b9\u30ad\u30e3\u30f3\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","listFailed":"Face3 \u30c7\u30d0\u30a4\u30b9\u4e00\u89a7\u3092\u8aad\u307f\u8fbc\u3081\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u901a\u4fe1\u74b0\u5883\u3092\u3054\u78ba\u8a8d\u306e\u4e0a\u3001\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","viewFace3Devices":"\u30de\u30a4 Face3 \u30c7\u30d0\u30a4\u30b9\u3092\u898b\u308b","myFace3Devices":"\u30de\u30a4 Face3 \u30c7\u30d0\u30a4\u30b9","addFace3Device":"Face3 \u30c7\u30d0\u30a4\u30b9\u3092\u8ffd\u52a0","addFace3DeviceHint":"Face3 \u306e\u753b\u9762\u3067QR\u30b3\u30fc\u30c9\u3092\u8868\u793a\u3057\u3001\u30b9\u30ad\u30e3\u30f3\u3057\u3066\u304f\u3060\u3055\u3044\u307e\u305b","scanQr":"QR\u30b3\u30fc\u30c9\u3092\u30b9\u30ad\u30e3\u30f3","pasteQr":"\u307e\u305f\u306fQR\u30b3\u30fc\u30c9\u306e\u5185\u5bb9\u3092\u8cbc\u308a\u4ed8\u3051","bind":"\u767b\u9332","cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","scanNeedsApp":"\u30b9\u30ad\u30e3\u30f3\u306f\u30a2\u30d7\u30ea\u5185\u3067\u306e\u307f\u5229\u7528\u3067\u304d\u307e\u3059\u3002\u30d6\u30e9\u30a6\u30b6\u3067\u306fQR\u30b3\u30fc\u30c9\u306e\u5185\u5bb9\u3092\u8cbc\u308a\u4ed8\u3051\u3066\u304f\u3060\u3055\u3044\u307e\u305b","wake":"\u30ab\u30e1\u30e9\u3092\u8d77\u52d5","wakeSent":"\u8d77\u52d5\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u307e\u3057\u305f\u3002\u30ab\u30e1\u30e9\u306e\u6e96\u5099\u4e2d\u3067\u3059\u3002","wakeOffline":"\u30c7\u30d0\u30a4\u30b9\u304c\u30aa\u30d5\u30e9\u30a4\u30f3\u306e\u305f\u3081\u8d77\u52d5\u3067\u304d\u307e\u305b\u3093\u3002","wakeNotBound":"\u3053\u306e\u30c7\u30d0\u30a4\u30b9\u3078\u306e\u30a2\u30af\u30bb\u30b9\u6a29\u304c\u3042\u308a\u307e\u305b\u3093\u3002","wakeFailed":"\u8d77\u52d5\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3057\u3070\u3089\u304f\u3057\u3066\u304b\u3089\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","wakeNeedsUpdate":"\u3053\u306e\u30c7\u30d0\u30a4\u30b9\u306f\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u3092\u66f4\u65b0\u3059\u308b\u3068\u30ea\u30e2\u30fc\u30c8\u8d77\u52d5\u3067\u304d\u307e\u3059\u3002","errInvalidIdentity":"\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u78ba\u8a8d\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30a2\u30d7\u30ea\u3092\u66f4\u65b0\u3057\u3066\u304b\u3089\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","wakeIdentityRejected":"\u30c7\u30d0\u30a4\u30b9\u306e\u8b58\u5225\u60c5\u5831\u3092\u78ba\u8a8d\u3067\u304d\u307e\u305b\u3093\u3002\u30b5\u30dd\u30fc\u30c8\u306b\u304a\u554f\u3044\u5408\u308f\u305b\u304f\u3060\u3055\u3044\u3002","liveConnecting":"\u30ab\u30e1\u30e9\u306b\u63a5\u7d9a\u3057\u3066\u3044\u307e\u3059\u2026","liveTapToPlay":"\u30bf\u30c3\u30d7\u3059\u308b\u3068\u97f3\u58f0\u304c\u51fa\u307e\u3059","liveNotReady":"\u30ab\u30e1\u30e9\u306e\u6e96\u5099\u304c\u3067\u304d\u3066\u3044\u307e\u305b\u3093\u3002\u30c7\u30d0\u30a4\u30b9\u3092\u8d77\u52d5\u3057\u3066\u304b\u3089\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","errNotBound":"\u3053\u306e\u30c7\u30d0\u30a4\u30b9\u3078\u306e\u30a2\u30af\u30bb\u30b9\u6a29\u304c\u3042\u308a\u307e\u305b\u3093\u3002","errBadConfig":"\u63a5\u7d9a\u8a2d\u5b9a\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093\u3002\u3082\u3046\u4e00\u5ea6\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","errPeerFailed":"\u6620\u50cf\u306e\u63a5\u7d9a\u3092\u78ba\u7acb\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u906e\u65ad\u3057\u3066\u3044\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\u5225\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","errSignaling":"\u6620\u50cf\u30b5\u30fc\u30d3\u30b9\u306b\u63a5\u7d9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u3054\u78ba\u8a8d\u304f\u3060\u3055\u3044\u3002","errSignalingClosed":"\u63a5\u7d9a\u304c\u4e2d\u65ad\u3055\u308c\u307e\u3057\u305f\u3002\u3082\u3046\u4e00\u5ea6\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","errInsecureContext":"\u3053\u306e\u30da\u30fc\u30b8\u306f HTTPS \u3067\u306f\u306a\u3044\u305f\u3081\u3001\u518d\u751f\u306b\u5fc5\u8981\u306a\u6697\u53f7 API \u304c\u4f7f\u3048\u307e\u305b\u3093\u3002https \u307e\u305f\u306f localhost \u3067\u958b\u3044\u3066\u304f\u3060\u3055\u3044\u3002","moreActions":"\u305d\u306e\u4ed6\u306e\u64cd\u4f5c","unbind":"\u89e3\u9664","unbindConfirmTitle":"\u3053\u306e\u7aef\u672b\u3092\u89e3\u9664\u3057\u307e\u3059\u304b\uff1f","unbindConfirmBody":"\u300c{{name}}\u300d\u3092\u30ea\u30b9\u30c8\u304b\u3089\u524a\u9664\u3057\u307e\u3059\u3002\u4eca\u5f8c\u306f\u8d77\u52d5\u3084\u8996\u8074\u304c\u3067\u304d\u306a\u304f\u306a\u308a\u307e\u3059\u3002QR\u30b3\u30fc\u30c9\u3092\u518d\u5ea6\u30b9\u30ad\u30e3\u30f3\u3059\u308c\u3070\u3001\u3044\u3064\u3067\u3082\u518d\u767b\u9332\u3067\u304d\u307e\u3059\u3002","unbindSuccess":"\u89e3\u9664\u3057\u307e\u3057\u305f","unbindFailed":"\u89e3\u9664\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u3057\u3070\u3089\u304f\u3057\u3066\u304b\u3089\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044"},"appHome":{"noDevices":"\u2295\u304b\u3089\u65b0\u898f\u30c7\u30d0\u30a4\u30b9\u3092\u767b\u9332\u3059\u308b\u304b\u3001QR\u30b3\u30fc\u30c9\u3092\u30b9\u30ad\u30e3\u30f3\u3057\u3066\u767b\u9332\u6e08\u307f\u30c7\u30d0\u30a4\u30b9\u306e\u30a2\u30af\u30bb\u30b9\u6a29\u3092\u53d6\u5f97","sesame":"\u30bb\u30b5\u30df","vision":"\u8996\u899a","contacts":"\u9023\u7d61\u5148","me":"\u81ea\u5206","networkError":"\u63a5\u7d9a\u3067\u304d\u307e\u305b\u3093\u3002\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u78ba\u8a8d\u3057\u3066\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002","retry":"\u518d\u8a66\u884c","enableBluetooth":"Bluetooth\u3092\u30aa\u30f3\u306b\u3057\u3066\u304f\u3060\u3055\u3044","searching":"\u8fd1\u304f\u306e\u672a\u767b\u9332\u30c7\u30d0\u30a4\u30b9\u3092\u691c\u7d22\u3057\u3066\u3044\u307e\u3059\u3002\u30b9\u30de\u30fc\u30c8\u30d5\u30a9\u30f3\u306b\u8fd1\u3065\u3051\u3066\u304f\u3060\u3055\u3044\u3002","loginRequired":"\u30ed\u30b0\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044","unsupportedQr":"\u5bfe\u5fdc\u3057\u3066\u3044\u306a\u3044QR\u30b3\u30fc\u30c9\u3067\u3059","refreshing":"\u66f4\u65b0\u4e2d"},"lockSettings":{"immediate":"\u3059\u3050\u306b","off":"\u30aa\u30d5","seconds":"{{count}} \u79d2","connectBluetooth":"Bluetooth\u3092\u30aa\u30f3\u306b\u3057\u3066\u30c7\u30d0\u30a4\u30b9\u306b\u63a5\u7d9a\u3057\u3066\u304f\u3060\u3055\u3044","failed":"\u64cd\u4f5c\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044","setLocked":"\u65bd\u9320\u306e\u4f4d\u7f6e\u3092\u56fa\u5b9a\u3059\u308b","setUnlocked":"\u89e3\u9320\u306e\u4f4d\u7f6e\u3092\u56fa\u5b9a\u3059\u308b","magnet":"\u6c34\u5e73\u306e\u6821\u6b63","switchPoint":"\u65bd\u89e3\u9320\u306e\u5883\u754c\u3092\u56fa\u5b9a\u3059\u308b","frequency":"\u89d2\u5ea6\u306e\u691c\u77e5\u983b\u5ea6","stopped":"\u7701\u30a8\u30cd\u30e2\u30fc\u30c9","hertz":"1\u79d2\u3042\u305f\u308a{{count}}\u56de","downloading":"\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u4e2d","retry":"\u518d\u8a66\u884c","configure":"\u65bd\u9320\u30fb\u89e3\u9320\u4f4d\u7f6e\u3092\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002","instructions":"\u30bb\u30b5\u30df\u3092\u5b8c\u5168\u306b\u65bd\u9320\u30fb\u89e3\u9320\u3057\u305f\u72b6\u614b\u307e\u3067\u624b\u52d5\u3067\u56de\u3057\u3001\u753b\u9762\u306e\u8a2d\u5b9a\u30dc\u30bf\u30f3\u3092\u305d\u308c\u305e\u308c\u30bf\u30c3\u30d7\u3057\u3066\u304f\u3060\u3055\u3044","minutes":"{{count}} \u5206","hours":"{{count}} \u6642\u9593","back":"\u623b\u308b"},"bleStatus":{"off":"Bluetooth\u304c\u30aa\u30d5","noSignal":"Bluetooth\u4fe1\u53f7\u898b\u3064\u304b\u3089\u305a\u3001\u8fd1\u3065\u3044\u3066\u304f\u3060\u3055\u3044","tooMany":"Android\u3068\u63a5\u7d9a\u3057\u3066\u3044\u308bBluetooth\u304c\u591a\u3059\u304e\u3066\u3046\u307e\u304f\u6a5f\u80fd\u3057\u3066\u3044\u306a\u3044\u305f\u3081\u3001Android\u306eBluetooth\u3092\u30aa\u30d5\u306b\u3057\u3001\u518d\u5ea6\u30aa\u30f3\u306b\u3057\u3066\u304f\u3060\u3055\u3044"},"lockExtras":{"notificationGranted":"Android\u306e\u901a\u77e5\u6a29\u9650\u3092\u53d6\u5f97\u6e08\u307f","on":"\u30aa\u30f3","txPower":"BLE\u9001\u4fe1\u51fa\u529b","nfcHint":"NFC\u30bf\u30b0\u306b\u30b9\u30de\u30fc\u30c8\u30d5\u30a9\u30f3\u3092\u304b\u3056\u3057\u3066\u8a2d\u5b9a","nfcReset":"NFC\u30bf\u30b0\u3092\u524a\u9664","widget":"\u901a\u77e5\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8","notificationHint":"Android\u306e\u901a\u77e5\u6a29\u9650\u304c\u3042\u308a\u307e\u305b\u3093(\u3053\u3053\u3092\u30af\u30ea\u30c3\u30af)","autoUnlock":"\u81ea\u52d5\u89e3\u9320","autoHint":"1. \u30bb\u30b5\u30df\u306e\u5468\u56f2\u306b\u8d64\u3044\u5186\u3092\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u5186\u306e\u5916\u306b\u51fa\u308b\u3068\u3001\u624b\u3076\u3089\u89e3\u9320\u304c1\u56de\u6709\u52b9\u306b\u306a\u308a\u307e\u3059\u3002\u623b\u3063\u305f\u3068\u304d\u3001\u3053\u306e\u30b9\u30de\u30fc\u30c8\u30d5\u30a9\u30f3\u304c\u8fd1\u304f\u306e\u767b\u9332\u6e08\u307f\u30bb\u30b5\u30df\u306bBluetooth\u63a5\u7d9a\u3057\u305f\u5834\u5408\u306e\u307f\u89e3\u9320\u3057\u307e\u3059\u3002\\n2. \u4f4d\u7f6e\u691c\u51fa\u304c\u4e0d\u5b89\u5b9a\u306a\u5834\u5408\u306f\u3001\u8d64\u3044\u5186\u3092\u5e83\u3081\u306b\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u5730\u56f3\u3092\u30bf\u30c3\u30d7\u3057\u3066\u30bb\u30b5\u30df\u306e\u4f4d\u7f6e\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002\\n3. \u624b\u3076\u3089\u89e3\u9320\u304c\u52d5\u4f5c\u3057\u306a\u3044\u5834\u5408\u306f\u3001\u30b9\u30de\u30fc\u30c8\u30d5\u30a9\u30f3\u3092\u518d\u8d77\u52d5\u3057\u3066\u304f\u3060\u3055\u3044\u3002","radius":"\u7bc4\u56f2\uff1a{{value}} m","deleteName":"{{deviceName}}\u3092\u524a\u9664"},"botSettings":{"script":"\u30b9\u30af\u30ea\u30d7\u30c8","add":"\u52d5\u4f5c\u3092\u8ffd\u52a0","duration":"\u5b9f\u884c\u6642\u9593","seconds":"{{value}} \u79d2","type0":"\u6b63\u8ee2","type1":"\u9006\u8ee2","type2":"\u505c\u6b62","type3":"\u5f85\u6a5f","hint":"\u2295\u3092\u30af\u30ea\u30c3\u30af\u3057\u52d5\u4f5c\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002\\n\u79d2\u6570\u3092\u300c\u6c38\u9060\u300d\u306b\u8a2d\u5b9a\u3057\u5b9f\u884c\u3055\u308c\u305f\u5834\u5408\u3001\u4ed6\u306e\u53f0\u672c\u3078\u5207\u66ff\u3048\u3066\u5b9f\u884c\u3057\u306a\u3044\u9650\u308a\u3001SesameBot2\u306f\u6b62\u307e\u308a\u307e\u305b\u3093\u3002\\n\u30e2\u30fc\u30bf\u30fc\u6b63\u9006\u56de\u8ee2\u30b9\u30d4\u30fc\u30c9\u306b\u516c\u5dee\u304c\u3042\u308a\u3001\u62bc\u3059\u6642\u9593\u304c\u623b\u3059\u3088\u308a\u5c11\u3057\u9577\u304f\u3059\u308b\u3088\u3046\u304a\u9858\u3044\u3002","forever":"\u6c38\u9060"},"hubWifi":{"title":"\u3054\u4f7f\u7528\u306eWiFi\u74b0\u5883\u3092\u304a\u9078\u3073\u304f\u3060\u3055\u3044","refresh":"\u2193\u5f15\u3063\u5f35\u3063\u3066\u66f4\u65b0\u3067\u304d\u307e\u3059","password":"WiFi\u74b0\u5883\u306e\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u3054\u5165\u529b\u304f\u3060\u3055\u3044","close":"\u9589\u3058\u308b","status":{"ReceivedAdV":"Received Ble","BleConnecting":"Ble Connecting","DiscoverServices":"Waiting gatt","WaitingGatt":"Waiting gatt","WaitingForAuth":"Waiting auth","BleLogining":"Ble Loging in","ReadyToRegister":"Ready to register","Registering":"Registering","Reset":"Reset"}}}'),Zk=JSON.parse('{"peripheral":{"deviceFull":"\u8bbe\u5907\u5df2\u6ee1","deviceUnsupported":"\u4e0d\u652f\u6301\u8be5\u8bbe\u5907","password":"\u5bc6\u7801","network":"\u7f51\u7edc\u72b6\u6001","online":"\u5728\u7ebf","offline":"\u79bb\u7ebf","boundDevices":"\u5df2\u8fde\u63a5\u7684\u829d\u9ebb\u8bbe\u5907","addDevice":"\u6dfb\u52a0\u829d\u9ebb\u8bbe\u5907\u2026","bindHint":"\u6dfb\u52a0\u8ddd\u79bb\u6b64{{device}} \u4e00\u7c73\u5185\u8981\u8fde\u63a5\u7684Sesame\uff1a","removeBinding":"\u79fb\u9664\u5173\u8054","noDevices":"\u6ca1\u6709\u53ef\u6dfb\u52a0\u7684\u8bbe\u5907","triggerDelay":"\u9632\u8bef\u89e6\u4e4b\u957f\u6309\u542f\u52a8\u65f6\u95f4","sleeping":"\u4e00\u65e6\u60a8\u4ece\u8bbe\u7f6e\u9875\u9762\u9000\u51fa\u3001SesameOS\u66f4\u65b0\u540e\u7684\u91cd\u542f\u3001\u6216\u662f\u4e0e\u624b\u673a\u84dd\u7259\u8fde\u63a5\u65ad\u5f00\uff0c{{device}}\u5c06\u81ea\u52a8\u5207\u6362\u5230\u7701\u7535\u6a21\u5f0f\u3002\u5982\u679c\u60a8\u60f3\u8981\u66f4\u65b0SesameOS\u6216\u6dfb\u52a0\u65b0\u7684Sesame\uff0c\u60a8\u9700\u8981\u7528\u7ec6\u68d2\u6309\u4f4f{{device}}\u7684\u91cd\u7f6e\u6309\u94ae\u7ea65\u79d2\uff0c\u76f4\u5230LED\u706f\u7184\u706d\u4e3a\u6b62\u8fdb\u884c\u91cd\u7f6e\u3002\u7136\u540e\uff0c\u60a8\u53ef\u4ee5\u518d\u6b21\u4ece\u2295\u6309\u94ae\u8fdb\u884c\u6ce8\u518c\u3002","unsupported":"\u8bbe\u5907\u4e0d\u652f\u6301\u6b64\u529f\u80fd","back":"\u8fd4\u56de","stopEnroll":"\u505c\u6b62\u5f55\u5165","enroll":"\u5f55\u5165","retry":"\u91cd\u8bd5","rename":"\u6539\u540d","delete":"\u5220\u9664","hint_card":"\u9760\u8fd1{{device}}\u8fde\u84dd\u7259, \u70b9\u51fb \u2295, \u5c06NFC\u5361\u653e\u5728{{device}}\u4e0a\u4ee5\u6dfb\u52a0NFC\u5361\u3002\u6dfb\u52a0\u540e\u70b9\u51fb X\u3002\\n\\nAndroid\u624b\u673a\u6216\u624b\u8868\u901a\u5e38\u5185\u7f6e\u6709\u591a\u5f20NFC\u5361\uff0c\u6bcf\u6b21\u6dfb\u52a0\u7684NFC\u5361\u53f7\u53ef\u80fd\u4f1a\u53d8\u52a8\uff0c\u6211\u4eec\u5efa\u8bae\u60a8\u6dfb\u52a0\u6240\u6709\u5185\u7f6e\u7684NFC\u5361\uff0c\u4ee5\u51cf\u5c11\u8bef\u5224\u7684\u53ef\u80fd\u6027\u3002","hint_passcode":"\u9760\u8fd1{{device}}\u8fde\u84dd\u7259, \u70b9\u51fb \u2295, \u8f93\u5165\u6570\u5b57\u5bc6\u7801\u5e76\u4ee5\u4e0a\u9501\u6216\u89e3\u9501\u6309\u94ae\u6dfb\u52a0\u6570\u5b57\u5bc6\u7801\u3002\u6dfb\u52a0\u540e\u70b9\u51fb X\u3002","hint_face":"\u9760\u8fd1 {{device}} \u8fde\u84dd\u7259, \u70b9\u51fb \u2295 \u8f93\u5165\u4eba\u8138\u3002\u8f93\u5165\u540e\u70b9\u51fb X\u3002\u5b89\u88c5\u597d\u540e\u518d\u6ce8\u518c\uff0c\u8bc6\u522b\u7387\u4f1a\u6781\u9ad8\u3002","hint_palm":"\u9760\u8fd1 {{device}} \u8fde\u84dd\u7259, \u70b9\u51fb \u2295 \u8f93\u5165\u638c\u9759\u8109\u3002\u8f93\u5165\u540e\u70b9\u51fb X\u3002\u5b89\u88c5\u597d\u540e\u518d\u6ce8\u518c\uff0c\u8bc6\u522b\u7387\u4f1a\u6781\u9ad8\u3002","hint_fingerprint":"\u9760\u8fd1{{device}}\u8fde\u84dd\u7259, \u70b9\u51fb \u2295, \u5c06\u624b\u6307\u653e\u5728{{device}}\u4e0a\u4ee5\u6dfb\u52a0\u6307\u7eb9\u3002\u6dfb\u52a0\u540e\u70b9\u51fb X\u3002\\n\\n\u53e6\u5916\uff0c\u591a\u6b21\u6539\u53d8\u624b\u6307\u89d2\u5ea6 \u8f93\u5165\u540c\u4e00\u624b\u6307\uff0c\u53ef\u4ee5\u5927\u5e45\u63d0\u9ad8\u8bc6\u522b\u7387\ud83d\udc4d","wifiBindHint":"\u6dfb\u52a0\u8ddd\u79bb\u6b64WiFi\u6a21\u5757 5\u7c73\u5185\u8981\u8fde\u63a5\u7684\u829d\u9ebb\u8bbe\u5907\uff1a","default_card":"NFC\u5361\ud83d\udd8a\ufe0f","default_fingerprint":"\u6307\u7eb9\ud83d\udd8a\ufe0f","default_passcode":"\u6570\u5b57\u5bc6\u7801\ud83d\udd8a\ufe0f","default_face":"\u4eba\u8138\ud83d\udd8a\ufe0f","default_palm":"\u638c\u9759\u8109\ud83d\udd8a\ufe0f","nanoName":"\u84dd\u82bd\u9065\u63a7\u5668 nano","openSensorName":"\u5f00\u5173\u4f20\u611f\u5668","distance":"\u8ddd\u79bb","radarDescription":"\u30fb\u8fd9\u662f\u96f7\u8fbe\u5524\u9192\u7cfb\u7edf\u7684\u4fa6\u6d4b\u8ddd\u79bb\u3002\\n\u30fb\u6bcf\u65e5\u4eba\u6d41\u91cf\u8d85\u8fc710\u6b21, \u5219\u8bbe\u7f6e\u77ed\u8ddd\u4ee5\u7701\u7535\uff01(\u751a\u81f3\u662f\u6700\u77ed0cm)\\n\u30fb\u6bcf\u65e5\u4eba\u6d41\u91cf10\u6b21\u4ee5\u4e0b, \u5219\u8bbe\u7f6e\u6700\u957f\u8ddd\u79bb\u4ee5\u83b7\u5f97\u6700\u723d\u4f53\u9a8c\u3002\\n\u30fb\u5373\u4f7f\u4e3a\u6700\u77ed\u8ddd\u79bb\uff0c\u6309\u4e0b\u300c\u5f00\u9501\u6309\u94ae/\u4fa7\u9762\u6309\u94ae\u300d\u5c06\u7acb\u5373\u542f\u52a8\u4eba\u8138\u6216\u638c\u9759\u8109\u8bc6\u522b\uff0c\u517c\u987e\u6781\u5ea6\u7701\u7535\u4e0e\u6700\u723d\u4f53\u9a8c\u3002\\n\u30fb\u8bf7\u52ff\u6df7\u7528\u4e0d\u540c\u54c1\u724c\u3001\u65b0\u65e7\u4e0d\u540c\u6216\u578b\u53f7\u4e0d\u540c\u7684\u7535\u6c60\u3002\\n\u30fb\u5efa\u8bae\u4e0d\u8981\u53ea\u88c52\u8282\uff0c\u88c5\u6ee1\u6240\u6709\u7535\u6c60\u3002\u7535\u6c60\u8d8a\u591a\uff0c\u8d1f\u8f7d\u8d8a\u5206\u6563\uff0c\u7535\u538b\u8d8a\u7a33\u5b9a\uff0c\u7535\u6c60\u5bff\u547d\u8d8a\u957f\u3002","delayValue":"{{value}} \u79d2 \u540e"},"pages":{"login":{"Email":"\u7535\u5b50\u90ae\u4ef6\u5730\u5740","EmailAddressFormatIsIncorrect":"\u7535\u5b50\u90ae\u4ef6\u5730\u5740\u683c\u5f0f\u4e0d\u6b63\u786eXXX","TermsOfService":"\u670d\u52a1\u6761\u6b3e","PrivacyPolicy":"\u9690\u79c1\u653f\u7b56","IfYouAgreePleaseLogIn":"\u767b\u5f55\u89c6\u4e3a\u540c\u610f","And":"\u548c","Login":"\u767b\u5f55","EnterVerificationCode":"\u8f93\u5165\u7535\u5b50\u90ae\u4ef6\u4e2d\u53d1\u9001\u7684\u9a8c\u8bc1\u7801","ReturnToMailInput":"\u8fd4\u56de\u4e0a\u4e00\u9875"},"sesameAccessControlDevice":{"index":{"PersonallyRegisteredDevices":"\u4e2a\u4eba\u6ce8\u518c\u8bbe\u5907","SelectAuthenticationDevice":"\u9009\u62e9\u8ba4\u8bc1\u8bbe\u5907","Email":"\u90ae\u7bb1","UserKeyList":"\u5907\u7528\u5bc6\u94a5\u5217\u8868","DeleteFrienddHint":"\u5220\u9664\u8054\u7cfb\u4eba","NoResult":"\u641c\u7d22\u7ed3\u679c\u4e3a0\u6761","NotifyCenterHint":"\u8bf7\u5728 \u624b\u673a\u8bbe\u7f6e>\u901a\u77e5\u4e2d\uff0c\u5141\u8bb8Sesame\u5e94\u7528\u63a5\u6536\u901a\u77e5","ShareTheKey":"\u5171\u4eab\u829d\u9ebb\u94a5\u5319","ModifyGuestKeyTag":"\u547d\u540d\u5ba2\u4eba\u94a5\u5319","AddDeviceKeyByScan":"\u8bbe\u5907\u7684\u94a5\u5319","AddDeviceKeyByScanHint":"\u7528 \u829d\u9ebbapp \u626b\u63cf\u94a5\u5319\u4e8c\u7ef4\u7801","AddKeyByScan":"\u8bbe\u5907\u7684\u94a5\u5319","MatterPairingHint":"\u5df2\u8fdb\u5165Matter\u914d\u7f51\u6a21\u5f0f\uff0c\u8bf7\u4e8e15\u5206\u949f\u5185\u5b8c\u6210\u914d\u7f51\uff0c\u4e07\u4e00\u5931\u8d25 \u8bf7\u91cd\u65b0\u8fdb\u5165\u6b64\u9875\u4ee5\u91cd\u65b0\u8fdb\u5165Matter\u914d\u7f51\u6a21\u5f0f","DeviceModel":"\u673a\u79cd","WiFiSSID":"WiFi SSID","WiFiPWD":"WiFi \u5bc6\u7801","InternetStatus":"\u7f51\u7edc\u72b6\u6001","LED":"LED \ud83d\udd06","EnableRelay1":"\u4f7f\u80fd\u7ee7\u7535\u5668\u4e00","EnableRelay2":"\u4f7f\u80fd\u7ee7\u7535\u5668\u4e8c","RegisterTime":"\u6ce8\u518c\u65f6\u95f4","UUID":"UUID","Matter":"Matter","BindDeviceToHub3Hint":"\u6dfb\u52a0\u8ddd\u79bb\u6b64{{deviceName}} 5\u7c73\u5185\u8981\u8fde\u63a5\u7684\u829d\u9ebb\u8bbe\u5907:","BindIRToHub3Hint":"\u6dfb\u52a0\u8ddd\u79bb\u6b64Hub3 5\u7c73\u5185\u8981\u8fde\u63a5\u7684\u7ea2\u5916\u7ebf\u8bbe\u5907:","OSUpdate":"\u8f6f\u4ef6\u66f4\u65b0\uff06\u91cd\u542f","Latest":"(\u6700\u65b0)","UpgradeHint":"\u66f4\u65b0{{sesame}}\u56fa\u4ef6\uff1a\u8bf7\u786e\u8ba4{{sesame}}\u4e0e{{hub}}\u7ef4\u6301\u84dd\u7259\u8fde\u63a5\uff0c\u5e76\u786e\u4fdd{{hub}}\u7684\u7f51\u7edc\u73af\u5883\u6b63\u5e38","AddSesame":"\u6dfb\u52a0\u829d\u9ebb\u8bbe\u5907...","DFU_CONNECTING":"\u8fde\u63a5\u5230DFU\u4e2d...","DFU_STARTING":"\u521d\u59cb\u5316DFU\u4e2d...","DFU_ENABLING_DFU_MODE":"\u542f\u52a8DFU\u6a21\u5f0f\u4e2d...","DFU_VALIDATING":"\u9a8c\u8bc1DFU\u4e2d...","DFU_DISCONNECTING":"\u65ad\u5f00DFU\u4e2d...","DFU_COMPLETED":"DFU\u5df2\u5b8c\u6210","DFU_ABORTED":"DFU\u5df2\u4e2d\u6b62","DFU_CONNECTED":"DFU\u5df2\u8fde\u63a5","DFU_STARTED":"DFU\u5df2\u542f\u52a8","DFU_DISCONNECTED":"DFU\u5df2\u65ad\u5f00","DropKeyDesc":"\u5220\u9664 {{deviceName}} \u4e0d\u4f1a\u91cd\u7f6e {{deviceName}}\u3002\u82e5\u8981\u91cd\u7f6e {{deviceName}}\uff0c\u8bf7\u7528\u9488\u6233\u590d\u4f4d\u952e\u76f4\u5230LED\u706f\u7184\u706d","Battery":"\u7535\u6c60\u7535\u91cf","LightV":"\u9ad8\u7535\u538b","HeavyV":"\u4f4e\u7535\u538b","VoltageValue":"\u7535\u538b\u503c","Percentage":"\u767e\u5206\u6bd4","RechargeableBattery":"3.7V \u53ef\u5145\u7535\u7535\u6c60","RechargeableBatteryNotice":"\u5f53\u524d\u8bbe\u5907\u4e0d\u652f\u6301\u5bf9 3.7V \u53ef\u5145\u7535\u7535\u6c60\u7684\u5269\u4f59\u7535\u91cf\u663e\u793a\u8fdb\u884c\u4f18\u5316","SetAngle":"\u8bbe\u7f6e\u89d2\u5ea6","LockWithOpenSensor":"\u7528\u5f00\u5173\u4f20\u611f\u5668\u4e0a\u9501","AutoLockCountdown":"\u5012\u6570\u81ea\u52a8\u4e0a\u9501","SiriCustomPhrase":"Siri \u81ea\u5b9a\u4e49\u77ed\u8bed","connectedIRDevices":"\u5df2\u8fde\u63a5\u8bbe\u5907","LoadEarlier":"<< \u66f4\u65e9"},"event":{"manualLock":"\u624b\u8f6c\u4e0a\u9501","manualUnlock":"\u624b\u8f6c\u89e3\u9501"}},"ir":{"remote":{"remoteControl":"\u9065\u63a7\u5668","sendSuccess":"\u53d1\u9001\u6210\u529f","sendFail":"\u53d1\u9001\u5931\u8d25","addIRRemoteFail":"\u9065\u63a7\u5668\u6dfb\u52a0\u5931\u8d25","updateIRRemoteFail":"\u9065\u63a7\u5668\u66f4\u65b0\u5931\u8d25","addIRCodeFail":"\u7ea2\u5916\u6309\u952e\u6dfb\u52a0\u5931\u8d25","updateIRCodeFail":"\u7ea2\u5916\u6309\u952e\u66f4\u65b0\u5931\u8d25","deleteIRCodeFail":"\u7ea2\u5916\u6309\u952e\u5220\u9664\u5931\u8d25","invalidRemoteParam":"\u9065\u63a7\u5668\u53c2\u6570\u65e0\u6548","learn":"\u81ea\u5b66\u4e60","setIRModeFail":"IR\u6a21\u5f0f\u8bbe\u7f6e\u5931\u8d25","nameCannotBeEmpty":"\u6309\u952e\u540d\u79f0\u4e0d\u80fd\u4e3a\u7a7a","networkIssuePleaseRetry":"\u7f51\u7edc\u5f00\u5c0f\u5dee\u4e86\uff0c\u8bf7\u70b9\u51fb\u91cd\u8bd5","networkError":"\u8bbe\u5907\u8fde\u63a5\u5931\u8d25\uff0c\u8bf7\u68c0\u67e5\u7f51\u7edc\u8fde\u63a5","learnInstruction":"\u70b9\u51fb\u2295 \u56fe\u7247\uff0c\u8fdb\u5165\u5b66\u4e60\u6a21\u5f0f\uff0c\u5c06\u9065\u63a7\u5668\u5bf9\u51c6Hub3\uff0c\u6309\u4e0b\u9065\u63a7\u5668\u6309\u952e\uff0c\u4ee5\u4fbf\u6dfb\u52a0\u65b0\u7684\u7ea2\u5916\u6309\u952e","edit":"\u7f16\u8f91\u540d\u79f0","delete":"\u5220\u9664","cancel":"\u53d6\u6d88","save":"\u4fdd\u5b58","autoMode":"\u81ea\u52a8\u6a21\u5f0f","coolMode":"\u5236\u51b7\u6a21\u5f0f","dehumidifyMode":"\u9664\u6e7f\u6a21\u5f0f","fanMode":"\u9001\u98ce\u6a21\u5f0f","heatMode":"\u5236\u70ed\u6a21\u5f0f","fanSpeedAuto":"\u81ea\u52a8\u98ce\u91cf","fanSpeedLow":"\u6700\u5c0f\u98ce\u91cf","fanSpeedMedium":"\u4e2d\u7b49\u98ce\u91cf","fanSpeedHigh":"\u6700\u5927\u98ce\u91cf","windDirectionUp":"\u5411\u4e0a\u98ce\u5411","windDirectionCenter":"\u5c45\u4e2d\u98ce\u5411","windDirectionDown":"\u5411\u4e0b\u98ce\u5411","autoSwing":"\u81ea\u52a8\u6446\u98ce","stopSwing":"\u505c\u6b62\u6446\u98ce","on":"\u5f00","off":"\u5173","temperature":"\u6e29\u5ea6","operationFailed":"\u751f\u6210\u547d\u4ee4\u5931\u8d25","handleFailed":"\u64cd\u4f5c\u5931\u8d25","cannotControlAirConditionerAutoMatchRemote":"\u65e0\u6cd5\u63a7\u5236\u7a7a\u8c03\uff1f\u81ea\u52a8\u5339\u914d\u9065\u63a7\u5668","selectRemote":"\u9009\u62e9\u9065\u63a7\u5668","loading":"\u9065\u63a7\u5668\u5217\u8868\u52a0\u8f7d\u4e2d...","searchHint":"\u627e\u4e0d\u5230\u60a8\u5bb6\u7535\u7684\u9065\u63a7\u5668\u578b\u53f7\uff1f\u60a8\u53ef\u4ee5\u8bd5\u8bd5\u641c\u7d22\u5bb6\u7535\u7684\u54c1\u724c\u6216\u578b\u53f7\u3002","searching":"\u641c\u7d22\u4e2d...","noSearchResults":"\u672a\u627e\u5230\u5339\u914d\u7684\u9065\u63a7\u5668","noRemoteData":"\u6682\u65e0\u9065\u63a7\u5668\u6570\u636e","loadingMore":"\u52a0\u8f7d\u66f4\u591a\u4e2d...","loadedAll":"\u5df2\u52a0\u8f7d\u5168\u90e8 {{count}} \u4e2a\u9065\u63a7\u5668","matchInstruction":"\u8bf7\u5c06\u9065\u63a7\u5668\u5bf9\u51c6Hub3\uff0c\u6309\u4e0b\u4efb\u610f\u6309\u952e\u8fdb\u884c\u81ea\u52a8\u5339\u914d","noMatchResults":"\u672a\u627e\u5230\u5339\u914d\u7684{{type}}\u9065\u63a7\u5668\uff0c\u8bf7\u518d\u8bd5\u4e00\u6b21","matchingRemote":"\u6b63\u5728\u641c\u7d22{{type}}\u9065\u63a7\u5668...","cannotControlAutoMatchRemote":"\u65e0\u6cd5\u63a7\u5236{{type}}\uff1f\u81ea\u52a8\u5339\u914d\u9065\u63a7\u5668","mobileDefaultKeyName":"\u70b9\u51fb\u53d1\u5c04\ud83d\ude80","toMaxRemoteLimit":"\u60a8\u5df2\u8fbe\u5230\u5141\u8bb8\u7684\u9065\u63a7\u5668\u6700\u5927\u6570\u91cf\u3002","power":"\u7535\u6e90","mode":"\u6a21\u5f0f","headShake":"\u6447\u5934","lowSpeed":"\u4f4e\u901f","mediumSpeed":"\u4e2d\u901f","highSpeed":"\u9ad8\u901f","fanSpeed":"\u98ce\u901f","openLight":"\u5f00\u706f","closeLight":"\u5173\u706f","brightnessUp":"\u4eae\u5ea6+","brightnessDown":"\u4eae\u5ea6-","colorTempUp":"\u8272\u6e29+","colorTempDown":"\u8272\u6e29-","home":"\u4e3b\u9875","back":"\u8fd4\u56de","menu":"\u83dc\u5355","ok":"\u786e\u5b9a","volumeUp":"\u97f3\u91cf+","volumeDown":"\u97f3\u91cf-","channelUp":"\u9891\u9053+","channelDown":"\u9891\u9053-","mute":"\u9759\u97f3","up":"\u4e0a","down":"\u4e0b","left":"\u5de6","right":"\u53f3","addRemote":"\u6dfb\u52a0\u7ea2\u5916\u7ebf\u6570\u636e...","detail":"\u8be6\u60c5","cannotSendInLearnMode":"\u8bf7\u9000\u51fa\u5b66\u4e60\u6a21\u5f0f\u4ee5\u53d1\u9001\u547d\u4ee4"},"list":{"airConditioner":"\u7a7a\u8c03","tv":"\u7535\u89c6","light":"\u7167\u660e\u706f","fan":"\u98ce\u6247","learn":"\u5b66\u4e60","fromHXD":"\u6765\u81ea HXD","fromIRremoteESP8266":"\u6765\u81ea IRremoteESP8266","fromSB":"\u6765\u81ea SB"}}},"accessCtl":{"auth":{"card":"NFC\u5361","fingerprint":"\u6307\u7eb9","password":"\u6570\u5b57\u5bc6\u7801","face":"\u4eba\u8138","palm":"\u638c\u9759\u8109","manageCard":"\u7ba1\u7406NFC\u5361","manageFingerprint":"\u7ba1\u7406\u6307\u7eb9","managePasscode":"\u7ba1\u7406\u6570\u5b57\u5bc6\u7801","manageFace":"\u7ba1\u7406\u4eba\u8138","managePalmVeins":"\u7ba1\u7406\u638c\u9759\u8109","radarDetectionDistance":"\u96f7\u8fbe\u4fa6\u67e5\u8ddd\u79bb"}},"deviceMember":{"user":"\u5229\u7528\u8005","permission":"\u89d2\u8272\u4e0e\u6743\u9650","role":{"owner":"\u7fa4\u4e3b","manager":"\u7ba1\u7406\u5458","guest":"\u6210\u5458"},"opt":{"revoke":"\u64a4\u9500","addContact":"\u6dfb\u52a0\u4e3a\u8054\u7cfb\u4eba","cancel":"\u53d6\u6d88","ok":"\u786e\u5b9a"},"qr":"\u4e8c\u7ef4\u7801","qrEncrypted":"\u52a0\u5bc6 \u4e8c\u7ef4\u7801\uff0c10\u5206\u949f\u5185\u53ef\u626b","nickName":"\u7528\u6237\u540d","findFriendHint":"\u8bf7\u8f93\u5165\u5bf9\u65b9\u7684\u90ae\u7bb1\u53f7","modifyDeviceNameHint":"\u8bf7\u8f93\u5165\u65b0\u7684\u8bbe\u5907\u540d\u79f0","editName":"\u4fee\u6539\u540d\u79f0","shareManagement":"\u5171\u4eab\u6743\u9650"},"index":{"WelcomeTo":"\u6b22\u8fce\u6765\u5230 Biz\uff0c\u76ee\u524d\u7684\u4f7f\u7528\u60c5\u51b5\u3002"},"setting":{"enableNotification":"\u901a\u77e5","notificationEnabled":"\u5df2\u83b7\u5f97\u901a\u77e5\u6743\u9650","notificationDisabled":"\u672a\u83b7\u5f97\u901a\u77e5\u6743\u9650","shop":"\u5c0f\u5e97\u94fa","loginRegist":"\u767b\u5165 / \u6ce8\u518c","logout":"\u767b\u51fa","deleteAccount":"\u5220\u9664\u8d26\u53f7","logoutConfirm":"\u786e\u5b9a\u8981\u767b\u51fa\u5417\uff1f","deleteAccountConfirm":"\u786e\u5b9a\u8981\u5220\u9664\u8d26\u53f7\u5417\uff1f","deleteOrgConfirm":"\u5220\u9664\u540e\u5f53\u524d\u7ec4\u7ec7\u4e2d\u6240\u6709\u6570\u636e\u5c06\u4e0d\u53ef\u6062\u590d\uff08app\u6570\u636e\u4e0d\u53d7\u5f71\u54cd\uff09\uff0c\u786e\u5b9a\u7ee7\u7eed\u5417\uff1f","cancel":"\u53d6\u6d88","delete":"\u786e\u5b9a"},"navigator":{"Home":"\u9996\u9875","Support":"\u652f\u6301","Settings":"\u8bbe\u7f6e","Vision":"\u89c6\u89c9"},"developer":{"ForDeveloper":"\u5f00\u53d1\u8005"},"factoryInfo":{"title":"\u5de5\u5382\u4fe1\u606f","labelStatus":"\u6807\u7b7e\u72b6\u6001","materialCode":"\u7269\u6599\u7f16\u7801","materialDesc":"\u7269\u6599\u63cf\u8ff0","packageStatus":"\u5305\u88c5\u72b6\u6001","printOperator":"\u6253\u5370\u64cd\u4f5c\u5458","printTime":"\u6253\u5370\u65f6\u95f4","productionOrderNo":"\u751f\u4ea7\u8ba2\u5355\u53f7","scrapOperator":"\u62a5\u5e9f\u64cd\u4f5c\u5458","scrapTime":"\u62a5\u5e9f\u65f6\u95f4","workOrderNo":"\u5de5\u5355\u53f7","avgCurrent":"\u5e73\u5747\u7535\u6d41","maxCurrent":"\u6700\u5927\u7535\u6d41","testResult":"\u6d4b\u8bd5\u7ed3\u679c"},"envSnapshot":{"title":"\u73af\u5883\u5feb\u7167","bundleId":"\u5e94\u7528\u5305\u540d","language":"\u8bed\u8a00","region":"\u5730\u533a","build":"\u6784\u5efa\u53f7","version":"\u7248\u672c","displayName":"\u540d\u79f0","collectedAt":"\u91c7\u96c6\u65f6\u95f4","deviceType":"\u8bbe\u5907\u7c7b\u578b","cardType":"\u5361\u7247\u7c7b\u578b","screenWidth":"\u5c4f\u5e55\u5bbd\u5ea6","screenScale":"\u5c4f\u5e55\u7f29\u653e","systemName":"\u7cfb\u7edf\u540d\u79f0","screenHeight":"\u5c4f\u5e55\u9ad8\u5ea6","timeZone":"\u65f6\u533a","model":"\u578b\u53f7","systemVersion":"\u7cfb\u7edf\u7248\u672c","batteryLevel":"\u7535\u91cf","lightLoadVoltage_mV":"\u9ad8\u7535\u538b","heavyLoadVoltage_mV":"\u4f4e\u7535\u538b","isRechargeBattery":"3.7V \u53ef\u5145\u7535\u7535\u6c60","notification":"\u901a\u77e5","location":"\u4f4d\u7f6e","bluetooth":"\u84dd\u7259","network":"\u7f51\u7edc","noData":"\u6682\u65e0\u6570\u636e"},"CardList":"\u5361\u5217\u8868","face3":{"binding":"\u6b63\u5728\u7ed1\u5b9a\u2026","success":"\u7ed1\u5b9a\u6210\u529f","boundAs":"\u60a8\u5df2\u6210\u4e3a\u8fd9\u53f0 Face3 \u8bbe\u5907\u7684{{role}}","deviceId":"Face3 \u8bbe\u5907\u7f16\u53f7","retry":"\u91cd\u8bd5","errInvalidQr":"\u4e8c\u7ef4\u7801\u65e0\u6cd5\u8bc6\u522b\uff0c\u8bf7\u786e\u8ba4\u626b\u7684\u662f Face3 \u8bbe\u5907\u4e0a\u663e\u793a\u7684\u7801","errNotFace3":"\u8fd9\u4e0d\u662f Face3 \u8bbe\u5907\u7684\u4e8c\u7ef4\u7801","errAlreadyRedeemed":"\u8fd9\u4e2a\u4e8c\u7ef4\u7801\u5df2\u7ecf\u88ab\u4f7f\u7528\u8fc7\u4e86\uff0c\u8bf7\u5728\u8bbe\u5907\u4e0a\u91cd\u65b0\u6253\u5f00\u4e8c\u7ef4\u7801\u9875\u9762\u83b7\u53d6\u65b0\u7684\u7801","errRevoked":"\u8fd9\u4e2a\u4e8c\u7ef4\u7801\u5df2\u5931\u6548\uff0c\u8bf7\u5728\u8bbe\u5907\u4e0a\u91cd\u65b0\u83b7\u53d6","errNotFound":"\u4e8c\u7ef4\u7801\u65e0\u6548\uff0c\u8bf7\u5728\u8bbe\u5907\u4e0a\u91cd\u65b0\u83b7\u53d6","errClaimedByOther":"\u8fd9\u53f0\u8bbe\u5907\u5df2\u7ecf\u88ab\u5176\u4ed6\u8d26\u53f7\u7ed1\u5b9a\u3002\u9700\u8981\u5148\u7531\u73b0\u6709\u62e5\u6709\u8005\u89e3\u7ed1\uff0c\u624d\u80fd\u91cd\u65b0\u7ed1\u5b9a","errNotAuthenticated":"\u8bf7\u5148\u767b\u5f55\u540e\u518d\u626b\u7801\u7ed1\u5b9a","errTimeout":"\u7f51\u7edc\u6ca1\u6709\u54cd\u5e94\uff0c\u8bf7\u68c0\u67e5\u7f51\u7edc\u540e\u91cd\u8bd5","errUnknown":"\u7ed1\u5b9a\u5931\u8d25\uff0c\u8bf7\u7a0d\u540e\u91cd\u8bd5","errLiveTimeout":"\u8bbe\u5907\u6ca1\u6709\u54cd\u5e94\u3002\u521a\u5524\u9192\u7684\u8bbe\u5907\u9700\u8981\u4e00\u70b9\u65f6\u95f4\u542f\u52a8\uff0c\u8bf7\u7a0d\u5019\u518d\u8bd5","errLiveUnknown":"\u64ad\u653e\u5931\u8d25\uff0c\u8bf7\u7a0d\u540e\u91cd\u8bd5","live":"\u76f4\u64ad\u4e2d","offline":"\u79bb\u7ebf","justNow":"\u521a\u521a","minutesAgo":"{{n}} \u5206\u949f\u524d","hoursAgo":"{{n}} \u5c0f\u65f6\u524d","daysAgo":"{{n}} \u5929\u524d","noFace3Devices":"\u8fd8\u6ca1\u6709\u7ed1\u5b9a\u7684 Face3 \u8bbe\u5907","noFace3DevicesHint":"\u5728 Face3 \u8bbe\u5907\u5c4f\u5e55\u4e0a\u6253\u5f00\u4e8c\u7ef4\u7801\uff0c\u7528 App \u626b\u7801\u5373\u53ef\u7ed1\u5b9a","listFailed":"Face3 \u8bbe\u5907\u5217\u8868\u52a0\u8f7d\u5931\u8d25\uff0c\u8bf7\u68c0\u67e5\u7f51\u7edc\u540e\u91cd\u8bd5","viewFace3Devices":"\u67e5\u770b\u6211\u7684 Face3 \u8bbe\u5907","myFace3Devices":"\u6211\u7684 Face3 \u8bbe\u5907","addFace3Device":"\u6dfb\u52a0 Face3 \u8bbe\u5907","addFace3DeviceHint":"\u5728 Face3 \u8bbe\u5907\u5c4f\u5e55\u4e0a\u6253\u5f00\u4e8c\u7ef4\u7801\u9875\u9762\uff0c\u7136\u540e\u626b\u7801\u7ed1\u5b9a","scanQr":"\u626b\u63cf\u4e8c\u7ef4\u7801","pasteQr":"\u6216\u7c98\u8d34\u4e8c\u7ef4\u7801\u5185\u5bb9","bind":"\u7ed1\u5b9a","cancel":"\u53d6\u6d88","scanNeedsApp":"\u626b\u7801\u9700\u8981\u5728 App \u5185\u6253\u5f00\u3002\u5728\u6d4f\u89c8\u5668\u91cc\u8bf7\u7c98\u8d34\u4e8c\u7ef4\u7801\u5185\u5bb9","wake":"\u5524\u9192\u6444\u50cf\u5934","wakeSent":"\u5df2\u53d1\u9001\u5524\u9192\uff0c\u8bbe\u5907\u6b63\u5728\u542f\u52a8\u6444\u50cf\u5934","wakeOffline":"\u8bbe\u5907\u79bb\u7ebf\uff0c\u65e0\u6cd5\u5524\u9192","wakeNotBound":"\u4f60\u6ca1\u6709\u8fd9\u53f0\u8bbe\u5907\u7684\u6743\u9650","wakeFailed":"\u5524\u9192\u5931\u8d25\uff0c\u8bf7\u7a0d\u540e\u91cd\u8bd5","wakeNeedsUpdate":"\u8bbe\u5907\u9700\u8981\u5347\u7ea7\u56fa\u4ef6\u540e\u624d\u80fd\u8fdc\u7a0b\u5524\u9192","errInvalidIdentity":"\u8bbe\u5907\u8eab\u4efd\u6821\u9a8c\u672a\u901a\u8fc7\uff0c\u8bf7\u66f4\u65b0 App \u540e\u91cd\u8bd5","wakeIdentityRejected":"\u8bbe\u5907\u8eab\u4efd\u5f02\u5e38\uff0c\u8bf7\u8054\u7cfb\u6280\u672f\u652f\u6301","liveConnecting":"\u6b63\u5728\u8fde\u63a5\u6444\u50cf\u5934\u2026","liveTapToPlay":"\u70b9\u51fb\u753b\u9762\u5f00\u542f\u58f0\u97f3","liveNotReady":"\u6444\u50cf\u5934\u8fd8\u6ca1\u51c6\u5907\u597d\uff0c\u8bf7\u5148\u5524\u9192\u8bbe\u5907\u540e\u91cd\u8bd5","errNotBound":"\u4f60\u6ca1\u6709\u8fd9\u53f0\u8bbe\u5907\u7684\u6743\u9650","errBadConfig":"\u8fde\u63a5\u53c2\u6570\u6709\u8bef\uff0c\u8bf7\u91cd\u8bd5","errPeerFailed":"\u89c6\u9891\u901a\u9053\u6ca1\u80fd\u5efa\u7acb\u3002\u8bbe\u5907\u4e0e\u624b\u673a\u4e4b\u95f4\u53ef\u80fd\u88ab\u7f51\u7edc\u963b\u65ad\uff0c\u6362\u4e2a\u7f51\u7edc\u518d\u8bd5\u8bd5","errSignaling":"\u65e0\u6cd5\u8fde\u63a5\u5230\u89c6\u9891\u670d\u52a1\uff0c\u8bf7\u68c0\u67e5\u7f51\u7edc\u540e\u91cd\u8bd5","errSignalingClosed":"\u8fde\u63a5\u88ab\u4e2d\u65ad\uff0c\u8bf7\u91cd\u8bd5","errInsecureContext":"\u5f53\u524d\u9875\u9762\u4e0d\u662f HTTPS\uff0c\u6d4f\u89c8\u5668\u7981\u7528\u4e86\u52a0\u5bc6\u63a5\u53e3\uff0c\u65e0\u6cd5\u64ad\u653e\u3002\u8bf7\u7528 https \u6216 localhost \u6253\u5f00","moreActions":"\u66f4\u591a\u64cd\u4f5c","unbind":"\u89e3\u7ed1","unbindConfirmTitle":"\u89e3\u7ed1\u8fd9\u53f0\u8bbe\u5907\uff1f","unbindConfirmBody":"\u89e3\u7ed1\u540e\u5c06\u628a\u300c{{name}}\u300d\u4ece\u4f60\u7684\u5217\u8868\u4e2d\u79fb\u9664\uff0c\u4f60\u5c06\u65e0\u6cd5\u518d\u5524\u9192\u6216\u89c2\u770b\u5b83\u3002\u4e4b\u540e\u53ef\u968f\u65f6\u91cd\u65b0\u626b\u7801\u7ed1\u5b9a\u3002","unbindSuccess":"\u5df2\u89e3\u7ed1","unbindFailed":"\u89e3\u7ed1\u5931\u8d25\uff0c\u8bf7\u7a0d\u540e\u91cd\u8bd5"},"appHome":{"noDevices":"\u4ece\u2295\u5f00\u59cb\u6ce8\u518c\u65b0\u8bbe\u5907\uff0c\u6216\u626b\u63cf\u4e8c\u7ef4\u7801\u83b7\u53d6\u5df2\u6ce8\u518c\u8bbe\u5907\u7684\u4f7f\u7528\u6743\u9650","sesame":"\u829d\u9ebb","vision":"\u89c6\u89c9","contacts":"\u901a\u8baf\u5f55","me":"\u6211","networkError":"\u65e0\u6cd5\u8fde\u63a5\uff0c\u8bf7\u68c0\u67e5\u7f51\u7edc\u540e\u91cd\u8bd5","retry":"\u91cd\u8bd5","enableBluetooth":"\u8bf7\u5f00\u542f\u84dd\u7259","searching":"\u6b63\u5728\u641c\u7d22\u9644\u8fd1\u5c1a\u672a\u6ce8\u518c\u7684\u8bbe\u5907\uff0c\u8bf7\u5c06\u8bbe\u5907\u9760\u8fd1\u624b\u673a\u3002","loginRequired":"\u8bf7\u767b\u5f55","unsupportedQr":"\u4e0d\u652f\u6301\u6b64\u4e8c\u7ef4\u7801","refreshing":"\u5237\u65b0\u4e2d"},"lockSettings":{"immediate":"\u9a6c\u4e0a","off":"\u5173\u95ed","seconds":"{{count}} \u79d2","connectBluetooth":"\u8bf7\u5f00\u542f\u84dd\u7259\u5e76\u8fde\u63a5\u8bbe\u5907","failed":"\u64cd\u4f5c\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5","setLocked":"\u8bbe\u7f6e\u4e0a\u9501\u89d2\u5ea6","setUnlocked":"\u8bbe\u7f6e\u89e3\u9501\u89d2\u5ea6","magnet":"\u6c34\u5e73\u6821\u6b63","switchPoint":"\u8bbe\u7f6e\u4e0a\u9501\u30fb\u89e3\u9501\u7684\u5206\u754c","frequency":"\u89d2\u5ea6\u7684\u68c0\u6d4b\u9891\u7387","stopped":"\u7701\u7535\u6a21\u5f0f","hertz":"{{count}} \u6b21/\u79d2","downloading":"\u6b63\u5728\u4e0b\u8f7d\u56fa\u4ef6","retry":"\u91cd\u8bd5","configure":"\u8bf7\u8bbe\u7f6e\u5f00\u9501\u89d2\u5ea6\u4e0e\u5173\u9501\u89d2\u5ea6","instructions":"\u8bf7\u624b\u8f6c\u829d\u9ebb\u8bbe\u5907\u81f3 \u5b8c\u5168\u4e0a\u9501/\u5b8c\u5168\u89e3\u9501 \u4f4d\u7f6e\uff0c\\n\u7136\u540e\u5206\u522b\u70b9\u51fb\u4e0b\u65b9\u6309\u94ae\u8bbe\u7f6e \u4e0a\u9501\u89d2\u5ea6/\u89e3\u9501\u89d2\u5ea6","minutes":"{{count}} \u5206","hours":"{{count}} \u5c0f\u65f6","back":"\u8fd4\u56de"},"bleStatus":{"off":"\u624b\u673a\u84dd\u7259\u672a\u5f00\u542f","noSignal":"\u627e\u4e0d\u5230\u84dd\u7259\u4fe1\u53f7, \u8bf7\u9760\u8fd1","tooMany":"android\u8fde\u4e86\u592a\u591a\u84dd\u82bd\u800c\u4e0d\u7075\u5149\u4e86,\u8bf7\u91cd\u5f00android\u84dd\u82bd"},"lockExtras":{"notificationGranted":"\u5df2\u83b7\u5f97 \u5b89\u5353\u7684 \u901a\u77e5\u6743\u9650","on":"\u5f00\u542f","txPower":"BLE \u53d1\u5c04\u529f\u7387","nfcHint":"\u5c06\u624b\u673a\u9760\u8fd1NFC\u6807\u7b7e\u8fdb\u884c\u8bbe\u7f6e","nfcReset":"\u5220\u9664NFC\u6807\u7b7e","widget":"\u901a\u77e5\u680f\u5c0f\u90e8\u4ef6","notificationHint":"\u672a\u83b7\u5f97 \u5b89\u5353\u7684 \u901a\u77e5\u6743\u9650(\u6309\u8fd9\u91cc)","autoUnlock":"\u81ea\u52a8\u89e3\u9501","autoHint":"1. \u8bf7\u5728\u829d\u9ebb\u5468\u56f4\u8bbe\u7f6e\u7ea2\u8272\u5706\u5708\u3002\u79bb\u5f00\u5706\u5708\u540e\u4f1a\u542f\u7528\u4e00\u6b21\u81ea\u52a8\u89e3\u9501\uff1b\u8fd4\u56de\u65f6\uff0c\u53ea\u6709\u672c\u624b\u673a\u901a\u8fc7\u9644\u8fd1\u7684\u84dd\u7259\u8fde\u63a5\u5230\u5df2\u767b\u8bb0\u7684\u829d\u9ebb\u540e\uff0c\u95e8\u9501\u624d\u4f1a\u89e3\u9501\u3002\\n2. \u5982\u679c\u4f4d\u7f6e\u68c0\u6d4b\u4e0d\u7a33\u5b9a\uff0c\u8bf7\u5c06\u7ea2\u8272\u5706\u5708\u8bbe\u7f6e\u5f97\u66f4\u5927\u3002\u60a8\u53ef\u4ee5\u70b9\u51fb\u5730\u56fe\u6765\u8bbe\u7f6e\u829d\u9ebb\u7684\u4f4d\u7f6e\u3002\\n3. \u5982\u679c\u624b\u673a\u65e0\u6cd5\u6b63\u5e38\u542f\u52a8\u81ea\u52a8\u89e3\u9501\u529f\u80fd\uff0c\u8bf7\u5148\u91cd\u65b0\u542f\u52a8\u624b\u673a\u3002","radius":"\u8303\u56f4\uff1a{{value}} \u7c73","deleteName":"\u5220\u9664{{deviceName}}"},"botSettings":{"script":"\u5267\u672c","add":"\u6dfb\u52a0\u52a8\u4f5c","duration":"\u6267\u884c\u65f6\u95f4","seconds":"{{value}} \u79d2","type0":"\u6b63\u8f6c","type1":"\u53cd\u8f6c","type2":"\u505c\u6b62","type3":"\u7b49\u5f85","hint":"\u70b9\u51fb\u2295\u6dfb\u52a0\u52a8\u4f5c\u3002\\n\u5982\u679c\u79d2\u6570\u4e3a\u300c\u6c38\u8fdc\u300d\u5e76\u88ab\u6267\u884c\uff0c\u9664\u975e\u5207\u6362\u5230\u5176\u4ed6\u5267\u672c\u5e76\u6267\u884c\uff0c\u5426\u5219SesameBot2\u7684\u52a8\u4f5c\u4e0d\u4f1a\u505c\u6b62\u3002\\n\u7535\u673a\u6b63\u53cd\u8f6c\u901f\u5ea6\u6709\u516c\u5dee\uff0c\u8bf7\u8ba9\u6309\u4e0b\u65f6\u95f4\u6bd4\u8fd4\u56de\u7a0d\u957f\u4e00\u4e9b\u3002","forever":"\u6c38\u8fdc"},"hubWifi":{"title":"\u9009\u62e9\u60a8\u7684WiFi\u7f51\u7edc","refresh":"\u2193\u60a8\u53ef\u4ee5\u4e0b\u62c9\u5237\u65b0","password":"\u8bf7\u8f93\u5165 WiFi \u5bc6\u7801","close":"\u5173\u95ed","status":{"ReceivedAdV":"\u6536\u5230\u84dd\u7259\u4fe1\u53f7\u4e86","BleConnecting":"\u84dd\u7259\u8fde\u63a5\u4e2d","DiscoverServices":"\u7b49\u5f85 GATT","WaitingGatt":"\u7b49\u5f85 GATT","WaitingForAuth":"\u7b49\u5f85\u8ba4\u8bc1\u4e2d","BleLogining":"\u84dd\u7259\u767b\u5165\u4e2d","ReadyToRegister":"\u53ef\u4ee5\u6ce8\u518c","Registering":"\u6ce8\u518c\u4e2d","Reset":"\u91cd\u7f6e"}}}'),Qk=JSON.parse('{"peripheral":{"deviceFull":"\u8a2d\u5099\u5df2\u6eff","deviceUnsupported":"\u4e0d\u652f\u63f4\u6b64\u88dd\u7f6e","password":"\u5bc6\u78bc","network":"\u7db2\u8def\u72c0\u614b","online":"\u5728\u7dda","offline":"\u96e2\u7dda","boundDevices":"\u5df2\u9023\u63a5\u7684\u829d\u9ebb\u8a2d\u5099","addDevice":"\u6dfb\u52a0\u829d\u9ebb\u8a2d\u5099\u2026","bindHint":"\u6dfb\u52a0\u8ddd\u96e2\u6b64{{device}} \u4e00\u516c\u5c3a\u5167\u8981\u9023\u63a5\u7684Sesame\uff1a","removeBinding":"\u79fb\u9664\u95dc\u806f","noDevices":"\u6c92\u6709\u53ef\u65b0\u589e\u7684\u8a2d\u5099","triggerDelay":"\u9632\u8aa4\u89f8\u4e4b\u9577\u6309\u555f\u52d5\u6642\u9593","sleeping":"\u4e00\u65e6\u60a8\u5f9e\u8a2d\u5b9a\u9801\u9762\u9000\u51fa\u3001SesameOS\u66f4\u65b0\u5f8c\u7684\u91cd\u958b\u6a5f\u3001\u6216\u662f\u8207\u624b\u6a5f\u85cd\u7259\u9023\u63a5\u65b7\u958b\uff0c{{device}}\u5c07\u81ea\u52d5\u5207\u63db\u5230\u7701\u96fb\u6a21\u5f0f\u3002\u5982\u679c\u60a8\u60f3\u8981\u66f4\u65b0SesameOS\u6216\u6dfb\u52a0\u65b0\u7684Sesame\uff0c\u60a8\u9700\u8981\u7528\u7d30\u68d2\u6309\u4f4f{{device}}\u7684\u91cd\u7f6e\u6309\u9215\u7d045\u79d2\uff0c\u76f4\u5230LED\u71c8\u7184\u6ec5\u70ba\u6b62\u9032\u884c\u91cd\u7f6e\u3002\u7136\u5f8c\uff0c\u60a8\u53ef\u4ee5\u518d\u6b21\u5f9e\u2295\u6309\u9215\u9032\u884c\u8a3b\u518a\u3002","unsupported":"\u8a2d\u5099\u4e0d\u652f\u63f4\u6b64\u529f\u80fd","back":"\u8fd4\u56de","stopEnroll":"\u505c\u6b62\u9304\u5165","enroll":"\u9304\u5165","retry":"\u91cd\u8a66","rename":"\u6539\u540d","delete":"\u522a\u9664","hint_card":"\u9760\u8fd1{{device}}\u9023\u85cd\u7259, \u9ede\u64ca \u2295, \u5c07NFC\u5361\u653e\u5728{{device}}\u4e0a\u4ee5\u6dfb\u52a0NFC\u5361\u3002\u6dfb\u52a0\u5f8c\u9ede\u64ca X\u3002\\n\\nAndroid\u624b\u6a5f\u6216\u624b\u9336\u901a\u5e38\u5167\u7f6e\u6709\u591a\u5f35NFC\u5361\uff0c\u6bcf\u6b21\u6dfb\u52a0\u7684NFC\u5361\u865f\u53ef\u80fd\u6703\u8b8a\u52d5\uff0c\u6211\u5011\u5efa\u8b70\u60a8\u6dfb\u52a0\u6240\u6709\u5167\u7f6e\u7684NFC\u5361\uff0c\u4ee5\u6e1b\u5c11\u8aa4\u5224\u7684\u53ef\u80fd\u6027\u3002","hint_passcode":"\u9760\u8fd1{{device}}\u9023\u85cd\u7259, \u9ede\u64ca \u2295, \u8f38\u5165\u6578\u5b57\u5bc6\u78bc\u4e26\u4ee5\u4e0a\u9396\u6216\u89e3\u9396\u6309\u9215\u6dfb\u52a0\u6578\u5b57\u5bc6\u78bc\u3002\u6dfb\u52a0\u5f8c\u9ede\u64ca X\u3002","hint_face":"\u9760\u8fd1 {{device}} \u9023\u85cd\u7259, \u9ede\u64ca \u2295 \u8f38\u5165\u4eba\u81c9\u3002\u8f38\u5165\u5f8c\u9ede\u64ca X\u3002\u5b89\u88dd\u597d\u5f8c\u518d\u8a3b\u518a\uff0c\u8b58\u5225\u7387\u6703\u6975\u9ad8\u3002","hint_palm":"\u9760\u8fd1 {{device}} \u9023\u85cd\u7259, \u9ede\u64ca \u2295 \u8f38\u5165\u638c\u975c\u8108\u3002\u8f38\u5165\u5f8c\u9ede\u64ca X\u3002\u5b89\u88dd\u597d\u5f8c\u518d\u8a3b\u518a\uff0c\u8b58\u5225\u7387\u6703\u6975\u9ad8\u3002","hint_fingerprint":"\u9760\u8fd1{{device}}\u9023\u85cd\u7259, \u9ede\u64ca \u2295, \u5c07\u624b\u6307\u653e\u5728{{device}}\u4e0a\u4ee5\u6dfb\u52a0\u6307\u7d0b\u3002\u6dfb\u52a0\u5f8c\u9ede\u64ca X\u3002\\n\\n\u53e6\u5916\uff0c\u591a\u6b21\u6539\u8b8a\u624b\u6307\u89d2\u5ea6 \u8f38\u5165\u540c\u4e00\u624b\u6307\uff0c\u53ef\u4ee5\u5927\u5e45\u63d0\u9ad8\u8b58\u5225\u7387\ud83d\udc4d","wifiBindHint":"\u6dfb\u52a0\u8ddd\u96e2\u6b64WiFi\u6a21\u7d44 5\u516c\u5c3a\u5167\u8981\u9023\u63a5\u7684\u829d\u9ebb\u8a2d\u5099\uff1a","default_card":"NFC\u5361\ud83d\udd8a\ufe0f","default_fingerprint":"\u6307\u7d0b\ud83d\udd8a\ufe0f","default_passcode":"\u6578\u5b57\u5bc6\u78bc\ud83d\udd8a\ufe0f","default_face":"\u4eba\u8138\ud83d\udd8a\ufe0f","default_palm":"\u638c\u975c\u8108\ud83d\udd8a\ufe0f","nanoName":"\u85cd\u82bd\u9059\u63a7\u5668 nano","openSensorName":"\u958b\u95dc\u50b3\u611f\u5668","distance":"\u8ddd\u96e2","radarDescription":"\u30fb\u9019\u662f\u96f7\u9054\u559a\u9192\u7cfb\u7d71\u7684\u5075\u6e2c\u8ddd\u96e2\u3002\\n\u30fb\u6bcf\u65e5\u4eba\u6d41\u91cf\u8d85\u904e10\u6b21, \u5247\u8a2d\u7f6e\u77ed\u8ddd\u4ee5\u7701\u96fb\uff01(\u751a\u81f3\u662f\u6700\u77ed0cm)\\n\u30fb\u6bcf\u65e5\u4eba\u6d41\u91cf10\u6b21\u4ee5\u4e0b, \u5247\u8a2d\u7f6e\u6700\u9577\u8ddd\u96e2\u4ee5\u7372\u5f97\u6700\u723d\u9ad4\u9a57\u3002\\n\u30fb\u5373\u4f7f\u70ba\u6700\u77ed\u8ddd\u96e2\uff0c\u6309\u4e0b\u300c\u958b\u9396\u6309\u9215/\u5074\u9762\u6309\u9215\u300d\u5c07\u7acb\u5373\u5553\u52d5\u4eba\u81c9\u6216\u638c\u975c\u8108\u8b58\u5225\uff0c\u517c\u9867\u6975\u5ea6\u7701\u96fb\u8207\u6700\u723d\u9ad4\u9a57\u3002\\n\u30fb\u8acb\u52ff\u6df7\u7528\u4e0d\u540c\u54c1\u724c\u3001\u65b0\u820a\u4e0d\u540c\u6216\u578b\u865f\u4e0d\u540c\u7684\u96fb\u6c60\u3002\\n\u30fb\u5efa\u8b70\u4e0d\u8981\u53ea\u88dd2\u9846\uff0c\u88dd\u6eff\u6240\u6709\u96fb\u6c60\u3002\u96fb\u6c60\u8d8a\u591a\uff0c\u8ca0\u8f09\u8d8a\u5206\u6563\uff0c\u96fb\u58d3\u8d8a\u7a69\u5b9a\uff0c\u96fb\u6c60\u58fd\u547d\u8d8a\u9577\u3002","delayValue":"{{value}} \u79d2 \u5f8c"},"pages":{"login":{"Email":"\u96fb\u5b50\u90f5\u5bc4\u5730\u5740","EmailAddressFormatIsIncorrect":"\u96fb\u5b50\u90f5\u4ef6\u5730\u5740\u683c\u5f0f\u4e0d\u6b63\u78ba","TermsOfService":"\u670d\u52d9\u689d\u6b3e","PrivacyPolicy":"\u96b1\u79c1\u6b0a\u653f\u7b56","IfYouAgreePleaseLogIn":"If you agree, please log in.","And":"\u548c","Login":"\u767b\u9304","EnterVerificationCode":"\u8f38\u5165\u96fb\u5b50\u90f5\u4ef6\u767c\u9001\u7684\u9a57\u8b49\u78bc","ReturnToMailInput":"\u8fd4\u56de\u4e0a\u4e00\u9801"},"sesameAccessControlDevice":{"index":{"PersonallyRegisteredDevices":"\u500b\u4eba\u8a3b\u518a\u8a2d\u5099","SelectAuthenticationDevice":"\u9078\u64c7\u8a8d\u8b49\u8a2d\u5099","Email":"\u4fe1\u7bb1","UserKeyList":"\u5099\u7528\u91d1\u9470\u6e05\u55ae","DeleteFrienddHint":"\u522a\u9664\u806f\u7d61\u4eba","NoResult":"\u641c\u5c0b\u7d50\u679c\u70ba0\u7b46","NotifyCenterHint":"\u8acb\u5728 \u624b\u6a5f\u8a2d\u5b9a > \u901a\u77e5\u4e2d\uff0c\u5141\u8a31 Sesame \u61c9\u7528\u63a5\u6536\u901a\u77e5","ShareTheKey":"\u5171\u4eab\u829d\u9ebb\u9470\u5319","ModifyGuestKeyTag":"\u66f4\u6539\u8a2a\u5ba2\u9470\u5319\u540d\u7a31","AddDeviceKeyByScan":"\u8a2d\u5099\u7684\u9470\u5319","AddDeviceKeyByScanHint":"\u7528 \u829d\u9ebbapp \u6383\u63cf\u9470\u5319 QR Code","AddKeyByScan":"\u8a2d\u5099\u7684\u9470\u5319","MatterPairingHint":"\u5df2\u9032\u5165Matter\u914d\u7db2\u6a21\u5f0f\uff0c\u8acb\u65bc15\u5206\u9418\u5167\u5b8c\u6210\u914d\u7db2\uff0c\u842c\u4e00\u5931\u6557 \u8acb\u91cd\u65b0\u9032\u5165\u6b64\u9801\u4ee5\u91cd\u65b0\u9032\u5165Matter\u914d\u7db2\u6a21\u5f0f","DeviceModel":"\u6a5f\u7a2e","WiFiSSID":"WiFi SSID","WiFiPWD":"WiFi \u5bc6\u78bc","InternetStatus":"\u7db2\u8def\u72c0\u614b","LED":"LED \ud83d\udd06","EnableRelay1":"\u555f\u7528\u7e7c\u96fb\u5668\u4e00","EnableRelay2":"\u555f\u7528\u7e7c\u96fb\u5668\u4e8c","RegisterTime":"\u8a3b\u518a\u6642\u9593","UUID":"UUID","Matter":"Matter","BindDeviceToHub3Hint":"\u6dfb\u52a0\u8ddd\u96e2\u6b64{{deviceName}} 5\u516c\u5c3a\u5167\u8981\u9023\u63a5\u7684\u829d\u9ebb\u8a2d\u5099:","BindIRToHub3Hint":"\u6dfb\u52a0\u8ddd\u96e2\u6b64Hub3 5\u516c\u5c3a\u5167\u8981\u9023\u63a5\u7684\u7d05\u5916\u7dda\u8a2d\u5099:","OSUpdate":"\u66f4\u65b0\u8edf\u9ad4\uff06\u91cd\u958b\u6a5f","Latest":"(\u6700\u65b0)","UpgradeHint":"\u66f4\u65b0{{sesame}}\u97cc\u9ad4\uff1a\u8acb\u78ba\u8a8d{{sesame}}\u8207{{hub}}\u7dad\u6301\u85cd\u7259\u9023\u63a5\uff0c\u4e26\u78ba\u4fdd{{hub}}\u7684\u7db2\u8def\u74b0\u5883\u6b63\u5e38","AddSesame":"\u6dfb\u52a0\u829d\u9ebb\u8a2d\u5099...","DFU_CONNECTING":"\u9023\u7dda\u5230DFU\u4e2d...","DFU_STARTING":"\u521d\u59cb\u5316DFU\u4e2d...","DFU_ENABLING_DFU_MODE":"\u555f\u52d5DFU\u6a21\u5f0f\u4e2d...","DFU_VALIDATING":"\u9a57\u8b49DFU\u4e2d...","DFU_DISCONNECTING":"\u65b7\u958bDFU\u4e2d...","DFU_COMPLETED":"DFU\u5df2\u5b8c\u6210","DFU_ABORTED":"DFU\u5df2\u4e2d\u6b62","DFU_CONNECTED":"DFU\u5df2\u9023\u7dda","DFU_STARTED":"DFU\u5df2\u555f\u52d5","DFU_DISCONNECTED":"DFU\u5df2\u65b7\u958b","DropKeyDesc":"\u522a\u9664 {{deviceName}} \u4e0d\u6703\u91cd\u8a2d {{deviceName}}\u3002\u82e5\u8981\u91cd\u8a2d {{deviceName}}\uff0c\u8acb\u7528\u91dd\u6233\u91cd\u8a2d\u9375\u76f4\u5230LED\u71c8\u7184\u6ec5","Battery":"\u96fb\u6c60\u6b98\u91cf","LightV":"\u9ad8\u96fb\u58d3","HeavyV":"\u4f4e\u96fb\u58d3","VoltageValue":"\u96fb\u58d3\u503c","Percentage":"\u767e\u5206\u6bd4","RechargeableBattery":"3.7V \u53ef\u5145\u96fb\u96fb\u6c60","RechargeableBatteryNotice":"\u7576\u524d\u8a2d\u5099\u4e0d\u652f\u6301\u5c0d 3.7V \u53ef\u5145\u96fb\u96fb\u6c60\u7684\u5269\u9918\u96fb\u91cf\u986f\u793a\u9032\u884c\u512a\u5316","SetAngle":"\u8a2d\u5b9a\u89d2\u5ea6","LockWithOpenSensor":"\u958b\u9580\u611f\u61c9\u5668\u4e0a\u9396","AutoLockCountdown":"\u81ea\u52d5\u4e0a\u9396\u5012\u6578\u8a08\u6642","SiriCustomPhrase":"Siri \u81ea\u8a02\u77ed\u8a9e","connectedIRDevices":"\u5df2\u9023\u63a5\u8a2d\u5099","LoadEarlier":"<< \u66f4\u65e9"},"event":{"manualLock":"\u624b\u8f49\u4e0a\u9396","manualUnlock":"\u624b\u8f49\u89e3\u9396"}},"ir":{"remote":{"remoteControl":"\u9059\u63a7\u5668","sendSuccess":"\u767c\u9001\u6210\u529f","sendFail":"\u767c\u9001\u5931\u6557","addIRRemoteFail":"\u9059\u63a7\u5668\u65b0\u589e\u5931\u6557","updateIRRemoteFail":"\u9059\u63a7\u5668\u66f4\u65b0\u5931\u6557","addIRCodeFail":"\u7d05\u5916\u7dda\u6309\u9375\u65b0\u589e\u5931\u6557","updateIRCodeFail":"\u7d05\u5916\u7dda\u6309\u9375\u66f4\u65b0\u5931\u6557","deleteIRCodeFail":"\u7d05\u5916\u7dda\u6309\u9375\u522a\u9664\u5931\u6557","invalidRemoteParam":"\u9059\u63a7\u5668\u53c3\u6578\u7121\u6548","learn":"\u81ea\u5b78\u7fd2","setIRModeFail":"IR\u6a21\u5f0f\u8a2d\u5b9a\u5931\u6557","nameCannotBeEmpty":"\u6309\u9375\u540d\u7a31\u4e0d\u80fd\u70ba\u7a7a","networkIssuePleaseRetry":"\u7db2\u8def\u958b\u5c0f\u5dee\u4e86\uff0c\u8acb\u9ede\u64ca\u91cd\u8a66","networkError":"\u88dd\u7f6e\u9023\u7dda\u5931\u6557\uff0c\u8acb\u6aa2\u67e5\u7db2\u8def\u9023\u7dda","learnInstruction":"\u9ede\u64ca\u2295 \u5716\u793a\uff0c\u9032\u5165\u5b78\u7fd2\u6a21\u5f0f\uff0c\u5c07\u9059\u63a7\u5668\u5c0d\u6e96Hub3\uff0c\u6309\u4e0b\u9059\u63a7\u5668\u6309\u9375\uff0c\u4ee5\u4fbf\u65b0\u589e\u65b0\u7684\u7d05\u5916\u7dda\u6309\u9375","edit":"\u7de8\u8f2f\u540d\u7a31","delete":"\u522a\u9664","cancel":"\u53d6\u6d88","save":"\u5132\u5b58","autoMode":"\u81ea\u52d5\u6a21\u5f0f","coolMode":"\u51b7\u6c23\u6a21\u5f0f","dehumidifyMode":"\u9664\u6fd5\u6a21\u5f0f","fanMode":"\u9001\u98a8\u6a21\u5f0f","heatMode":"\u6696\u6c23\u6a21\u5f0f","fanSpeedAuto":"\u81ea\u52d5\u98a8\u91cf","fanSpeedLow":"\u6700\u5c0f\u98a8\u91cf","fanSpeedMedium":"\u4e2d\u7b49\u98a8\u91cf","fanSpeedHigh":"\u6700\u5927\u98a8\u91cf","windDirectionUp":"\u5411\u4e0a\u98a8\u5411","windDirectionCenter":"\u7f6e\u4e2d\u98a8\u5411","windDirectionDown":"\u5411\u4e0b\u98a8\u5411","autoSwing":"\u81ea\u52d5\u64fa\u98a8","stopSwing":"\u505c\u6b62\u64fa\u98a8","on":"\u958b","off":"\u95dc","temperature":"\u6eab\u5ea6","operationFailed":"\u7522\u751f\u6307\u4ee4\u5931\u6557","handleFailed":"\u64cd\u4f5c\u5931\u6557","cannotControlAirConditionerAutoMatchRemote":"\u7121\u6cd5\u63a7\u5236\u51b7\u6c23\uff1f\u81ea\u52d5\u914d\u5c0d\u9059\u63a7\u5668","selectRemote":"\u9078\u64c7\u9059\u63a7\u5668","loading":"\u9059\u63a7\u5668\u5217\u8868\u8f09\u5165\u4e2d...","searchHint":"\u627e\u4e0d\u5230\u60a8\u5bb6\u96fb\u7684\u9059\u63a7\u5668\u578b\u865f\uff1f\u60a8\u53ef\u4ee5\u8a66\u8a66\u641c\u5c0b\u5bb6\u96fb\u7684\u54c1\u724c\u6216\u578b\u865f\u3002","searching":"\u641c\u5c0b\u4e2d...","noSearchResults":"\u672a\u627e\u5230\u7b26\u5408\u7684\u9059\u63a7\u5668","noRemoteData":"\u66ab\u7121\u9059\u63a7\u5668\u8cc7\u6599","loadingMore":"\u8f09\u5165\u66f4\u591a\u4e2d...","loadedAll":"\u5df2\u8f09\u5165\u5168\u90e8 {{count}} \u500b\u9059\u63a7\u5668","matchInstruction":"\u8acb\u5c07\u9059\u63a7\u5668\u5c0d\u6e96Hub3\uff0c\u6309\u4e0b\u4efb\u610f\u6309\u9375\u9032\u884c\u81ea\u52d5\u914d\u5c0d","noMatchResults":"\u672a\u627e\u5230\u7b26\u5408\u7684{{type}}\u9059\u63a7\u5668\uff0c\u8acb\u518d\u8a66\u4e00\u6b21","matchingRemote":"\u6b63\u5728\u641c\u5c0b{{type}}\u9059\u63a7\u5668...","cannotControlAutoMatchRemote":"\u7121\u6cd5\u63a7\u5236{{type}}\uff1f\u81ea\u52d5\u914d\u5c0d\u9059\u63a7\u5668","mobileDefaultKeyName":"\u9ede\u64ca\u767c\u5c04\ud83d\ude80","toMaxRemoteLimit":"\u60a8\u5df2\u9054\u5230\u5141\u8a31\u7684\u9059\u63a7\u5668\u6700\u5927\u6578\u91cf\u3002","power":"\u96fb\u6e90","mode":"\u6a21\u5f0f","headShake":"\u6416\u982d","lowSpeed":"\u4f4e\u901f","mediumSpeed":"\u4e2d\u901f","highSpeed":"\u9ad8\u901f","fanSpeed":"\u98a8\u901f","openLight":"\u958b\u71c8","closeLight":"\u95dc\u71c8","brightnessUp":"\u4eae\u5ea6 +","brightnessDown":"\u4eae\u5ea6 -","colorTempUp":"\u8272\u6eab +","colorTempDown":"\u8272\u6eab -","home":"\u4e3b\u9801","back":"\u8fd4\u56de","menu":"\u9078\u55ae","ok":"\u78ba\u5b9a","volumeUp":"\u97f3\u91cf +","volumeDown":"\u97f3\u91cf -","channelUp":"\u983b\u9053 +","channelDown":"\u983b\u9053 -","mute":"\u975c\u97f3","up":"\u4e0a","down":"\u4e0b","left":"\u5de6","right":"\u53f3","addRemote":"\u6dfb\u52a0\u7d05\u5916\u7dda\u6578\u64da...","detail":"\u7ec6\u8282","cannotSendInLearnMode":"\u8acb\u9000\u51fa\u5b78\u7fd2\u6a21\u5f0f\u4ee5\u767c\u9001\u6307\u4ee4"},"list":{"airConditioner":"\u51b7\u6c23","tv":"\u96fb\u8996","light":"\u7167\u660e\u71c8","fan":"\u98a8\u6247","learn":"\u5b78\u7fd2","fromHXD":"\u4f86\u81ea HXD","fromIRremoteESP8266":"\u4f86\u81ea IRremoteESP8266","fromSB":"\u4f86\u81ea SB"}}},"accessCtl":{"auth":{"card":"NFC\u5361","fingerprint":"\u6307\u7d0b","password":"\u6578\u5b57\u5bc6\u78bc","face":"\u4eba\u81c9","palm":"\u638c\u975c\u8108","manageCard":"\u7ba1\u7406NFC\u5361","manageFingerprint":"\u7ba1\u7406\u6307\u7d0b","managePasscode":"\u7ba1\u7406\u6578\u5b57\u5bc6\u78bc","manageFace":"\u7ba1\u7406\u4eba\u81c9","managePalmVeins":"\u7ba1\u7406\u638c\u975c\u8108","radarDetectionDistance":"\u96f7\u9054\u5075\u6e2c\u8ddd\u96e2"}},"deviceMember":{"user":"\u5229\u7528\u8005","permission":"\u89d2\u8272&\u6b0a\u9650","role":{"owner":"\u64c1\u6709\u8005","manager":"\u7ba1\u7406\u54e1","guest":"\u8a2a\u5ba2"},"opt":{"revoke":"\u64a4\u92b7","addContact":"\u65b0\u589e\u70ba\u806f\u7d61\u4eba","cancel":"\u53d6\u6d88","ok":"\u78ba\u5b9a"},"qr":"QR Code","qrEncrypted":"\u52a0\u5bc6 QR Code\uff0c10\u5206\u9418\u5167\u53ef\u6383","nickName":"\u4f7f\u7528\u8005\u540d\u7a31","findFriendHint":"\u8acb\u8f38\u5165\u5c0d\u65b9\u7684\u90f5\u7bb1","modifyDeviceNameHint":"\u8acb\u8f38\u5165\u65b0\u7684\u8a2d\u5099\u540d\u7a31","editName":"\u4fee\u6539\u540d\u7a31","shareManagement":"\u5171\u4eab\u6b0a\u9650"},"index":{"WelcomeTo":"\u6b61\u8fce\u4f86\u5230 Biz\uff0c\u76ee\u524d\u7684\u4f7f\u7528\u60c5\u6cc1\u3002"},"setting":{"enableNotification":"\u901a\u77e5","notificationEnabled":"\u5df2\u53d6\u5f97\u901a\u77e5\u6b0a\u9650","notificationDisabled":"\u672a\u53d6\u5f97\u901a\u77e5\u6b0a\u9650","shop":"\u5c0f\u5e97\u8216","loginRegist":"\u767b\u5165 / \u8a3b\u518a","logout":"\u767b\u51fa","deleteAccount":"\u522a\u9664\u5e33\u865f","logoutConfirm":"\u78ba\u5b9a\u8981\u767b\u51fa\u55ce\uff1f","deleteAccountConfirm":"\u78ba\u5b9a\u8981\u522a\u9664\u5e33\u865f\u55ce\uff1f","deleteOrgConfirm":"\u522a\u9664\u5f8c\u7576\u524d\u7d44\u7e54\u4e2d\u6240\u6709\u8cc7\u6599\u5c07\u4e0d\u53ef\u6062\u5fa9\uff08app\u8cc7\u6599\u4e0d\u53d7\u5f71\u97ff\uff09\uff0c\u78ba\u5b9a\u7e7c\u7e8c\u55ce\uff1f","cancel":"\u53d6\u6d88","delete":"\u78ba\u5b9a"},"navigator":{"Home":"\u9996\u9801","Support":"\u652f\u6301","Settings":"\u8a2d\u7f6e","Vision":"\u8996\u89ba"},"developer":{"ForDeveloper":"\u958b\u767c\u8005"},"factoryInfo":{"title":"\u5de5\u5ee0\u8cc7\u8a0a","labelStatus":"\u6a19\u7c64\u72c0\u614b","materialCode":"\u7269\u6599\u7de8\u78bc","materialDesc":"\u7269\u6599\u63cf\u8ff0","packageStatus":"\u5305\u88dd\u72c0\u614b","printOperator":"\u5217\u5370\u64cd\u4f5c\u54e1","printTime":"\u5217\u5370\u6642\u9593","productionOrderNo":"\u751f\u7522\u8a02\u55ae\u865f","scrapOperator":"\u5831\u5ee2\u64cd\u4f5c\u54e1","scrapTime":"\u5831\u5ee2\u6642\u9593","workOrderNo":"\u5de5\u55ae\u865f","avgCurrent":"\u5e73\u5747\u96fb\u6d41","maxCurrent":"\u6700\u5927\u96fb\u6d41","testResult":"\u6e2c\u8a66\u7d50\u679c"},"envSnapshot":{"title":"\u74b0\u5883\u5feb\u7167","bundleId":"\u61c9\u7528\u5305\u540d","language":"\u8a9e\u8a00","region":"\u5730\u5340","build":"\u5efa\u7f6e\u865f","version":"\u7248\u672c","displayName":"\u540d\u7a31","collectedAt":"\u63a1\u96c6\u6642\u9593","deviceType":"\u88dd\u7f6e\u985e\u578b","cardType":"\u5361\u7247\u985e\u578b","screenWidth":"\u87a2\u5e55\u5bec\u5ea6","screenScale":"\u87a2\u5e55\u7e2e\u653e","systemName":"\u7cfb\u7d71\u540d\u7a31","screenHeight":"\u87a2\u5e55\u9ad8\u5ea6","timeZone":"\u6642\u5340","model":"\u578b\u865f","systemVersion":"\u7cfb\u7d71\u7248\u672c","batteryLevel":"\u96fb\u91cf","lightLoadVoltage_mV":"\u9ad8\u96fb\u58d3","heavyLoadVoltage_mV":"\u4f4e\u96fb\u58d3","isRechargeBattery":"3.7V \u53ef\u5145\u96fb\u96fb\u6c60","notification":"\u901a\u77e5","location":"\u4f4d\u7f6e","bluetooth":"\u85cd\u7259","network":"\u7db2\u8def","noData":"\u66ab\u7121\u8cc7\u6599"},"CardList":"\u5361\u5217\u8868","face3":{"binding":"\u6b63\u5728\u7d81\u5b9a\u2026","success":"\u7d81\u5b9a\u6210\u529f","boundAs":"\u60a8\u5df2\u6210\u70ba\u9019\u53f0 Face3 \u88dd\u7f6e\u7684{{role}}","deviceId":"Face3 \u88dd\u7f6e\u7de8\u865f","retry":"\u91cd\u8a66","errInvalidQr":"QR Code \u7121\u6cd5\u8b58\u5225\uff0c\u8acb\u78ba\u8a8d\u6383\u7684\u662f Face3 \u88dd\u7f6e\u4e0a\u986f\u793a\u7684\u78bc","errNotFace3":"\u9019\u4e0d\u662f Face3 \u88dd\u7f6e\u7684 QR Code","errAlreadyRedeemed":"\u9019\u500b QR Code \u5df2\u7d93\u88ab\u4f7f\u7528\u904e\u4e86\uff0c\u8acb\u5728\u88dd\u7f6e\u4e0a\u91cd\u65b0\u958b\u555f QR Code \u9801\u9762\u53d6\u5f97\u65b0\u7684\u78bc","errRevoked":"\u9019\u500b QR Code \u5df2\u5931\u6548\uff0c\u8acb\u5728\u88dd\u7f6e\u4e0a\u91cd\u65b0\u53d6\u5f97","errNotFound":"QR Code \u7121\u6548\uff0c\u8acb\u5728\u88dd\u7f6e\u4e0a\u91cd\u65b0\u53d6\u5f97","errClaimedByOther":"\u9019\u53f0\u88dd\u7f6e\u5df2\u7d93\u88ab\u5176\u4ed6\u5e33\u865f\u7d81\u5b9a\u3002\u9700\u5148\u7531\u73fe\u6709\u64c1\u6709\u8005\u89e3\u9664\u7d81\u5b9a\uff0c\u624d\u80fd\u91cd\u65b0\u7d81\u5b9a","errNotAuthenticated":"\u8acb\u5148\u767b\u5165\u5f8c\u518d\u6383\u78bc\u7d81\u5b9a","errTimeout":"\u7db2\u8def\u6c92\u6709\u56de\u61c9\uff0c\u8acb\u6aa2\u67e5\u7db2\u8def\u5f8c\u91cd\u8a66","errUnknown":"\u7d81\u5b9a\u5931\u6557\uff0c\u8acb\u7a0d\u5f8c\u91cd\u8a66","errLiveTimeout":"\u88dd\u7f6e\u6c92\u6709\u56de\u61c9\u3002\u525b\u559a\u9192\u7684\u88dd\u7f6e\u9700\u8981\u4e00\u9ede\u6642\u9593\u555f\u52d5\uff0c\u8acb\u7a0d\u5019\u518d\u8a66","errLiveUnknown":"\u64ad\u653e\u5931\u6557\uff0c\u8acb\u7a0d\u5f8c\u91cd\u8a66","live":"\u76f4\u64ad\u4e2d","offline":"\u96e2\u7dda","justNow":"\u525b\u525b","minutesAgo":"{{n}} \u5206\u9418\u524d","hoursAgo":"{{n}} \u5c0f\u6642\u524d","daysAgo":"{{n}} \u5929\u524d","noFace3Devices":"\u9084\u6c92\u6709\u7d81\u5b9a\u7684 Face3 \u88dd\u7f6e","noFace3DevicesHint":"\u5728 Face3 \u88dd\u7f6e\u87a2\u5e55\u4e0a\u958b\u555f QR Code\uff0c\u7528 App \u6383\u78bc\u5373\u53ef\u7d81\u5b9a","listFailed":"Face3 \u88dd\u7f6e\u6e05\u55ae\u8f09\u5165\u5931\u6557\uff0c\u8acb\u6aa2\u67e5\u7db2\u8def\u5f8c\u91cd\u8a66","viewFace3Devices":"\u67e5\u770b\u6211\u7684 Face3 \u88dd\u7f6e","myFace3Devices":"\u6211\u7684 Face3 \u88dd\u7f6e","addFace3Device":"\u65b0\u589e Face3 \u88dd\u7f6e","addFace3DeviceHint":"\u5728 Face3 \u88dd\u7f6e\u87a2\u5e55\u4e0a\u958b\u555f QR Code \u9801\u9762\uff0c\u7136\u5f8c\u6383\u78bc\u7d81\u5b9a","scanQr":"\u6383\u63cf QR Code","pasteQr":"\u6216\u8cbc\u4e0a QR Code \u5167\u5bb9","bind":"\u7d81\u5b9a","cancel":"\u53d6\u6d88","scanNeedsApp":"\u6383\u78bc\u9700\u8981\u5728 App \u5167\u958b\u555f\u3002\u5728\u700f\u89bd\u5668\u4e2d\u8acb\u8cbc\u4e0a QR Code \u5167\u5bb9","wake":"\u559a\u9192\u651d\u5f71\u6a5f","wakeSent":"\u5df2\u9001\u51fa\u559a\u9192\uff0c\u88dd\u7f6e\u6b63\u5728\u555f\u52d5\u651d\u5f71\u6a5f","wakeOffline":"\u88dd\u7f6e\u96e2\u7dda\uff0c\u7121\u6cd5\u559a\u9192","wakeNotBound":"\u4f60\u6c92\u6709\u9019\u53f0\u88dd\u7f6e\u7684\u6b0a\u9650","wakeFailed":"\u559a\u9192\u5931\u6557\uff0c\u8acb\u7a0d\u5f8c\u91cd\u8a66","wakeNeedsUpdate":"\u88dd\u7f6e\u9700\u8981\u5347\u7d1a\u97cc\u9ad4\u5f8c\u624d\u80fd\u9060\u7aef\u559a\u9192","errInvalidIdentity":"\u88dd\u7f6e\u8eab\u5206\u9a57\u8b49\u672a\u901a\u904e\uff0c\u8acb\u66f4\u65b0 App \u5f8c\u91cd\u8a66","wakeIdentityRejected":"\u88dd\u7f6e\u8eab\u5206\u7570\u5e38\uff0c\u8acb\u806f\u7d61\u6280\u8853\u652f\u63f4","liveConnecting":"\u6b63\u5728\u9023\u63a5\u651d\u5f71\u6a5f\u2026","liveTapToPlay":"\u9ede\u64ca\u756b\u9762\u958b\u555f\u8072\u97f3","liveNotReady":"\u651d\u5f71\u6a5f\u9084\u6c92\u6e96\u5099\u597d\uff0c\u8acb\u5148\u559a\u9192\u88dd\u7f6e\u5f8c\u91cd\u8a66","errNotBound":"\u4f60\u6c92\u6709\u9019\u53f0\u88dd\u7f6e\u7684\u6b0a\u9650","errBadConfig":"\u9023\u63a5\u53c3\u6578\u6709\u8aa4\uff0c\u8acb\u91cd\u8a66","errPeerFailed":"\u8996\u8a0a\u901a\u9053\u6c92\u80fd\u5efa\u7acb\u3002\u88dd\u7f6e\u8207\u624b\u6a5f\u4e4b\u9593\u53ef\u80fd\u88ab\u7db2\u8def\u963b\u65b7\uff0c\u63db\u500b\u7db2\u8def\u518d\u8a66\u8a66","errSignaling":"\u7121\u6cd5\u9023\u63a5\u5230\u8996\u8a0a\u670d\u52d9\uff0c\u8acb\u6aa2\u67e5\u7db2\u8def\u5f8c\u91cd\u8a66","errSignalingClosed":"\u9023\u63a5\u88ab\u4e2d\u65b7\uff0c\u8acb\u91cd\u8a66","errInsecureContext":"\u76ee\u524d\u9801\u9762\u4e0d\u662f HTTPS\uff0c\u700f\u89bd\u5668\u505c\u7528\u4e86\u52a0\u5bc6\u4ecb\u9762\uff0c\u7121\u6cd5\u64ad\u653e\u3002\u8acb\u7528 https \u6216 localhost \u958b\u555f","moreActions":"\u66f4\u591a\u64cd\u4f5c","unbind":"\u89e3\u9664\u7d81\u5b9a","unbindConfirmTitle":"\u89e3\u9664\u7d81\u5b9a\u9019\u53f0\u8a2d\u5099\uff1f","unbindConfirmBody":"\u89e3\u9664\u5f8c\u5c07\u628a\u300c{{name}}\u300d\u5f9e\u4f60\u7684\u6e05\u55ae\u4e2d\u79fb\u9664\uff0c\u4f60\u5c07\u7121\u6cd5\u518d\u559a\u9192\u6216\u89c0\u770b\u5b83\u3002\u4e4b\u5f8c\u53ef\u96a8\u6642\u91cd\u65b0\u6383\u78bc\u7d81\u5b9a\u3002","unbindSuccess":"\u5df2\u89e3\u9664\u7d81\u5b9a","unbindFailed":"\u89e3\u9664\u7d81\u5b9a\u5931\u6557\uff0c\u8acb\u7a0d\u5f8c\u518d\u8a66"},"appHome":{"noDevices":"\u5f9e\u2295\u958b\u59cb\u8a3b\u518a\u65b0\u8a2d\u5099\uff0c\u6216\u6383\u63cfQR\u78bc\u7372\u53d6\u5df2\u8a3b\u518a\u8a2d\u5099\u7684\u4f7f\u7528\u6b0a\u9650","sesame":"\u829d\u9ebb","vision":"\u8996\u89ba","contacts":"\u901a\u8a0a\u9304","me":"\u6211","networkError":"\u7121\u6cd5\u9023\u7dda\uff0c\u8acb\u6aa2\u67e5\u7db2\u8def\u5f8c\u91cd\u8a66","retry":"\u91cd\u8a66","enableBluetooth":"\u8acb\u958b\u555f\u85cd\u7259","searching":"\u6b63\u5728\u641c\u5c0b\u9644\u8fd1\u5c1a\u672a\u8a3b\u518a\u7684\u88dd\u7f6e\uff0c\u8acb\u5c07\u88dd\u7f6e\u9760\u8fd1\u624b\u6a5f\u3002","loginRequired":"\u8acb\u767b\u5165","unsupportedQr":"\u4e0d\u652f\u63f4\u6b64 QR \u78bc","refreshing":"\u91cd\u65b0\u6574\u7406\u4e2d"},"lockSettings":{"immediate":"\u99ac\u4e0a","off":"\u95dc\u9589","seconds":"{{count}} \u79d2","connectBluetooth":"\u8acb\u958b\u555f\u85cd\u7259\u4e26\u9023\u63a5\u88dd\u7f6e","failed":"\u64cd\u4f5c\u5931\u6557\uff0c\u8acb\u91cd\u8a66","setLocked":"\u8a2d\u7f6e\u4e0a\u9396\u89d2\u5ea6","setUnlocked":"\u8a2d\u7f6e\u89e3\u9396\u89d2\u5ea6","magnet":"\u6c34\u5e73\u6821\u6b63","switchPoint":"\u8a2d\u7f6e\u4e0a\u9396\u30fb\u89e3\u9396\u7684\u5206\u754c","frequency":"\u89d2\u5ea6\u7684\u5075\u6e2c\u983b\u7387","stopped":"\u7701\u96fb\u6a21\u5f0f","hertz":"{{count}} \u6b21/\u79d2","downloading":"\u6b63\u5728\u4e0b\u8f09\u97cc\u9ad4","retry":"\u91cd\u8a66","configure":"\u8acb\u8a2d\u7f6e\u958b\u9396\u89d2\u5ea6\u8207\u95dc\u9396\u89d2\u5ea6","instructions":"\u8acb\u624b\u8f49\u829d\u9ebb\u8a2d\u5099\u81f3 \u5b8c\u5168\u4e0a\u9396/\u5b8c\u5168\u89e3\u9396 \u4f4d\u7f6e\uff0c\\n\u7136\u5f8c\u5206\u5225\u9ede\u64ca\u4e0b\u65b9\u6309\u9215\u8a2d\u7f6e \u4e0a\u9396\u89d2\u5ea6/\u89e3\u9396\u89d2\u5ea6","minutes":"{{count}} \u5206","hours":"{{count}} \u5c0f\u6642","back":"\u8fd4\u56de"},"bleStatus":{"off":"\u624b\u6a5f\u85cd\u82bd\u672a\u958b\u555f","noSignal":"\u627e\u4e0d\u5230\u85cd\u7259\u8a0a\u865f, \u8acb\u9760\u8fd1","tooMany":"android\u9023\u4e86\u592a\u591a\u85cd\u82bd\u800c\u4e0d\u9748\u5149\u4e86,\u8acb\u91cd\u958bandroid\u85cd\u82bd"},"lockExtras":{"notificationGranted":"\u5df2\u7372\u5f97 \u5b89\u5353\u7684 \u901a\u77e5\u6b0a\u9650","on":"\u958b\u555f","txPower":"BLE \u767c\u5c04\u529f\u7387","nfcHint":"\u5c07\u624b\u6a5f\u9760\u8fd1NFC\u6a19\u7c64\u9032\u884c\u8a2d\u5b9a","nfcReset":"\u522a\u9664NFC\u6a19\u7c64","widget":"\u901a\u77e5\u6b04\u5c0f\u5de5\u5177","notificationHint":"\u672a\u7372\u5f97 \u5b89\u5353\u7684 \u901a\u77e5\u6b0a\u9650(\u6309\u9019\u88e1)","autoUnlock":"\u81ea\u52d5\u89e3\u9396","autoHint":"1. \u8acb\u5728\u829d\u9ebb\u5468\u570d\u8a2d\u5b9a\u7d05\u8272\u5713\u5708\u3002\u96e2\u958b\u5713\u5708\u5f8c\u6703\u555f\u7528\u4e00\u6b21\u81ea\u52d5\u89e3\u9396\uff1b\u8fd4\u56de\u6642\uff0c\u53ea\u6709\u672c\u624b\u6a5f\u900f\u904e\u9644\u8fd1\u7684\u85cd\u7259\u9023\u7dda\u5230\u5df2\u767b\u8a18\u7684\u829d\u9ebb\u5f8c\uff0c\u9580\u9396\u624d\u6703\u89e3\u9396\u3002\\n2. \u5982\u679c\u4f4d\u7f6e\u5075\u6e2c\u4e0d\u7a69\u5b9a\uff0c\u8acb\u5c07\u7d05\u8272\u5713\u5708\u8a2d\u5b9a\u5f97\u66f4\u5927\u3002\u60a8\u53ef\u4ee5\u9ede\u64ca\u5730\u5716\u4f86\u8a2d\u5b9a\u829d\u9ebb\u7684\u4f4d\u7f6e\u3002\\n3. \u5982\u679c\u624b\u6a5f\u7121\u6cd5\u6b63\u5e38\u555f\u52d5\u7121\u9470\u5319\u89e3\u9396\u529f\u80fd\uff0c\u8acb\u5148\u91cd\u65b0\u555f\u52d5\u624b\u6a5f\u3002","radius":"\u7bc4\u570d\uff1a{{value}} \u516c\u5c3a","deleteName":"\u522a\u9664{{deviceName}}"},"botSettings":{"script":"\u5287\u672c","add":"\u65b0\u589e\u52d5\u4f5c","duration":"\u57f7\u884c\u6642\u9593","seconds":"{{value}} \u79d2","type0":"\u6b63\u8f49","type1":"\u53cd\u8f49","type2":"\u505c\u6b62","type3":"\u7b49\u5f85","hint":"\u9ede\u64ca\u2295\u6dfb\u52a0\u52d5\u4f5c\u3002\\n\u5982\u679c\u79d2\u6578\u70ba\u300c\u6c38\u9060\u300d\u4e26\u88ab\u57f7\u884c\uff0c\u9664\u975e\u5207\u63db\u5230\u5176\u4ed6\u5287\u672c\u4e26\u57f7\u884c\uff0c\u5426\u5247SesameBot2\u7684\u52d5\u4f5c\u4e0d\u6703\u505c\u6b62\u3002\\n\u99ac\u9054\u6b63\u53cd\u8f49\u901f\u5ea6\u6709\u516c\u5dee\uff0c\u8acb\u8b93\u6309\u4e0b\u6642\u9593\u6bd4\u8fd4\u56de\u7a0d\u9577\u4e00\u4e9b\u3002","forever":"\u6c38\u8fdc"},"hubWifi":{"title":"\u9078\u64c7\u60a8\u7684WiFi\u7db2\u8def","refresh":"\u2193\u60a8\u53ef\u4ee5\u4e0b\u62c9\u5237\u65b0","password":"\u8acb\u8f38\u5165 WiFi \u5bc6\u78bc","close":"\u95dc\u9589","status":{"ReceivedAdV":"\u6536\u5230\u85cd\u82bd\u8a0a\u865f\u4e86","BleConnecting":"\u85cd\u82bd\u9023\u63a5\u4e2d","DiscoverServices":"\u7b49\u5f85 GATT","WaitingGatt":"\u7b49\u5f85 GATT","WaitingForAuth":"\u7b49\u5f85\u8a8d\u8b49\u4e2d","BleLogining":"\u85cd\u82bd\u767b\u5165\u4e2d","ReadyToRegister":"\u53ef\u4ee5\u8a3b\u518a","Registering":"\u8a3b\u518a\u4e2d","Reset":"\u91cd\u8a2d"}}}');fk.use(Tk).use(Nv).init({resources:{en:{translation:Vk},ja:{translation:Gk},zh:{translation:Zk},"zh-CN":{translation:Zk},"zh-TW":{translation:Qk}},fallbackLng:"en",interpolation:{escapeValue:!1},detection:{order:Fk?["navigator"]:["cookie","navigator","querystring","localStorage"],caches:Fk?[]:["localStorage","cookie"]}});const Kk=fk;let Xk="dev",Jk="wss://82q6nuplv0.execute-api.ap-northeast-1.amazonaws.com/dev",$k="wss://82q6nuplv0.execute-api.ap-northeast-1.amazonaws.com/production",qk="pk_test_lXQvIVyg33i6wCEagbMGIICd",eC="pk_live_SAO5zmCNp1HfQxRkvfLU7YwS",tC="production";const rC=()=>tC===Xk?Jk:$k,nC=()=>"https://app.candyhouse.co/"+(tC===Xk?"dev":"prod"),oC=()=>tC===Xk?qk:eC;let aC,iC,sC,lC,cC,uC=!1,dC=0;const fC=()=>uC,pC=e=>JSON.parse(Te.hp.from(e.split(".")[1],"base64").toString()),hC=e=>{try{return 1e3*pC(e).exp>Date.now()+6e4}catch(t){return!1}},mC=()=>(iC||(iC=Uk("session").then((e=>{let{data:t}=e;if(!t||!0!==t.signedIn&&!1!==t.signedIn||t.signedIn&&!t.token)throw new Error("Session unavailable");const r=t.guestIdentityId||(!t.signedIn&&t.token?pC(t.token).identity_id:null);return aC={token:t.signedIn?t.token:null,signedIn:t.signedIn,guestIdentityId:r,language:t.language},aC})).finally((()=>{iC=null}))),iC);async function gC(){try{const e=(await BS.currentSession()).getIdToken().getJwtToken();return uC=!1,e}catch(e){if(!Ok)throw e;if((!aC||aC.signedIn&&!hC(aC.token))&&await mC(),aC.signedIn){if(!hC(aC.token))throw new Error("User session unavailable");return uC=!1,aC.token}const t=hC(sC)?sC:await(()=>{if(!lC){const e=dC;lC=(async t=>{const r=await BS.currentCredentials();if(null===r||void 0===r||!r.accessKeyId||!r.secretAccessKey||r.authenticated)throw new Error("Guest credentials unavailable");const n={"Content-Type":"application/json"};if(null===(t=aC)||void 0===t||!t.guestIdentityId)throw new Error("Installation identity unavailable; update the app");n.appidentifyid=aC.guestIdentityId;const o=bA.sign({method:"POST",url:`${nC()}/web_route`,headers:n,data:JSON.stringify({scene:"app-session"})},{access_key:r.accessKeyId,secret_key:r.secretAccessKey,session_token:r.sessionToken},{service:"execute-api",region:"ap-northeast-1"});delete o.headers.host;const a=new AbortController,i=setTimeout((()=>a.abort()),2e4);try{const t=await fetch(o.url,{method:o.method,headers:o.headers,body:o.data,signal:a.signal,credentials:"omit",cache:"no-store"});if(!t.ok)throw new Error(`Guest session unavailable (${t.status})`);const r=await t.json();if(!0!==r.isAnonymous||!hC(r.token))throw new Error("Invalid guest session");if(e!==dC)throw new Error("Session changed");return sC=r.token,sC}finally{clearTimeout(i)}})().finally((()=>{lC=null}))}return lC})();return uC=!0,t}}async function vC(){dC++,aC=void 0,sC=null,cC=null,uC=!1,Ok&&await Uk("retireSession")}const yC="biz3KeepAlive",bC="biz3GetLoginUser",wC="biz3ManageDevice",xC="biz3ManageCompany",SC="biz3ManageEmployee",AC="biz3ManageEmployeeGroup",kC="biz3ManageEmployeeDevice",CC="biz3ManageAccessCtlAuthData",IC="biz3ManageRole",EC="biz3ManageDeviceGroup",DC="biz3ManagePayment",TC="biz3GetDeviceEmployeeKeys",OC="biz3GetDeviceHistory",MC="biz3OperateIoT",PC="biz3TriggerLocker",jC="biz3ListFirmware",RC="biz3InvokeWebAPIs",_C="biz3GetDeviceBatteryRecord",NC="biz3IRRemote",LC="biz3Schedule",UC="biz3Face3Qr",BC=3e5;let FC=function(e){return e[e.DISCONNECTED=0]="DISCONNECTED",e[e.CONNECTING=1]="CONNECTING",e[e.CONNECTED=2]="CONNECTED",e}({});class zC{constructor(){this.ws=null,this.subscribers=new Map,this.reconnectTimer=null,this.connectionTimeoutTimer=null,this.retryCount=0,this.minReconnectionDelay=1e3,this.maxReconnectionDelay=1e4,this.connectionTimeout=5e3,this.heartbeatTimer=null,this.pongTimeoutTimer=null,this.lastActiveTime=Date.now(),this.maxIdleTimeInterval=45e4,this.lastTickTime=Date.now(),this.sleepDetectorTimer=null,this.SLEEP_CHECK_INTERVAL=2e3,this.SLEEP_THRESHOLD=5e3,this.messageQueue=[],this.authenticatedToken="",this.connectionId="",this.connectionFailureCallback=null,this.MAX_RETRIES_BEFORE_TOKEN_CHECK=3,this.currentStatus=FC.DISCONNECTED,this.statusListeners=new Set,this.connectionIdListeners=new Set,window.addEventListener("beforeunload",(()=>{this.closeConnection()})),window.addEventListener("offline",(()=>{this.updateStatus(FC.DISCONNECTED)})),window.addEventListener("online",(()=>{this.wakeUpConnection()})),document.addEventListener("visibilitychange",(()=>{"visible"===document.visibilityState?this.wakeUpConnection():this.lastActiveTime=Date.now()})),this.startSleepDetector(),this.subscribe(yC,(e=>{const t=e.connectionId;""!==this.connectionId&&this.connectionId!==t?this.updateConnectionId(t):""===this.connectionId&&(this.connectionId=t),this.clearPongTimeout(),this.updateStatus(FC.CONNECTED)}))}static getInstance(){return zC.instance||(zC.instance=new zC),zC.instance}updateStatus(e){this.currentStatus!==e&&(this.currentStatus=e,this.statusListeners.forEach((t=>t(e))))}onStatusChange(e){return this.statusListeners.add(e),e(this.currentStatus),()=>this.statusListeners.delete(e)}updateConnectionId(e){this.connectionId=e,this.connectionIdListeners.forEach((t=>t(e)))}onConnectionIdChange(e){return this.connectionIdListeners.add(e),()=>this.connectionIdListeners.delete(e)}getStatus(){return this.currentStatus}wakeUpConnection(){var e;if((null===(e=this.ws)||void 0===e?void 0:e.readyState)===WebSocket.CONNECTING)return;this.updateStatus(FC.CONNECTING);const t=Date.now()-this.lastActiveTime;!this.ws||this.ws.readyState!==WebSocket.OPEN||t>this.maxIdleTimeInterval?this.reconnect():this.triggerHeartbeatCheck()}startSleepDetector(){this.sleepDetectorTimer&&clearInterval(this.sleepDetectorTimer),this.lastTickTime=Date.now(),this.sleepDetectorTimer=setInterval((()=>{const e=Date.now();e-this.lastTickTime>this.SLEEP_THRESHOLD&&this.wakeUpConnection(),this.lastTickTime=e}),this.SLEEP_CHECK_INTERVAL)}connect(e){var t,r;e?this.authenticatedToken===e&&(null===(t=this.ws)||void 0===t?void 0:t.readyState)===WebSocket.CONNECTING||(this.authenticatedToken!==e||(null===(r=this.ws)||void 0===r?void 0:r.readyState)!==WebSocket.OPEN?(this.ws&&this.closeConnection(),this.authenticatedToken=e,this.retryCount=0,this.initWebSocket(e)):this.wakeUpConnection()):console.error("\u3010WS\u3011\u65e0\u6548\u7684 token")}closeConnection(){this.clearAllTimers(),this.ws&&(this.ws.onclose=null,this.ws.onerror=null,this.ws.readyState!==WebSocket.OPEN&&this.ws.readyState!==WebSocket.CONNECTING||this.ws.close()),this.ws=null,this.authenticatedToken="",this.updateStatus(FC.DISCONNECTED)}getConnectionId(){return this.connectionId}setConnectionFailureCallback(e){this.connectionFailureCallback=e}reconnect(){this.authenticatedToken&&this.checkNetworkStatus()&&(this.ws&&this.ws.readyState===WebSocket.CONNECTING||(this.clearAllTimers(),this.ws&&(this.ws.onclose=null,this.ws.onerror=null,this.ws.close(),this.ws=null),this.retryCount=0,this.initWebSocket(this.authenticatedToken)))}async handleReconnect(){if(!this.authenticatedToken)return;if(!this.checkNetworkStatus())return;if(this.reconnectTimer)return;if(this.ws&&this.ws.readyState===WebSocket.CONNECTING)return;let e=this.minReconnectionDelay*Math.pow(1.5,this.retryCount);e=Math.min(e,this.maxReconnectionDelay),this.reconnectTimer=setTimeout((async()=>{if(this.reconnectTimer=null,this.retryCount++,this.retryCount===this.MAX_RETRIES_BEFORE_TOKEN_CHECK&&this.connectionFailureCallback){if(await this.connectionFailureCallback(this.authenticatedToken))return void(this.retryCount=0)}this.initWebSocket(this.authenticatedToken)}),e)}checkNetworkStatus(){return navigator.onLine}initWebSocket(e){try{this.updateStatus(FC.CONNECTING);const t=`${rC()}?token=${encodeURIComponent(e)}&lang=${Kk.language}`;if(!t)throw new Error("WebSocket URL\u672a\u914d\u7f6e");this.ws&&(this.ws.onclose=null,this.ws.close()),this.ws=new WebSocket(t),this.connectionTimeoutTimer&&clearTimeout(this.connectionTimeoutTimer),this.connectionTimeoutTimer=setTimeout((()=>{this.ws&&this.ws.readyState!==WebSocket.OPEN&&this.ws.close()}),this.connectionTimeout),this.setupWebSocketHandlers()}catch(t){console.error("\u3010WS\u3011WebSocket\u521d\u59cb\u5316\u5931\u8d25:",t),this.handleReconnect()}}setupWebSocketHandlers(){this.ws&&(this.ws.onopen=e=>{this.updateStatus(FC.CONNECTED),this.connectionTimeoutTimer&&(clearTimeout(this.connectionTimeoutTimer),this.connectionTimeoutTimer=null),this.retryCount=0,this.lastActiveTime=Date.now(),this.startHeartbeat(),this.processMessageQueue()},this.ws.onmessage=e=>{try{const t=JSON.parse(e.data);t.action,this.lastActiveTime=Date.now(),this.notifySubscribers(t)}catch(o6){console.error("\u3010WS\u3011\u6d88\u606f\u89e3\u6790\u5931\u8d25:",o6)}},this.ws.onclose=e=>{this.updateStatus(FC.DISCONNECTED),this.clearAllTimers(),this.handleReconnect()},this.ws.onerror=e=>{console.error("\u3010WS\u3011WebSocket\u9519\u8bef:",e)})}triggerHeartbeatCheck(){this.clearPongTimeout(),this.sendMessage({action:yC}),this.pongTimeoutTimer=setTimeout((()=>{this.reconnect()}),3e3)}clearPongTimeout(){this.pongTimeoutTimer&&(clearTimeout(this.pongTimeoutTimer),this.pongTimeoutTimer=null)}startHeartbeat(){this.stopHeartbeat(),this.heartbeatTimer=setInterval((()=>{var e;(null===(e=this.ws)||void 0===e?void 0:e.readyState)===WebSocket.OPEN&&this.triggerHeartbeatCheck()}),BC),this.triggerHeartbeatCheck()}stopHeartbeat(){this.heartbeatTimer&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=null),this.clearPongTimeout()}clearAllTimers(){this.stopHeartbeat(),this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null),this.connectionTimeoutTimer&&(clearTimeout(this.connectionTimeoutTimer),this.connectionTimeoutTimer=null)}subscribe(e,t){var r;const n=null!==(r=this.subscribers.get(e))&&void 0!==r?r:new Set;n.add(t),this.subscribers.set(e,n)}unsubscribe(e,t){const r=this.subscribers.get(e);null===r||void 0===r||r.delete(t),0===(null===r||void 0===r?void 0:r.size)&&this.subscribers.delete(e)}notifySubscribers(e){const t=e.action;this.subscribers.has(t)&&this.subscribers.get(t).forEach((t=>t(e)))}async sendMessage(e){var t,r;if(!(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&(!navigator.onLine||(null===(t=this.ws)||void 0===t?void 0:t.readyState)!==WebSocket.OPEN))throw new Error("Connection unavailable. Please try again after reconnecting.");if(e.action,this.checkNetworkStatus())if((null===(r=this.ws)||void 0===r?void 0:r.readyState)===WebSocket.OPEN)this.ws.send(JSON.stringify(e));else{const t=this.messageQueue.findIndex((t=>t.action===e.action));-1!==t?this.messageQueue[t]=e:this.messageQueue.push(e)}else console.error("\u3010WS\u3011\u5f53\u524d\u65e0\u7f51\u7edc\u8fde\u63a5\uff0c\u6d88\u606f\u53d1\u9001\u5931\u8d25")}async processMessageQueue(){var e;if(this.messageQueue.length,(null===(e=this.ws)||void 0===e?void 0:e.readyState)===WebSocket.OPEN)for(;this.messageQueue.length>0;){const e=this.messageQueue[0];try{await this.sendMessage(e),this.messageQueue.shift()}catch(t){console.error("\u3010WS\u3011\u961f\u5217\u6d88\u606f\u53d1\u9001\u5931\u8d25:",t);break}}}}zC.instance=void 0;const WC=zC.getInstance(),HC=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((r=>{const n=Date.now().toString(),o=`authCallback_${n}`,a=setTimeout((()=>{delete window[o],r(null)}),3e4);window[o]=e=>{clearTimeout(a),delete window[o],r(e||{})};Ue.triggerBridge({action:e,...t,callbackName:o,requestId:n})||(clearTimeout(a),delete window[o],r(!1))}))},YC="signIn",VC="signOut",GC="tokenRefresh",ZC="tokenRefresh_failure",QC=()=>{const[e,r]=(0,t.useState)(Fk&&cC?l.loginState.login:l.loginState.loginOut),[n,o]=(0,t.useState)(!1),[a,i]=(0,t.useState)({});(0,t.useEffect)((()=>{const e=async()=>{try{const e=Fk?await gC():(await BS.currentSession()).getIdToken().getJwtToken();Fk&&r(l.loginState.login),WC.connect(e)}catch(e){Fk?r(l.loginState.loginOut):s()}},t=e=>{let{payload:t}=e;const{event:r,data:n}=t;switch(r){case YC:break;case VC:WC.closeConnection();break;case GC:break;case ZC:s()}};return Vy.listen("auth",t),e(),WC.setConnectionFailureCallback((async t=>!(e=>{try{return 1e3*JSON.parse(atob(e.split(".")[1])).exp>Date.now()}catch(t){return console.error("\u3010Auth\u3011Token \u89e3\u6790\u5931\u8d25",t),!1}})(t)&&(await e(),!0))),()=>Vy.remove("auth",t)}),[]);const s=async e=>{try{Fk&&await vC(),await BS.forgetDevice().catch((()=>{})),await BS.signOut()}catch(t){}finally{c(),o(!0),e&&e({success:!0}),Fk&&window.location.replace("/me/homepage?appHome=1&fromType=app")}},c=()=>{r(l.loginState.loginOut),WC.closeConnection(),Fk?function(e){const t=localStorage.getItem(Iy);e(),t&&localStorage.setItem(Iy,t)}((()=>localStorage.clear())):localStorage.clear()},u=e=>{r(l.loginState.login),WC.connect(e)};return{autoLogin:u,loginState:e,setLoginState:r,isClearData:n,handleSign:async e=>{let{loginMail:t,cb:r}=e;await BS.signUp({username:t,password:"Aa123456"}).then((e=>{})).catch((e=>{}));const n=!Fk&&await HC("requestSignIn",{email:t});!1===n?await BS.signIn(t).then((e=>{"CUSTOM_CHALLENGE"===e.challengeName&&"undefined"!==typeof window&&(i(e),r&&r(e))})).catch((e=>{r&&r(e)})):n&&n.success?r&&r({appLogin:!0}):r&&r(new Error(n&&n.error||"Sign in failed"))},handleChallenge:async e=>{let{pagePwd:t,cb:r}=e;const n=!Fk&&await HC("requestConfirmSignIn",{code:t});var i;if(!1===n)try{const e=await BS.sendCustomChallengeAnswer(a,t),{idToken:{jwtToken:n}}=e.signInUserSession;Fk&&(i=JSON.parse(atob(n.split(".")[1])).sub,Dy(Ey().map((e=>e.target?e:{...e,target:i}))),await vC()),u(n),o(!1),setTimeout((()=>{r&&r(a)}),0)}catch(s){r&&r(new Error("Incorrect username or password."))}else n&&n.success&&n.signedIn?(o(!1),r&&r({appLogin:!0})):r&&r(new Error(n&&n.error||"Incorrect username or password."))},handleSignout:s,currentUserInfo:async()=>await BS.currentUserInfo()}},KC=(e,r)=>{(0,t.useEffect)((()=>(WC.subscribe(e,r),()=>WC.unsubscribe(e,r))),[e,r])},XC=e=>WC.sendMessage(e),JC=()=>{const e=(0,t.useRef)({});return{registerCallback:(0,t.useCallback)(((t,r,n)=>{"function"===typeof n&&(e.current[t]||(e.current[t]={}),e.current[t][r]||(e.current[t][r]=[]),e.current[t][r].push(n))}),[]),invokeCallbacks:(0,t.useCallback)((t=>{try{var r;const{action:n,op:o}=t,a=null===(r=e.current[n])||void 0===r?void 0:r[o];if(Array.isArray(a)){const e=[...a];a.length=0,e.forEach((e=>{e(t)}))}}catch(n){console.error("Error invoking callbacks:",n)}}),[])}},$C=new Uint8Array(16),qC=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135]),eI=16,tI=function(e){let t=new Uint8Array(e.length),r=e.length-1;for(let n=0;n<r;n++)t[n]=e[n]<<1,128&e[n+1]&&(t[n]+=1);return t[r]=e[r]<<1,t},rI=function(e,t){let r=Math.min(e.length,t.length),n=new Uint8Array(r);for(let o=0;o<r;o++)n[o]=e[o]^t[o];return n};function nI(e,t){let r=new Uint8Array(eI),n=t*eI,o=n+eI;return r.set(e.slice(n,o)),r}async function oI(e,t){const r=new Uint8Array(16);if(void 0===window.crypto||void 0===window.crypto.subtle)return r;const n=await window.crypto.subtle.importKey("raw",e,{name:"AES-CBC",length:8*e.byteLength},!1,["encrypt"]);let o={name:"AES-CBC",iv:r};t.byteLength%16===0&&(o={...o,padding:"None"});const a=await window.crypto.subtle.encrypt(o,n,t);let i=new Uint8Array(a);return i.byteLength!==e.byteLength&&(i=i.slice(0,e.byteLength)),new Uint8Array(i)}const aI=async function(e,t){const r=function(e){if(e.length%2!==0)throw new Error("Invalid hexString");const t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2){const n=parseInt(e.substring(r,r+2),16);t[r/2]=n}return t}(e);let n,o,a,i=await async function(e){let t=await oI(e,$C),r=tI(t);128&t[0]&&(r=rI(r,qC));let n=tI(r);return 128&r[0]&&(n=rI(n,qC)),{subkey1:r,subkey2:n}}(r),s=Math.ceil(t.length/eI);0===s?(s=1,n=!1):n=t.length%eI===0,a=s-1,o=n?rI(nI(t,a),i.subkey1):rI(function(e,t){let r=new Uint8Array(eI),n=t*eI,o=e.length;return r.fill(0),r.set(e.slice(n,o),0),o-n<eI&&(r[o-n]=128),r}(t,a),i.subkey2);let l,c=new Uint8Array(16);for(let f=0;f<a;f++)l=rI(c,nI(t,f)),c=await oI(r,l);l=rI(o,c);let u=await oI(r,l);return(d=u,Array.from(d).map((e=>e.toString(16).padStart(2,"0"))).join("")).substring(0,8);var d};const iI={cmacTime:async function(e){const t=Math.floor(Date.now()/1e3),r=new ArrayBuffer(4);new DataView(r).setUint32(0,t,!0);const n=new Uint8Array(r).slice(1,4);return await aI(e,n)}},sI="webapi_ssm_shadow_get",lI="webapi_history_get",cI="webapi_cmd_send",uI={},dI=(e,t)=>{uI[e]=t},fI=e=>{delete uI[e]},pI=e=>uI[e]||null,hI=()=>{const e=(0,t.useCallback)((e=>{e.action===MC&&(e=>{let t,r=e.op;void 0===e.UUID&&void 0===e.touch_id?t="":e.UUID?t=e.UUID:e.touch_id&&(t=e.touch_id);const n=pI(r);if(n){const r=null!=t&&""!==t;try{r?e.data?n(t,e.data):n(t,e):n("",e)}catch(o){console.error(`\u56de\u8c03\u51fd\u6570\u6267\u884c\u5931\u8d25: ${o.message}`)}}})(e)}));KC(MC,e);return{sendCmd:async function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r={action:MC,...e};await WC.sendMessage(r,t)}}},mI="web_identify_id",gI="web_env_id",vI="web_identify",yI="kv",bI=e=>{try{return localStorage.getItem(e)}catch{return null}},wI=(e,t)=>{try{localStorage.setItem(e,t)}catch{}},xI=e=>new Promise((t=>{try{if("undefined"===typeof indexedDB)return t(null);const r=indexedDB.open(vI,1);r.onupgradeneeded=()=>r.result.createObjectStore(yI),r.onerror=()=>t(null),r.onsuccess=()=>{try{const n=r.result.transaction(yI,"readonly").objectStore(yI).get(e);n.onsuccess=()=>{var e;return t(null!==(e=n.result)&&void 0!==e?e:null)},n.onerror=()=>t(null)}catch{t(null)}}}catch{t(null)}})),SI=(e,t)=>{try{if("undefined"===typeof indexedDB)return;const r=indexedDB.open(vI,1);r.onupgradeneeded=()=>r.result.createObjectStore(yI),r.onsuccess=()=>{try{r.result.transaction(yI,"readwrite").objectStore(yI).put(t,e)}catch{}}}catch{}},AI=(async()=>{const e=bI(mI),t=await xI(mI);t&&!e&&wI(mI,t)})();let kI="",CI="";"function"===typeof fetch&&fetch("/version.json",{cache:"no-store"}).then((e=>e.ok?e.json():null)).then((e=>{e&&(kI=e.version||"",CI=e.gitHash||"")})).catch((()=>{}));const II=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new Date;const t=e=>String(e).padStart(2,"0");return`${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())} ${t(e.getHours())}:${t(e.getMinutes())}:${t(e.getSeconds())}`},EI=()=>{if("undefined"!==typeof crypto&&"function"===typeof crypto.randomUUID)return crypto.randomUUID();const e=new Uint8Array(16);if("undefined"!==typeof crypto&&crypto.getRandomValues)crypto.getRandomValues(e);else for(let r=0;r<16;r++)e[r]=Math.floor(256*Math.random());e[6]=15&e[6]|64,e[8]=63&e[8]|128;const t=Te.hp.from(e).toString("hex");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`},DI=async()=>{try{await AI}catch{}let e=bI(mI);return e||(e=await xI(mI),e&&wI(mI,e)),e||(e=EI(),wI(mI,e)),SI(mI,e),e},TI=e=>{e&&wI(gI,e)},OI=()=>{var e;const t="undefined"!==typeof navigator?navigator:{},r=t.userAgent||"",n=t.userAgentData,o=null===n||void 0===n||null===(e=n.brands)||void 0===e?void 0:e.find((e=>!/Not.?A.?Brand/i.test(e.brand))),a=o?{name:o.brand,version:o.version}:(e=>{let t;return(t=e.match(/Trident\/.*rv:(\d+(?:\.\d+)*)/))||(t=e.match(/MSIE (\d+(?:\.\d+)*)/))?{name:"IE",version:t[1]}:(t=e.match(/Edg(?:e|A|iOS)?\/(\d+(?:\.\d+)*)/))?{name:"Edge",version:t[1]}:(t=e.match(/OPR\/(\d+(?:\.\d+)*)/))||(t=e.match(/Opera\/(\d+(?:\.\d+)*)/))?{name:"Opera",version:t[1]}:(t=e.match(/Firefox\/(\d+(?:\.\d+)*)/))||(t=e.match(/FxiOS\/(\d+(?:\.\d+)*)/))?{name:"Firefox",version:t[1]}:(t=e.match(/(?:Chrome|CriOS)\/(\d+(?:\.\d+)*)/))?{name:"Chrome",version:t[1]}:/Safari/i.test(e)&&(t=e.match(/Version\/(\d+(?:\.\d+)*)/))?{name:"Safari",version:t[1]}:{name:"",version:""}})(r),i=(e=>{if(/iPhone|iPad|iPod/i.test(e)){const t=e.match(/OS (\d+[_.]\d+(?:[_.]\d+)?)/);return{name:"iOS",version:t?t[1].replace(/_/g,"."):""}}if(/Android/i.test(e)){const t=e.match(/Android (\d+(?:\.\d+)*)/);return{name:"Android",version:t?t[1]:""}}if(/Mac OS X/i.test(e)){const t=e.match(/Mac OS X (\d+[_.]\d+(?:[_.]\d+)?)/);return{name:"macOS",version:t?t[1].replace(/_/g,"."):""}}if(/Windows NT/i.test(e)){const t=e.match(/Windows NT (\d+\.\d+)/);return{name:"Windows",version:t?t[1]:""}}return/Linux/i.test(e)?{name:"Linux",version:""}:{name:"",version:""}})(r),s=t.language||"",l=(()=>{try{return new Intl.Locale(s).region||s.split("-").pop()||""}catch{return s.split("-").pop()||""}})(),c=/Mobi|Android|iPhone|iPad|iPod/i.test(r),u="undefined"!==typeof window&&window.screen||{},d=(()=>{try{return Intl.DateTimeFormat().resolvedOptions().timeZone||""}catch{return""}})();return[{displayName:a.name||"Biz3"},{version:kI},{build:CI},{language:s},{region:l},{bundleId:"undefined"!==typeof window?window.location.hostname:""},{systemName:i.name},{systemVersion:i.version},{model:a.name?`${a.name} ${a.version}`.trim():r},{deviceType:c?"phone":"desktop"},{screenWidth:u.width||0},{screenHeight:u.height||0},{screenScale:"undefined"!==typeof window&&window.devicePixelRatio||1},{timeZone:d},{collectedAt:II()}]},MI=(e,r,n)=>{const{sendCmd:o}=hI(),a=(0,t.useCallback)((e=>{if(e.action===PC)"pubDeviceStateChange"===e.op?n.updateDeviceState(e.data):"pubUserDeviceChange"===e.op&&n.getCompanyDevices()}),[e]);KC(PC,a);const i=(0,t.useCallback)((async e=>{let{device_id:t,cmd:n=88,sescretKey:o}=e;const a=await iI.cmacTime(o),i=bI(gI)||r.customerInfo.subUUID,s=Ue.uuidBuffer(i),l={action:PC,cmd:n,sign:a,history:s,device_id:t};await WC.sendMessage(l,!Fk)}),[r.customerInfo.subUUID]),s=(0,t.useCallback)(((e,t)=>{var r;const n=e.sesameId,o=null!==(r=null===n||void 0===n?void 0:n.replace(/-/g,""))&&void 0!==r?r:"",a=Ue.hexStringToUint8Array(o),i=e.ssmSecKa,s=Ue.hexStringToUint8Array(i),l=e.nickName||"",c=Ue.stringToUint8Array(l);if(c.length>255)throw new Error("Nickname too long to fit in one-byte length field");const u=c.length,d=Ue.getProductTypeFromModelName(e.deviceModel),f=new Uint8Array([d]),p=Ue.getMatterProductTypeFromModelName(e.deviceModel),h=new Uint8Array([p]),m=a.length+s.length+1+c.length+1+1,g=new Uint8Array(m);let v=0;g.set(a,v),v+=a.length,g.set(s,v),v+=s.length,g[v]=u,v+=1,g.set(c,v),v+=u,g.set(f,v),v+=1,g.set(h,v);const y=new Uint8Array(t.length+g.length);return y.set(t,0),y.set(g,t.length),y}),[]);return{sendCommandToWM2:i,sendCommandToHub3WithConnectionId:(0,t.useCallback)((async e=>{let{device_id:t,hub3_id:r,cmd:n=l.cmdCode.ssmOSUpdate,secretKey:a,iotPayload:i={}}=e;r||(r=t);const c=`wm2${Ue.hub3TopicId(r)}cmd`,u=await iI.cmacTime(a),d=Ue.hexStringToUint8Array(u),f=new Uint8Array(1);f[0]=n;const p=Ue.stringToUint8Array(t),h=d.length+f.length+p.length;let m=new Uint8Array(h),g=0;if(m.set(d,g),g+=d.length,m.set(f,g),g+=f.length,m.set(p,g),g+=p.length,Object.keys(i).length>0)switch(n){case l.cmdCode.SSM3_ITEM_REMOVE_SESAME:case l.cmdCode.SSM3_ITEM_ADD_SESAME:m=s(i,m);break;case l.cmdCode.HUB3_ITEM_CODE_LED_DUTY:{const e=i.op,t=i.duty;if(void 0===e||void 0===t)return void console.error("Missing required parameters: op or duty");if(e<0||e>255||t<0||t>255)return void console.error("Parameters out of range for Uint8Array: op=",e,", duty=",t);const r=new Uint8Array(2);r[0]=e,r[1]=t;const n=new Uint8Array(m.length+r.length);n.set(m,0),n.set(r,m.length),m=n}break;case l.cmdCode.HUB3_ITEM_CODE_RELAY_SWITCH:{const e=void 0!==i.relayId?i.relayId:l.hub3RelayId.relay1,t=void 0!==i.action?i.action:l.hub3RelayAction.on;if(e<0||e>255||t<0||t>255)return void console.error("Parameters out of range for Uint8Array: relayId=",e,", action=",t);const r=new Uint8Array(2);r[0]=e,r[1]=t;const n=new Uint8Array(m.length+r.length);n.set(m,0),n.set(r,m.length),m=n}break;case l.cmdCode.HUB3_ITEM_CODE_CLEAR_WIFI_SSID:break;default:console.warn("Unsupported cmd for iotPayload:",n)}const v=Te.hp.from(m).toString("base64");await o({topic:c,payload:v,op:"cmd"},!Fk)}),[o,s])}};var PI=r(41397);const jI="pubCardLinkedIDs",RI="pubPasscodeLinkedIDs",_I="getCards",NI="getPasscodes",LI="getCardsByStpDevice";function UI(){let e=null;return t=>{let{list:r,page:n,totalPage:o}=t;if(!Array.isArray(r)||!Number.isInteger(n)||!Number.isInteger(o)||n<1||n>o)return e=null,null;if(1===n&&(e={next:1,total:o,items:[]}),!e||e.next!==n||e.total!==o)return e=null,null;if(e.items.push(...r),e.next+=1,n!==o)return null;const a=e.items;e=null;const i=a.map((e=>{var t;return null===e||void 0===e||null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase()}));return i.every(Boolean)&&new Set(i).size===i.length?a:null}}const BI="PubedCompanyDevice",FI=e=>{const[r,n]=(0,t.useState)({count:0,Items:[]}),{registerCallback:o,invokeCallbacks:a}=JC(),i=(0,t.useCallback)((()=>{const t=e.customerInfo.companyID;t&&XC({action:EC,cid:t,op:"getGroups"})}),[e.customerInfo.companyID]),s=(0,t.useCallback)((e=>{if(a(e),e.action===EC)switch(e.op){case"getGroups":const t={count:e.data.length,Items:e.data};n(t);break;case"deleteGroups":case"add":i()}}),[a,i]),l=(0,t.useCallback)((e=>{a(e),e.action}),[a]);KC(EC,s);const c=(0,t.useCallback)((t=>{const r=e.customerInfo.companyID;if(!r)return;const n=t.map((e=>({...e,cid:r})));XC({action:EC,objs:n,op:"deleteGroups"})}),[e.customerInfo.companyID]),u=(0,t.useCallback)(((t,r,n)=>{const a=e.customerInfo.companyID;if(!a)return;const i={action:EC,obj:{...{name:t,cid:a,uuids:r}},op:"add"};XC(i),o(i.action,i.op,n)}),[e.customerInfo.companyID,o]);KC(kC,l);const d=(0,t.useCallback)(((t,r)=>{if(!e.customerInfo.companyID)return;const n={action:kC,items:t,op:"add"};XC(n),o(n.action,n.op,r)}),[e.customerInfo.companyID,o]),f=(0,t.useCallback)(((t,r)=>{const n=e.customerInfo.companyID;if(!n)return;const a={action:kC,...t,companyID:n,op:"group"};XC(a),o(a.action,a.op,r)}),[e.customerInfo.companyID,o]),p=(0,t.useCallback)(((e,t)=>{const r={action:kC,subUUID:e,op:"get"};XC(r),o(r.action,r.op,t)}),[o]),h=(0,t.useCallback)(((e,t)=>{const r={action:kC,...e,op:"del"};XC(r),o(r.action,r.op,t)}),[o]),m=(0,t.useCallback)(((e,t)=>{const r={action:kC,...e,op:"updateGuestTag"};XC(r),o(r.action,r.op,t)}),[o]),g=(0,t.useCallback)(((e,t)=>{const r={action:kC,...e,op:"generateQRToken"};XC(r),o(r.action,r.op,t)}),[o]),v=(0,t.useCallback)(((e,t)=>{const r={action:kC,qrToken:e,op:"redeemQRToken"};XC(r),o(r.action,r.op,t)}),[o]),y=(0,t.useCallback)(((e,t)=>{const r={action:EC,gid:e,op:"getBindUserGroup"};XC(r),o(r.action,r.op,t)}),[o]),b=(0,t.useCallback)(((t,r)=>{const n=e.customerInfo.companyID;if(!n)return;const a={action:EC,cid:n,...t,op:"removeBindUserGroup"};XC(a),o(a.action,a.op,r)}),[e.customerInfo.companyID,o]),w=(0,t.useCallback)(((t,r,n,a)=>{const i=e.customerInfo.companyID;if(!i)return;const s=n.map((e=>({deviceUUID:e.deviceUUID,secretKey:e.secretKey}))),l={action:EC,cid:i,gid:t,uuids:r,items:s,op:"removeBindDevice"};XC(l),o(l.action,l.op,a)}),[e.customerInfo.companyID,o]),x=(0,t.useCallback)(((t,r,n,a)=>{const i=e.customerInfo.companyID;if(!i)return;const s={action:EC,cid:i,gid:t,uuids:r,items:n,op:"addBindDevice"};XC(s),o(s.action,s.op,a)}),[e.customerInfo.companyID,o]);KC(TC,s);const S=(0,t.useCallback)(((t,r)=>{let{deviceUUID:n,limit:a}=t;const i=e.customerInfo.companyID;if(!i)return;const s={action:TC,deviceUUID:n,companyID:i,limit:a,op:a>0?"getLimited":"get"};XC(s),o(s.action,s.op,r)}),[e.customerInfo.companyID,o]);KC(OC,s);const A=(0,t.useCallback)((function(t,r){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;const a=e.customerInfo.companyID;if(!a)return;const i={action:OC,companyID:a,list:t,pageSize:n,op:"getHistory"};XC(i),o(i.action,i.op,r)}),[e.customerInfo.companyID,o]),k=(0,t.useCallback)(((e,t)=>{let{deviceUUID:r,timestamp:n}=e;const a={action:OC,deviceUUID:r,timestamp:n,op:"makeInvisible"};XC(a),o(a.action,a.op,t)}),[o]),C=(0,t.useCallback)(((e,t)=>{let{deviceUUID:r,timestamp:n}=e;const a={action:OC,deviceUUID:r,timestamp:n,op:"getEnv"};XC(a),o(a.action,a.op,t)}),[o]),I=(0,t.useCallback)(((t,r)=>{const n=e.customerInfo.companyID;if(!n)return;const a={action:EC,obj:{cid:n,...t},op:"update"};XC(a),o(a.action,a.op,r)}),[e.customerInfo.companyID,o]);return{deviceGroups:r,getDeviceGroups:i,removeDeviceGroups:c,addDeviceGroup:u,shareDeviceKeysToEmployees:d,shareDeviceGroupKeysToEmployeeGroup:f,getEmployeeGroup:y,postDeviceGroupInfo:I,removeEmployeeGroup:b,removeDeviceInGroup:w,addDeviceInGroup:x,getDeviceEmployeeKeys:S,getDeviceHistory:A,getEmployeeDeviceKeys:p,removeEmployeeDeviceKey:h,updateGuestKeyTag:m,generateQRToken:g,redeemQRToken:v,makeInvisibleHistory:k,getHistoryEnv:C}},zI=e=>{const[r,n]=(0,t.useState)({count:0,Items:[]}),{registerCallback:o,invokeCallbacks:a}=JC(),i=(0,t.useCallback)((t=>{const r=e.customerInfo.subUUID;if(!r)return;const n={action:LC,userId:r,op:"getScheduleList"};XC(n),o(LC,n.op,t)}),[e.customerInfo.subUUID]),s=(0,t.useCallback)((e=>{if(a(e),e.action===LC)if("getScheduleList"===e.op){const t={count:e.data.length,Items:e.data};n(t)}}),[a]),l=(0,t.useCallback)(((t,r)=>{const n=e.customerInfo.subUUID;if(!n)return;const a={action:LC,userId:n,scheduleId:t,op:"cancelSchedule"};XC(a),o(LC,a.op,r)}),[e.customerInfo.subUUID]);return KC(LC,s),{schedules:r,setSchedules:n,getScheduleList:i,cancelSchedule:l}},WI=()=>{const[e,r]=(0,t.useState)([]),[n,o]=(0,t.useState)({}),{registerCallback:a,invokeCallbacks:i}=JC(),s=(0,t.useCallback)(((e,t,r)=>{if(!e||!t)return;const n={action:UC,op:"command",deviceId:e,cmd:t};XC(n),a(UC,`${n.op}:${e}`,r)}),[a]),l=(0,t.useCallback)((e=>{const t={action:UC,op:"list"};XC(t),a(UC,t.op,e)}),[a]),c=(0,t.useCallback)(((e,t)=>{e&&(o((t=>({...t,[e]:null}))),s(e,"face3Wake",t))}),[s]),u=(0,t.useCallback)(((e,t)=>{if(!e)return;const r={action:UC,op:"viewer",deviceId:e};XC(r),a(UC,`${r.op}:${e}`,t)}),[a]),d=(0,t.useCallback)((e=>{var t,n;const a=null===(t=e.data)||void 0===t?void 0:t.deviceId;if(i(!a||"command"!==e.op&&"viewer"!==e.op?e:{...e,op:`${e.op}:${a}`}),e.action===UC)switch(e.op){case"streamState":null!==(n=e.data)&&void 0!==n&&n.deviceId&&o((t=>({...t,[e.data.deviceId]:e.data.state})));break;case"list":var s;if(e.success)r((null===(s=e.data)||void 0===s?void 0:s.devices)||[])}}),[i]);return KC(UC,d),{face3Devices:e,face3StreamStates:n,listFace3Devices:l,sendFace3Command:s,wakeFace3Device:c,viewFace3Device:u}},HI={name:"",companyID:"",id:null,invoice_settings:{default_payment_method:null},access:[],tag:[]},YI=e=>{const[r]=xv(),n=Fk||"app"===r.get("fromType"),[o,a]=(0,t.useState)(!Fk),[i,s]=(0,t.useState)(HI),[l,c]=(0,t.useState)({apiKeyValue:"",apiKeyId:"",usedCount:0}),[u,d]=(0,t.useState)([]),[f,p]=(0,t.useState)({}),[h,m]=(0,t.useState)([]),{registerCallback:g,invokeCallbacks:v}=JC(),y=(0,t.useCallback)((e=>e?e.isSesameApp?{...e,access:[...e.access,Dh.pageNames.developer]}:e.tag&&e.tag.length>0&&("\u30aa\u30fc\u30ca\u30fc"===e.tag[0]||"\u30de\u30cd\u30fc\u30b8\u30e3\u30fc"===e.tag[0])?{...e,access:Dh.allTags}:e:e),[]),b=(0,t.useMemo)((()=>{if(!i.isSesameApp){var e;const t=h.find((e=>e.companyID===i.companyID));return{...i,subscriptionId:null===t||void 0===t||null===(e=t.feeLevel)||void 0===e?void 0:e.subscriptionId}}if(0===h.length)return{};const t=h.find((e=>{var t;return!0===(null===(t=e.feeLevel)||void 0===t?void 0:t.isRootUser)}));if(t)return{...t,...t.feeLevel};const r=h.filter((e=>!e.isSesameApp)).reduce(((e,t)=>{var r,n;return!e||(null===(r=t.feeLevel)||void 0===r?void 0:r.level)>(null===(n=e.feeLevel)||void 0===n?void 0:n.level)?t:e}),null);return{...r,...r.feeLevel}}),[h,i]),w=(0,t.useMemo)((()=>{var e;return null!==(e=null===b||void 0===b?void 0:b.companyID)&&void 0!==e?e:null}),[b]),x=(0,t.useMemo)((()=>(null===b||void 0===b?void 0:b.tag)&&"\u30aa\u30fc\u30ca\u30fc"===b.tag[0]),[b]),S=(0,t.useCallback)((()=>{if(n)return;XC({action:xC,op:"get"})}),[n]),A=(0,t.useCallback)((async()=>{n||"undefined"===typeof window||window.location.hostname.includes("d36dwtby1bef9y")||XC({action:SC,op:"reportEnv",appIdentifyId:await DI(),env:OI()})}),[n]),k=(0,t.useCallback)((e=>{if(e.action===bC){a(!1);let t=e.data.customerInfo;t=y(t),s(t),p(e.data.quotas),localStorage.setItem("curLogin",t.companyID),S(),A()}}),[y,S,A]),C=(0,t.useCallback)((()=>{if(!w)return;XC({action:DC,customerId:w,op:"getPaymentMethods"})}),[w]),I=(0,t.useCallback)((e=>{if(v(e),e.action===DC)switch(e.op){case"getDevApiInfo":if(!e.success)return;const{apiKeyValue:t,apiKeyId:r,usedCount:n}=e.data;c({apiKeyValue:t,apiKeyId:r,usedCount:n});break;case"getClientSecret":default:break;case"changeDefaultPayment":u.find((t=>t.id===e.reqContext.defaultPaymentMethod))?d((t=>t.map((t=>({...t,isDefaultPay:t.id===e.reqContext.defaultPaymentMethod}))))):C();break;case"getPaymentMethods":case"removePayment":d(e.data);break;case"payUpdateLevel":if(!e.success)return;setTimeout((()=>{window.location.reload()}),200)}}),[u,C,v]),E=(0,t.useCallback)((e=>{if(e.action===xC)switch(v(e),e.op){case"get":e.success&&m(e.data);break;case"updateName":e.success&&m((t=>t.map((t=>t.companyID===e.data.companyID?{...t,name:e.data.name}:t))));break;case"add":e.success&&m((t=>[...t,e.data]));break;case"delete":if(e.success){const{deletedCompanyId:t,curCompanyID:r}=e.data||{};m((e=>e.filter((e=>e.companyID!==t)))),r&&(localStorage.setItem("curLogin",r),j(r))}}}),[v]);KC(bC,k),KC(DC,I),KC(xC,E);const D=(0,t.useCallback)((e=>{XC({action:bC,email:e}),a(!0)}),[]),T=(0,t.useCallback)((e=>{let{level:t,isUpgrade:r,isCancel:n=!1,cb:o}=e;const a=b,i=a.subscriptionId,s=a.companyID;if(!s)return;const l={action:DC,subId:i,isUpgrade:r,level:t,isCancel:n,customerId:s,op:"payUpdateLevel"};XC(l),g(l.action,l.op,o)}),[b,g]),O=(0,t.useCallback)((e=>{const t=b.companyID;if(!t)return;const r={action:DC,customerId:t,op:"getClientSecret"};XC(r),g(r.action,r.op,e)}),[b,g]),M=(0,t.useCallback)(((e,t)=>{const r=b.companyID,n={action:DC,customerId:r,defaultPaymentMethod:e,op:"changeDefaultPayment"};XC(n),g(n.action,n.op,t)}),[b,g]),P=(0,t.useCallback)((e=>{const t=b.companyID;XC({action:DC,paymentId:e,customerId:t,op:"removePayment"})}),[b]),j=(0,t.useCallback)((e=>{D(e)}),[D]),R=(0,t.useCallback)((function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;const t=w;if(!t)return;const r=b.employeeEmail;if(!r)return;let n={action:DC,customerId:t,email:r,op:"getDevApiInfo"};null!==e&&(n={...n,update:e}),XC(n)}),[w,i.employeeEmail]),_=(0,t.useCallback)(((e,t)=>{const r={action:xC,obj:{companyID:w,name:e},op:"updateName"};XC(r),g(r.action,r.op,t)}),[g,w]),N=(0,t.useCallback)(((e,t,r,n)=>{const o={action:xC,name:e,employeeEmail:t,subUUID:r,op:"add"};XC(o),g(o.action,o.op,n)}),[g]),L=(0,t.useCallback)((e=>{const t={action:xC,companyID:w,op:"delete"};XC(t),g(t.action,t.op,e)}),[g,w]),U=(0,t.useCallback)((e=>{const t={action:xC,companyID:w,op:"getPaymentConfig"};XC(t),g(t.action,t.op,e)}),[w,g]);return(0,t.useEffect)((()=>{"signOut"===e.loginState&&(s(HI),a(!1))}),[e.loginState]),{isFromApp:n,customerInfo:i,setCustomerInfo:s,getCustomerInfo:j,isPending:o,getClientSecret:O,cardList:u,getCardList:C,delCard:P,changeDefaultPay:M,quotas:f,updateLevel:T,getLevelConfig:U,getDevApiInfo:R,apiKey:l,isOwner:x,addCompany:N,deleteCompany:L,companies:h,getCompanies:S,updateCompanyName:_,priorityCompany:b}},VI=t.createContext({}),GI=e=>{let{children:r,location:n}=e;const o=function(){const e=(0,$v.A)();return{isMobile:ky(e.breakpoints.down("sm")),isTablet:ky(e.breakpoints.between("sm","lg")),isDesktop:ky(e.breakpoints.up("lg"))}}(),[a,i]=(0,t.useState)({open:!1,msg:""}),[s,c]=(0,t.useState)(!1),[u,d]=(0,t.useState)(!1),[f,p]=(0,t.useState)(null),[h,m]=(0,t.useState)(""),g=QC(),v=YI(g),y=((e,r,n)=>{const[o,a]=(0,t.useState)([]),[i,s]=(0,t.useState)([]),[c,u]=(0,t.useState)([]),[d,f]=(0,t.useState)([]),[p,h]=(0,t.useState)([]),[m,g]=(0,t.useState)(!1),[v,y]=(0,t.useState)([]),[b,w]=(0,t.useState)(null),{registerCallback:x,invokeCallbacks:S}=JC(),A=(0,t.useRef)(UI()),k=(0,t.useRef)(UI()),C=(0,t.useCallback)((e=>{var t;if(e.action===wC)if(S(e),e.success)switch(e.op){case BI:case"PubedUserDevice":const{totalPage:n,data:{list:a,page:i}}=e.data,s=(e.op===BI?A:k).current({list:a,page:i,totalPage:n});null!==s&&(e.op===BI?(y(s),g(!0),F(s)):h(s));break;case"add":case"del":M();break;case"updateName":const l=e.reqContext;l&&l.deviceUUID&&E({deviceUUID:l.deviceUUID,deviceName:l.deviceName});break;case"getDeviceStatus":const c=(null===(t=e.data)||void 0===t?void 0:t.length)>0?e.data[0]:null;if(w(c),Dh.isWifiModel(null===c||void 0===c?void 0:c.deviceModel)){var r,o;const e=[{deviceUUID:c.deviceUUID,deviceModel:c.deviceModel}];(null!==(r=null===(o=c.stateInfo)||void 0===o?void 0:o.sesameDevices)&&void 0!==r?r:[]).forEach((t=>{e.push({deviceUUID:t.deviceUUID,deviceModel:t.deviceModel})})),F(e)}}else"Limit Exceeded"===e.message?n({open:!0,msg:"\u30c7\u30d0\u30a4\u30b9\u6570\u306e\u4e0a\u9650\u306b\u9054\u3057\u307e\u3057\u305f\u3002\u30d7\u30e9\u30f3\u306e\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9\u304c\u5fc5\u8981\u3067\u3059\u3002"}):n({open:!0,msg:e.message})}),[e,r]);KC(wC,C),(0,t.useEffect)((()=>{if(Fk)return WC.onStatusChange((e=>{e===FC.DISCONNECTED&&y((e=>e.map((e=>({...e,stateInfo:{...e.stateInfo,wm2State:!1}})))))}))}),[]);const I=e=>{r.isFromApp&&!Fk||XC(e)};(0,t.useEffect)((()=>{e.loginState===l.loginState.loginOut&&(a([]),s([]),u([]),f([]),h([]),y([]),g(!1),w(null))}),[e.loginState]),(0,t.useEffect)((()=>{const e=v.filter((e=>Dh.isLockModel(e.deviceModel)));a(e);const t=v.filter((e=>Dh.isSesameAccessControlDevice(e.deviceModel)));s(t)}),[v]),(0,t.useEffect)((()=>{u(p.filter((e=>!(!Dh.isSesameAccessControlDevice(e.deviceModel)||!Dh.isDeviceKeyOwner(e.keyLevel))&&!i.some((t=>t.deviceUUID===e.deviceUUID))))),f(p.filter((e=>!(!Dh.isLockModel(e.deviceModel)||!Dh.isDeviceKeyOwner(e.keyLevel))&&!o.some((t=>t.deviceUUID===e.deviceUUID)))))}),[p,i,o]);const E=(0,t.useCallback)((e=>{const t=t=>(null===t||void 0===t?void 0:t.deviceUUID)===e.deviceUUID?{...t,...e,stateInfo:e.stateInfo?{...t.stateInfo||{},...e.stateInfo}:t.stateInfo}:t;y((e=>e.map(t))),w((e=>t(e)))}),[]);(0,t.useEffect)((()=>{r.customerInfo.companyID&&(Fk&&(g(!1),y([]),A.current=UI()),M(),r.customerInfo.isSesameApp||O())}),[r.customerInfo.companyID,r.customerInfo.subUUID]);const D=(0,t.useCallback)((e=>{let t=!1;if(!Array.isArray(i))return console.error("filteredAccessControlDevices is not a valid array"),t;const r=i.find((t=>t.deviceUUID===e));return t=!(!r||!r.stateInfo||void 0===r.stateInfo.wm2State)&&r.stateInfo.wm2State,t||n({open:!0,msg:"Hub3\u3068\u306e\u901a\u4fe1\u72b6\u6cc1\u3092\u3054\u78ba\u8a8d\u304f\u3060\u3055\u3044"}),t}),[i,n]),T=(0,t.useCallback)((e=>{var t,r;return null!==(t=null===(r=i.find((t=>t.deviceUUID===e)))||void 0===r?void 0:r.deviceName)&&void 0!==t?t:e}),[i]),O=(0,t.useCallback)((function(){let e={action:wC,op:"getUserDevice"};arguments.length>0&&void 0!==arguments[0]&&arguments[0]?XC(e):I(e)}),[I]),M=(0,t.useCallback)((function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=r.customerInfo.companyID;if(!t)return;let n={action:wC,op:"getCompanyDevice",companyID:t};e?XC(n):I(n)}),[I,r.customerInfo.companyID]),P=(0,t.useCallback)((function(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const o=r.customerInfo.companyID;if(!o)return;let a={action:wC,op:"del",companyID:o,items:e};n?XC(a):I(a),x(a.action,a.op,t)}),[r.customerInfo.companyID,I,x]),j=(0,t.useCallback)(((e,t)=>{let{subUUID:r,deviceUUID:n,deviceName:o}=e;const a={action:wC,obj:{subUUID:r,deviceUUID:n,deviceName:o},op:"updateName"};XC(a),x(a.action,a.op,t)}),[x]),R=(0,t.useCallback)(((e,t)=>{const n={action:wC,op:"add",items:e,companyID:r.customerInfo.companyID};I(n),x(n.action,n.op,t)}),[r.customerInfo.companyID,I,x]),_=(0,t.useCallback)(((e,t)=>{let{deviceUUID:r,enable1:n,enable2:o}=e;const a={action:wC,obj:{deviceUUID:r,...void 0!==n&&{enable1:n},...void 0!==o&&{enable2:o}},op:"updateRelayEnable"};XC(a),x(a.action,a.op,t)}),[x]),N=(0,t.useCallback)(((e,t)=>{const r={action:wC,obj:e,op:"updateDeviceOrderKey"};I(r),x(r.action,r.op,t)}),[r.customerInfo.companyID,I,x]),L=(0,t.useCallback)(((e,t)=>{let{pushToken:n,items:o}=e,a=r.customerInfo.companyID;if(!a)return;const i={action:wC,companyID:a,pushToken:n,items:o,op:"notifyList"};XC(i),x(i.action,i.op,t)}),[r.customerInfo.companyID,x]),U=(0,t.useCallback)(((e,t)=>{let{pushToken:n,deviceUUID:o,enablePush:a}=e,i=r.customerInfo.companyID;if(!i)return;const s={action:wC,companyID:i,enablePush:a,deviceUUID:o,pushToken:n,op:"notifyManage"};XC(s),x(s.action,s.op,t)}),[r.customerInfo.companyID,x]),B=(0,t.useCallback)((e=>{const t=r.customerInfo.companyID;XC({action:wC,op:"subscribeDevicesUpdate",items:e,companyID:t})}),[XC,r.customerInfo.companyID]),F=(0,t.useCallback)((e=>{if(!e||0===e.length)return;const t=e.map((e=>({deviceUUID:e.deviceUUID,deviceModel:e.deviceModel})));t.length>0&&B(t)}),[B]);(0,t.useEffect)((()=>{const e=WC.onConnectionIdChange((e=>{M()}));return()=>e()}),[M]);const z=(0,t.useCallback)(((e,t)=>{let{deviceUUID:r,isRechargeBattery:n}=e;const o={action:wC,deviceUUID:r,isRechargeBattery:n?1:0,op:"switchRecharge"};XC(o),x(o.action,o.op,t)}),[x]),W=(0,t.useCallback)((e=>{e&&XC({action:wC,deviceUUID:e,op:"getDeviceStatus"})}),[XC,r.isFromApp]),H=(0,t.useCallback)(((e,t)=>{if(!e)return;const r={action:wC,deviceUUID:e,op:"getFactoryInfo"};XC(r),x(r.action,r.op,t)}),[x]);return{companyDevices:v,devicesLoaded:m,getCompanyDevices:M,filteredAccessControlDevices:i,setFilteredAccessControlDevices:s,userDevices:p,getUserDevices:O,canChoosedAccessControlDevices:c,canChoosedSsmDevices:d,removeSesameDevices:P,addSesameDevicesToBiz3:R,filteredSsmDevices:o,getWifiState:D,findTouchName:T,updateDeviceName:j,updateRelayEnable:_,updateDeviceState:E,updateDeviceOrderKey:N,getDevicesNotifyStatus:L,switchDeviceNotify:U,switchRechargebleBattery:z,deviceStatus:b,getDeviceStatus:W,getFactoryInfo:H}})(g,v,i),b=((e,r)=>{const[n,o]=(0,t.useState)({}),[a,i]=(0,t.useState)({}),{sendCmd:s}=hI(),{registerCallback:c,invokeCallbacks:u}=JC(),[d,f]=(0,t.useState)({start:!1,done:!1}),[p,h]=(0,t.useState)({start:!1,done:!1}),m=(0,t.useMemo)((()=>e.filteredAccessControlDevices.length),[e.filteredAccessControlDevices]),g=(0,t.useCallback)((()=>{const t=e.filteredAccessControlDevices.map((e=>e.deviceUUID));o((e=>Object.fromEntries(Object.entries(e).filter((e=>{let[r]=e;return t.includes(r)}))))),i((e=>Object.fromEntries(Object.entries(e).filter((e=>{let[r]=e;return t.includes(r)})))))}),[e.filteredAccessControlDevices]);(0,t.useEffect)((()=>{f({start:!1,done:!1}),h({start:!1,done:!1})}),[r.customerInfo.companyID]);const v=(0,t.useCallback)((e=>{let{op:t,devices:r=[]}=e;if(!r.length)return;let n=r.map((e=>e.deviceUUID)).join(",");XC({action:CC,obj:{devices:n},op:t})}),[]),y=(0,t.useCallback)((function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(t.length>0)return void v({op:_I,devices:t.map((e=>({deviceUUID:e})))});const r=e.filteredAccessControlDevices;d.start||(f({start:!0,done:!1}),v({op:_I,devices:r}))}),[e.filteredAccessControlDevices,d,v]),b=(0,t.useCallback)((function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(t.length>0)return void v({op:NI,devices:t.map((e=>({deviceUUID:e})))});const r=e.filteredAccessControlDevices;p.start||(h({start:!0,done:!1}),v({op:NI,devices:r}))}),[e.filteredAccessControlDevices,p,v]);(0,t.useEffect)((()=>{if(!r.isFromApp&&(g(),d.done||p.done)){const t=e.filteredAccessControlDevices;d.done&&v({op:_I,devices:t}),p.done&&v({op:NI,devices:t})}}),[m]);const w=(0,t.useCallback)(((e,t)=>{const{deviceUUID:r,page:n,list:a=[]}=e,s={[jI]:o,[RI]:i}[t];s&&s((e=>{const t=e[r]||[],o=1===n?[...a]:[...t,...a];return{...e,[r]:o}}))}),[]),x=(0,t.useMemo)((()=>{const{cardIDMap:e,cards:t}=Object.entries(a).reduce(((e,t)=>{let[r,n]=t;return n.forEach((t=>{const{passwordID:n}=t;e.cardIDMap[n]||(e.cardIDMap[n]=new Set),e.cardIDMap[n].add(r),e.cards.push(t)})),e}),{cardIDMap:{},cards:[]});return t.map((t=>({...t,uuids:Array.from(e[t.passwordID])})))}),[a]),S=(0,t.useMemo)((()=>{const{cardIDMap:e,cards:t}=Object.entries(n).reduce(((e,t)=>{let[r,n]=t;return n.forEach((t=>{const{cardID:n}=t;e.cardIDMap[n]||(e.cardIDMap[n]=new Set),e.cardIDMap[n].add(r),e.cards.push(t)})),e}),{cardIDMap:{},cards:[]});return t.map((t=>({...t,uuids:Array.from(e[t.cardID])})))}),[n]),A=(0,t.useCallback)((e=>{if(e.action===CC)switch(e.op){case NI:h((e=>({...e,done:!0})));break;case _I:f((e=>({...e,done:!0})));break;case LI:u(e);break;case jI:w(e.data,jI);break;case RI:w(e.data,RI);break;case"updateCardName":case"updatePasscodeName":const t={updateCardName:{listIdKey:"cardID",contextIdKey:"cardID",nameUUIDKey:"cardNameUUID",function:o},updatePasscodeName:{listIdKey:"passwordID",contextIdKey:"keyBoardPassCode",nameUUIDKey:"keyBoardPassCodeNameUUID",function:i}};u(e);const{function:r,listIdKey:n,contextIdKey:a,nameUUIDKey:s}=t[e.op]||{},{name:l,stpDeviceUUID:c}=e.reqContext;r((t=>{if(!t[c])return console.warn(`Device ${c} not found or has no cards`),t;const r=t[c],o=r.findIndex((t=>t[n]===e.reqContext[a]));if(-1===o)return t;const i=[...r];return i[o]={...i[o]},void 0!==l&&(i[o].name=l),i[o].nameUUID=e.reqContext[s],{...t,[c]:i}}));break;case"updateCardOwner":u(e);const{cardID:d,ownerSubUUID:p}=e.reqContext;if("ownerSubUUID"in e.reqContext)return void o((e=>{const t={...e};for(const r in t){const e=t[r].map((e=>d===e.cardID?{...e,subUUID:p}:e));t[r]=e}return t}));break;case"postCards":case"postPasscodes":u(e);break;case"delCards":break;case"clearCards":case"clearPasscodes":u(e)}}),[w,u]),k=(0,t.useCallback)((e=>S.filter((t=>t.cardID===e))||[]),[S]),C=(0,t.useCallback)((e=>x.filter((t=>t.passwordID===e))||[]),[x]);KC(CC,A);const I=(0,t.useCallback)(((e,t)=>{if(!e)return;let r={action:CC,obj:{devices:e},op:"clearCards"};XC(r),c(r.action,r.op,t)}),[c]),E=(0,t.useCallback)(((e,t)=>{if(!e)return;let r={action:CC,obj:{devices:e},op:"clearPasscodes"};XC(r),c(r.action,r.op,t)}),[c]),D=(0,t.useCallback)(((e,t,r)=>{let n={action:CC,obj:{...t},op:e};XC(n),c(n.action,n.op,r)}),[c]),T=(0,t.useCallback)(((e,t)=>{"ownerSubUUID"in e&&D("updateCardOwner",e,t)}),[D]),O=(0,t.useCallback)((async e=>{e&&e.length&&XC({action:CC,items:e,op:"delCards"})}),[]),M=(0,t.useCallback)((e=>{e&&e.length&&XC({action:CC,items:e,op:"delPasscodes"})}),[]),P=(0,t.useCallback)((e=>{let{deviceUUID:t,list:r,cb:n}=e;if(r.length<1)return;let o={action:CC,deviceUUID:t,list:r,op:"postCards"};XC(o),c(o.action,o.op,n)}),[c]),j=(0,t.useCallback)((e=>{let{deviceUUID:t,list:r,cb:n}=e;if(r.length<1)return;let o={action:CC,deviceUUID:t,list:r,op:"postPasscodes"};XC(o),c(o.action,o.op,n)}),[c]),R={card:{opType:"updateCardName",idKey:"cardID",uuidKey:"cardNameUUID",cmdCode:l.cmdCode.SSM_OS3_CARD_CHANGE,newUuidKey:"cardNameUUID"},password:{opType:"updatePasscodeName",idKey:"keyBoardPassCode",uuidKey:"keyBoardPassCodeNameUUID",cmdCode:l.cmdCode.SSM_OS3_PASSCODE_CHANGE,newUuidKey:"keyBoardPassCodeNameUUID"}},_=(0,t.useCallback)(((e,t,r)=>{const{opType:n,idKey:o,uuidKey:a,cmdCode:i,newUuidKey:l}=e,{stpDeviceUUID:c}=t,u=t[o],d=t[a];if(Ue.isUUIDV4(d))D(n,t,r);else{let e=Ue.hexStringToUint8Array(u),o=window.crypto.randomUUID(),a=Ue.hexStringToUint8Array(o.replace(/-/g,"")),d=2+e.length+a.length,f=new Uint8Array(d);f[0]=i,f[1]=e.length,f.set(e,2),f.set(a,2+e.length);let p=Te.hp.from(f).toString("base64");const h=setTimeout((()=>{fI(i),r({errMsg:"\u8a8d\u8a3c\u6a5f\u5668\u3068Hub3\u306e\u63a5\u7d9a\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002"})}),15e3);dI(i,(async(e,a)=>{if(e!==c)return;clearTimeout(h);const s={...t,[l]:o};D(n,s,r),fI(i)})),s({topic:`stp${c}cmd`,payload:p,op:i})}}),[D,s]),N=(0,t.useCallback)(((e,t)=>_(R.card,e,t)),[_]),L=(0,t.useCallback)(((e,t)=>_(R.password,e,t)),[_]),U=(0,PI.debounce)((e=>{y([e])}),1500,{leading:!1,trailing:!0,maxWait:3e3}),B=(0,PI.debounce)((e=>{b([e])}),1500,{leading:!1,trailing:!0,maxWait:3e3});dI(l.cmdCode.SSM_OS3_CARD_NOTIFY,((e,t)=>{U([t.stpUUID])})),dI(l.cmdCode.SSM_OS3_PASSCODE_NOTIFY,((e,t)=>{B([t.stpUUID])})),dI(l.cmdCode.STP_ITEM_CODE_PASSCODES_DELETE,((e,t)=>{const r=t.reqContext.payload,n=t.reqContext.topic,o=n.substring(3,n.length-3),a=Ue.extractCardIDsFromBase64(r).map((e=>({deviceID:o,passwordID:e})));M(a)})),dI(l.cmdCode.SSM2_ITEM_CODE_MECH_STATUS,((t,r)=>{const n=e.companyDevices.find((e=>e.deviceUUID===t));var o,a;n&&((null===(o=n.stateInfo)||void 0===o?void 0:o.cards_num)!==r.cards_num&&U([t]),(null===(a=n.stateInfo)||void 0===a?void 0:a.keyboards_num)!==r.keyboards_num&&B([t])),e.updateDeviceState({deviceUUID:t,stateInfo:{wm2State:r.wifi_state,cards_num:r.cards_num,fingerprints_num:r.fingerprints_num,keyboards_num:r.keyboards_num}})}));const F=(0,t.useCallback)(((e,t)=>{if(!e)return;let r=new Uint8Array(1);return r[0]=t,{topic:`stp${e}cmd`,payload:Te.hp.from(r).toString("base64"),op:t}}),[]),z=(0,t.useCallback)((async e=>{await s(F(e,l.cmdCode.SSM_OS3_CARD_GET))}),[F,s]),W=(0,t.useCallback)((async e=>{await s(F(e,l.cmdCode.SSM_OS3_PASSCODE_GET))}),[F,s]),H=(0,t.useCallback)((e=>e.reduce(((e,t)=>{let r=t.cardID.replace(/-/g,"");return e+Ue.hexStringToUint8Array(r).length+1}),0)),[]),Y=(0,t.useCallback)((e=>e.reduce(((e,t)=>e+Ue.hexStringToUint8Array(t.passwordID).length+1),0)),[]),V=(0,t.useCallback)((async(e,t)=>{if(Array.isArray(t)&&0!==t.length&&e)return new Promise(((r,n)=>{dI(l.cmdCode.STP_ITEM_CODE_CARDS_DELETE,(async(e,t)=>{const n=t.reqContext.payload,o=t.reqContext.topic,a=o.substring(3,o.length-3),i=Ue.extractCardIDsFromBase64(n).map((e=>({deviceID:a,cardID:e})));try{await O(i),fI(l.cmdCode.STP_ITEM_CODE_CARDS_DELETE),r()}catch(s){r()}}));let o=H(t),a=new Uint8Array(1+o);a[0]=l.cmdCode.STP_ITEM_CODE_CARDS_DELETE;let i=1;for(let e=0;e<t.length;e++){let r=t[e].cardID.replace(/-/g,""),n=Ue.hexStringToUint8Array(r),o=n.length;a[i]=o,i+=1,a.set(n,i),i+=n.length}let c=Te.hp.from(a).toString("base64"),u={topic:`stp${e}cmd`,payload:c,op:l.cmdCode.STP_ITEM_CODE_CARDS_DELETE};s(u)}))}),[O,H,s]),G=(0,t.useCallback)((async(e,t)=>{if(!Array.isArray(t)||0===t.length)return;if(!e)return;let r=Y(t),n=new Uint8Array(1+r);n[0]=l.cmdCode.STP_ITEM_CODE_PASSCODES_DELETE;let o=1;for(let i=0;i<t.length;i++){let e=Ue.hexStringToUint8Array(t[i].passwordID),r=e.length;n[o]=r,o+=1,n.set(e,o),o+=e.length}let a={topic:`stp${e}cmd`,payload:Te.hp.from(n).toString("base64"),op:l.cmdCode.STP_ITEM_CODE_PASSCODES_DELETE};await s(a)}),[Y,s]),Z=(0,t.useCallback)(((e,t)=>{let{stpDeviceUUID:r,lastKey:n=null,pageSize:o=500}=e;if(!r)return;let a={action:CC,obj:{stpDeviceUUID:r,lastKey:n,pageSize:o},op:LI};XC(a),c(a.action,a.op,t)}),[c]);return{nfcCards:S,findCardsByCardID:k,getCardsByStpDevice:Z,updateCardName:N,updateCardOwner:T,postCards:P,clearCards:I,fetchNfcCards:y,passcodes:x,postPasscodes:j,fetchPasscodes:b,clearPasswords:E,findPasscodesByPasscodeID:C,updatePasswordName:L,nfcCardFetchState:d,passcodeFetchState:p,sendDelCardsCmd:V,sendDelPasswordsCmd:G,getAllCards:z,getAllPasscodes:W}})(y,v),w=((e,r,n)=>{const o={count:0,Items:[]},[a,i]=(0,t.useState)(o),[s,c]=(0,t.useState)(null),[u,d]=(0,t.useState)([]),{registerCallback:f,invokeCallbacks:p}=JC(),h=(0,t.useCallback)((()=>{let e=r.customerInfo.companyID;e&&XC({action:SC,companyID:e,op:"get"})}),[r.customerInfo.companyID]),m=(0,t.useCallback)((()=>{let e=r.customerInfo.companyID;e&&XC({action:AC,cid:e,op:"getGroups"})}),[r.customerInfo.companyID]),g=(0,t.useCallback)((()=>{let e=r.customerInfo.companyID;e&&XC({action:IC,companyID:e,op:"get"})}),[r.customerInfo.companyID]),v=(0,t.useCallback)((e=>{switch(e.op){case"getGroups":c(e.data);break;case"add":c((t=>[...t,{...e.data}]));break;case"deleteGroups":m()}}),[m]),y=(0,t.useCallback)((e=>{var t;switch(e.op){case"get":default:break;case"reportEnv":e.success&&null!==(t=e.data)&&void 0!==t&&t.environmentId&&TI(e.data.environmentId);break;case"pubEmployees":const{totalCount:r,data:{list:o,page:a}}=e.data;i((e=>1===a?{count:r,Items:[...o]}:{count:e.count,Items:[...e.Items,...o]}));break;case"add":if(!e.success)return void("Limit Exceeded"===e.message?n({open:!0,msg:"\u30e6\u30fc\u30b6\u30fc\u6570\u306e\u4e0a\u9650\u306b\u9054\u3057\u307e\u3057\u305f\u3002\u30d7\u30e9\u30f3\u306e\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9\u304c\u5fc5\u8981\u3067\u3059\u3002"}):n({open:!0,msg:e.message}));h();break;case"update":h();break;case"delete":if(!e.success)return void n({open:!0,msg:e.message});h()}}),[n,h]),b=(0,t.useCallback)((e=>{if(e.action===IC)if(p(e),e.success)switch(e.op){case"get":d(e.data);break;case"delete":case"post":g()}else n({open:!0,msg:e.message})}),[p,n,g]),w=(0,t.useCallback)((e=>{switch(p(e),e.action){case SC:y(e);break;case AC:v(e);break;case IC:b(e)}}),[p,y,v,b]),x=(0,t.useCallback)((e=>{let t=a.Items.find((t=>t.subUUID===e));return null!==t&&void 0!==t?t:{}}),[a.Items]),S=(0,t.useCallback)(((e,t)=>{let n=r.customerInfo.companyID;if(!n)return;const o={action:SC,obj:{companyID:n,...e},op:"update"};XC(o),f(o.action,o.op,t)}),[r.customerInfo.companyID,f]),A=(0,t.useCallback)((function(e){const t={action:SC,op:"currentInfo",...arguments.length>1&&void 0!==arguments[1]&&arguments[1]?{excludeLogins:!0}:{}};XC(t),f(t.action,t.op,e)}),[f]),k=(0,t.useCallback)((async(e,t)=>{const r={action:SC,items:e,op:"delete"};XC(r),f(r.action,r.op,t)}),[f]),C=(0,t.useCallback)(((e,t)=>{let n=r.customerInfo.companyID;if(!n)return;const o={action:AC,obj:{cid:n,...e},op:"add"};XC(o),f(AC,o.op,t)}),[r.customerInfo.companyID,f]),I=(0,t.useCallback)(((e,t)=>{let n=r.customerInfo.companyID;if(!n)return;const o={action:AC,obj:{cid:n,...e},op:"update"};XC(o),f(o.action,o.op,t)}),[r.customerInfo.companyID,f]),E=(0,t.useCallback)((e=>{let t=r.customerInfo.companyID;t&&XC({action:AC,objs:e,cid:t,op:"deleteGroups"})}),[r.customerInfo.companyID]),D=(0,t.useCallback)(((e,t)=>{const r={action:SC,items:e,op:"add"};XC(r),f(r.action,r.op,t)}),[f]),T=(0,t.useCallback)(((e,t)=>{const r={action:SC,items:e,op:"order"};XC(r),f(r.action,r.op,t)}),[f]),O=(0,t.useCallback)(((e,t)=>{let n=r.customerInfo.companyID;if(!n)return;const o={action:IC,companyID:n,...e,op:"post"};XC(o),f(o.action,o.op,t)}),[r.customerInfo.companyID,f]),M=(0,t.useCallback)(((e,t)=>{let n=r.customerInfo.companyID;if(!n)return;const o={action:IC,companyID:n,...e,op:"delete"};XC(o),f(o.action,o.op,t)}),[r.customerInfo.companyID,f]),P=(0,t.useCallback)(((e,t)=>{if(!r.customerInfo.companyID)return;const n={action:AC,gid:e,op:"getBindDeviceGroup"};XC(n),f(n.action,n.op,t)}),[r.customerInfo.companyID,f]),j=(0,t.useCallback)(((e,t,n,o)=>{let a=r.customerInfo.companyID;if(!a)return;const i={action:AC,cid:a,gid:e,uuids:t,items:n,op:"addBindUser"};XC(i),f(i.action,i.op,o)}),[r.customerInfo.companyID,f]),R=(0,t.useCallback)(((e,t,n,o)=>{let a=r.customerInfo.companyID;if(!a)return;const i=n.map((e=>({subUUID:e.subUUID}))),s={action:AC,cid:a,gid:e,uuids:t,items:i,op:"removeBindUser"};XC(s),f(s.action,s.op,o)}),[r.customerInfo.companyID,f]),_=(0,t.useCallback)(((e,t)=>{let n=r.customerInfo.companyID;if(!n)return;const o={action:AC,cid:n,...e,op:"removeBindDeviceGroup"};XC(o),f(o.action,o.op,t)}),[r.customerInfo.companyID,f]),N=(0,t.useCallback)(((e,t)=>{if(!e)return;const r={action:SC,keyword:e,op:"queryByCS"};let n=[];const o=e=>{var a,i;if(!1===(null===e||void 0===e?void 0:e.success))return void(null===t||void 0===t||t(e));const{data:s={},totalPage:l}=null!==(a=e.data)&&void 0!==a?a:{},{totalCount:c=0}=null!==(i=e.data)&&void 0!==i?i:{},{list:u=[],page:d=1}=s;n=[...n,...u];const p=d===l;null===t||void 0===t||t({...e,data:n,page:d,totalPage:l,totalCount:c,done:p}),p||f(r.action,"pubQueryByCS",o)};XC(r),f(r.action,"pubQueryByCS",o)}),[XC,f]),L=(0,t.useCallback)(((e,t)=>{if(!e)return;const r={action:SC,email:e,op:"confirmQueryByCS"};XC(r),f(r.action,r.op,t)}),[XC,f]),U=(0,t.useCallback)((e=>{const t={action:SC,op:"getRepairAuthKey"};XC(t),f(t.action,t.op,e)}),[XC,f]);return(0,t.useEffect)((()=>{e.loginState===l.loginState.loginOut&&i(o)}),[e.loginState]),(0,t.useEffect)((()=>{r.isFromApp||h()}),[r.isFromApp,r.customerInfo.companyID,h]),KC(SC,w),KC(AC,w),KC(IC,w),{employees:a,getEmployees:h,getEmployeeGroups:m,employeeGroups:s,addEmployeeGroup:C,removeEmployeeGroups:E,addEmployee:D,removeEmployees:k,tags:u,getTags:g,removeTag:M,postTag:O,getDeviceGroup:P,addEmployeeInGroup:j,removeEmployeeInGroup:R,removeDeviceGroup:_,postEmployeeInfo:S,getCurrentUserInfo:A,postEmployeeGroupInfo:I,findEmployeeById:x,reorderEmployees:T,queryByCS:N,confirmQueryByCS:L,getRepairAuthKey:U}})(g,v,i),x=FI(v),S=((e,r)=>{const{registerCallback:n,invokeCallbacks:o}=JC(),[a,i]=(0,t.useState)([]),s=(0,t.useCallback)((t=>{switch(o(t),t.action){case jC:i(t.data);break;case RC:e.getDevApiInfo()}}),[r]);KC(jC,s),KC(RC,s);const l=(0,t.useCallback)((async t=>{let{func:r,query:o,body:a={},cb:i}=t,s={action:RC,op:r,apiKeyId:e.apiKey.apiKeyId,query:o,body:a};XC(s),n(RC,s.op,i)}),[e.apiKey.apiKeyId,n]);return{getDownloadFireware:async()=>{XC({action:jC})},firmwares:a,getIoTDeviceState:(0,t.useCallback)((async(e,t)=>l({func:sI,query:{device_id:e},cb:t})),[l]),getDeviceHistory:(0,t.useCallback)((async(e,t)=>l({func:lI,query:{device_id:e,page:0,lg:5,isBiz:!0},cb:t})),[l]),triggerDevice:(0,t.useCallback)((async(t,r)=>{let{device_id:n,cmd:o,sescretKey:a}=t,i=e.customerInfo.subUUID;const s=Ue.uuidBuffer(i),c=await iI.cmacTime(a);return l({func:cI,body:{cmd:o,history:s,sign:c,device_id:n},cb:r})}),[l,e.customerInfo.subUUID])}})(v,g),A=MI(g,v,y),k=zI(v),C=WI();return(0,qh.jsxs)(VI.Provider,{value:{gWebSocket:WC,gAuth:g,setSnackbarValue:i,gStripe:v,location:n,gManageEmployee:w,gManageGroup:x,gIot:A,gManageDevice:y,gMediaType:o,customModalOpen:s,setCustomModalKeep:d,setCustomModalOpen:c,modalContent:f,setModalContent:p,modalTitle:h,setModalTitle:m,gDeveloper:S,gManageAuthData:b,gSchedule:k,gFace3:C},children:[r,(0,qh.jsx)(py,{value:a}),(0,qh.jsx)(my,{open:s,onClose:(e,t)=>{"backdropClick"===t&&u||c(!1)},children:(0,qh.jsx)(Cy.A,{theme:gy,children:f})})]})},ZI=()=>{var e,r,n;const{t:o}=Fv(),{gManageEmployee:a,gStripe:i,gManageDevice:s,gMediaType:l}=(0,t.useContext)(VI),[c,u]=(0,t.useState)(""),[d,f]=(0,t.useState)(""),p="/\u7121\u5236\u9650";return(0,t.useEffect)((()=>{if(i.customerInfo.isRootUser)u(p),f(p);else if(i.quotas){var e,t,r,n;u(`/${null!==(e=null===(t=i.quotas)||void 0===t?void 0:t.memberCount)&&void 0!==e?e:"-"}\u4eba`),f(`/${null!==(r=null===(n=i.quotas)||void 0===n?void 0:n.lockCount)&&void 0!==r?r:"-"}\u53f0`)}}),[i.quotas,i.customerInfo]),(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{m:"24px 24px 0px 24px"},children:o("index.WelcomeTo")}),(0,qh.jsx)(sm,{direction:"column",spacing:4,sx:{p:"18px"},children:(0,qh.jsxs)(sm,{direction:l.isMobile?"column":"row",spacing:2,children:[(0,qh.jsxs)(ym,{component:vv,to:"/biz/employees/list",sx:{width:l.isMobile?"100%":"220px",borderRadius:"6px",backgroundColor:"secondary.light",textAlign:"left",color:"inherit",cursor:"pointer",p:"10px","&:hover":{opacity:"0.6"}},children:[(0,qh.jsx)(Bh.A,{children:"\u30e6\u30fc\u30b6\u30fc\u6570"}),(0,qh.jsxs)(Bh.A,{style:{fontSize:"60px",fontWeight:"bold"},children:[(null===(e=a.employees)||void 0===e?void 0:e.count)||0,(0,qh.jsx)("span",{style:{fontSize:"20px",fontWeight:"normal"},children:c})]})]}),(0,qh.jsxs)(ym,{component:vv,to:"/biz/devices/list",sx:{width:l.isMobile?"100%":"220px",borderRadius:"6px",backgroundColor:"secondary.light",textAlign:"left",color:"inherit",cursor:"pointer",p:"10px","&:hover":{opacity:"0.6"}},children:[(0,qh.jsx)(Bh.A,{children:"\u30c9\u30a2\u6570"}),(0,qh.jsxs)(Bh.A,{style:{fontSize:"60px",fontWeight:"bold"},children:[(null===(r=s.filteredSsmDevices)||void 0===r?void 0:r.length)||0,(0,qh.jsx)("span",{style:{fontSize:"20px",fontWeight:"normal"},children:d})]})]}),(0,qh.jsxs)(ym,{component:vv,to:"/biz/access-control/index",sx:{width:l.isMobile?"100%":"220px",borderRadius:"6px",backgroundColor:"secondary.light",textAlign:"left",color:"inherit",cursor:"pointer",p:"10px","&:hover":{opacity:"0.6"}},children:[(0,qh.jsx)(Bh.A,{children:"\u8a8d\u8a3c\u6a5f\u5668\u6570"}),(0,qh.jsxs)(Bh.A,{style:{fontSize:"60px",fontWeight:"bold"},children:[(null===(n=s.filteredAccessControlDevices)||void 0===n?void 0:n.length)||0,(0,qh.jsx)("span",{style:{fontSize:"20px",fontWeight:"normal"},children:"\u53f0"})]})]})]})})]})};var QI=r(34276);function KI(e){return(0,oy.Ay)("MuiCard",e)}(0,mm.A)("MuiCard",["root"]);const XI=(0,am.Ay)(ny.A,{name:"MuiCard",slot:"Root",overridesResolver:(e,t)=>t.root})({overflow:"hidden"}),JI=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiCard"}),{className:n,raised:o=!1,...a}=r,i={...r,raised:o},s=(e=>{const{classes:t}=e;return(0,zv.A)({root:["root"]},KI,t)})(i);return(0,qh.jsx)(XI,{className:(0,Fh.A)(s.root,n),elevation:o?8:void 0,ref:t,ownerState:i,...a})}));var $I=r(27569);function qI(e){return(0,oy.Ay)("MuiCardHeader",e)}const eE=(0,mm.A)("MuiCardHeader",["root","avatar","action","content","title","subheader"]),tE=(0,am.Ay)("div",{name:"MuiCardHeader",slot:"Root",overridesResolver:(e,t)=>({[`& .${eE.title}`]:t.title,[`& .${eE.subheader}`]:t.subheader,...t.root})})({display:"flex",alignItems:"center",padding:16}),rE=(0,am.Ay)("div",{name:"MuiCardHeader",slot:"Avatar",overridesResolver:(e,t)=>t.avatar})({display:"flex",flex:"0 0 auto",marginRight:16}),nE=(0,am.Ay)("div",{name:"MuiCardHeader",slot:"Action",overridesResolver:(e,t)=>t.action})({flex:"0 0 auto",alignSelf:"flex-start",marginTop:-4,marginRight:-8,marginBottom:-4}),oE=(0,am.Ay)("div",{name:"MuiCardHeader",slot:"Content",overridesResolver:(e,t)=>t.content})({flex:"1 1 auto",[`.${$I.A.root}:where(& .${eE.title})`]:{display:"block"},[`.${$I.A.root}:where(& .${eE.subheader})`]:{display:"block"}}),aE=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiCardHeader"}),{action:n,avatar:o,className:a,component:i="div",disableTypography:s=!1,subheader:l,subheaderTypographyProps:c,title:u,titleTypographyProps:d,...f}=r,p={...r,component:i,disableTypography:s},h=(e=>{const{classes:t}=e;return(0,zv.A)({root:["root"],avatar:["avatar"],action:["action"],content:["content"],title:["title"],subheader:["subheader"]},qI,t)})(p);let m=u;null==m||m.type===Bh.A||s||(m=(0,qh.jsx)(Bh.A,{variant:o?"body2":"h5",className:h.title,component:"span",...d,children:m}));let g=l;return null==g||g.type===Bh.A||s||(g=(0,qh.jsx)(Bh.A,{variant:o?"body2":"body1",className:h.subheader,color:"textSecondary",component:"span",...c,children:g})),(0,qh.jsxs)(tE,{className:(0,Fh.A)(h.root,a),as:i,ref:t,ownerState:p,...f,children:[o&&(0,qh.jsx)(rE,{className:h.avatar,ownerState:p,children:o}),(0,qh.jsxs)(oE,{className:h.content,ownerState:p,children:[m,g]}),n&&(0,qh.jsx)(nE,{className:h.action,ownerState:p,children:n})]})}));function iE(e){return(0,oy.Ay)("MuiCardContent",e)}(0,mm.A)("MuiCardContent",["root"]);const sE=(0,am.Ay)("div",{name:"MuiCardContent",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:16,"&:last-child":{paddingBottom:24}}),lE=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiCardContent"}),{className:n,component:o="div",...a}=r,i={...r,component:o},s=(e=>{const{classes:t}=e;return(0,zv.A)({root:["root"]},iE,t)})(i);return(0,qh.jsx)(sE,{as:o,className:(0,Fh.A)(s.root,n),ownerState:i,ref:t,...a})}));var cE=r(57073),uE=r(31014);var dE=r(15514),fE=r(88283),pE=r(51734);function hE(e){return(0,oy.Ay)("MuiCircularProgress",e)}(0,mm.A)("MuiCircularProgress",["root","determinate","indeterminate","colorPrimary","colorSecondary","svg","circle","circleDeterminate","circleIndeterminate","circleDisableShrink"]);const mE=44,gE=fE.keyframes`
+  0% {
+    transform: rotate(0deg);
+  }
+
+  100% {
+    transform: rotate(360deg);
+  }
+`,vE=fE.keyframes`
+  0% {
+    stroke-dasharray: 1px, 200px;
+    stroke-dashoffset: 0;
+  }
+
+  50% {
+    stroke-dasharray: 100px, 200px;
+    stroke-dashoffset: -15px;
+  }
+
+  100% {
+    stroke-dasharray: 100px, 200px;
+    stroke-dashoffset: -125px;
+  }
+`,yE="string"!==typeof gE?fE.css`
+        animation: ${gE} 1.4s linear infinite;
+      `:null,bE="string"!==typeof vE?fE.css`
+        animation: ${vE} 1.4s ease-in-out infinite;
+      `:null,wE=(0,am.Ay)("span",{name:"MuiCircularProgress",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.variant],t[`color${(0,ey.A)(r.color)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{display:"inline-block",variants:[{props:{variant:"determinate"},style:{transition:t.transitions.create("transform")}},{props:{variant:"indeterminate"},style:yE||{animation:`${gE} 1.4s linear infinite`}},...Object.entries(t.palette).filter((0,pE.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{color:(t.vars||t).palette[r].main}}}))]}}))),xE=(0,am.Ay)("svg",{name:"MuiCircularProgress",slot:"Svg",overridesResolver:(e,t)=>t.svg})({display:"block"}),SE=(0,am.Ay)("circle",{name:"MuiCircularProgress",slot:"Circle",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.circle,t[`circle${(0,ey.A)(r.variant)}`],r.disableShrink&&t.circleDisableShrink]}})((0,qv.A)((e=>{let{theme:t}=e;return{stroke:"currentColor",variants:[{props:{variant:"determinate"},style:{transition:t.transitions.create("stroke-dashoffset")}},{props:{variant:"indeterminate"},style:{strokeDasharray:"80px, 200px",strokeDashoffset:0}},{props:e=>{let{ownerState:t}=e;return"indeterminate"===t.variant&&!t.disableShrink},style:bE||{animation:`${vE} 1.4s ease-in-out infinite`}}]}}))),AE=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiCircularProgress"}),{className:n,color:o="primary",disableShrink:a=!1,size:i=40,style:s,thickness:l=3.6,value:c=0,variant:u="indeterminate",...d}=r,f={...r,color:o,disableShrink:a,size:i,thickness:l,value:c,variant:u},p=(e=>{const{classes:t,variant:r,color:n,disableShrink:o}=e,a={root:["root",r,`color${(0,ey.A)(n)}`],svg:["svg"],circle:["circle",`circle${(0,ey.A)(r)}`,o&&"circleDisableShrink"]};return(0,zv.A)(a,hE,t)})(f),h={},m={},g={};if("determinate"===u){const e=2*Math.PI*((mE-l)/2);h.strokeDasharray=e.toFixed(3),g["aria-valuenow"]=Math.round(c),h.strokeDashoffset=`${((100-c)/100*e).toFixed(3)}px`,m.transform="rotate(-90deg)"}return(0,qh.jsx)(wE,{className:(0,Fh.A)(p.root,n),style:{width:i,height:i,...m,...s},ownerState:f,ref:t,role:"progressbar",...g,...d,children:(0,qh.jsx)(xE,{className:p.svg,ownerState:f,viewBox:"22 22 44 44",children:(0,qh.jsx)(SE,{className:p.circle,style:h,ownerState:f,cx:mE,cy:mE,r:(mE-l)/2,fill:"none",strokeWidth:l})})})}));function kE(e,t){const r={...t};for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const o=n;if("components"===o||"slots"===o)r[o]={...e[o],...r[o]};else if("componentsProps"===o||"slotProps"===o){const n=e[o],a=t[o];if(a)if(n){r[o]={...a};for(const e in n)if(Object.prototype.hasOwnProperty.call(n,e)){const t=e;r[o][t]=kE(n[t],a[t])}}else r[o]=a;else r[o]=n||{}}else void 0===r[o]&&(r[o]=e[o])}return r}const CE=e=>e,IE=(()=>{let e=CE;return{configure(t){e=t},generate:t=>e(t),reset(){e=CE}}})(),EE={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function DE(e,t){const r=EE[t];return r?`${arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui"}-${r}`:`${IE.generate(e)}-${t}`}function TE(e){return DE("MuiLoadingButton",e)}const OE=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui";const n={};return t.forEach((t=>{n[t]=DE(e,t,r)})),n}("MuiLoadingButton",["root","label","loading","loadingIndicator","loadingIndicatorCenter","loadingIndicatorStart","loadingIndicatorEnd","endIconLoadingEnd","startIconLoadingStart"]),ME=(0,am.Ay)(QI.A,{shouldForwardProp:e=>(e=>"ownerState"!==e&&"theme"!==e&&"sx"!==e&&"as"!==e&&"classes"!==e)(e)||"classes"===e,name:"MuiLoadingButton",slot:"Root",overridesResolver:(e,t)=>[t.root,t.startIconLoadingStart&&{[`& .${OE.startIconLoadingStart}`]:t.startIconLoadingStart},t.endIconLoadingEnd&&{[`& .${OE.endIconLoadingEnd}`]:t.endIconLoadingEnd}]})((0,qv.A)((e=>{let{theme:t}=e;return{display:"inline-flex",[`& .${OE.startIconLoadingStart}, & .${OE.endIconLoadingEnd}`]:{transition:t.transitions.create(["opacity"],{duration:t.transitions.duration.short}),opacity:0},variants:[{props:{loadingPosition:"center"},style:{transition:t.transitions.create(["background-color","box-shadow","border-color"],{duration:t.transitions.duration.short}),[`&.${OE.loading}`]:{color:"transparent"}}},{props:e=>{let{ownerState:t}=e;return"start"===t.loadingPosition&&t.fullWidth},style:{[`& .${OE.startIconLoadingStart}, & .${OE.endIconLoadingEnd}`]:{transition:t.transitions.create(["opacity"],{duration:t.transitions.duration.short}),opacity:0,marginRight:-8}}},{props:e=>{let{ownerState:t}=e;return"end"===t.loadingPosition&&t.fullWidth},style:{[`& .${OE.startIconLoadingStart}, & .${OE.endIconLoadingEnd}`]:{transition:t.transitions.create(["opacity"],{duration:t.transitions.duration.short}),opacity:0,marginLeft:-8}}}]}}))),PE=(0,am.Ay)("span",{name:"MuiLoadingButton",slot:"LoadingIndicator",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.loadingIndicator,t[`loadingIndicator${(0,ey.A)(r.loadingPosition)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{position:"absolute",visibility:"visible",display:"flex",variants:[{props:{loadingPosition:"start",size:"small"},style:{left:10}},{props:e=>{let{loadingPosition:t,ownerState:r}=e;return"start"===t&&"small"!==r.size},style:{left:14}},{props:{variant:"text",loadingPosition:"start"},style:{left:6}},{props:{loadingPosition:"center"},style:{left:"50%",transform:"translate(-50%)",color:(t.vars||t).palette.action.disabled}},{props:{loadingPosition:"end",size:"small"},style:{right:10}},{props:e=>{let{loadingPosition:t,ownerState:r}=e;return"end"===t&&"small"!==r.size},style:{right:14}},{props:{variant:"text",loadingPosition:"end"},style:{right:6}},{props:e=>{let{ownerState:t}=e;return"start"===t.loadingPosition&&t.fullWidth},style:{position:"relative",left:-10}},{props:e=>{let{ownerState:t}=e;return"end"===t.loadingPosition&&t.fullWidth},style:{position:"relative",right:-10}}]}}))),jE=(0,am.Ay)("span",{name:"MuiLoadingButton",slot:"Label",overridesResolver:(e,t)=>[t.label]})({display:"inherit",alignItems:"inherit",justifyContent:"inherit"}),RE=t.forwardRef((function(e,r){const n=kE(t.useContext(dE.A),e),o=(0,im.b)({props:n,name:"MuiLoadingButton"}),{children:a,disabled:i=!1,id:s,loading:l=!1,loadingIndicator:c,loadingPosition:u="center",variant:d="text",...f}=o,p=(0,uE.A)(s),h=c??(0,qh.jsx)(AE,{"aria-labelledby":p,color:"inherit",size:16}),m={...o,disabled:i,loading:l,loadingIndicator:h,loadingPosition:u,variant:d},g=(e=>{const{loading:t,loadingPosition:r,classes:n}=e,o=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;const n={};for(const o in e){const a=e[o];let i="",s=!0;for(let e=0;e<a.length;e+=1){const n=a[e];n&&(i+=(!0===s?"":" ")+t(n),s=!1,r&&r[n]&&(i+=" "+r[n]))}n[o]=i}return n}({root:["root",t&&"loading"],label:["label"],startIcon:[t&&`startIconLoading${(0,ey.A)(r)}`],endIcon:[t&&`endIconLoading${(0,ey.A)(r)}`],loadingIndicator:["loadingIndicator",t&&`loadingIndicator${(0,ey.A)(r)}`]},TE,n);return{...n,...o}})(m),v=l?(0,qh.jsx)(PE,{className:g.loadingIndicator,ownerState:m,children:h}):null;return(0,qh.jsxs)(ME,{disabled:i||l,id:p,ref:r,...f,variant:d,classes:g,ownerState:m,children:["end"===m.loadingPosition?(0,qh.jsx)(jE,{className:g.label,children:a}):v,"end"===m.loadingPosition?v:(0,qh.jsx)(jE,{className:g.label,children:a})]})}));var _E,NE=r(65604),LE="https://js.stripe.com/v3",UE=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,BE="loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used",FE=function(e){var t=e&&!e.advancedFraudSignals?"?advancedFraudSignals=false":"",r=document.createElement("script");r.src="".concat(LE).concat(t);var n=document.head||document.body;if(!n)throw new Error("Expected document.body not to be null. Stripe.js requires a <body> element.");return n.appendChild(r),r},zE=null,WE=null,HE=null,YE=function(e){return null!==zE?zE:(zE=new Promise((function(t,r){if("undefined"!==typeof window&&"undefined"!==typeof document)if(window.Stripe&&e&&console.warn(BE),window.Stripe)t(window.Stripe);else try{var n=function(){for(var e=document.querySelectorAll('script[src^="'.concat(LE,'"]')),t=0;t<e.length;t++){var r=e[t];if(UE.test(r.src))return r}return null}();if(n&&e)console.warn(BE);else if(n){if(n&&null!==HE&&null!==WE){var o;n.removeEventListener("load",HE),n.removeEventListener("error",WE),null===(o=n.parentNode)||void 0===o||o.removeChild(n),n=FE(e)}}else n=FE(e);HE=function(e,t){return function(){window.Stripe?e(window.Stripe):t(new Error("Stripe.js not available"))}}(t,r),WE=function(e){return function(){e(new Error("Failed to load Stripe.js"))}}(r),n.addEventListener("load",HE),n.addEventListener("error",WE)}catch(a){return void r(a)}else t(null)}))).catch((function(e){return zE=null,Promise.reject(e)}))},VE=!1,GE=function(){return _E||(_E=YE(null).catch((function(e){return _E=null,Promise.reject(e)})))};Promise.resolve().then((function(){return GE()})).catch((function(e){VE||console.warn(e)}));let ZE;const QE=()=>(ZE||(ZE=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];VE=!0;var n=Date.now();return GE().then((function(e){return function(e,t,r){if(null===e)return null;var n=e.apply(void 0,t);return function(e,t){e&&e._registerWrapper&&e._registerWrapper({name:"stripe-js",version:"5.1.0",startTime:t})}(n,r),n}(e,t,n)}))}(oC())),ZE),KE=e=>{let{gStripe:r,submit:n}=e;const[o,a]=(0,t.useState)("");(0,t.useEffect)((()=>{r.getClientSecret((e=>{e.success&&a(e.data)}))}),[]);const i={clientSecret:o,appearance:{theme:"stripe",variables:{colorPrimary:"#28aeb1"}}};return(0,qh.jsx)(qh.Fragment,{children:o&&(0,qh.jsx)("div",{style:{maxHeight:"70vh",overflowY:"auto",WebkitOverflowScrolling:"touch"},children:(0,qh.jsx)(NE.Elements,{options:i,stripe:QE(),children:(0,qh.jsx)(XE,{gStripe:r,submit:n})})})})},XE=e=>{let{gStripe:r,submit:n}=e;const o=(0,NE.useStripe)(),a=(0,NE.useElements)(),[i,s]=(0,t.useState)(!1),[l,c]=(0,t.useState)("");return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(Bh.A,{sx:{fontSize:"18px",fontWeight:"bold",marginBottom:"10px"},children:"\u304a\u652f\u6255\u3044\u65b9\u6cd5\u306e\u8ffd\u52a0"}),(0,qh.jsx)(NE.PaymentElement,{onFocus:()=>{c("")}}),(0,qh.jsx)(RE,{loading:i,disableElevation:!0,size:"large",fullWidth:!0,variant:"contained",sx:{fontSize:"16px",fontWeight:"bold",marginTop:"10px",backgroundColor:"#28aeb1","&:hover":{backgroundColor:"#28aeb1",opacity:"0.8"}},disabled:!o,onClick:async e=>{if(e.preventDefault(),!o||!a)return void s(!1);s(!0);const t=await o.confirmSetup({elements:a,redirect:"if_required"});t.error?(s(!1),c(t.error.message||"")):t.setupIntent&&"succeeded"===t.setupIntent.status&&r.changeDefaultPay(t.setupIntent.payment_method,(e=>{s(!1),n&&n()}))},children:"\u30af\u30ec\u30b8\u30c3\u30c8\u30ab\u30fc\u30c9\u3092\u8ffd\u52a0"}),(0,qh.jsx)(Bh.A,{color:"error",sx:{display:l?"block":"none",textAlign:"center",fontSize:"15px",margin:"10px"},children:l})]})};var JE=r(19608),$E=r(31891),qE=r(79044),eD=r(31506),tD=r(13372);function rD(e){return(0,oy.Ay)("MuiListItemButton",e)}const nD=(0,mm.A)("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]),oD=(0,am.Ay)($E.A,{shouldForwardProp:e=>(0,JE.A)(e)||"classes"===e,name:"MuiListItemButton",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.dense&&t.dense,"flex-start"===r.alignItems&&t.alignItemsFlexStart,r.divider&&t.divider,!r.disableGutters&&t.gutters]}})((0,qv.A)((e=>{let{theme:t}=e;return{display:"flex",flexGrow:1,justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",minWidth:0,boxSizing:"border-box",textAlign:"left",paddingTop:8,paddingBottom:8,transition:t.transitions.create("background-color",{duration:t.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(t.vars||t).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${nD.selected}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,ry.X4)(t.palette.primary.main,t.palette.action.selectedOpacity),[`&.${nD.focusVisible}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.focusOpacity}))`:(0,ry.X4)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.focusOpacity)}},[`&.${nD.selected}:hover`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:(0,ry.X4)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,ry.X4)(t.palette.primary.main,t.palette.action.selectedOpacity)}},[`&.${nD.focusVisible}`]:{backgroundColor:(t.vars||t).palette.action.focus},[`&.${nD.disabled}`]:{opacity:(t.vars||t).palette.action.disabledOpacity},variants:[{props:e=>{let{ownerState:t}=e;return t.divider},style:{borderBottom:`1px solid ${(t.vars||t).palette.divider}`,backgroundClip:"padding-box"}},{props:{alignItems:"flex-start"},style:{alignItems:"flex-start"}},{props:e=>{let{ownerState:t}=e;return!t.disableGutters},style:{paddingLeft:16,paddingRight:16}},{props:e=>{let{ownerState:t}=e;return t.dense},style:{paddingTop:4,paddingBottom:4}}]}}))),aD=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiListItemButton"}),{alignItems:o="center",autoFocus:a=!1,component:i="div",children:s,dense:l=!1,disableGutters:c=!1,divider:u=!1,focusVisibleClassName:d,selected:f=!1,className:p,...h}=n,m=t.useContext(tD.A),g=t.useMemo((()=>({dense:l||m.dense||!1,alignItems:o,disableGutters:c})),[o,m.dense,l,c]),v=t.useRef(null);(0,qE.A)((()=>{a&&v.current&&v.current.focus()}),[a]);const y={...n,alignItems:o,dense:g.dense,disableGutters:c,divider:u,selected:f},b=(e=>{const{alignItems:t,classes:r,dense:n,disabled:o,disableGutters:a,divider:i,selected:s}=e,l={root:["root",n&&"dense",!a&&"gutters",i&&"divider",o&&"disabled","flex-start"===t&&"alignItemsFlexStart",s&&"selected"]},c=(0,zv.A)(l,rD,r);return{...r,...c}})(y),w=(0,eD.A)(v,r);return(0,qh.jsx)(tD.A.Provider,{value:g,children:(0,qh.jsx)(oD,{ref:w,href:h.href||h.to,component:(h.href||h.to)&&"div"===i?"button":i,focusVisibleClassName:(0,Fh.A)(b.focusVisible,d),ownerState:y,className:(0,Fh.A)(b.root,p),...h,classes:b,children:s})})}));var iD=r(83563),sD=r(92455);const lD=(0,am.Ay)("div",{name:"MuiListItemIcon",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,"flex-start"===r.alignItems&&t.alignItemsFlexStart]}})((0,qv.A)((e=>{let{theme:t}=e;return{minWidth:56,color:(t.vars||t).palette.action.active,flexShrink:0,display:"inline-flex",variants:[{props:{alignItems:"flex-start"},style:{marginTop:8}}]}}))),cD=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiListItemIcon"}),{className:o,...a}=n,i=t.useContext(tD.A),s={...n,alignItems:i.alignItems},l=(e=>{const{alignItems:t,classes:r}=e,n={root:["root","flex-start"===t&&"alignItemsFlexStart"]};return(0,zv.A)(n,sD.f,r)})(s);return(0,qh.jsx)(lD,{className:(0,Fh.A)(l.root,o),ownerState:s,ref:r,...a})}));const uD=dm({defaultClassName:function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui";const n={};return t.forEach((t=>{n[t]=Vh(e,t,r)})),n}("MuiBox",["root"]).root,generateClassName:Hh.generate});var dD=r(65471);const fD=(0,dD.A)((0,qh.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM8 9h8v10H8zm7.5-5-1-1h-5l-1 1H5v2h14V4z"}),"DeleteOutline"),pD=(0,dD.A)((0,qh.jsx)("path",{d:"M20 4H4c-1.11 0-1.99.89-1.99 2L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2m0 14H4v-6h16zm0-10H4V6h16z"}),"CreditCard"),hD=e=>{let{show:r,children:n}=e;const o=t.Children.count(n);return 1===o?(0,qh.jsx)(qh.Fragment,{children:r&&(0,qh.jsx)(qh.Fragment,{children:n})}):2===o?(0,qh.jsx)(qh.Fragment,{children:r?(0,qh.jsx)(qh.Fragment,{children:n[0]}):(0,qh.jsx)(qh.Fragment,{children:n[1]})}):(0,qh.jsx)(qh.Fragment,{children:n})};function mD(){const{gStripe:e}=(0,t.useContext)(VI),[r,n]=(0,t.useState)("");return(0,qh.jsx)(uD,{children:e.cardList.length>0&&e.cardList.map(((t,o)=>(0,qh.jsxs)(aD,{disableRipple:!0,sx:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",borderBottom:"1px solid #F1F1F1"},onClick:r=>{r.preventDefault(),t.isDefaultPay||(n(t.id),e.changeDefaultPay(t.id,(e=>{n("")})))},children:[(0,qh.jsxs)(uD,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(pD,{sx:{color:"gray",marginRight:"5px"}}),(0,qh.jsxs)(iD.A,{children:[t.brand," - ",t.last4]}),(0,qh.jsx)(hD,{show:t.isDefaultPay,children:(0,qh.jsx)(iD.A,{disableTypography:!0,primary:(0,qh.jsx)(Bh.A,{style:{color:"#FFFFFF",backgroundColor:"#68C6C8",fontSize:"10px",borderRadius:"3px",padding:"2px",marginLeft:"5px",marginRight:"5px"},children:"\u30c7\u30d5\u30a9\u30eb\u30c8"})})}),r===t.id&&(0,qh.jsx)(AE,{size:18,sx:{marginLeft:"10px"}})]}),(0,qh.jsx)(hD,{show:e.cardList.length>1,children:(0,qh.jsx)(cD,{onClick:r=>{r.stopPropagation(),e.delCard(t.id)},children:(0,qh.jsx)(fD,{sx:{color:"#E1E1E1",opacity:e.cardList?"1":".5","&:hover":{color:"#CC4A44",opacity:1}}})})})]},t.id)))})}const gD=(0,dD.A)((0,qh.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckCircle"),vD=e=>{let{item:t,name:r}=e;return t[r]?(0,qh.jsxs)(ym,{sx:{marginBottom:"15px",display:"flex"},children:[(0,qh.jsx)(ym,{size:"small",sx:{paddingTop:"6px",paddingRight:"4px",paddingLeft:"4px"},children:(0,qh.jsx)(gD,{style:{color:t.isUpgrade?"#333333":"#D3D3D3"}})}),(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",fontWeight:400,lineHeight:"22px",marginTop:"5px",marginLeft:"4px",letterSpacing:"0.06em",textAlign:"left"},children:t[r]})]}):null},yD=e=>{let{isMobile:r,callUpdate:n,nextPrice:o,levleInfo:a}=e;const[i,s]=(0,t.useState)([{id:0,name:"Free",feeC:0,fee:"\u5186 /\u6708",isUpgrade:!0,users:"5 \u30e6\u30fc\u30b6\u30fc",doors:"1 \u30c9\u30a2",apis:"API\u30ea\u30af\u30a8\u30b9\u30c8\u4e0a\u9650\n 1,000 \u56de",cfpUse:"\u8a8d\u8a3c\u6a5f\u5668\u30fb\u30ab\u30fc\u30c9\u7ba1\u7406\u30da\u30fc\u30b8\u306e\u5229\u7528\u53ef\u80fd"},{id:1,name:"Light",feeC:"1,980",fee:"\u5186 /\u6708",isUpgrade:!1,users:"20 \u30e6\u30fc\u30b6\u30fc",doors:"2 \u30c9\u30a2",apis:"API\u30ea\u30af\u30a8\u30b9\u30c8\u4e0a\u9650\n 20,000 \u56de",cfpUse:"\u8a8d\u8a3c\u6a5f\u5668\u30fb\u30ab\u30fc\u30c9\u7ba1\u7406\u30da\u30fc\u30b8\u306e\u5229\u7528\u53ef\u80fd"},{id:2,name:"Pro",feeC:"4,980",fee:"\u5186 /\u6708",isUpgrade:!1,users:"50 \u30e6\u30fc\u30b6\u30fc",doors:"5 \u30c9\u30a2",apis:"API\u30ea\u30af\u30a8\u30b9\u30c8\u4e0a\u9650\n 50,000 \u56de",cfpUse:"\u8a8d\u8a3c\u6a5f\u5668\u30fb\u30ab\u30fc\u30c9\u7ba1\u7406\u30da\u30fc\u30b8\u306e\u5229\u7528\u53ef\u80fd"},{id:3,name:"Business",feeC:"9,800",fee:"\u5186 /\u6708",isUpgrade:!1,users:"100 \u30e6\u30fc\u30b6\u30fc",doors:"10 \u30c9\u30a2",apis:"API\u30ea\u30af\u30a8\u30b9\u30c8\u4e0a\u9650\n 200,000 \u56de",cfpUse:"\u8a8d\u8a3c\u6a5f\u5668\u30fb\u30ab\u30fc\u30c9\u7ba1\u7406\u30da\u30fc\u30b8\u306e\u5229\u7528\u53ef\u80fd"},{id:4,name:"Enterprise",feeC:"19,800",fee:"\u5186 /\u6708",isUpgrade:!1,users:"200 \u30e6\u30fc\u30b6\u30fc",doors:"50 \u30c9\u30a2",apis:"API\u30ea\u30af\u30a8\u30b9\u30c8\u4e0a\u9650\n 1,000,000 \u56de",cfpUse:"\u8a8d\u8a3c\u6a5f\u5668\u30fb\u30ab\u30fc\u30c9\u7ba1\u7406\u30da\u30fc\u30b8\u306e\u5229\u7528\u53ef\u80fd"}]);return(0,t.useEffect)((()=>{s((e=>e.map((e=>{let t=!1;return t=0===o?0===e.id:!!o&&e.id===Math.floor(o/2),{...e,isUpgrade:e.id===a.level,isCancel:t}}))))}),[a,o]),(0,qh.jsx)(ym,{sx:{width:"100%",display:"flex",marginTop:"15px",flexDirection:r?"column":"row",gap:"5px"},children:i.map(((e,t)=>(0,qh.jsxs)(ym,{sx:{width:"100%",height:"auto",paddingLeft:"15px",borderRadius:"15px",border:"2px solid #F1F1F1",display:"flex",paddingBottom:"30px",flexDirection:"column",p:1,m:1},children:[(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"24px",fontWeight:600,lineHeight:"30px",marginTop:"15px",marginLeft:"6px",letterSpacing:"0.06em",textAlign:"left"},children:e.name}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"flex-end",marginTop:"20px"},children:[(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"30px",fontWeight:600,lineHeight:"55px",letterSpacing:"0.06em",textAlign:"left",marginLeft:"6px"},children:e.feeC}),(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"20px",fontWeight:600,lineHeight:"27.24px",letterSpacing:"0.06em",textAlign:"left",marginBottom:"10px"},children:e.fee})]}),(0,qh.jsx)(QI.A,{disableElevation:!0,variant:"contained",size:"large",sx:{margin:"25px 6px",fontFamily:"'Noto Sans JP', sans-serif",fontSize:e.isCancel?"14px":"16px",color:"white",fontWeight:500,lineHeight:"22px",letterSpacing:"0.06em",textAlign:"left","&:hover":{backgroundColor:"#28aeb1",opacity:"0.8"}},disabled:e.isUpgrade,onClick:()=>{n&&n(e.id,e.isCancel)},children:a?e.isUpgrade?"\u73fe\u5728\u306e\u30d7\u30e9\u30f3":e.id>a.level?"\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9":e.isCancel?"\u30c0\u30a6\u30f3\u30b0\u30ec\u30fc\u30c9\u53d6\u6d88":"\u30c0\u30a6\u30f3\u30b0\u30ec\u30fc\u30c9":"\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9"}),(0,qh.jsx)(vD,{item:e,name:"users"}),(0,qh.jsx)(vD,{item:e,name:"doors"}),(0,qh.jsx)(vD,{item:e,name:"apis"}),(0,qh.jsx)(vD,{item:e,name:"cfpUse"})]},t)))})},bD=(0,dD.A)((0,qh.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m5 11h-4v4h-2v-4H7v-2h4V7h2v4h4z"}),"AddCircle"),wD=(0,dD.A)((0,qh.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"}),"Delete");var xD=r(7233),SD=r(46282);const AD=(0,dD.A)((0,qh.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"RadioButtonUnchecked"),kD=(0,dD.A)((0,qh.jsx)("path",{d:"M8.465 8.465C9.37 7.56 10.62 7 12 7C14.76 7 17 9.24 17 12C17 13.38 16.44 14.63 15.535 15.535C14.63 16.44 13.38 17 12 17C9.24 17 7 14.76 7 12C7 10.62 7.56 9.37 8.465 8.465Z"}),"RadioButtonChecked"),CD=(0,am.Ay)("span",{shouldForwardProp:JE.A})({position:"relative",display:"flex"}),ID=(0,am.Ay)(AD)({transform:"scale(1)"}),ED=(0,am.Ay)(kD)((0,qv.A)((e=>{let{theme:t}=e;return{left:0,position:"absolute",transform:"scale(0)",transition:t.transitions.create("transform",{easing:t.transitions.easing.easeIn,duration:t.transitions.duration.shortest}),variants:[{props:{checked:!0},style:{transform:"scale(1)",transition:t.transitions.create("transform",{easing:t.transitions.easing.easeOut,duration:t.transitions.duration.shortest})}}]}})));const DD=function(e){const{checked:t=!1,classes:r={},fontSize:n}=e,o={...e,checked:t};return(0,qh.jsxs)(CD,{className:r.root,ownerState:o,children:[(0,qh.jsx)(ID,{fontSize:n,className:r.background,ownerState:o}),(0,qh.jsx)(ED,{fontSize:n,className:r.dot,ownerState:o})]})};var TD=r(25920),OD=r(39766);const MD=t.createContext(void 0);function PD(e){return(0,oy.Ay)("MuiRadio",e)}const jD=(0,mm.A)("MuiRadio",["root","checked","disabled","colorPrimary","colorSecondary","sizeSmall"]),RD=(0,am.Ay)(SD.A,{shouldForwardProp:e=>(0,JE.A)(e)||"classes"===e,name:"MuiRadio",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,"medium"!==r.size&&t[`size${(0,ey.A)(r.size)}`],t[`color${(0,ey.A)(r.color)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{color:(t.vars||t).palette.text.secondary,[`&.${jD.disabled}`]:{color:(t.vars||t).palette.action.disabled},variants:[{props:{color:"default",disabled:!1,disableRipple:!1},style:{"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette.action.activeChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,ry.X4)(t.palette.action.active,t.palette.action.hoverOpacity)}}},...Object.entries(t.palette).filter((0,pE.A)()).map((e=>{let[r]=e;return{props:{color:r,disabled:!1,disableRipple:!1},style:{"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,ry.X4)(t.palette[r].main,t.palette.action.hoverOpacity)}}}})),...Object.entries(t.palette).filter((0,pE.A)()).map((e=>{let[r]=e;return{props:{color:r,disabled:!1},style:{[`&.${jD.checked}`]:{color:(t.vars||t).palette[r].main}}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:"transparent"}}}}]}})));const _D=(0,qh.jsx)(DD,{checked:!0}),ND=(0,qh.jsx)(DD,{}),LD=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiRadio"}),{checked:o,checkedIcon:a=_D,color:i="primary",icon:s=ND,name:l,onChange:c,size:u="medium",className:d,disabled:f,disableRipple:p=!1,...h}=n,m=(0,OD.A)();let g=f;m&&"undefined"===typeof g&&(g=m.disabled),g??=!1;const v={...n,disabled:g,disableRipple:p,color:i,size:u},y=(e=>{const{classes:t,color:r,size:n}=e,o={root:["root",`color${(0,ey.A)(r)}`,"medium"!==n&&`size${(0,ey.A)(n)}`]};return{...t,...(0,zv.A)(o,PD,t)}})(v),b=t.useContext(MD);let w=o;const x=(0,TD.A)(c,b&&b.onChange);let S=l;var A,k;return b&&("undefined"===typeof w&&(A=b.value,w="object"===typeof(k=n.value)&&null!==k?A===k:String(A)===String(k)),"undefined"===typeof S&&(S=b.name)),(0,qh.jsx)(RD,{type:"radio",icon:t.cloneElement(s,{fontSize:ND.props.fontSize??u}),checkedIcon:t.cloneElement(a,{fontSize:_D.props.fontSize??u}),disabled:g,ownerState:v,classes:y,name:S,checked:w,onChange:x,ref:r,className:(0,Fh.A)(y.root,d),...h})}));var UD=r(30609);function BD(e){return(0,oy.Ay)("MuiRadioGroup",e)}(0,mm.A)("MuiRadioGroup",["root","row","error"]);var FD=r(48733);const zD=t.forwardRef((function(e,r){const{actions:n,children:o,className:a,defaultValue:i,name:s,onChange:l,value:c,...u}=e,d=t.useRef(null),f=(e=>{const{classes:t,row:r,error:n}=e,o={root:["root",r&&"row",n&&"error"]};return(0,zv.A)(o,BD,t)})(e),[p,h]=(0,FD.A)({controlled:c,default:i,name:"RadioGroup"});t.useImperativeHandle(n,(()=>({focus:()=>{let e=d.current.querySelector("input:not(:disabled):checked");e||(e=d.current.querySelector("input:not(:disabled)")),e&&e.focus()}})),[]);const m=(0,eD.A)(r,d),g=(0,uE.A)(s),v=t.useMemo((()=>({name:g,onChange(e){h(e.target.value),l&&l(e,e.target.value)},value:p})),[g,l,h,p]);return(0,qh.jsx)(MD.Provider,{value:v,children:(0,qh.jsx)(UD.A,{role:"radiogroup",ref:m,className:(0,Fh.A)(f.root,a),...u,children:o})})}));var WD=r(87299);const HD="https://jp.candyhouse.co",YD={url:HD,intro:`${HD}/pages/sesamebiz-introduction-guide-new`,plans:`${HD}/pages/sesame-biz-operation#biz_plans`,terms:`${HD}/pages/sesamebiz_terms`,privacy:`${HD}/pages/privacy_policy`,shop:`${HD}/collections/frontpage`,appTerms:`${HD}/pages/%E5%88%A9%E7%94%A8%E8%A6%8F%E7%B4%84`,appPrivacy:`${HD}/pages/privacy`},VD=e=>{let{clickCancel:r,clickSure:n,chooseLevel:o,curLevel:a,levelConfig:i}=e;const[s,l]=(0,t.useState)(!1),[c,u]=(0,t.useState)(""),[d,f]=(0,t.useState)(!1),p={fontFamily:"'Noto Sans JP', sans-serif",fontSize:"18px",fontWeight:600,lineHeight:"27px",letterSpacing:"0.06em",textAlign:"left"},h=[{name:"Free",price_m:i.free_month,price_y_total:i.free_year},{name:"Light",price_m:i.light_month,price_y_total:i.light_year},{name:"Pro",price_m:i.pro_month,price_y_total:i.pro_year},{name:"Business",price_m:i.business_month,price_y_total:i.business_year},{name:"Enterprise",price_m:i.enterprise_month,price_y_total:i.enterprise_year}],[m,g]=(0,t.useState)(""),[v,y]=(0,t.useState)(""),[b,w]=(0,t.useState)(""),[x,S]=(0,t.useState)(""),[A,k]=(0,t.useState)("");function C(e){return e?e.toLocaleString("ja-JP"):e}(0,t.useEffect)((()=>{u(o>a?`${h[o].name}\u3078\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9`:`${h[o].name}\u3078\u30c0\u30a6\u30f3\u30b0\u30ec\u30fc\u30c9`),w(o>a?"\u203b\u3054\u5229\u7528\u4e2d\u306e\u30d7\u30e9\u30f3\u306f\u7d42\u4e86\u3057\u3001\u65b0\u3057\u3044\u30d7\u30e9\u30f3\u304c\u3059\u3050\u306b\u6709\u52b9\u306b\u306a\u308a\u307e\u3059\u3002":"\u203b\u3054\u5229\u7528\u4e2d\u306e\u30d7\u30e9\u30f3\u306f\u304a\u652f\u6255\u3044\u6e08\u307f\u671f\u9593\u307e\u3067\u7d99\u7d9a\u3057\u3001\u6b21\u306e\u671f\u9593\u3088\u308a\u65b0\u3057\u3044\u30d7\u30e9\u30f3\u304c\u6709\u52b9\u306b\u306a\u308a\u307e\u3059\u3002"),S("\u203b\u8868\u793a\u4fa1\u683c\u306f\u3059\u3079\u3066\u7a0e\u629c\u304d\u4fa1\u683c\u3067\u3059\u3002"),k((0,qh.jsxs)("span",{children:["\u30d7\u30e9\u30f3\u306e\u8a73\u7d30\u306f",(0,qh.jsx)("a",{href:YD.plans,target:"_blank",style:{color:"#86868B",display:"inline",textDecoration:"underline"},children:"\u3053\u3061\u3089"})]})),g(`\u6708\u984d\u30d7\u30e9\u30f3         ${C(h[o].price_m)}\u5186 `),y(`\u5e74\u984d\u30d7\u30e9\u30f3         ${C(h[o].price_y_total)}\u5186\uff08\u6708\u63db\u7b97${C(h[o].price_y_total/12)}\u5186\uff09 `)}),[o]);return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",borderRadius:"10px"},children:[(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"22px",fontWeight:600,lineHeight:"35px",letterSpacing:"0.06em",textAlign:"left"},children:c}),(0,qh.jsxs)(zD,{name:"subscription-period",defaultValue:"month",sx:{marginTop:"30px",marginLeft:"20px",whiteSpace:"pre"},onChange:e=>{l("year"===e.target.value)},children:[(0,qh.jsx)(xD.A,{sx:{...p,wordBreak:{xs:"break-word",sm:"normal"},whiteSpace:{xs:"normal",sm:"pre"}},value:"month",control:(0,qh.jsx)(LD,{}),label:(0,qh.jsx)(Bh.A,{sx:p,children:m})}),(0,qh.jsx)(xD.A,{sx:p,value:"year",control:(0,qh.jsx)(LD,{}),label:(0,qh.jsxs)(sm,{direction:"row",alignItems:"center",spacing:0,children:[(0,qh.jsx)(Bh.A,{sx:{...p,wordBreak:{xs:"break-word",sm:"normal"},whiteSpace:{xs:"normal",sm:"pre"}},children:v}),(0,qh.jsx)(WD.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"15px",fontWeight:600,lineHeight:"27px",letterSpacing:"0.06em",textAlign:"center",color:"#ffffff",backgroundColor:"#db807c",borderRadius:"30px"},label:`\u5e74\u9593${C(12*h[o].price_m-h[o].price_y_total)}\u5186\u304a\u5f97!`})]})})]}),(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",fontWeight:500,lineHeight:"22px",letterSpacing:"0.06em",textAlign:"left",marginTop:"30px",marginLeft:"20px"},children:b}),(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",fontWeight:500,lineHeight:"22px",letterSpacing:"0.06em",textAlign:"left",marginLeft:"20px"},children:x}),(0,qh.jsx)(Bh.A,{sx:{color:"#86868B",fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",fontWeight:600,lineHeight:"22px",letterSpacing:"0.06em",textAlign:"left",marginLeft:"20px",marginTop:"30px"},children:A}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",mt:"40px"},children:[(0,qh.jsx)(QI.A,{disabled:d,size:"small",sx:{mr:"10px",color:"#28aeb1",fontFamily:"'Noto Sans JP', sans-serif"},onClick:r,children:"\u30ad\u30e3\u30f3\u30bb\u30eb"}),(0,qh.jsx)(RE,{loading:d,disableElevation:!0,size:"small",variant:"contained",sx:{fontFamily:"'Noto Sans JP', sans-serif",color:"white",backgroundColor:"#28aeb1"},onClick:()=>{f(!0),n(o,s,(()=>{f(!1)}))},children:"\u78ba\u5b9a"})]})]})})};var GD=r(52983),ZD=r(15866);function QD(e){return(0,oy.Ay)("MuiInputAdornment",e)}const KD=(0,mm.A)("MuiInputAdornment",["root","filled","standard","outlined","positionStart","positionEnd","disablePointerEvents","hiddenLabel","sizeSmall"]);var XD;const JD=(0,am.Ay)("div",{name:"MuiInputAdornment",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[`position${(0,ey.A)(r.position)}`],!0===r.disablePointerEvents&&t.disablePointerEvents,t[r.variant]]}})((0,qv.A)((e=>{let{theme:t}=e;return{display:"flex",maxHeight:"2em",alignItems:"center",whiteSpace:"nowrap",color:(t.vars||t).palette.action.active,variants:[{props:{variant:"filled"},style:{[`&.${KD.positionStart}&:not(.${KD.hiddenLabel})`]:{marginTop:16}}},{props:{position:"start"},style:{marginRight:8}},{props:{position:"end"},style:{marginLeft:8}},{props:{disablePointerEvents:!0},style:{pointerEvents:"none"}}]}}))),$D=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiInputAdornment"}),{children:o,className:a,component:i="div",disablePointerEvents:s=!1,disableTypography:l=!1,position:c,variant:u,...d}=n,f=(0,OD.A)()||{};let p=u;u&&f.variant,f&&!p&&(p=f.variant);const h={...n,hiddenLabel:f.hiddenLabel,size:f.size,disablePointerEvents:s,position:c,variant:p},m=(e=>{const{classes:t,disablePointerEvents:r,hiddenLabel:n,position:o,size:a,variant:i}=e,s={root:["root",r&&"disablePointerEvents",o&&`position${(0,ey.A)(o)}`,i,n&&"hiddenLabel",a&&`size${(0,ey.A)(a)}`]};return(0,zv.A)(s,QD,t)})(h);return(0,qh.jsx)(ZD.A.Provider,{value:null,children:(0,qh.jsx)(JD,{as:i,ownerState:h,className:(0,Fh.A)(m.root,a),ref:r,...d,children:"string"!==typeof o||l?(0,qh.jsxs)(t.Fragment,{children:["start"===c?XD||(XD=(0,qh.jsx)("span",{className:"notranslate",children:"\u200b"})):null,o]}):(0,qh.jsx)(Bh.A,{color:"textSecondary",children:o})})})})),qD=(0,dD.A)((0,qh.jsx)("path",{d:"M3 17.46v3.04c0 .28.22.5.5.5h3.04c.13 0 .26-.05.35-.15L17.81 9.94l-3.75-3.75L3.15 17.1q-.15.15-.15.36M20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.996.996 0 0 0-1.41 0l-1.83 1.83 3.75 3.75z"}),"EditRounded"),eT=(0,dD.A)((0,qh.jsx)("path",{d:"M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"}),"Check"),tT=(0,dD.A)((0,qh.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close"),rT=e=>{let{style:r=null,initialValue:n="",placeHolder:o="",onSave:a}=e;const[i,s]=(0,t.useState)(!1),[l,c]=(0,t.useState)(n),[u,d]=(0,t.useState)(n),[f,p]=(0,t.useState)("auto"),[h,m]=(0,t.useState)(!1),g=(0,t.useRef)(null),v=(0,t.useRef)(null),y=(0,t.useRef)(null),b=(0,t.useRef)(document.createElement("canvas"));(0,t.useEffect)((()=>{c(n),d(n)}),[n]),(0,t.useLayoutEffect)((()=>{(()=>{if(v.current&&!i){var e;const t=b.current.getContext("2d"),r=window.getComputedStyle(v.current);t.font=`${r.fontWeight} ${r.fontSize} ${r.fontFamily}`;const n=parseFloat(r.letterSpacing)||0,o=t.measureText(l).width+n*(l.length-1),a=(null===y||void 0===y||null===(e=y.current)||void 0===e?void 0:e.offsetWidth)||0,i=parseFloat(r.paddingLeft),s=parseFloat(r.paddingRight),c=Math.ceil(o+a+i+s+8);p(c)}})()}),[l,i,r]);const w={fontSize:(null===r||void 0===r?void 0:r.fontSize)||"inherit",fontWeight:(null===r||void 0===r?void 0:r.fontWeight)||"inherit",lineHeight:(null===r||void 0===r?void 0:r.lineHeight)||"inherit",fontFamily:(null===r||void 0===r?void 0:r.fontFamily)||"inherit"};return(0,qh.jsxs)(ym,{width:f,sx:{display:"inline-block",maxWidth:"100%"},children:[(0,qh.jsx)(GD.A,{inputRef:v,value:l,placeholder:o,onChange:e=>c(e.target.value),size:"small",disabled:!i,fullWidth:!0,InputProps:a&&{endAdornment:(0,qh.jsx)($D,{position:"end",sx:{ml:"0px",mr:"2px"},ref:y,children:i?(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(cE.A,{size:"small",onClick:()=>{l&&(l!==u?(m(!0),a(l,(e=>{m(!1),e?(c(l),d(l)):c(u),s(!1)}))):s(!1))},disabled:h,children:h?(0,qh.jsx)(AE,{size:20,color:"primary"}):(0,qh.jsx)(eT,{fontSize:"small",color:"primary"})}),(0,qh.jsx)(cE.A,{size:"small",onClick:()=>{s(!1),c(n)},disabled:h,children:(0,qh.jsx)(tT,{fontSize:"small",color:"error"})})]}):(0,qh.jsx)(qD,{fontSize:"inherit",sx:{color:"primary.main",fontSize:"14px"}})}),style:{backgroundColor:"transparent",paddingRight:"0px",...w}},sx:{"& .MuiOutlinedInput-root":{"& fieldset":{borderRadius:"0",borderColor:i?"#28aeb1":"transparent",borderWidth:i?"1px":"0",borderTop:"none",borderLeft:"none",borderRight:"none"},"&:hover fieldset":{borderColor:i?"#28aeb1":"transparent",borderWidth:i?"1px":"0"}},"& .MuiInputBase-input.Mui-disabled":{WebkitTextFillColor:(null===r||void 0===r?void 0:r.color)||"rgba(0, 0, 0, 0.87)",color:(null===r||void 0===r?void 0:r.color)||"rgba(0, 0, 0, 0.87)",cursor:"pointer"},"& .MuiInputBase-input":{cursor:i?"text":"pointer",padding:"8px",paddingLeft:0,paddingRight:0,display:"flex",alignItems:"center",...r,color:i?null===r||void 0===r?void 0:r.color:(null===r||void 0===r?void 0:r.color)||"rgba(0, 0, 0, 0.87)","&::placeholder":{color:"rgba(0, 0, 0, 0.38)",opacity:1}}},onClick:()=>!i&&(s(!0),void p(Math.max(f,200)))}),(0,qh.jsx)(Bh.A,{ref:g,sx:{position:"absolute",visibility:"hidden",whiteSpace:"pre",...w,...r},children:l})]})},nT={fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",fontWeight:600,width:"400px",lineHeight:"22px",letterSpacing:"0.06em",textAlign:"left",color:"#333333"},oT={fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",marginLeft:"20px",fontWeight:400,lineHeight:"22px",letterSpacing:"0.06em",textAlign:"left",color:"#333333",whiteSpace:"pre"},aT=e=>{let{leftItem:r,rightItem:n}=e;const[o,a]=(0,t.useState)("");return(0,t.useEffect)((()=>{a(n)}),[n]),(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsxs)(ym,{sx:{display:"flex",mt:"20px"},children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{...nT},children:r}),o&&(0,qh.jsx)(Bh.A,{variant:"h3",sx:{...oT},children:o})]})})},iT=e=>{let{t:r,onCancel:n,onConfirm:o}=e;const[a,i]=(0,t.useState)(!1);return(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{sx:{mt:"8px",lineHeight:1.6},children:r("setting.deleteOrgConfirm")}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",mt:"16px"},children:[(0,qh.jsx)(QI.A,{size:"small",disabled:a,onClick:n,children:r("setting.cancel")}),(0,qh.jsx)(RE,{size:"small",color:"error",variant:"contained",disableElevation:!0,loading:a,sx:{ml:"8px"},onClick:()=>{i(!0),o((()=>i(!1)))},children:r("setting.delete")})]})]})};function sT(){const{gStripe:e,setCustomModalOpen:r,setModalContent:n,setCustomModalKeep:o,setSnackbarValue:a,gMediaType:i}=(0,t.useContext)(VI),{t:s}=Fv(),l=hg(),[c,u]=(0,t.useState)({config:{},isYear:!1,time:0,total:0,level:0}),d=(0,t.useMemo)((()=>new Intl.NumberFormat("ja-JP").format(c.total)),[c.total]),f=(0,t.useMemo)((()=>Dh.timeToDate(c.time)),[c.time]),p=(0,t.useMemo)((()=>!e.priorityCompany.isRootUser&&!!e.isOwner),[e.priorityCompany,e.isOwner]);(0,t.useEffect)((()=>{p&&(e.getCardList(),e.getLevelConfig((e=>{e.success&&u({...e.data})})))}),[e.priorityCompany.companyID,p]);const h=()=>{r(!0),n((0,qh.jsx)(KE,{gStripe:e,submit:()=>{r(!1)}}))},m=e=>["Free","Light","Pro","Business","Enterprise"][e];return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(Bh.A,{variant:"h2",sx:{ml:"9px"},children:"\u8a2d\u5b9a"})}),(0,qh.jsx)(lE,{sx:{mt:0,p:"0px"},children:(0,qh.jsxs)(JI,{children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",lineHeight:nT.lineHeight,height:"22px"},children:[(0,qh.jsx)(Bh.A,{sx:{...nT},children:"\u4f1a\u793e"}),(0,qh.jsx)(ym,{sx:{ml:"20px"},children:(0,qh.jsx)(rT,{style:{...oT,marginLeft:"0"},initialValue:e.priorityCompany.name,onSave:e.isOwner&&((t,r)=>{t&&r&&e.updateCompanyName(t,(n=>{r(n.success),n.success&&!e.customerInfo.isSesameApp&&e.setCustomerInfo((e=>({...e,name:t})))}))})})}),e.isOwner&&(0,qh.jsx)(cE.A,{color:"error",onClick:()=>{r(!0),n((0,qh.jsx)(iT,{t:s,onCancel:()=>{r(!1)},onConfirm:t=>{e.deleteCompany((e=>{t(),e.success?(r(!1),l("/")):a({open:!0,msg:e.message,severity:"error"})}))}}))},children:(0,qh.jsx)(wD,{fontSize:"small"})})]}),(0,qh.jsx)(aT,{leftItem:"\u73fe\u5728\u3054\u5951\u7d04\u4e2d\u306e\u30d7\u30e9\u30f3",rightItem:(e=>{if(e.priorityCompany.isRootUser)return"\u7121\u5236\u9650\u30d7\u30e9\u30f3";let t=c;const r=t.isYear?"\u5e74\u984d\u30d7\u30e9\u30f3":"\u6708\u984d\u30d7\u30e9\u30f3";if(t.nextEndDate){let e=new Date(1e3*parseInt(t.nextEndDate)),n=e.getFullYear()+"\u5e74"+(e.getMonth()+1)+"\u6708"+e.getDate()+"\u65e5",o=t.nextPrice%2===1?"\u5e74\u984d\u30d7\u30e9\u30f3":"\u6708\u984d\u30d7\u30e9\u30f3";return`${m(t.level)} (${r})        \u203b${n} ${m(Math.floor(t.nextPrice/2))}(${o})\u306b\u30c0\u30a6\u30f3\u30b0\u30ec\u30fc\u30c9\u3057\u307e\u3059\u3002`}return`${m(t.level||0)} (${r})`})(e)}),!e.priorityCompany.isRootUser&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(aT,{leftItem:"\u6b21\u306e\u304a\u652f\u6255\u3044\u65e5",rightItem:f}),(0,qh.jsx)(aT,{leftItem:"\u6b21\u306e\u304a\u652f\u6255\u3044\u91d1\u984d",rightItem:`${d}\u5186(\u7a0e\u8fbc)`})]}),p&&(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(ym,{sx:{display:"flex",marginTop:"36px"},children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"20px",fontWeight:600,marginTop:"5px",lineHeight:"27px",letterSpacing:"0.06em",textAlign:"left",color:"#333333"},children:"\u304a\u652f\u6255\u3044\u60c5\u5831"}),(0,qh.jsx)(cE.A,{sx:{ml:"10px"},onClick:h,children:(0,qh.jsx)(bD,{style:{color:"#28AEB1"}})})]}),(0,qh.jsx)(mD,{}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"20px",fontWeight:600,marginTop:"36px",lineHeight:"27px",letterSpacing:"0.06em",textAlign:"left",color:"#333333"},children:"\u30d7\u30e9\u30f3"}),(0,qh.jsx)(yD,{isMobile:i.isMobile,callUpdate:async(t,i)=>{i?e.updateLevel({level:0,isUpgrade:!1,isCancel:!0}):e.cardList.length>0?(r(!0),o(!0),n((0,qh.jsx)(VD,{levelConfig:c.config,clickCancel:()=>{o(!1),r(!1)},clickSure:(t,n,i)=>{let s=n?1:0,l=Math.floor(2*t+s),u=2*c.level<l;e.updateLevel({level:l,isUpgrade:u,cb:e=>{o(!1),r(!1),i&&i(),e.success||a({open:!0,msg:e.message})}})},chooseLevel:t,curLevel:c.level}))):h()},nextPrice:c.nextPrice,levleInfo:c}),(0,qh.jsx)(Bh.A,{sx:{marginLeft:"8px"},children:"\u203b\u30d7\u30e9\u30f3\u306e\u8868\u793a\u4fa1\u683c\u306f\u3059\u3079\u3066\u5e74\u984d\u30d7\u30e9\u30f3\u306e\u6708\u63db\u7b97\u3057\u305f\u91d1\u984d\uff08\u7a0e\u629c\u304d\uff09\u3067\u3059\u3002"})]})]})})]})})}const lT="biz3AppOperations";let cT=0;async function uT(e,t){let{account:r,guestIdentityId:n,language:o,deviceUUID:a}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=o?new Intl.Locale(o.replace(/_/g,"-")):null,s=(null===i||void 0===i?void 0:i.region)||("Hant"===(null===i||void 0===i?void 0:i.script)?"TW":"Hans"===(null===i||void 0===i?void 0:i.script)?"CN":""),l=i?`${i.language}${s?`-${s}`:""}`:void 0,c=await async function(e){const t=await gC(),r=pC(t),n=uC?r.identity_id:r.sub;if(!n||e&&n!==e)throw new Error("Session changed");aC||await mC();const o=dC;return{subject:n,identityId:aC.guestIdentityId,isCurrent:()=>o===dC}}(r);if(WC.getStatus()!==FC.CONNECTED)throw new Error("Connection unavailable");const u=`app_${Date.now()}_${++cT}`;return new Promise(((r,o)=>{let i,s;const d=(e,t)=>{var n;clearTimeout(s),WC.unsubscribe(lT,f),null===(n=i)||void 0===n||n(),e?o(e):r(t)},f=e=>{e.requestId===u&&(c.isCurrent()&&e.success?d(null,e.data):d(new Error("App operation failed")))};WC.subscribe(lT,f),i=WC.onStatusChange((e=>{e!==FC.CONNECTED&&d(new Error("Connection changed"))})),s=setTimeout((()=>d(new Error("App operation timed out"))),28e3),WC.sendMessage({action:lT,requestId:u,op:e,body:t,account:c.subject,installationId:c.identityId,guestIdentityId:n,language:l,deviceUUID:a},!1).catch((e=>d(e)))}))}let dT=null,fT=0;const pT=new Set,hT=e=>{dT=e,pT.forEach((e=>e()))},mT={getSnapshot:()=>dT,subscribe:e=>(pT.add(e),()=>pT.delete(e)),clear(){fT++,hT(null)},async refresh(e){const t=++fT,r=await uT("getActivePromotion",{},{account:e});return null!==r&&void 0!==r&&r.success&&t===fT&&hT(r.promotion),dT},async markRead(e,t){var r;const n=++fT;(null===(r=dT)||void 0===r?void 0:r.promotionId)===e&&hT({...dT,visible:!1});const o=await uT("markPromotionRead",{promotionId:e,targetUrl:t});return null!==o&&void 0!==o&&o.success&&n===fT&&hT(o.promotion),dT}};r(26429);function gT(e){return(0,oy.Ay)("MuiBottomNavigation",e)}(0,mm.A)("MuiBottomNavigation",["root"]);const vT=(0,am.Ay)("div",{name:"MuiBottomNavigation",slot:"Root",overridesResolver:(e,t)=>t.root})((0,qv.A)((e=>{let{theme:t}=e;return{display:"flex",justifyContent:"center",height:56,backgroundColor:(t.vars||t).palette.background.paper}}))),yT=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiBottomNavigation"}),{children:o,className:a,component:i="div",onChange:s,showLabels:l=!1,value:c,...u}=n,d={...n,component:i,showLabels:l},f=(e=>{const{classes:t}=e;return(0,zv.A)({root:["root"]},gT,t)})(d);return(0,qh.jsx)(vT,{as:i,className:(0,Fh.A)(f.root,a),ref:r,ownerState:d,...u,children:t.Children.map(o,((e,r)=>{if(!t.isValidElement(e))return null;const n=void 0===e.props.value?r:e.props.value;return t.cloneElement(e,{selected:n===c,showLabel:void 0!==e.props.showLabel?e.props.showLabel:l,value:n,onChange:s})}))})}));function bT(e){return(0,oy.Ay)("MuiBottomNavigationAction",e)}const wT=(0,mm.A)("MuiBottomNavigationAction",["root","iconOnly","selected","label"]),xT=(0,am.Ay)($E.A,{name:"MuiBottomNavigationAction",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,!r.showLabel&&!r.selected&&t.iconOnly]}})((0,qv.A)((e=>{let{theme:t}=e;return{transition:t.transitions.create(["color","padding-top"],{duration:t.transitions.duration.short}),padding:"0px 12px",minWidth:80,maxWidth:168,color:(t.vars||t).palette.text.secondary,flexDirection:"column",flex:"1",[`&.${wT.selected}`]:{color:(t.vars||t).palette.primary.main},variants:[{props:e=>{let{showLabel:t,selected:r}=e;return!t&&!r},style:{paddingTop:14}},{props:e=>{let{showLabel:t,selected:r,label:n}=e;return!t&&!r&&!n},style:{paddingTop:0}}]}}))),ST=(0,am.Ay)("span",{name:"MuiBottomNavigationAction",slot:"Label",overridesResolver:(e,t)=>t.label})((0,qv.A)((e=>{let{theme:t}=e;return{fontFamily:t.typography.fontFamily,fontSize:t.typography.pxToRem(12),opacity:1,transition:"font-size 0.2s, opacity 0.2s",transitionDelay:"0.1s",[`&.${wT.selected}`]:{fontSize:t.typography.pxToRem(14)},variants:[{props:e=>{let{showLabel:t,selected:r}=e;return!t&&!r},style:{opacity:0,transitionDelay:"0s"}}]}}))),AT=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiBottomNavigationAction"}),{className:n,icon:o,label:a,onChange:i,onClick:s,selected:l,showLabel:c,value:u,...d}=r,f=r,p=(e=>{const{classes:t,showLabel:r,selected:n}=e,o={root:["root",!r&&!n&&"iconOnly",n&&"selected"],label:["label",!r&&!n&&"iconOnly",n&&"selected"]};return(0,zv.A)(o,bT,t)})(f);return(0,qh.jsxs)(xT,{ref:t,className:(0,Fh.A)(p.root,n),focusRipple:!0,onClick:e=>{i&&i(e,u),s&&s(e)},ownerState:f,...d,children:[o,(0,qh.jsx)(ST,{className:p.label,ownerState:f,children:a})]})})),kT=e=>{const r=t.useRef({});return t.useEffect((()=>{r.current=e})),r.current};const CT=function(e){const{badgeContent:t,invisible:r=!1,max:n=99,showZero:o=!1}=e,a=kT({badgeContent:t,max:n});let i=r;!1!==r||0!==t||o||(i=!0);const{badgeContent:s,max:l=n}=i?a:e;return{badgeContent:s,invisible:i,max:l,displayValue:s&&Number(s)>l?`${l}+`:s}};function IT(e){return(0,oy.Ay)("MuiBadge",e)}const ET=(0,mm.A)("MuiBadge",["root","badge","dot","standard","anchorOriginTopRight","anchorOriginBottomRight","anchorOriginTopLeft","anchorOriginBottomLeft","invisible","colorError","colorInfo","colorPrimary","colorSecondary","colorSuccess","colorWarning","overlapRectangular","overlapCircular","anchorOriginTopLeftCircular","anchorOriginTopLeftRectangular","anchorOriginTopRightCircular","anchorOriginTopRightRectangular","anchorOriginBottomLeftCircular","anchorOriginBottomLeftRectangular","anchorOriginBottomRightCircular","anchorOriginBottomRightRectangular"]),DT=(0,am.Ay)("span",{name:"MuiBadge",slot:"Root",overridesResolver:(e,t)=>t.root})({position:"relative",display:"inline-flex",verticalAlign:"middle",flexShrink:0}),TT=(0,am.Ay)("span",{name:"MuiBadge",slot:"Badge",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.badge,t[r.variant],t[`anchorOrigin${(0,ey.A)(r.anchorOrigin.vertical)}${(0,ey.A)(r.anchorOrigin.horizontal)}${(0,ey.A)(r.overlap)}`],"default"!==r.color&&t[`color${(0,ey.A)(r.color)}`],r.invisible&&t.invisible]}})((0,qv.A)((e=>{let{theme:t}=e;return{display:"flex",flexDirection:"row",flexWrap:"wrap",justifyContent:"center",alignContent:"center",alignItems:"center",position:"absolute",boxSizing:"border-box",fontFamily:t.typography.fontFamily,fontWeight:t.typography.fontWeightMedium,fontSize:t.typography.pxToRem(12),minWidth:20,lineHeight:1,padding:"0 6px",height:20,borderRadius:10,zIndex:1,transition:t.transitions.create("transform",{easing:t.transitions.easing.easeInOut,duration:t.transitions.duration.enteringScreen}),variants:[...Object.entries(t.palette).filter((0,pE.A)(["contrastText"])).map((e=>{let[r]=e;return{props:{color:r},style:{backgroundColor:(t.vars||t).palette[r].main,color:(t.vars||t).palette[r].contrastText}}})),{props:{variant:"dot"},style:{borderRadius:4,height:8,minWidth:8,padding:0}},{props:e=>{let{ownerState:t}=e;return"top"===t.anchorOrigin.vertical&&"right"===t.anchorOrigin.horizontal&&"rectangular"===t.overlap},style:{top:0,right:0,transform:"scale(1) translate(50%, -50%)",transformOrigin:"100% 0%",[`&.${ET.invisible}`]:{transform:"scale(0) translate(50%, -50%)"}}},{props:e=>{let{ownerState:t}=e;return"bottom"===t.anchorOrigin.vertical&&"right"===t.anchorOrigin.horizontal&&"rectangular"===t.overlap},style:{bottom:0,right:0,transform:"scale(1) translate(50%, 50%)",transformOrigin:"100% 100%",[`&.${ET.invisible}`]:{transform:"scale(0) translate(50%, 50%)"}}},{props:e=>{let{ownerState:t}=e;return"top"===t.anchorOrigin.vertical&&"left"===t.anchorOrigin.horizontal&&"rectangular"===t.overlap},style:{top:0,left:0,transform:"scale(1) translate(-50%, -50%)",transformOrigin:"0% 0%",[`&.${ET.invisible}`]:{transform:"scale(0) translate(-50%, -50%)"}}},{props:e=>{let{ownerState:t}=e;return"bottom"===t.anchorOrigin.vertical&&"left"===t.anchorOrigin.horizontal&&"rectangular"===t.overlap},style:{bottom:0,left:0,transform:"scale(1) translate(-50%, 50%)",transformOrigin:"0% 100%",[`&.${ET.invisible}`]:{transform:"scale(0) translate(-50%, 50%)"}}},{props:e=>{let{ownerState:t}=e;return"top"===t.anchorOrigin.vertical&&"right"===t.anchorOrigin.horizontal&&"circular"===t.overlap},style:{top:"14%",right:"14%",transform:"scale(1) translate(50%, -50%)",transformOrigin:"100% 0%",[`&.${ET.invisible}`]:{transform:"scale(0) translate(50%, -50%)"}}},{props:e=>{let{ownerState:t}=e;return"bottom"===t.anchorOrigin.vertical&&"right"===t.anchorOrigin.horizontal&&"circular"===t.overlap},style:{bottom:"14%",right:"14%",transform:"scale(1) translate(50%, 50%)",transformOrigin:"100% 100%",[`&.${ET.invisible}`]:{transform:"scale(0) translate(50%, 50%)"}}},{props:e=>{let{ownerState:t}=e;return"top"===t.anchorOrigin.vertical&&"left"===t.anchorOrigin.horizontal&&"circular"===t.overlap},style:{top:"14%",left:"14%",transform:"scale(1) translate(-50%, -50%)",transformOrigin:"0% 0%",[`&.${ET.invisible}`]:{transform:"scale(0) translate(-50%, -50%)"}}},{props:e=>{let{ownerState:t}=e;return"bottom"===t.anchorOrigin.vertical&&"left"===t.anchorOrigin.horizontal&&"circular"===t.overlap},style:{bottom:"14%",left:"14%",transform:"scale(1) translate(-50%, 50%)",transformOrigin:"0% 100%",[`&.${ET.invisible}`]:{transform:"scale(0) translate(-50%, 50%)"}}},{props:{invisible:!0},style:{transition:t.transitions.create("transform",{easing:t.transitions.easing.easeInOut,duration:t.transitions.duration.leavingScreen})}}]}})));function OT(e){return{vertical:e?.vertical??"top",horizontal:e?.horizontal??"right"}}const MT=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiBadge"}),{anchorOrigin:n,className:o,classes:a,component:i,components:s={},componentsProps:l={},children:c,overlap:u="rectangular",color:d="default",invisible:f=!1,max:p=99,badgeContent:h,slots:m,slotProps:g,showZero:v=!1,variant:y="standard",...b}=r,{badgeContent:w,invisible:x,max:S,displayValue:A}=CT({max:p,invisible:f,badgeContent:h,showZero:v}),k=kT({anchorOrigin:OT(n),color:d,overlap:u,variant:y,badgeContent:h}),C=x||null==w&&"dot"!==y,{color:I=d,overlap:E=u,anchorOrigin:D,variant:T=y}=C?k:r,O=OT(D),M="dot"!==T?A:void 0,P={...r,badgeContent:w,invisible:C,max:S,displayValue:M,showZero:v,anchorOrigin:O,color:I,overlap:E,variant:T},j=(e=>{const{color:t,anchorOrigin:r,invisible:n,overlap:o,variant:a,classes:i={}}=e,s={root:["root"],badge:["badge",a,n&&"invisible",`anchorOrigin${(0,ey.A)(r.vertical)}${(0,ey.A)(r.horizontal)}`,`anchorOrigin${(0,ey.A)(r.vertical)}${(0,ey.A)(r.horizontal)}${(0,ey.A)(o)}`,`overlap${(0,ey.A)(o)}`,"default"!==t&&`color${(0,ey.A)(t)}`]};return(0,zv.A)(s,IT,i)})(P),R=m?.root??s.Root??DT,_=m?.badge??s.Badge??TT,N=g?.root??l.root,L=g?.badge??l.badge,U=(0,Wv.A)({elementType:R,externalSlotProps:N,externalForwardedProps:b,additionalProps:{ref:t,as:i},ownerState:P,className:(0,Fh.A)(N?.className,j.root,o)}),B=(0,Wv.A)({elementType:_,externalSlotProps:L,ownerState:P,className:(0,Fh.A)(j.badge,L?.className)});return(0,qh.jsxs)(R,{...U,children:[c,(0,qh.jsx)(_,{...B,children:M})]})})),PT=["/","/vision","/contacts","/me/homepage"],jT="sesame.activeTab";function RT(){const e=sessionStorage.getItem(jT);return PT.includes(e)?e:"/"}const _T=(0,dD.A)((0,qh.jsx)("path",{d:"m12 5.69 5 4.5V18h-2v-6H9v6H7v-7.81zM12 3 2 12h3v8h6v-6h2v6h6v-8h3z"}),"HomeOutlined"),NT=(0,dD.A)((0,qh.jsx)("path",{d:"M4 13c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m1.13 1.1c-.37-.06-.74-.1-1.13-.1-.99 0-1.93.21-2.78.58C.48 14.9 0 15.62 0 16.43V18h4.5v-1.61c0-.83.23-1.61.63-2.29M20 13c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m4 3.43c0-.81-.48-1.53-1.22-1.85-.85-.37-1.79-.58-2.78-.58-.39 0-.76.04-1.13.1.4.68.63 1.46.63 2.29V18H24zm-7.76-2.78c-1.17-.52-2.61-.9-4.24-.9s-3.07.39-4.24.9C6.68 14.13 6 15.21 6 16.39V18h12v-1.61c0-1.18-.68-2.26-1.76-2.74M8.07 16c.09-.23.13-.39.91-.69.97-.38 1.99-.56 3.02-.56s2.05.18 3.02.56c.77.3.81.46.91.69zM12 8c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1m0-2c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3"}),"GroupsOutlined"),LT=(0,dD.A)((0,qh.jsx)("path",{d:"M19 19V4h-4V3H5v16H3v2h12V6h2v15h4v-2zm-6 0H7V5h6zm-3-8h2v2h-2z"}),"MeetingRoomOutlined"),UT=(0,dD.A)((0,qh.jsx)("path",{d:"M17.81 4.47c-.08 0-.16-.02-.23-.06C15.66 3.42 14 3 12.01 3c-1.98 0-3.86.47-5.57 1.41-.24.13-.54.04-.68-.2-.13-.24-.04-.55.2-.68C7.82 2.52 9.86 2 12.01 2c2.13 0 3.99.47 6.03 1.52.25.13.34.43.21.67-.09.18-.26.28-.44.28M3.5 9.72c-.1 0-.2-.03-.29-.09-.23-.16-.28-.47-.12-.7.99-1.4 2.25-2.5 3.75-3.27C9.98 4.04 14 4.03 17.15 5.65c1.5.77 2.76 1.86 3.75 3.25.16.22.11.54-.12.7s-.54.11-.7-.12c-.9-1.26-2.04-2.25-3.39-2.94-2.87-1.47-6.54-1.47-9.4.01-1.36.7-2.5 1.7-3.4 2.96-.08.14-.23.21-.39.21m6.25 12.07c-.13 0-.26-.05-.35-.15-.87-.87-1.34-1.43-2.01-2.64-.69-1.23-1.05-2.73-1.05-4.34 0-2.97 2.54-5.39 5.66-5.39s5.66 2.42 5.66 5.39c0 .28-.22.5-.5.5s-.5-.22-.5-.5c0-2.42-2.09-4.39-4.66-4.39s-4.66 1.97-4.66 4.39c0 1.44.32 2.77.93 3.85.64 1.15 1.08 1.64 1.85 2.42.19.2.19.51 0 .71-.11.1-.24.15-.37.15m7.17-1.85c-1.19 0-2.24-.3-3.1-.89-1.49-1.01-2.38-2.65-2.38-4.39 0-.28.22-.5.5-.5s.5.22.5.5c0 1.41.72 2.74 1.94 3.56.71.48 1.54.71 2.54.71.24 0 .64-.03 1.04-.1.27-.05.53.13.58.41.05.27-.13.53-.41.58-.57.11-1.07.12-1.21.12M14.91 22c-.04 0-.09-.01-.13-.02-1.59-.44-2.63-1.03-3.72-2.1-1.4-1.39-2.17-3.24-2.17-5.22 0-1.62 1.38-2.94 3.08-2.94s3.08 1.32 3.08 2.94c0 1.07.93 1.94 2.08 1.94s2.08-.87 2.08-1.94c0-3.77-3.25-6.83-7.25-6.83-2.84 0-5.44 1.58-6.61 4.03-.39.81-.59 1.76-.59 2.8 0 .78.07 2.01.67 3.61.1.26-.03.55-.29.64-.26.1-.55-.04-.64-.29-.49-1.31-.73-2.61-.73-3.96 0-1.2.23-2.29.68-3.24 1.33-2.79 4.28-4.6 7.51-4.6 4.55 0 8.25 3.51 8.25 7.83 0 1.62-1.38 2.94-3.08 2.94s-3.08-1.32-3.08-2.94c0-1.07-.93-1.94-2.08-1.94s-2.08.87-2.08 1.94c0 1.71.66 3.31 1.87 4.51.95.94 1.86 1.46 3.27 1.85.27.07.42.35.35.61-.05.23-.26.38-.47.38"}),"FingerprintOutlined"),BT=(0,dD.A)((0,qh.jsx)("path",{d:"M20 4H4c-1.11 0-1.99.89-1.99 2L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2m0 14H4v-6h16zm0-10H4V6h16z"}),"CreditCardOutlined"),FT=(0,dD.A)((0,qh.jsx)("path",{d:"M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9m-1 5v5l4.25 2.52.77-1.28-3.52-2.09V8z"}),"HistoryOutlined"),zT=(0,dD.A)((0,qh.jsx)("path",{d:"M19 3h-1V1h-2v2H8V1H6v2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2m0 16H5V9h14zM5 7V5h14v2zm2 4h10v2H7zm0 4h7v2H7z"}),"EventNoteOutlined"),WT=e=>{let{children:t,size:r=24,viewBox:n="0 0 24 24",sx:o={}}=e;return(0,qh.jsx)("svg",{width:r,height:r,viewBox:n,fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{display:"block",flexShrink:0,...o},children:t})},HT={home:_T,sesame:e=>{let{size:t=24,sx:r={}}=e;return(0,qh.jsxs)(WT,{size:t,viewBox:"0 0 18 20",sx:r,children:[(0,qh.jsx)("path",{d:"M5.7889,5.7889m-2.8175,2.1309a3.5326,3.5326 97.8991,1 1,5.635 -4.2618a3.5326,3.5326 97.8991,1 1,-5.635 4.2618",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,qh.jsx)("path",{d:"M8.1966,8.9723L14.6514,17.4845",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,qh.jsx)("path",{d:"M9.7374,16.3663L12.2002,14.4846",stroke:"currentColor",strokeWidth:"4.4",fill:"none"})]})},vision:e=>{let{size:t=24,sx:r={}}=e;return(0,qh.jsxs)(WT,{size:t,sx:r,children:[(0,qh.jsx)("path",{fill:"currentColor",d:"M12,20.2c-0.1,0-0.3-0.1-0.4-0.2l-3.1-3.1L8.3,17c-0.5,0.1-0.9,0.2-1.3,0.2c-3.1,0-5.7-2.5-5.7-5.7c0-0.7,0.2-1.4,0.5-2.3C1.9,9,2.1,8.9,2.3,8.9c0.1,0,0.2,0,0.3,0C2.9,9.1,3,9.4,2.9,9.7c-0.2,0.6-0.3,1.1-0.3,1.8c0,2.4,2,4.4,4.4,4.4s4.4-2,4.4-4.4S9.4,7.1,7,7.1S2.4,6.4,0.6,5l0,0l0,0C0.4,4.8,0.3,4.7,0.3,4.6c0-0.2,0-0.4,0.1-0.5l0,0l0,0c0.1-0.2,0.3-0.2,0.4-0.2s0.3,0,0.4,0.1C2.8,5.2,4.8,5.8,7,5.8c1.9,0,3.6,0.9,4.7,2.6L12,8.9l0.3-0.5c1.1-1.6,2.8-2.6,4.7-2.6c2.2,0,4.1-0.7,5.7-1.9c0.1-0.1,0.2-0.1,0.3-0.1c0.2,0,0.4,0.1,0.5,0.2c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2-0.1,0.3-0.2,0.4C21.6,6.3,19.4,7,17,7s-4.4,2-4.4,4.4s2,4.4,4.4,4.4s4.4-2,4.4-4.4c0-0.6-0.1-1.2-0.3-1.8c-0.1-0.3,0-0.7,0.3-0.8c0.1,0,0.2,0,0.3,0c0.2,0,0.5,0.1,0.5,0.3c0.3,0.9,0.5,1.6,0.5,2.3c0,3.1-2.5,5.7-5.7,5.7c-0.4,0-0.8-0.1-1.3-0.2l-0.2-0.1l-3,3.2C12.3,20.2,12.2,20.2,12,20.2zM11.7,14.7c-0.4,0.6-0.9,1.1-1.5,1.5l-0.4,0.3l2.2,2.2l2.2-2.2l-0.4-0.3c-0.6-0.4-1.1-0.9-1.5-1.5L12,14.2L11.7,14.7z"}),(0,qh.jsx)("path",{fill:"currentColor",d:"M7,9.6c-1,0-1.9,0.8-1.9,1.9s0.8,1.9,1.9,1.9s1.9-0.8,1.9-1.9S8,9.6,7,9.6zM7.5,11.4c-0.3,0-0.6-0.3-0.6-0.6s0.3-0.6,0.6-0.6s0.6,0.3,0.6,0.6S7.8,11.4,7.5,11.4z"}),(0,qh.jsx)("path",{fill:"currentColor",d:"M17.1,9.6c-1,0-1.9,0.8-1.9,1.9s0.8,1.9,1.9,1.9s1.9-0.8,1.9-1.9S18.1,9.6,17.1,9.6zM16.6,11.4c-0.3,0-0.6-0.3-0.6-0.6s0.3-0.6,0.6-0.6c0.3,0,0.6,0.3,0.6,0.6S16.9,11.4,16.6,11.4z"})]})},contacts:e=>{let{size:t=24,sx:r={}}=e;return(0,qh.jsx)(WT,{size:t,sx:r,children:(0,qh.jsx)("path",{d:"M18.8,19.8L18.8,19.3155C18.8,19.0861 18.5647,18.71 18.3598,18.6101L12.6995,15.849C11.1729,15.1044 10.7956,13.3029 11.8893,12.0064L12.2509,11.5778C12.8022,10.9243 13.3,9.5644 13.3,8.7102L13.3,7.0002C13.3,5.4549 12.0456,4.2 10.5,4.2C8.9563,4.2 7.7,5.4552 7.7,6.9996L7.7,8.7093C7.7,9.5657 8.1957,10.9205 8.7491,11.5763L9.1106,12.0048C10.2066,13.3039 9.8252,15.1037 8.3007,15.8476L2.6404,18.6098C2.437,18.709 2.2,19.0887 2.2,19.3155L2.2,19.8L18.8,19.8ZM1,20L1,19.3155C1,18.6304 1.4982,17.8319 2.1141,17.5313L7.7745,14.7691C8.5954,14.3685 8.7863,13.4813 8.1934,12.7786L7.8319,12.3501C7.0963,11.4783 6.5,9.8495 6.5,8.7093L6.5,6.9996C6.5,4.7907 8.2954,3 10.5,3C12.7091,3 14.5,4.793 14.5,7.0002L14.5,8.7102C14.5,9.8493 13.9009,11.4829 13.1681,12.3516L12.8066,12.7801C12.217,13.479 12.4012,14.3684 13.2255,14.7705L18.8859,17.5316C19.5012,17.8317 20,18.6252 20,19.3155L20,20C20,20.5523 19.5523,21 19,21L2,21C1.4477,21 1,20.5523 1,20ZM20,14.5L23,14.5L23,15.7L20,15.7L20,14.5ZM18,11.5L23,11.5L23,12.7L18,12.7L18,11.5ZM16,8.5L23,8.5L23,9.7L16,9.7L16,8.5Z",fill:"currentColor"})})},me:e=>{let{size:t=24,sx:r={}}=e;return(0,qh.jsx)(WT,{size:t,sx:r,children:(0,qh.jsx)("path",{d:"M20.3,19.8L20.3,19.3155C20.3,19.0861 20.0647,18.71 19.8598,18.6101L14.1995,15.849C12.6729,15.1044 12.2956,13.3029 13.3893,12.0064L13.7509,11.5778C14.3022,10.9243 14.8,9.5644 14.8,8.7102L14.8,7.0002C14.8,5.4549 13.5456,4.2 12,4.2C10.4563,4.2 9.2,5.4552 9.2,6.9996L9.2,8.7093C9.2,9.5657 9.6957,10.9205 10.2491,11.5763L10.6106,12.0048C11.7066,13.3039 11.3252,15.1037 9.8007,15.8476L4.1404,18.6098C3.937,18.709 3.7,19.0887 3.7,19.3155L3.7,19.8L20.3,19.8ZM2.5,20L2.5,19.3155C2.5,18.6304 2.9982,17.8319 3.6141,17.5313L9.2745,14.7691C10.0954,14.3685 10.2863,13.4813 9.6934,12.7786L9.3319,12.3501C8.5963,11.4783 8,9.8495 8,8.7093L8,6.9996C8,4.7907 9.7954,3 12,3C14.2091,3 16,4.793 16,7.0002L16,8.7102C16,9.8493 15.4009,11.4829 14.6681,12.3516L14.3066,12.7801C13.717,13.479 13.9012,14.3684 14.7255,14.7705L20.3859,17.5316C21.0012,17.8317 21.5,18.6252 21.5,19.3155L21.5,20C21.5,20.5523 21.0523,21 20.5,21L3.5,21C2.9477,21 2.5,20.5523 2.5,20Z",fill:"currentColor"})})},members:NT,ssmDevices:LT,touchDevices:UT,cards:BT,history:FT,schedule:zT},YT=[["/","sesame","appHome.sesame"],["/vision","vision","appHome.vision"],["/contacts","contacts","appHome.contacts"],["/me/homepage","me","appHome.me"]];function VT(){const e=(0,t.useSyncExternalStore)(mT.subscribe,mT.getSnapshot),r=dg(),n=hg(),{t:o}=Fv(),a=r.pathname.startsWith("/me")?"/me/homepage":r.pathname;return PT.includes(r.pathname)?(0,qh.jsx)(ny.A,{elevation:0,sx:{position:"relative",flexShrink:0,zIndex:1200,pb:"env(safe-area-inset-bottom)"},children:(0,qh.jsx)(yT,{showLabels:!0,value:a,onChange:(e,t)=>n({pathname:t,search:r.search},{replace:!0}),children:YT.map((t=>{let[r,n,a]=t;const i=HT[n];return(0,qh.jsx)(AT,{value:r,label:o(a),icon:(0,qh.jsx)(MT,{color:"error",variant:"dot",invisible:"me"!==n||!(null!==e&&void 0!==e&&e.visible),sx:{"& .MuiBadge-dot":{width:16,height:16,minWidth:16,borderRadius:"50%",bgcolor:"#f44336",top:-4,right:-4}},children:(0,qh.jsx)(i,{})})},r)}))})}):null}const GT=r.p+"static/media/site-icon.66c4e4529967fda91a5b.png",ZT=(0,dD.A)((0,qh.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add"),QT=(0,dD.A)((0,qh.jsx)("path",{d:"M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z"}),"KeyboardArrowDown"),KT=(0,dD.A)((0,qh.jsx)("path",{d:"M3 18h18v-2H3zm0-5h18v-2H3zm0-7v2h18V6z"}),"Menu"),XT=(0,dD.A)((0,qh.jsx)("path",{d:"M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4m0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4"}),"Person"),JT=(0,dD.A)((0,qh.jsx)("path",{d:"M11 21H5c-1.1 0-2-.9-2-2V5c0-1.1.9-2 2-2h6zm2 0h6c1.1 0 2-.9 2-2v-7h-8zm8-11V5c0-1.1-.9-2-2-2h-6v7z"}),"SpaceDashboard");var $T=r(249),qT=r(19745),eO=r(36658);function tO(e){return(0,oy.Ay)("MuiListItem",e)}(0,mm.A)("MuiListItem",["root","container","dense","alignItemsFlexStart","divider","gutters","padding","secondaryAction"]);function rO(e){return(0,oy.Ay)("MuiListItemSecondaryAction",e)}(0,mm.A)("MuiListItemSecondaryAction",["root","disableGutters"]);const nO=(0,am.Ay)("div",{name:"MuiListItemSecondaryAction",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.disableGutters&&t.disableGutters]}})({position:"absolute",right:16,top:"50%",transform:"translateY(-50%)",variants:[{props:e=>{let{ownerState:t}=e;return t.disableGutters},style:{right:0}}]}),oO=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiListItemSecondaryAction"}),{className:o,...a}=n,i=t.useContext(tD.A),s={...n,disableGutters:i.disableGutters},l=(e=>{const{disableGutters:t,classes:r}=e,n={root:["root",t&&"disableGutters"]};return(0,zv.A)(n,rO,r)})(s);return(0,qh.jsx)(nO,{className:(0,Fh.A)(l.root,o),ownerState:s,ref:r,...a})}));oO.muiName="ListItemSecondaryAction";const aO=oO,iO=(0,am.Ay)("div",{name:"MuiListItem",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.dense&&t.dense,"flex-start"===r.alignItems&&t.alignItemsFlexStart,r.divider&&t.divider,!r.disableGutters&&t.gutters,!r.disablePadding&&t.padding,r.hasSecondaryAction&&t.secondaryAction]}})((0,qv.A)((e=>{let{theme:t}=e;return{display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",width:"100%",boxSizing:"border-box",textAlign:"left",variants:[{props:e=>{let{ownerState:t}=e;return!t.disablePadding},style:{paddingTop:8,paddingBottom:8}},{props:e=>{let{ownerState:t}=e;return!t.disablePadding&&t.dense},style:{paddingTop:4,paddingBottom:4}},{props:e=>{let{ownerState:t}=e;return!t.disablePadding&&!t.disableGutters},style:{paddingLeft:16,paddingRight:16}},{props:e=>{let{ownerState:t}=e;return!t.disablePadding&&!!t.secondaryAction},style:{paddingRight:48}},{props:e=>{let{ownerState:t}=e;return!!t.secondaryAction},style:{[`& > .${nD.root}`]:{paddingRight:48}}},{props:{alignItems:"flex-start"},style:{alignItems:"flex-start"}},{props:e=>{let{ownerState:t}=e;return t.divider},style:{borderBottom:`1px solid ${(t.vars||t).palette.divider}`,backgroundClip:"padding-box"}},{props:e=>{let{ownerState:t}=e;return t.button},style:{transition:t.transitions.create("background-color",{duration:t.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(t.vars||t).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}}},{props:e=>{let{ownerState:t}=e;return t.hasSecondaryAction},style:{paddingRight:48}}]}}))),sO=(0,am.Ay)("li",{name:"MuiListItem",slot:"Container",overridesResolver:(e,t)=>t.container})({position:"relative"}),lO=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiListItem"}),{alignItems:o="center",children:a,className:i,component:s,components:l={},componentsProps:c={},ContainerComponent:u="li",ContainerProps:{className:d,...f}={},dense:p=!1,disableGutters:h=!1,disablePadding:m=!1,divider:g=!1,secondaryAction:v,slotProps:y={},slots:b={},...w}=n,x=t.useContext(tD.A),S=t.useMemo((()=>({dense:p||x.dense||!1,alignItems:o,disableGutters:h})),[o,x.dense,p,h]),A=t.useRef(null),k=t.Children.toArray(a),C=k.length&&(0,eO.A)(k[k.length-1],["ListItemSecondaryAction"]),I={...n,alignItems:o,dense:S.dense,disableGutters:h,disablePadding:m,divider:g,hasSecondaryAction:C},E=(e=>{const{alignItems:t,classes:r,dense:n,disableGutters:o,disablePadding:a,divider:i,hasSecondaryAction:s}=e,l={root:["root",n&&"dense",!o&&"gutters",!a&&"padding",i&&"divider","flex-start"===t&&"alignItemsFlexStart",s&&"secondaryAction"],container:["container"]};return(0,zv.A)(l,tO,r)})(I),D=(0,eD.A)(A,r),T=b.root||l.Root||iO,O=y.root||c.root||{},M={className:(0,Fh.A)(E.root,O.className,i),...w};let P=s||"li";return C?(P=M.component||s?P:"div","li"===u&&("li"===P?P="div":"li"===M.component&&(M.component="div")),(0,qh.jsx)(tD.A.Provider,{value:S,children:(0,qh.jsxs)(sO,{as:u,className:(0,Fh.A)(E.container,d),ref:D,ownerState:I,...f,children:[(0,qh.jsx)(T,{...O,...!(0,qT.A)(T)&&{as:P,ownerState:{...I,...O.ownerState}},...M,children:k}),k.pop()]})})):(0,qh.jsx)(tD.A.Provider,{value:S,children:(0,qh.jsxs)(T,{...O,as:P,ref:D,...!(0,qT.A)(T)&&{ownerState:{...I,...O.ownerState}},...M,children:[k,v&&(0,qh.jsx)(aO,{children:v})]})})}));const cO=(e,t,r)=>{const n=e.keys[0];if(Array.isArray(t))t.forEach(((t,n)=>{r(((t,r)=>{n<=e.keys.length-1&&(0===n?Object.assign(t,r):t[e.up(e.keys[n])]=r)}),t)}));else if(t&&"object"===typeof t){(Object.keys(t).length>e.keys.length?e.keys:(o=e.keys,a=Object.keys(t),o.filter((e=>a.includes(e))))).forEach((o=>{if(e.keys.includes(o)){const a=t[o];void 0!==a&&r(((t,r)=>{n===o?Object.assign(t,r):t[e.up(o)]=r}),a)}}))}else"number"!==typeof t&&"string"!==typeof t||r(((e,t)=>{Object.assign(e,t)}),t);var o,a};function uO(e){return`--Grid-${e}Spacing`}function dO(e){return`--Grid-parent-${e}Spacing`}const fO="--Grid-columns",pO="--Grid-parent-columns",hO=e=>{let{theme:t,ownerState:r}=e;const n={};return cO(t.breakpoints,r.size,((e,t)=>{let r={};"grow"===t&&(r={flexBasis:0,flexGrow:1,maxWidth:"100%"}),"auto"===t&&(r={flexBasis:"auto",flexGrow:0,flexShrink:0,maxWidth:"none",width:"auto"}),"number"===typeof t&&(r={flexGrow:0,flexBasis:"auto",width:`calc(100% * ${t} / var(${pO}) - (var(${pO}) - ${t}) * (var(${dO("column")}) / var(${pO})))`}),e(n,r)})),n},mO=e=>{let{theme:t,ownerState:r}=e;const n={};return cO(t.breakpoints,r.offset,((e,t)=>{let r={};"auto"===t&&(r={marginLeft:"auto"}),"number"===typeof t&&(r={marginLeft:0===t?"0px":`calc(100% * ${t} / var(${pO}) + var(${dO("column")}) * ${t} / var(${pO}))`}),e(n,r)})),n},gO=e=>{let{theme:t,ownerState:r}=e;if(!r.container)return{};const n={[fO]:12};return cO(t.breakpoints,r.columns,((e,t)=>{const r=t??12;e(n,{[fO]:r,"> *":{[pO]:r}})})),n},vO=e=>{let{theme:t,ownerState:r}=e;if(!r.container)return{};const n={};return cO(t.breakpoints,r.rowSpacing,((e,r)=>{const o="string"===typeof r?r:t.spacing?.(r);e(n,{[uO("row")]:o,"> *":{[dO("row")]:o}})})),n},yO=e=>{let{theme:t,ownerState:r}=e;if(!r.container)return{};const n={};return cO(t.breakpoints,r.columnSpacing,((e,r)=>{const o="string"===typeof r?r:t.spacing?.(r);e(n,{[uO("column")]:o,"> *":{[dO("column")]:o}})})),n},bO=e=>{let{theme:t,ownerState:r}=e;if(!r.container)return{};const n={};return cO(t.breakpoints,r.direction,((e,t)=>{e(n,{flexDirection:t})})),n},wO=e=>{let{ownerState:t}=e;return{minWidth:0,boxSizing:"border-box",...t.container&&{display:"flex",flexWrap:"wrap",...t.wrap&&"wrap"!==t.wrap&&{flexWrap:t.wrap},gap:`var(${uO("row")}) var(${uO("column")})`}}},xO=e=>{const t=[];return Object.entries(e).forEach((e=>{let[r,n]=e;!1!==n&&void 0!==n&&t.push(`grid-${r}-${String(n)}`)})),t},SO=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"xs";function r(e){return void 0!==e&&("string"===typeof e&&!Number.isNaN(Number(e))||"number"===typeof e&&e>0)}if(r(e))return[`spacing-${t}-${String(e)}`];if("object"===typeof e&&!Array.isArray(e)){const t=[];return Object.entries(e).forEach((e=>{let[n,o]=e;r(o)&&t.push(`spacing-${n}-${String(o)}`)})),t}return[]},AO=e=>void 0===e?[]:"object"===typeof e?Object.entries(e).map((e=>{let[t,r]=e;return`direction-${t}-${r}`})):[`direction-xs-${String(e)}`],kO=(0,Xh.A)(),CO=Zh("div",{name:"MuiGrid",slot:"Root",overridesResolver:(e,t)=>t.root});function IO(e){return(0,Qh.A)({props:e,name:"MuiGrid",defaultTheme:kO})}const EO=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{createStyledComponent:r=CO,useThemeProps:n=IO,componentName:o="MuiGrid"}=e;function a(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:()=>!0;const n={};return null===e||(Array.isArray(e)?e.forEach(((e,o)=>{null!==e&&r(e)&&t.keys[o]&&(n[t.keys[o]]=e)})):"object"===typeof e?Object.keys(e).forEach((t=>{const o=e[t];null!==o&&void 0!==o&&r(o)&&(n[t]=o)})):n[t.keys[0]]=e),n}const i=r(gO,yO,vO,hO,bO,wO,mO),s=t.forwardRef((function(e,r){const s=(0,um.A)(),l=n(e),c=(0,Kh.A)(l),{className:u,children:d,columns:f=12,container:p=!1,component:h="div",direction:m="row",wrap:g="wrap",size:v={},offset:y={},spacing:b=0,rowSpacing:w=b,columnSpacing:x=b,unstable_level:S=0,...A}=c,k=a(v,s.breakpoints,(e=>!1!==e)),C=a(y,s.breakpoints),I=e.columns??(S?void 0:f),E=e.spacing??(S?void 0:b),D=e.rowSpacing??e.spacing??(S?void 0:w),T=e.columnSpacing??e.spacing??(S?void 0:x),O={...c,level:S,columns:I,container:p,direction:m,wrap:g,spacing:E,rowSpacing:D,columnSpacing:T,size:k,offset:C},M=((e,t)=>{const{container:r,direction:n,spacing:a,wrap:i,size:s}=e;return Gh({root:["root",r&&"container","wrap"!==i&&`wrap-xs-${String(i)}`,...AO(n),...xO(s),...r?SO(a,t.breakpoints.keys[0]):[]]},(e=>Vh(o,e)),{})})(O,s);return(0,qh.jsx)(i,{ref:r,as:h,ownerState:O,className:(0,Fh.A)(M.root,u),...A,children:t.Children.map(d,(e=>{return t.isValidElement(e)&&(r=e,n=["Grid"],t.isValidElement(r)&&-1!==n.indexOf(r.type.muiName??r.type?._payload?.value?.muiName))&&p&&e.props.container?t.cloneElement(e,{unstable_level:e.props?.unstable_level??S+1}):e;var r,n}))})}));return s.muiName="Grid",s}({createStyledComponent:(0,am.Ay)("div",{name:"MuiGrid2",slot:"Root",overridesResolver:(e,t)=>t.root}),componentName:"MuiGrid2",useThemeProps:e=>(0,im.b)({props:e,name:"MuiGrid2"})});function DO(e){return(0,oy.Ay)("MuiAppBar",e)}(0,mm.A)("MuiAppBar",["root","positionFixed","positionAbsolute","positionSticky","positionStatic","positionRelative","colorDefault","colorPrimary","colorSecondary","colorInherit","colorTransparent","colorError","colorInfo","colorSuccess","colorWarning"]);const TO=(e,t)=>e?`${e?.replace(")","")}, ${t})`:t,OO=(0,am.Ay)(ny.A,{name:"MuiAppBar",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[`position${(0,ey.A)(r.position)}`],t[`color${(0,ey.A)(r.color)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{display:"flex",flexDirection:"column",width:"100%",boxSizing:"border-box",flexShrink:0,variants:[{props:{position:"fixed"},style:{position:"fixed",zIndex:(t.vars||t).zIndex.appBar,top:0,left:"auto",right:0,"@media print":{position:"absolute"}}},{props:{position:"absolute"},style:{position:"absolute",zIndex:(t.vars||t).zIndex.appBar,top:0,left:"auto",right:0}},{props:{position:"sticky"},style:{position:"sticky",zIndex:(t.vars||t).zIndex.appBar,top:0,left:"auto",right:0}},{props:{position:"static"},style:{position:"static"}},{props:{position:"relative"},style:{position:"relative"}},{props:{color:"inherit"},style:{"--AppBar-color":"inherit"}},{props:{color:"default"},style:{"--AppBar-background":t.vars?t.vars.palette.AppBar.defaultBg:t.palette.grey[100],"--AppBar-color":t.vars?t.vars.palette.text.primary:t.palette.getContrastText(t.palette.grey[100]),...t.applyStyles("dark",{"--AppBar-background":t.vars?t.vars.palette.AppBar.defaultBg:t.palette.grey[900],"--AppBar-color":t.vars?t.vars.palette.text.primary:t.palette.getContrastText(t.palette.grey[900])})}},...Object.entries(t.palette).filter((0,pE.A)(["contrastText"])).map((e=>{let[r]=e;return{props:{color:r},style:{"--AppBar-background":(t.vars??t).palette[r].main,"--AppBar-color":(t.vars??t).palette[r].contrastText}}})),{props:e=>!0===e.enableColorOnDark&&!["inherit","transparent"].includes(e.color),style:{backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)"}},{props:e=>!1===e.enableColorOnDark&&!["inherit","transparent"].includes(e.color),style:{backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)",...t.applyStyles("dark",{backgroundColor:t.vars?TO(t.vars.palette.AppBar.darkBg,"var(--AppBar-background)"):null,color:t.vars?TO(t.vars.palette.AppBar.darkColor,"var(--AppBar-color)"):null})}},{props:{color:"transparent"},style:{"--AppBar-background":"transparent","--AppBar-color":"inherit",backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)",...t.applyStyles("dark",{backgroundImage:"none"})}}]}}))),MO=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiAppBar"}),{className:n,color:o="primary",enableColorOnDark:a=!1,position:i="fixed",...s}=r,l={...r,color:o,position:i,enableColorOnDark:a},c=(e=>{const{color:t,position:r,classes:n}=e,o={root:["root",`color${(0,ey.A)(t)}`,`position${(0,ey.A)(r)}`]};return(0,zv.A)(o,DO,n)})(l);return(0,qh.jsx)(OO,{square:!0,component:"header",ownerState:l,elevation:4,className:(0,Fh.A)(c.root,n,"fixed"===i&&"mui-fixed"),ref:t,...s})}));var PO=r(34977),jO=r(97591),RO=r(27987),_O=r(44730),NO=r(32448),LO=r(21209),UO=r(70576),BO=r(70827);function FO(e,t,r){var n;const o=function(e,t,r){const n=t.getBoundingClientRect(),o=r&&r.getBoundingClientRect(),a=(0,BO.A)(t);let i;if(t.fakeTransform)i=t.fakeTransform;else{const e=a.getComputedStyle(t);i=e.getPropertyValue("-webkit-transform")||e.getPropertyValue("transform")}let s=0,l=0;if(i&&"none"!==i&&"string"===typeof i){const e=i.split("(")[1].split(")")[0].split(",");s=parseInt(e[4],10),l=parseInt(e[5],10)}return"left"===e?o?`translateX(${o.right+s-n.left}px)`:`translateX(${a.innerWidth+s-n.left}px)`:"right"===e?o?`translateX(-${n.right-o.left-s}px)`:`translateX(-${n.left+n.width-s}px)`:"up"===e?o?`translateY(${o.bottom+l-n.top}px)`:`translateY(${a.innerHeight+l-n.top}px)`:o?`translateY(-${n.top-o.top+n.height-l}px)`:`translateY(-${n.top+n.height-l}px)`}(e,t,"function"===typeof(n=r)?n():n);o&&(t.style.webkitTransform=o,t.style.transform=o)}const zO=t.forwardRef((function(e,r){const n=(0,$v.A)(),o={enter:n.transitions.easing.easeOut,exit:n.transitions.easing.sharp},a={enter:n.transitions.duration.enteringScreen,exit:n.transitions.duration.leavingScreen},{addEndListener:i,appear:s=!0,children:l,container:c,direction:u="down",easing:d=o,in:f,onEnter:p,onEntered:h,onEntering:m,onExit:g,onExited:v,onExiting:y,style:b,timeout:w=a,TransitionComponent:x=NO.Ay,...S}=e,A=t.useRef(null),k=(0,eD.A)((0,Kv.A)(l),A,r),C=e=>t=>{e&&(void 0===t?e(A.current):e(A.current,t))},I=C(((e,t)=>{FO(u,e,c),(0,UO.q)(e),p&&p(e,t)})),E=C(((e,t)=>{const r=(0,UO.c)({timeout:w,style:b,easing:d},{mode:"enter"});e.style.webkitTransition=n.transitions.create("-webkit-transform",{...r}),e.style.transition=n.transitions.create("transform",{...r}),e.style.webkitTransform="none",e.style.transform="none",m&&m(e,t)})),D=C(h),T=C(y),O=C((e=>{const t=(0,UO.c)({timeout:w,style:b,easing:d},{mode:"exit"});e.style.webkitTransition=n.transitions.create("-webkit-transform",t),e.style.transition=n.transitions.create("transform",t),FO(u,e,c),g&&g(e)})),M=C((e=>{e.style.webkitTransition="",e.style.transition="",v&&v(e)})),P=t.useCallback((()=>{A.current&&FO(u,A.current,c)}),[u,c]);return t.useEffect((()=>{if(f||"down"===u||"right"===u)return;const e=(0,LO.A)((()=>{A.current&&FO(u,A.current,c)})),t=(0,BO.A)(A.current);return t.addEventListener("resize",e),()=>{e.clear(),t.removeEventListener("resize",e)}}),[u,f,c]),t.useEffect((()=>{f||P()}),[f,P]),(0,qh.jsx)(x,{nodeRef:A,onEnter:I,onEntered:D,onEntering:E,onExit:O,onExited:M,onExiting:T,addEndListener:e=>{i&&i(A.current,e)},appear:s,in:f,timeout:w,...S,children:(e,r)=>t.cloneElement(l,{ref:k,style:{visibility:"exited"!==e||f?void 0:"hidden",...b,...l.props.style},...r})})}));function WO(e){return(0,oy.Ay)("MuiDrawer",e)}(0,mm.A)("MuiDrawer",["root","docked","paper","paperAnchorLeft","paperAnchorRight","paperAnchorTop","paperAnchorBottom","paperAnchorDockedLeft","paperAnchorDockedRight","paperAnchorDockedTop","paperAnchorDockedBottom","modal"]);const HO=(e,t)=>{const{ownerState:r}=e;return[t.root,("permanent"===r.variant||"persistent"===r.variant)&&t.docked,t.modal]},YO=(0,am.Ay)(hy.A,{name:"MuiDrawer",slot:"Root",overridesResolver:HO})((0,qv.A)((e=>{let{theme:t}=e;return{zIndex:(t.vars||t).zIndex.drawer}}))),VO=(0,am.Ay)("div",{shouldForwardProp:JE.A,name:"MuiDrawer",slot:"Docked",skipVariantsResolver:!1,overridesResolver:HO})({flex:"0 0 auto"}),GO=(0,am.Ay)(ny.A,{name:"MuiDrawer",slot:"Paper",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.paper,t[`paperAnchor${(0,ey.A)(r.anchor)}`],"temporary"!==r.variant&&t[`paperAnchorDocked${(0,ey.A)(r.anchor)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{overflowY:"auto",display:"flex",flexDirection:"column",height:"100%",flex:"1 0 auto",zIndex:(t.vars||t).zIndex.drawer,WebkitOverflowScrolling:"touch",position:"fixed",top:0,outline:0,variants:[{props:{anchor:"left"},style:{left:0}},{props:{anchor:"top"},style:{top:0,left:0,right:0,height:"auto",maxHeight:"100%"}},{props:{anchor:"right"},style:{right:0}},{props:{anchor:"bottom"},style:{top:"auto",left:0,bottom:0,right:0,height:"auto",maxHeight:"100%"}},{props:e=>{let{ownerState:t}=e;return"left"===t.anchor&&"temporary"!==t.variant},style:{borderRight:`1px solid ${(t.vars||t).palette.divider}`}},{props:e=>{let{ownerState:t}=e;return"top"===t.anchor&&"temporary"!==t.variant},style:{borderBottom:`1px solid ${(t.vars||t).palette.divider}`}},{props:e=>{let{ownerState:t}=e;return"right"===t.anchor&&"temporary"!==t.variant},style:{borderLeft:`1px solid ${(t.vars||t).palette.divider}`}},{props:e=>{let{ownerState:t}=e;return"bottom"===t.anchor&&"temporary"!==t.variant},style:{borderTop:`1px solid ${(t.vars||t).palette.divider}`}}]}}))),ZO={left:"right",right:"left",top:"down",bottom:"up"};const QO=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiDrawer"}),o=(0,$v.A)(),a=(0,_O.I)(),i={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},{anchor:s="left",BackdropProps:l,children:c,className:u,elevation:d=16,hideBackdrop:f=!1,ModalProps:{BackdropProps:p,...h}={},onClose:m,open:g=!1,PaperProps:v={},SlideProps:y,TransitionComponent:b=zO,transitionDuration:w=i,variant:x="temporary",...S}=n,A=t.useRef(!1);t.useEffect((()=>{A.current=!0}),[]);const k=function(e,t){let{direction:r}=e;return"rtl"===r&&function(e){return["left","right"].includes(e)}(t)?ZO[t]:t}({direction:a?"rtl":"ltr"},s),C=s,I={...n,anchor:C,elevation:d,open:g,variant:x,...S},E=(e=>{const{classes:t,anchor:r,variant:n}=e,o={root:["root"],docked:[("permanent"===n||"persistent"===n)&&"docked"],modal:["modal"],paper:["paper",`paperAnchor${(0,ey.A)(r)}`,"temporary"!==n&&`paperAnchorDocked${(0,ey.A)(r)}`]};return(0,zv.A)(o,WO,t)})(I),D=(0,qh.jsx)(GO,{elevation:"temporary"===x?d:0,square:!0,...v,className:(0,Fh.A)(E.paper,v.className),ownerState:I,children:c});if("permanent"===x)return(0,qh.jsx)(VO,{className:(0,Fh.A)(E.root,E.docked,u),ownerState:I,ref:r,...S,children:D});const T=(0,qh.jsx)(b,{in:g,direction:ZO[k],timeout:w,appear:A.current,...y,children:D});return"persistent"===x?(0,qh.jsx)(VO,{className:(0,Fh.A)(E.root,E.docked,u),ownerState:I,ref:r,...S,children:T}):(0,qh.jsx)(YO,{BackdropProps:{...l,...p,transitionDuration:w},className:(0,Fh.A)(E.root,E.modal,u),open:g,ownerState:I,onClose:m,hideBackdrop:f,ref:r,...S,...h,children:T})}));var KO=r(95014),XO=r(57191);function JO(e){return(0,oy.Ay)("MuiDialog",e)}const $O=(0,mm.A)("MuiDialog",["root","scrollPaper","scrollBody","container","paper","paperScrollPaper","paperScrollBody","paperWidthFalse","paperWidthXs","paperWidthSm","paperWidthMd","paperWidthLg","paperWidthXl","paperFullWidth","paperFullScreen"]);const qO=t.createContext({});var eM=r(55158);const tM=(0,am.Ay)(eM.A,{name:"MuiDialog",slot:"Backdrop",overrides:(e,t)=>t.backdrop})({zIndex:-1}),rM=(0,am.Ay)(hy.A,{name:"MuiDialog",slot:"Root",overridesResolver:(e,t)=>t.root})({"@media print":{position:"absolute !important"}}),nM=(0,am.Ay)("div",{name:"MuiDialog",slot:"Container",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.container,t[`scroll${(0,ey.A)(r.scroll)}`]]}})({height:"100%","@media print":{height:"auto"},outline:0,variants:[{props:{scroll:"paper"},style:{display:"flex",justifyContent:"center",alignItems:"center"}},{props:{scroll:"body"},style:{overflowY:"auto",overflowX:"hidden",textAlign:"center","&::after":{content:'""',display:"inline-block",verticalAlign:"middle",height:"100%",width:"0"}}}]}),oM=(0,am.Ay)(ny.A,{name:"MuiDialog",slot:"Paper",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.paper,t[`scrollPaper${(0,ey.A)(r.scroll)}`],t[`paperWidth${(0,ey.A)(String(r.maxWidth))}`],r.fullWidth&&t.paperFullWidth,r.fullScreen&&t.paperFullScreen]}})((0,qv.A)((e=>{let{theme:t}=e;return{margin:32,position:"relative",overflowY:"auto","@media print":{overflowY:"visible",boxShadow:"none"},variants:[{props:{scroll:"paper"},style:{display:"flex",flexDirection:"column",maxHeight:"calc(100% - 64px)"}},{props:{scroll:"body"},style:{display:"inline-block",verticalAlign:"middle",textAlign:"initial"}},{props:e=>{let{ownerState:t}=e;return!t.maxWidth},style:{maxWidth:"calc(100% - 64px)"}},{props:{maxWidth:"xs"},style:{maxWidth:"px"===t.breakpoints.unit?Math.max(t.breakpoints.values.xs,444):`max(${t.breakpoints.values.xs}${t.breakpoints.unit}, 444px)`,[`&.${$O.paperScrollBody}`]:{[t.breakpoints.down(Math.max(t.breakpoints.values.xs,444)+64)]:{maxWidth:"calc(100% - 64px)"}}}},...Object.keys(t.breakpoints.values).filter((e=>"xs"!==e)).map((e=>({props:{maxWidth:e},style:{maxWidth:`${t.breakpoints.values[e]}${t.breakpoints.unit}`,[`&.${$O.paperScrollBody}`]:{[t.breakpoints.down(t.breakpoints.values[e]+64)]:{maxWidth:"calc(100% - 64px)"}}}}))),{props:e=>{let{ownerState:t}=e;return t.fullWidth},style:{width:"calc(100% - 64px)"}},{props:e=>{let{ownerState:t}=e;return t.fullScreen},style:{margin:0,width:"100%",maxWidth:"100%",height:"100%",maxHeight:"none",borderRadius:0,[`&.${$O.paperScrollBody}`]:{margin:0,maxWidth:"100%"}}}]}}))),aM=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiDialog"}),o=(0,$v.A)(),a={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},{"aria-describedby":i,"aria-labelledby":s,"aria-modal":l=!0,BackdropComponent:c,BackdropProps:u,children:d,className:f,disableEscapeKeyDown:p=!1,fullScreen:h=!1,fullWidth:m=!1,maxWidth:g="sm",onBackdropClick:v,onClick:y,onClose:b,open:w,PaperComponent:x=ny.A,PaperProps:S={},scroll:A="paper",TransitionComponent:k=XO.A,transitionDuration:C=a,TransitionProps:I,...E}=n,D={...n,disableEscapeKeyDown:p,fullScreen:h,fullWidth:m,maxWidth:g,scroll:A},T=(e=>{const{classes:t,scroll:r,maxWidth:n,fullWidth:o,fullScreen:a}=e,i={root:["root"],container:["container",`scroll${(0,ey.A)(r)}`],paper:["paper",`paperScroll${(0,ey.A)(r)}`,`paperWidth${(0,ey.A)(String(n))}`,o&&"paperFullWidth",a&&"paperFullScreen"]};return(0,zv.A)(i,JO,t)})(D),O=t.useRef(),M=(0,KO.A)(s),P=t.useMemo((()=>({titleId:M})),[M]);return(0,qh.jsx)(rM,{className:(0,Fh.A)(T.root,f),closeAfterTransition:!0,components:{Backdrop:tM},componentsProps:{backdrop:{transitionDuration:C,as:c,...u}},disableEscapeKeyDown:p,onClose:b,open:w,ref:r,onClick:e=>{y&&y(e),O.current&&(O.current=null,v&&v(e),b&&b(e,"backdropClick"))},ownerState:D,...E,children:(0,qh.jsx)(k,{appear:!0,in:w,timeout:C,role:"presentation",...I,children:(0,qh.jsx)(nM,{className:(0,Fh.A)(T.container),onMouseDown:e=>{O.current=e.target===e.currentTarget},ownerState:D,children:(0,qh.jsx)(oM,{as:x,elevation:24,role:"dialog","aria-describedby":i,"aria-labelledby":M,"aria-modal":l,...S,className:(0,Fh.A)(T.paper,S.className),ownerState:D,children:(0,qh.jsx)(qO.Provider,{value:P,children:d})})})})})}));function iM(e){return(0,oy.Ay)("MuiDialogContent",e)}(0,mm.A)("MuiDialogContent",["root","dividers"]);function sM(e){return(0,oy.Ay)("MuiDialogTitle",e)}const lM=(0,mm.A)("MuiDialogTitle",["root"]),cM=(0,am.Ay)("div",{name:"MuiDialogContent",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.dividers&&t.dividers]}})((0,qv.A)((e=>{let{theme:t}=e;return{flex:"1 1 auto",WebkitOverflowScrolling:"touch",overflowY:"auto",padding:"20px 24px",variants:[{props:e=>{let{ownerState:t}=e;return t.dividers},style:{padding:"16px 24px",borderTop:`1px solid ${(t.vars||t).palette.divider}`,borderBottom:`1px solid ${(t.vars||t).palette.divider}`}},{props:e=>{let{ownerState:t}=e;return!t.dividers},style:{[`.${lM.root} + &`]:{paddingTop:0}}}]}}))),uM=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiDialogContent"}),{className:n,dividers:o=!1,...a}=r,i={...r,dividers:o},s=(e=>{const{classes:t,dividers:r}=e,n={root:["root",r&&"dividers"]};return(0,zv.A)(n,iM,t)})(i);return(0,qh.jsx)(cM,{className:(0,Fh.A)(s.root,n),ownerState:i,ref:t,...a})}));var dM=r(40777);const fM=(0,am.Ay)("div",{name:"MuiDivider",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.absolute&&t.absolute,t[r.variant],r.light&&t.light,"vertical"===r.orientation&&t.vertical,r.flexItem&&t.flexItem,r.children&&t.withChildren,r.children&&"vertical"===r.orientation&&t.withChildrenVertical,"right"===r.textAlign&&"vertical"!==r.orientation&&t.textAlignRight,"left"===r.textAlign&&"vertical"!==r.orientation&&t.textAlignLeft]}})((0,qv.A)((e=>{let{theme:t}=e;return{margin:0,flexShrink:0,borderWidth:0,borderStyle:"solid",borderColor:(t.vars||t).palette.divider,borderBottomWidth:"thin",variants:[{props:{absolute:!0},style:{position:"absolute",bottom:0,left:0,width:"100%"}},{props:{light:!0},style:{borderColor:t.vars?`rgba(${t.vars.palette.dividerChannel} / 0.08)`:(0,ry.X4)(t.palette.divider,.08)}},{props:{variant:"inset"},style:{marginLeft:72}},{props:{variant:"middle",orientation:"horizontal"},style:{marginLeft:t.spacing(2),marginRight:t.spacing(2)}},{props:{variant:"middle",orientation:"vertical"},style:{marginTop:t.spacing(1),marginBottom:t.spacing(1)}},{props:{orientation:"vertical"},style:{height:"100%",borderBottomWidth:0,borderRightWidth:"thin"}},{props:{flexItem:!0},style:{alignSelf:"stretch",height:"auto"}},{props:e=>{let{ownerState:t}=e;return!!t.children},style:{display:"flex",textAlign:"center",border:0,borderTopStyle:"solid",borderLeftStyle:"solid","&::before, &::after":{content:'""',alignSelf:"center"}}},{props:e=>{let{ownerState:t}=e;return t.children&&"vertical"!==t.orientation},style:{"&::before, &::after":{width:"100%",borderTop:`thin solid ${(t.vars||t).palette.divider}`,borderTopStyle:"inherit"}}},{props:e=>{let{ownerState:t}=e;return"vertical"===t.orientation&&t.children},style:{flexDirection:"column","&::before, &::after":{height:"100%",borderLeft:`thin solid ${(t.vars||t).palette.divider}`,borderLeftStyle:"inherit"}}},{props:e=>{let{ownerState:t}=e;return"right"===t.textAlign&&"vertical"!==t.orientation},style:{"&::before":{width:"90%"},"&::after":{width:"10%"}}},{props:e=>{let{ownerState:t}=e;return"left"===t.textAlign&&"vertical"!==t.orientation},style:{"&::before":{width:"10%"},"&::after":{width:"90%"}}}]}}))),pM=(0,am.Ay)("span",{name:"MuiDivider",slot:"Wrapper",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.wrapper,"vertical"===r.orientation&&t.wrapperVertical]}})((0,qv.A)((e=>{let{theme:t}=e;return{display:"inline-block",paddingLeft:`calc(${t.spacing(1)} * 1.2)`,paddingRight:`calc(${t.spacing(1)} * 1.2)`,whiteSpace:"nowrap",variants:[{props:{orientation:"vertical"},style:{paddingTop:`calc(${t.spacing(1)} * 1.2)`,paddingBottom:`calc(${t.spacing(1)} * 1.2)`}}]}}))),hM=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiDivider"}),{absolute:n=!1,children:o,className:a,orientation:i="horizontal",component:s=(o||"vertical"===i?"div":"hr"),flexItem:l=!1,light:c=!1,role:u=("hr"!==s?"separator":void 0),textAlign:d="center",variant:f="fullWidth",...p}=r,h={...r,absolute:n,component:s,flexItem:l,light:c,orientation:i,role:u,textAlign:d,variant:f},m=(e=>{const{absolute:t,children:r,classes:n,flexItem:o,light:a,orientation:i,textAlign:s,variant:l}=e,c={root:["root",t&&"absolute",l,a&&"light","vertical"===i&&"vertical",o&&"flexItem",r&&"withChildren",r&&"vertical"===i&&"withChildrenVertical","right"===s&&"vertical"!==i&&"textAlignRight","left"===s&&"vertical"!==i&&"textAlignLeft"],wrapper:["wrapper","vertical"===i&&"wrapperVertical"]};return(0,zv.A)(c,dM.K,n)})(h);return(0,qh.jsx)(fM,{as:s,className:(0,Fh.A)(m.root,a),role:u,ref:t,ownerState:h,"aria-orientation":"separator"!==u||"hr"===s&&"vertical"!==i?void 0:i,...p,children:o?(0,qh.jsx)(pM,{className:m.wrapper,ownerState:h,children:o}):null})}));hM&&(hM.muiSkipListHighlight=!0);const mM=hM;var gM=r(97161);function vM(e){return(0,oy.Ay)("MuiSkeleton",e)}(0,mm.A)("MuiSkeleton",["root","text","rectangular","rounded","circular","pulse","wave","withChildren","fitContent","heightAuto"]);const yM=fE.keyframes`
+  0% {
+    opacity: 1;
+  }
+
+  50% {
+    opacity: 0.4;
+  }
+
+  100% {
+    opacity: 1;
+  }
+`,bM=fE.keyframes`
+  0% {
+    transform: translateX(-100%);
+  }
+
+  50% {
+    /* +0.5s of delay between each loop */
+    transform: translateX(100%);
+  }
+
+  100% {
+    transform: translateX(100%);
+  }
+`,wM="string"!==typeof yM?fE.css`
+        animation: ${yM} 2s ease-in-out 0.5s infinite;
+      `:null,xM="string"!==typeof bM?fE.css`
+        &::after {
+          animation: ${bM} 2s linear 0.5s infinite;
+        }
+      `:null,SM=(0,am.Ay)("span",{name:"MuiSkeleton",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.variant],!1!==r.animation&&t[r.animation],r.hasChildren&&t.withChildren,r.hasChildren&&!r.width&&t.fitContent,r.hasChildren&&!r.height&&t.heightAuto]}})((0,qv.A)((e=>{let{theme:t}=e;const r=(0,gM.l_)(t.shape.borderRadius)||"px",n=(0,gM.db)(t.shape.borderRadius);return{display:"block",backgroundColor:t.vars?t.vars.palette.Skeleton.bg:(0,ry.X4)(t.palette.text.primary,"light"===t.palette.mode?.11:.13),height:"1.2em",variants:[{props:{variant:"text"},style:{marginTop:0,marginBottom:0,height:"auto",transformOrigin:"0 55%",transform:"scale(1, 0.60)",borderRadius:`${n}${r}/${Math.round(n/.6*10)/10}${r}`,"&:empty:before":{content:'"\\00a0"'}}},{props:{variant:"circular"},style:{borderRadius:"50%"}},{props:{variant:"rounded"},style:{borderRadius:(t.vars||t).shape.borderRadius}},{props:e=>{let{ownerState:t}=e;return t.hasChildren},style:{"& > *":{visibility:"hidden"}}},{props:e=>{let{ownerState:t}=e;return t.hasChildren&&!t.width},style:{maxWidth:"fit-content"}},{props:e=>{let{ownerState:t}=e;return t.hasChildren&&!t.height},style:{height:"auto"}},{props:{animation:"pulse"},style:wM||{animation:`${yM} 2s ease-in-out 0.5s infinite`}},{props:{animation:"wave"},style:{position:"relative",overflow:"hidden",WebkitMaskImage:"-webkit-radial-gradient(white, black)","&::after":{background:`linear-gradient(\n                90deg,\n                transparent,\n                ${(t.vars||t).palette.action.hover},\n                transparent\n              )`,content:'""',position:"absolute",transform:"translateX(-100%)",bottom:0,left:0,right:0,top:0}}},{props:{animation:"wave"},style:xM||{"&::after":{animation:`${bM} 2s linear 0.5s infinite`}}}]}}))),AM=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiSkeleton"}),{animation:n="pulse",className:o,component:a="span",height:i,style:s,variant:l="text",width:c,...u}=r,d={...r,animation:n,component:a,variant:l,hasChildren:Boolean(u.children)},f=(e=>{const{classes:t,variant:r,animation:n,hasChildren:o,width:a,height:i}=e,s={root:["root",r,n,o&&"withChildren",o&&!a&&"fitContent",o&&!i&&"heightAuto"]};return(0,zv.A)(s,vM,t)})(d);return(0,qh.jsx)(SM,{as:a,ref:t,className:(0,Fh.A)(f.root,o),ownerState:d,...u,style:{width:c,height:i,...s}})}));var kM=r(397),CM=r(24965),IM=r(10371),EM=r(68605),DM=r(22057);const TM=e=>{let{location:r}=e;const[n,o]=(0,t.useState)(null);return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)(ym,{sx:{height:"48px",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer"},"aria-controls":Boolean(n)?"basic-menu":void 0,"aria-expanded":Boolean(n)?"true":void 0,component:vv,style:{textDecoration:"none",color:"inherit"},onClick:e=>{o(e.currentTarget),window.open(YD.url,"_blank")},children:(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",overflow:"hidden",borderRadius:"50%",mr:"8px"},children:(0,qh.jsx)("img",{src:GT,width:30,height:30,alt:"icon"})})})})},OM=(0,t.memo)(TM),MM=e=>{let{left:t=!0,right:r=!0}=e;const n=(0,$v.A)(),o=ky(n.breakpoints.down("sm")),[a]=xv(),i="app"===a.get("fromType");return"widget"===a.get("displayType")?(0,qh.jsx)(qh.Fragment,{}):(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",minHeight:"100%"},children:[(0,qh.jsx)(MO,{position:"static",sx:{bgcolor:"#F1F1F1",boxShadow:"none",display:i?"none":"block"},children:(0,qh.jsxs)(PO.A,{sx:{width:"100%",justifyContent:"space-between",height:"60px",minHeight:"unset",pt:"",pl:"17px !important",pr:"19px !important"},children:[(0,qh.jsx)(ym,{sx:{display:"inline-flex"},children:(0,qh.jsx)(OM,{})}),(0,qh.jsx)(ym,{})]})}),(0,qh.jsxs)(ym,{sx:{display:"flex",flexGrow:1},children:[!0===t&&(0,qh.jsxs)(ym,{sx:{width:180,padding:2,display:o||i?"none":"flex",flexDirection:"column",justifyContent:"space-between"},children:[(0,qh.jsx)(ym,{children:[...Array(5)].map(((e,t)=>(0,qh.jsx)(ym,{sx:{mb:2},children:(0,qh.jsx)(AM,{variant:"text",width:"100%",height:30})},t)))}),(0,qh.jsx)(ym,{children:[...Array(3)].map(((e,t)=>(0,qh.jsx)(ym,{sx:{mb:2},children:(0,qh.jsx)(AM,{variant:"text",width:"100%",height:30})},t)))})]}),!0===r&&(0,qh.jsxs)(ym,{sx:{flexGrow:1,padding:o?2:3},children:[(0,qh.jsxs)(ym,{sx:{mb:3,px:1.5},children:[(0,qh.jsx)(AM,{variant:"rounded",width:o?"100%":200,height:o?10:30,sx:{mb:2}}),!o&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",mb:2},children:(0,qh.jsx)(AM,{variant:"text",width:100,height:20,sx:{mr:2}})})]}),o||i?(0,qh.jsx)(ym,{children:[...Array(9)].map(((e,t)=>(0,qh.jsxs)(ym,{sx:{mb:1.5,p:1.5,bgcolor:"white",borderRadius:"4px"},children:[(0,qh.jsx)(AM,{variant:"text",width:"70%",height:16,sx:{mb:1}}),(0,qh.jsx)(AM,{variant:"text",width:"90%",height:16,sx:{mb:1}}),(0,qh.jsx)(AM,{variant:"text",width:"40%",height:16})]},t)))}):(0,qh.jsxs)(kM.A,{sx:{"& .MuiTableCell-root":{border:"none",backgroundColor:"white",paddingLeft:2}},children:[(0,qh.jsx)(CM.A,{children:(0,qh.jsxs)(IM.A,{children:[(0,qh.jsx)(EM.A,{padding:"checkbox",children:(0,qh.jsx)(AM,{variant:"text",width:20,height:20})}),[...Array(5)].map(((e,t)=>(0,qh.jsx)(EM.A,{children:(0,qh.jsx)(AM,{variant:"text",width:1===t?150:100})},t)))]})}),(0,qh.jsx)(DM.A,{children:[...Array(5)].map(((e,t)=>(0,qh.jsxs)(IM.A,{children:[(0,qh.jsx)(EM.A,{padding:"checkbox",children:(0,qh.jsx)(AM,{variant:"text",width:20,height:20})}),[...Array(5)].map(((e,t)=>(0,qh.jsx)(EM.A,{children:(0,qh.jsx)(AM,{variant:"text",width:1===t?150:100})},t)))]},t)))})]})]})]})]})};const PM=function(e){let{children:r}=e;const[n,o]=(0,t.useState)(!0),{gAuth:a,gStripe:i}=(0,t.useContext)(VI),[s]=xv(),c=dg(),u=(0,t.useRef)(!1),d=(0,t.useRef)(!1);if((0,t.useEffect)((()=>{try{if(Fk)return;let e=localStorage.getItem("curLogin"),t=!1;a.loginState===l.loginState.loginOut&&e&&(t=!0),t&&!u.current&&(i.getCustomerInfo(e),a.setLoginState(l.loginState.login),u.current=!0)}catch(e){console.error("Failed to initialize auth or fetch user info:",e)}finally{o(!1)}}),[a.loginState]),(0,t.useEffect)((()=>{const e=s.get("spaceID"),t=s.get("token"),r=localStorage.getItem("curLogin"),n=i.isFromApp;if(!e||!t||a.loginState!==l.loginState.loginOut)return;(n?!d.current:!r)&&(n&&(d.current=!0),localStorage.setItem("curLogin",e),a.autoLogin(t),i.getCustomerInfo(e))}),[s,a.loginState,i.isFromApp]),n)return(0,qh.jsx)(MM,{});if(a.loginState===l.loginState.login||a.loginState===l.loginState.configured)return r;if("tokenRefresh"===a.loginState)return(0,qh.jsx)(MM,{});{const e=s.get("spaceID"),t=s.get("token");if(e&&t)return(0,qh.jsx)(MM,{});{let e=`/login?redirect=${encodeURIComponent(c.pathname+c.search)}`;return a.isClearData&&(e="/login"),(0,qh.jsx)(Og,{to:e,replace:!0})}}};let jM=null;const RM=()=>{const[e,r]=(0,t.useState)(jM||{buildTime:"--",gitHash:"--"});return(0,t.useEffect)((()=>{let e=!1;if(!jM)return fetch("/version.json",{cache:"no-store"}).then((e=>e.ok?e.json():null)).then((t=>{if(e||!t)return;const n={buildTime:t.buildTime||"--",gitHash:t.gitHash||"--"};r(n),jM=n})).catch((()=>{})),()=>{e=!0};r(jM)}),[]),(0,qh.jsx)(ym,{sx:{flex:"none",px:2,py:1.5,bgcolor:"transparent",border:"none",borderRadius:0},children:(0,qh.jsx)(sm,{direction:"row",spacing:1.5,alignItems:"center",children:(0,qh.jsx)(ym,{sx:{minWidth:0},children:(0,qh.jsxs)(Bh.A,{sx:{fontSize:"clamp(0.7rem, 1.2vw, 0.75rem)",color:"rgba(0,0,0,0.25)",whiteSpace:"nowrap"},children:[e.buildTime," ",e.gitHash]})})})})},_M=(0,t.memo)(RM);var NM=r(75361);function LM(e){return(0,oy.Ay)("MuiCollapse",e)}(0,mm.A)("MuiCollapse",["root","horizontal","vertical","entered","hidden","wrapper","wrapperInner"]);const UM=(0,am.Ay)("div",{name:"MuiCollapse",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.orientation],"entered"===r.state&&t.entered,"exited"===r.state&&!r.in&&"0px"===r.collapsedSize&&t.hidden]}})((0,qv.A)((e=>{let{theme:t}=e;return{height:0,overflow:"hidden",transition:t.transitions.create("height"),variants:[{props:{orientation:"horizontal"},style:{height:"auto",width:0,transition:t.transitions.create("width")}},{props:{state:"entered"},style:{height:"auto",overflow:"visible"}},{props:{state:"entered",orientation:"horizontal"},style:{width:"auto"}},{props:e=>{let{ownerState:t}=e;return"exited"===t.state&&!t.in&&"0px"===t.collapsedSize},style:{visibility:"hidden"}}]}}))),BM=(0,am.Ay)("div",{name:"MuiCollapse",slot:"Wrapper",overridesResolver:(e,t)=>t.wrapper})({display:"flex",width:"100%",variants:[{props:{orientation:"horizontal"},style:{width:"auto",height:"100%"}}]}),FM=(0,am.Ay)("div",{name:"MuiCollapse",slot:"WrapperInner",overridesResolver:(e,t)=>t.wrapperInner})({width:"100%",variants:[{props:{orientation:"horizontal"},style:{width:"auto",height:"100%"}}]}),zM=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiCollapse"}),{addEndListener:o,children:a,className:i,collapsedSize:s="0px",component:l,easing:c,in:u,onEnter:d,onEntered:f,onEntering:p,onExit:h,onExited:m,onExiting:g,orientation:v="vertical",style:y,timeout:b=NM.p0.standard,TransitionComponent:w=NO.Ay,...x}=n,S={...n,orientation:v,collapsedSize:s},A=(e=>{const{orientation:t,classes:r}=e,n={root:["root",`${t}`],entered:["entered"],hidden:["hidden"],wrapper:["wrapper",`${t}`],wrapperInner:["wrapperInner",`${t}`]};return(0,zv.A)(n,LM,r)})(S),k=(0,$v.A)(),C=(0,Hv.A)(),I=t.useRef(null),E=t.useRef(),D="number"===typeof s?`${s}px`:s,T="horizontal"===v,O=T?"width":"height",M=t.useRef(null),P=(0,eD.A)(r,M),j=e=>t=>{if(e){const r=M.current;void 0===t?e(r):e(r,t)}},R=()=>I.current?I.current[T?"clientWidth":"clientHeight"]:0,_=j(((e,t)=>{I.current&&T&&(I.current.style.position="absolute"),e.style[O]=D,d&&d(e,t)})),N=j(((e,t)=>{const r=R();I.current&&T&&(I.current.style.position="");const{duration:n,easing:o}=(0,UO.c)({style:y,timeout:b,easing:c},{mode:"enter"});if("auto"===b){const t=k.transitions.getAutoHeightDuration(r);e.style.transitionDuration=`${t}ms`,E.current=t}else e.style.transitionDuration="string"===typeof n?n:`${n}ms`;e.style[O]=`${r}px`,e.style.transitionTimingFunction=o,p&&p(e,t)})),L=j(((e,t)=>{e.style[O]="auto",f&&f(e,t)})),U=j((e=>{e.style[O]=`${R()}px`,h&&h(e)})),B=j(m),F=j((e=>{const t=R(),{duration:r,easing:n}=(0,UO.c)({style:y,timeout:b,easing:c},{mode:"exit"});if("auto"===b){const r=k.transitions.getAutoHeightDuration(t);e.style.transitionDuration=`${r}ms`,E.current=r}else e.style.transitionDuration="string"===typeof r?r:`${r}ms`;e.style[O]=D,e.style.transitionTimingFunction=n,g&&g(e)}));return(0,qh.jsx)(w,{in:u,onEnter:_,onEntered:L,onEntering:N,onExit:U,onExited:B,onExiting:F,addEndListener:e=>{"auto"===b&&C.start(E.current||0,e),o&&o(M.current,e)},nodeRef:M,timeout:"auto"===b?null:b,...x,children:(e,t)=>(0,qh.jsx)(UM,{as:l,className:(0,Fh.A)(A.root,i,{entered:A.entered,exited:!u&&"0px"===D&&A.hidden}[e]),style:{[T?"minWidth":"minHeight"]:D,...y},ref:P,...t,ownerState:{...S,state:e},children:(0,qh.jsx)(BM,{ownerState:{...S,state:e},className:A.wrapper,ref:I,children:(0,qh.jsx)(FM,{ownerState:{...S,state:e},className:A.wrapperInner,children:a})})})})}));zM&&(zM.muiSupportAuto=!0);const WM=zM,HM=(0,dD.A)((0,qh.jsx)("path",{d:"M7.41 15.41 12 10.83l4.59 4.58L18 14l-6-6-6 6z"}),"KeyboardArrowUp"),YM=(e,t)=>({borderRadius:"6px",backgroundColor:e===t?"#F8F8F8":"transparent","&:hover":{backgroundColor:"#F8F8F8"}}),VM=()=>({borderRadius:"6px",backgroundColor:"#fff","&:hover":{backgroundColor:"#F8F8F8"}}),GM=e=>{let{to:r,name:n,icon:o,location:a,external:i=!1,onClick:s}=e;const[l,c]=(0,t.useState)(""),u=HT[o];(0,t.useEffect)((()=>{if(a){const e="/"===a.pathname?"/":a.pathname.split("/")[2];c(e)}}),[a]);const d=l===("/"===r?"/":r.split("/")[2]);return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)(aD,{onClick:s,component:i?"a":vv,to:r,target:i?"_blank":void 0,sx:i?VM:YM(l,"/"===r?"/":r.split("/")[2]),children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:"7px"},children:[u&&(0,qh.jsx)(u,{size:20,sx:{fontSize:20,flexShrink:0,color:d?"#28aeb1":"inherit"}}),(0,qh.jsx)(iD.A,{sx:{">span":{fontWeight:"bold",color:d?"#28aeb1":"inherit"}},children:n})]})})})},ZM=(e,t)=>{const r=e.startsWith(t);return e===t||r?{backgroundColor:"#F8F8F8",opacity:1}:{backgroundColor:"transparent",opacity:.3}},QM={},KM=e=>{let{id:r,name:n,router:o,items:a,icon:i,onClick:s}=e;const l=hg(),c=dg(),{t:u}=Fv(),d=c.pathname,[,f]=(0,t.useState)({}),p=HT[i];void 0===QM[r]&&(QM[r]=d.startsWith(o));const h=e=>Dh.categoriesConf.filter((e=>!!e.isRoot)).map((e=>e.router)).includes(e),m=h(o)?d===o:d.startsWith(o);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(aD,{component:a&&a.length>0?"div":vv,to:a&&a.length>0?void 0:`${o}`,style:{textDecoration:"none",color:"inherit"},onClick:e=>{a&&a.length>0?(e.stopPropagation(),QM[r]=!QM[r],f({})):s&&s()},sx:h(o)?YM(d,o):YM(d),children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:"7px"},children:[p&&(0,qh.jsx)(p,{size:20,sx:{fontSize:20,flexShrink:0,color:m?"#28aeb1":"inherit"}}),(0,qh.jsx)(iD.A,{sx:{">span":{fontWeight:"bold",color:m?"#28aeb1":"inherit"}},children:n?u(n):r})]}),a&&a.length>0&&(0,qh.jsx)(cE.A,{children:QM[r]?(0,qh.jsx)(HM,{}):(0,qh.jsx)(QT,{})})]},r),a&&(0,qh.jsx)(WM,{in:QM[r],timeout:"auto",unmountOnExit:!0,children:a.map((e=>{let{id:t,router:r}=e;return(0,qh.jsx)(Bh.A,{onClick:e=>{e.stopPropagation(),l(`${r}`),s&&s()},sx:{marginLeft:"10px",marginTop:"4px",fontSize:"15px",padding:"8px 16px",borderRadius:"6px",fontWeight:"bold",...ZM(d,r),"&:hover":{backgroundColor:"#F8F8F8",cursor:"pointer"}},children:t},t)}))})]})};function XM(e){let{location:r,onClick:n}=e;const{t:o}=Fv(),{gStripe:a}=(0,t.useContext)(VI),{customerInfo:i}=a,{isSesameApp:s}=i,l=(0,t.useMemo)((()=>{const{access:e}=i,{categoriesConf:t,pageNames:r}=Dh,o=e.flatMap((e=>e===r.devices?[r.ssmDevices,r.touchDevices]:e)).map((e=>t.find((t=>t.id===e)))).filter(Boolean).map((e=>{let{id:t,items:r,router:o,name:a,icon:i}=e;return{id:t,items:r,router:o,name:a,icon:i,onClick:n}})),a=o.findIndex((e=>e.id===r.developer));return-1===a?[o,[]]:[o.slice(0,a),o.slice(a)]}),[i,n]),c=e=>e.map((e=>{let{id:t,items:r,router:o,name:a,icon:i}=e;return(0,qh.jsx)(ym,{children:(0,qh.jsx)(KM,{items:r,id:t,name:a,icon:i,router:o,onClick:n})},t)}));return(0,qh.jsxs)($T.A,{disablePadding:!0,sx:{height:"100dvh",color:"#111111",display:"flex",flexDirection:"column",justifyContent:"space-between",backgroundColor:"white",py:"10px",pl:"16px"},children:[(0,qh.jsxs)(ym,{children:[!s&&(0,qh.jsx)(GM,{to:"/biz",name:o("navigator.Home"),icon:"home",location:r,onClick:n}),c(l[0])]}),(0,qh.jsxs)(ym,{children:[c(l[1]),!s&&(0,qh.jsx)(GM,{to:YD.intro,name:o("navigator.Support"),external:!0,location:r,onClick:n}),(0,qh.jsx)(GM,{to:"/biz/settings",name:o("navigator.Settings"),location:r,onClick:n})]})]})}const JM=()=>{const[e,r]=(0,t.useState)(WC.getStatus()),n=(0,$v.A)();(0,t.useEffect)((()=>{const e=WC.onStatusChange((e=>{r(e)}));return()=>e()}),[]);const o=e===FC.CONNECTING;return(0,qh.jsxs)("div",{style:{display:"flex",alignItems:"center",padding:"4px 8px"},children:[(0,qh.jsx)("div",{style:{width:"8px",height:"8px",borderRadius:"50%",backgroundColor:(()=>{switch(e){case FC.CONNECTED:return n.palette.success.main;case FC.CONNECTING:return n.palette.warning.main;case FC.DISCONNECTED:default:return n.palette.error.main}})(),animation:o?"pulse 1.5s ease-in-out infinite":"none"}}),(0,qh.jsx)("style",{children:"\n          @keyframes pulse {\n            0%, 100% {\n              opacity: 1;\n            }\n            50% {\n              opacity: 0.3;\n            }\n          }\n        "})]})},$M=(0,dD.A)((0,qh.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Clear");var qM=r(5180);function eP(e){return(0,oy.Ay)("MuiLink",e)}const tP=(0,mm.A)("MuiLink",["root","underlineNone","underlineHover","underlineAlways","button","focusVisible"]);var rP=r(79449);const nP=e=>{let{theme:t,ownerState:r}=e;const n=r.color,o=(0,rP.Yn)(t,`palette.${n}`,!1)||r.color,a=(0,rP.Yn)(t,`palette.${n}Channel`);return"vars"in t&&a?`rgba(${a} / 0.4)`:(0,ry.X4)(o,.4)},oP={primary:!0,secondary:!0,error:!0,info:!0,success:!0,warning:!0,textPrimary:!0,textSecondary:!0,textDisabled:!0},aP=(0,am.Ay)(Bh.A,{name:"MuiLink",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[`underline${(0,ey.A)(r.underline)}`],"button"===r.component&&t.button]}})((0,qv.A)((e=>{let{theme:t}=e;return{variants:[{props:{underline:"none"},style:{textDecoration:"none"}},{props:{underline:"hover"},style:{textDecoration:"none","&:hover":{textDecoration:"underline"}}},{props:{underline:"always"},style:{textDecoration:"underline","&:hover":{textDecorationColor:"inherit"}}},{props:e=>{let{underline:t,ownerState:r}=e;return"always"===t&&"inherit"!==r.color},style:{textDecorationColor:"var(--Link-underlineColor)"}},...Object.entries(t.palette).filter((0,pE.A)()).map((e=>{let[r]=e;return{props:{underline:"always",color:r},style:{"--Link-underlineColor":t.vars?`rgba(${t.vars.palette[r].mainChannel} / 0.4)`:(0,ry.X4)(t.palette[r].main,.4)}}})),{props:{underline:"always",color:"textPrimary"},style:{"--Link-underlineColor":t.vars?`rgba(${t.vars.palette.text.primaryChannel} / 0.4)`:(0,ry.X4)(t.palette.text.primary,.4)}},{props:{underline:"always",color:"textSecondary"},style:{"--Link-underlineColor":t.vars?`rgba(${t.vars.palette.text.secondaryChannel} / 0.4)`:(0,ry.X4)(t.palette.text.secondary,.4)}},{props:{underline:"always",color:"textDisabled"},style:{"--Link-underlineColor":(t.vars||t).palette.text.disabled}},{props:{component:"button"},style:{position:"relative",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none","&::-moz-focus-inner":{borderStyle:"none"},[`&.${tP.focusVisible}`]:{outline:"auto"}}}]}}))),iP=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiLink"}),o=(0,$v.A)(),{className:a,color:i="primary",component:s="a",onBlur:l,onFocus:c,TypographyClasses:u,underline:d="always",variant:f="inherit",sx:p,...h}=n,[m,g]=t.useState(!1),v={...n,color:i,component:s,focusVisible:m,underline:d,variant:f},y=(e=>{const{classes:t,component:r,focusVisible:n,underline:o}=e,a={root:["root",`underline${(0,ey.A)(o)}`,"button"===r&&"button",n&&"focusVisible"]};return(0,zv.A)(a,eP,t)})(v);return(0,qh.jsx)(aP,{color:i,className:(0,Fh.A)(y.root,a),classes:u,component:s,onBlur:e=>{(0,qM.A)(e.target)||g(!1),l&&l(e)},onFocus:e=>{(0,qM.A)(e.target)&&g(!0),c&&c(e)},ref:r,ownerState:v,variant:f,...h,sx:[...void 0===oP[i]?[{color:i}]:[],...Array.isArray(p)?p:[p]],style:{...h.style,..."always"===d&&"inherit"!==i&&!oP[i]&&{"--Link-underlineColor":nP({theme:o,ownerState:v})}}})})),sP=e=>{if("string"===typeof e)return e;if(void 0===e||null===e)return"";try{return JSON.stringify(e)}catch{return String(e)}},lP=(e,t)=>{const r=t.trim();if(!r)return e;const n=[],o=e.toLowerCase(),a=r.toLowerCase();let i=0,s=o.indexOf(a,i);for(;s>=0;)s>i&&n.push(e.slice(i,s)),n.push((0,qh.jsx)(ym,{component:"mark",sx:{bgcolor:"rgba(25, 118, 210, 0.18)",color:"inherit",px:"2px",borderRadius:"2px"},children:e.slice(s,s+r.length)},`${s}-${n.length}`)),i=s+r.length,s=o.indexOf(a,i);return i<e.length&&n.push(e.slice(i)),n},cP={searching:!1,rowDatas:null,totalCount:null},uP=e=>{let{open:r,gManageEmployee:n,setSnackbarValue:o}=e;const[a,i]=(0,t.useState)(""),[s,l]=(0,t.useState)(""),[c,u]=(0,t.useState)(!1),[d,f]=(0,t.useState)(cP),[p,h]=(0,t.useState)(""),[m,g]=(0,t.useState)(null),{searching:v,rowDatas:y,totalCount:b}=d;(0,t.useEffect)((()=>{r||(i(""),l(""),u(!1),f(cP),h(""),g(null))}),[r]);const w=(0,t.useMemo)((()=>Array.isArray(y)?y:[]),[y]),x=(0,t.useMemo)((()=>a.trim().length>=3),[a]);(0,t.useEffect)((()=>{0===a.trim().length&&(i(""),l(""),u(!1),f(cP),h(""),g(null))}),[a]);const S=()=>{const e=a.trim();e&&!v&&(l(""),f({searching:!0,rowDatas:null,totalCount:null}),h(""),n.queryByCS(e,(e=>{var t,r,n;if(!1===(null===e||void 0===e?void 0:e.success))return f((e=>({...e,searching:!1}))),void o({open:!0,msg:e.message});f({searching:!e.done,rowDatas:e.data,totalCount:null!==(t=null!==(r=e.totalCount)&&void 0!==r?r:null===(n=e.data)||void 0===n?void 0:n.length)&&void 0!==t?t:0})})))},A=(0,t.useMemo)((()=>{const e=s.trim().toLowerCase();return e?w.filter((t=>sP(t.item).toLowerCase().includes(e))):w}),[w,s]),k=e=>{const r=sP(e.item),n=(e=>[...e.matchAll(/[^"'{}[\]\s,:;<>]+@[^"'{}[\]\s,:;<>]+/g)].map((e=>({email:e[0].replace(/[.!?]+$/,""),index:e.index}))).filter((e=>{let{email:t}=e;return Dh.isValidEmail(t)})))(r),o=s.trim()||a;if(0===n.length)return(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"info.main",wordBreak:"break-all"},children:lP(r,o)});let i=0;const l=[];return n.forEach(((e,n)=>{const{email:a}=e,s=e.index;s>i&&l.push((0,qh.jsx)(t.Fragment,{children:lP(r.slice(i,s),o)},`text-${i}`)),l.push((0,qh.jsx)(iP,{component:"button",variant:"body2",sx:{color:"inherit",textDecoration:"underline",verticalAlign:"baseline",wordBreak:"break-all","&:hover":{textDecoration:"underline"}},onClick:e=>{h(a),g(e.currentTarget)},children:lP(a,o)},`email-${s}-${n}`)),i=s+a.length})),i<r.length&&l.push((0,qh.jsx)(t.Fragment,{children:lP(r.slice(i),o)},`text-${i}`)),(0,qh.jsx)(Bh.A,{component:"span",variant:"body2",sx:{color:"info.main",wordBreak:"break-all"},children:l})};return(0,qh.jsxs)(ym,{sx:{width:"100%",height:"100%",display:"flex",flexDirection:"column"},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:{xs:"column",sm:"row"},gap:1,alignItems:"stretch"},children:[(0,qh.jsx)(GD.A,{fullWidth:!0,size:"small",value:a,placeholder:"email subUUID deviceUUID deviceName",variant:"filled",sx:{"& .MuiFilledInput-root":{height:"40px"},"& .MuiFilledInput-input":{py:0}},onChange:e=>i(e.target.value),onKeyDown:e=>{"Enter"!==e.key||v||S()},InputProps:{endAdornment:a&&(0,qh.jsx)($D,{position:"end",children:(0,qh.jsx)(cE.A,{size:"small",onClick:()=>i(""),edge:"end",children:(0,qh.jsx)($M,{fontSize:"small"})})})}}),(0,qh.jsx)(RE,{variant:"contained",onClick:S,disabled:!x||v,loading:v,sx:{width:{xs:"100%",sm:"auto"},flexShrink:0,height:"40px",color:"white"},children:"Search"})]}),(0,qh.jsxs)(ym,{sx:{mt:2,flex:1,minHeight:0,overflow:"auto"},children:[y&&0===A.length&&(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"info.light"},children:"No information found"}),A.length>0&&(0,qh.jsx)($T.A,{disablePadding:!0,children:A.map(((e,r)=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsx)(lO,{sx:{px:0,py:1,alignItems:"flex-start"},children:k(e)}),(0,qh.jsx)(mM,{sx:{opacity:.4}})]},`${e.type}-${r}`)))})]}),(0,qh.jsxs)(ym,{sx:{mt:.75,display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[(0,qh.jsx)(GD.A,{size:"small",value:s,placeholder:"Search in results",variant:"filled",sx:{width:{xs:"60%",sm:240},"& .MuiFilledInput-root":{height:"32px"},"& .MuiFilledInput-input":{py:0,fontSize:"12px"}},onChange:e=>l(e.target.value),InputProps:{endAdornment:s&&(0,qh.jsx)($D,{position:"end",children:(0,qh.jsx)(cE.A,{size:"small",onClick:()=>l(""),edge:"end",children:(0,qh.jsx)($M,{fontSize:"small"})})})}}),(0,qh.jsx)(Bh.A,{variant:"caption",sx:{color:"info.light"},children:`Showing ${w.length} / Total ${null!==b&&void 0!==b?b:0}`})]}),(0,qh.jsx)(jO.A,{anchorEl:m,open:Boolean(m),onClose:()=>{h(""),g(null)},MenuListProps:{sx:{py:0}},PaperProps:{sx:{py:0}},children:(0,qh.jsx)(RO.A,{onClick:async()=>{if(!p)return;u(!0),navigator.clipboard.writeText(p).catch((()=>{}));const e=window.open("","_blank");n.confirmQueryByCS(p,(async t=>{u(!1),o({open:!0,msg:t.message});let{loginUrl:r=null}=!1===(null===t||void 0===t?void 0:t.success)?{}:t.data||{};r&&e?e.location.href=r:e&&e.close()}))},disabled:c,sx:{bgcolor:"primary.main",color:"white","&:hover":{bgcolor:"primary.dark"},"&.Mui-disabled":{color:"rgba(255, 255, 255, 0.7)"}},children:"Auto Login"})})]})},dP=(0,dD.A)((0,qh.jsx)("path",{d:"M19 9h-4V3H9v6H5l7 7zM5 18v2h14v-2z"}),"GetApp");function fP(e){return(0,oy.Ay)("MuiTableContainer",e)}(0,mm.A)("MuiTableContainer",["root"]);const pP=(0,am.Ay)("div",{name:"MuiTableContainer",slot:"Root",overridesResolver:(e,t)=>t.root})({width:"100%",overflowX:"auto"}),hP=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiTableContainer"}),{className:n,component:o="div",...a}=r,i={...r,component:o},s=(e=>{const{classes:t}=e;return(0,zv.A)({root:["root"]},fP,t)})(i);return(0,qh.jsx)(pP,{ref:t,as:o,className:(0,Fh.A)(s.root,n),ownerState:i,...a})})),mP=["\u304a\u5ba2\u69d8\u7ba1\u7406\u756a\u53f7\u534a\u89d2\u82f1\u6570\u5b5750\u6587\u5b57","\u9001\u308a\u72b6\u7a2e\u985e","\u30af\u30fc\u30eb\u533a\u5206","\u4f1d\u7968\u756a\u53f7 \u203bB2\u30af\u30e9\u30a6\u30c9\u306b\u3066\u4ed8\u4e0e","\u51fa\u8377\u4e88\u5b9a\u65e5 \u534a\u89d210\u6587\u5b57 \uff62YYYY/MM/DD\uff63\u3067\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002","\u304a\u5c4a\u3051\u4e88\u5b9a\u65e5 \u534a\u89d210\u6587\u5b57","\u914d\u9054\u6642\u9593\u5e2f \u534a\u89d24\u6587\u5b57","\u304a\u5c4a\u3051\u5148\u30b3\u30fc\u30c9 \u534a\u89d2\u82f1\u6570\u5b5720\u6587\u5b57","\u304a\u5c4a\u3051\u5148\u96fb\u8a71\u756a\u53f7 \u534a\u89d2\u6570\u5b5715\u6587\u5b57\u30cf\u30a4\u30d5\u30f3\u542b\u3080 (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)","\u304a\u5c4a\u3051\u5148\u96fb\u8a71\u756a\u53f7\u679d\u756a \u534a\u89d2\u6570\u5b572\u6587\u5b57","\u304a\u5c4a\u3051\u5148\u90f5\u4fbf\u756a\u53f7 \u534a\u89d2\u6570\u5b578\u6587\u5b57 \u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6587\u5b57\u3082\u53ef (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)","\u304a\u5c4a\u3051\u5148\u4f4f\u6240 \u5168\u89d2/\u534a\u89d2 \u90fd\u9053\u5e9c\u770c\uff08\uff14\u6587\u5b57\uff09 \u5e02\u533a\u90e1\u753a\u6751\uff08\uff11\uff12\u6587\u5b57\uff09 \u753a\u30fb\u756a\u5730\uff08\uff11\uff16\u6587\u5b57\uff09","\u304a\u5c4a\u3051\u5148\u30a2\u30d1\u30fc\u30c8\u30de\u30f3\u30b7\u30e7\u30f3\u540d \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57","\u304a\u5c4a\u3051\u5148\u4f1a\u793e\u30fb\u90e8\u9580\uff11 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57","\u304a\u5c4a\u3051\u5148\u4f1a\u793e\u30fb\u90e8\u9580\uff12 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57","\u304a\u5c4a\u3051\u5148\u540d \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57  (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)","\u304a\u5c4a\u3051\u5148\u540d(\uff76\uff85) \u534a\u89d2\u30ab\u30bf\u30ab\u30ca 50\u6587\u5b57","\u656c\u79f0 \u5168\u89d2/\u534a\u89d2 2\u6587\u5b57/4\u6587\u5b57","\u3054\u4f9d\u983c\u4e3b\u30b3\u30fc\u30c9 \u534a\u89d2\u82f1\u6570\u5b57 20\u6587\u5b57","\u3054\u4f9d\u983c\u4e3b\u96fb\u8a71\u756a\u53f7 \u534a\u89d2\u6570\u5b5715\u6587\u5b57\u30cf\u30a4\u30d5\u30f3\u542b\u3080","\u3054\u4f9d\u983c\u4e3b\u96fb\u8a71\u756a\u53f7\u679d\u756a \u534a\u89d2\u6570\u5b57 2\u6587\u5b57","\u3054\u4f9d\u983c\u4e3b\u90f5\u4fbf\u756a\u53f7 \u534a\u89d2\u6570\u5b578\u6587\u5b57 \u30cf\u30a4\u30d5\u30f3\u306a\u3057\u534a\u89d27\u6587\u5b57\u3082\u53ef","\u3054\u4f9d\u983c\u4e3b\u4f4f\u6240 \u5168\u89d2/\u534a\u89d232\u6587\u5b57/64\u6587\u5b57 \u90fd\u9053\u5e9c\u770c\uff08\uff14\u6587\u5b57\uff09 \u5e02\u533a\u90e1\u753a\u6751\uff08\uff11\uff12\u6587\u5b57\uff09 \u753a\u30fb\u756a\u5730\uff08\uff11\uff16\u6587\u5b57\uff09 (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)","\u3054\u4f9d\u983c\u4e3b\u30a2\u30d1\u30fc\u30c8\u30de\u30f3\u30b7\u30e7\u30f3 \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57","\u3054\u4f9d\u983c\u4e3b\u540d \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57  (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)","\u3054\u4f9d\u983c\u4e3b\u540d(\uff76\uff85) \u534a\u89d2\u30ab\u30bf\u30ab\u30ca 50\u6587\u5b57","\u54c1\u540d\u30b3\u30fc\u30c9\uff11 \u534a\u89d2\u82f1\u6570\u5b57 30\u6587\u5b57","\u54c1\u540d\uff11 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57","\u54c1\u540d\u30b3\u30fc\u30c9\uff12 \u534a\u89d2\u82f1\u6570\u5b57 30\u6587\u5b57","\u54c1\u540d\uff12 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57","\u8377\u6271\u3044\uff11 \u5168\u89d2/\u534a\u89d2 10\u6587\u5b57/20\u6587\u5b57","\u8377\u6271\u3044\uff12 \u5168\u89d2/\u534a\u89d2 10\u6587\u5b57/20\u6587\u5b57","\u8a18\u4e8b \u5168\u89d2/\u534a\u89d2 22\u6587\u5b57/44\u6587\u5b57","\uff7a\uff9a\uff78\uff84\u4ee3\u91d1\u5f15\u63db\u984d\uff08\u7a0e\u8fbc) \u534a\u89d2\u6570\u5b57 7\u6587\u5b57","\u5185\u6d88\u8cbb\u7a0e\u984d\u7b49 \u534a\u89d2\u6570\u5b57 7\u6587\u5b57","\u6b62\u7f6e\u304d \u534a\u89d2\u6570\u5b57 1\u6587\u5b57 0 : \u5229\u7528\u3057\u306a\u3044 1 : \u5229\u7528\u3059\u308b","\u55b6\u696d\u6240\u30b3\u30fc\u30c9 \u534a\u89d2\u6570\u5b57 6\u6587\u5b57","\u767a\u884c\u679a\u6570 \u534a\u89d2\u6570\u5b57 2\u6587\u5b57","\u500b\u6570\u53e3\u8868\u793a\u30d5\u30e9\u30b0 \u534a\u89d2\u6570\u5b57 1\u6587\u5b57","\u8acb\u6c42\u5148\u9867\u5ba2\u30b3\u30fc\u30c9 \u534a\u89d2\u6570\u5b5712\u6587\u5b57","\u8acb\u6c42\u5148\u5206\u985e\u30b3\u30fc\u30c9 \u7a7a\u767d\u307e\u305f\u306f\u534a\u89d2\u6570\u5b573\u6587\u5b57","\u904b\u8cc3\u7ba1\u7406\u756a\u53f7","\u30af\u30ed\u30cd\u30b3web\u30b3\u30ec\u30af\u30c8\u30c7\u30fc\u30bf\u767b\u9332","\u30af\u30ed\u30cd\u30b3web\u30b3\u30ec\u30af\u30c8\u52a0\u76df\u5e97\u756a\u53f7","\u30af\u30ed\u30cd\u30b3web\u30b3\u30ec\u30af\u30c8\u7533\u8fbc\u53d7\u4ed8\u756a\u53f7\uff11","\u30af\u30ed\u30cd\u30b3web\u30b3\u30ec\u30af\u30c8\u7533\u8fbc\u53d7\u4ed8\u756a\u53f7\uff12","\u30af\u30ed\u30cd\u30b3web\u30b3\u30ec\u30af\u30c8\u7533\u8fbc\u53d7\u4ed8\u756a\u53f7\uff13","\u304a\u5c4a\u3051\u4e88\u5b9a\uff45\u30e1\u30fc\u30eb 1 : \u5229\u7528\u3059\u308b","\u304a\u5c4a\u3051\u4e88\u5b9a\uff45\u30e1\u30fc\u30ebe-mail\u30a2\u30c9\u30ec\u30b9 \u534a\u89d2\u82f1\u6570\u5b57\uff06\u8a18\u53f7 60\u6587\u5b57 \u203b\u304a\u5c4a\u3051\u4e88\u5b9ae\u30e1\u30fc\u30eb\u3092\u5229\u7528\u3059\u308b\u5834\u5408\u306f\u5fc5\u9808 ","\u5165\u529b\u6a5f\u7a2e","\u304a\u5c4a\u3051\u4e88\u5b9a\uff45\u30e1\u30fc\u30eb\u30e1\u30c3\u30bb\u30fc\u30b8 \u5168\u89d2 74\u6587\u5b57","\u304a\u5c4a\u3051\u5b8c\u4e86\uff45\u30e1\u30fc\u30eb\u5229\u7528\u533a\u5206 \u534a\u89d2\u6570\u5b57 1\u6587\u5b57 0 : \u5229\u7528\u3057\u306a\u3044 1 : \u5229\u7528\u3059\u308b","\u304a\u5c4a\u3051\u5b8c\u4e86\uff45\u30e1\u30fc\u30ebe-mail\u30a2\u30c9\u30ec\u30b9","\u304a\u5c4a\u3051\u5b8c\u4e86\uff45\u30e1\u30fc\u30eb\u30e1\u30c3\u30bb\u30fc\u30b8 \u5168\u89d2 159\u6587\u5b57","\u30af\u30ed\u30cd\u30b3\u53ce\u7d0d\u4ee3\u884c\u5229\u7528\u533a\u5206 \u534a\u89d2\u6570\u5b57\uff11\u6587\u5b57","\u4e88\u5099 \u534a\u89d2\u6570\u5b57\uff11\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u8acb\u6c42\u91d1\u984d(\u7a0e\u8fbc) \u534a\u89d2\u6570\u5b57\uff17\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u5185\u6d88\u8cbb\u7a0e\u984d\u7b49 \u534a\u89d2\u6570\u5b57\uff17\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u8acb\u6c42\u5148\u90f5\u4fbf\u756a\u53f7 \u534a\u89d2\u6570\u5b57\uff06\u30cf\u30a4\u30d5\u30f38\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u8acb\u6c42\u5148\u4f4f\u6240","\u53ce\u7d0d\u4ee3\u884c\u8acb\u6c42\u5148\u4f4f\u6240\uff08\u30a2\u30d1\u30fc\u30c8\u30de\u30f3\u30b7\u30e7\u30f3\u540d\uff09\u5168\u89d2/\u534a\u89d2\u300016\u6587\u5b57/32\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u8acb\u6c42\u5148\u4f1a\u793e\u30fb\u90e8\u9580\u540d\uff11 \u5168\u89d2/\u534a\u89d2\u300025\u6587\u5b57/50\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u8acb\u6c42\u5148\u4f1a\u793e\u30fb\u90e8\u9580\u540d\uff12 \u5168\u89d2/\u534a\u89d2\u300025\u6587\u5b57/50\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u8acb\u6c42\u5148\u540d(\u6f22\u5b57) \u5168\u89d2/\u534a\u89d2\u300016\u6587\u5b57/32\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u8acb\u6c42\u5148\u540d(\u30ab\u30ca) \u534a\u89d2\u30ab\u30bf\u30ab\u30ca50\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u554f\u5408\u305b\u5148\u540d(\u6f22\u5b57) \u5168\u89d2/\u534a\u89d2\u300016\u6587\u5b57/32\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u554f\u5408\u305b\u5148\u90f5\u4fbf\u756a\u53f7 \u534a\u89d2\u6570\u5b57\uff06\u30cf\u30a4\u30d5\u30f38\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u554f\u5408\u305b\u5148\u4f4f\u6240 \u5168\u89d2/\u534a\u89d2\u300032\u6587\u5b57/64\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u554f\u5408\u305b\u5148\u4f4f\u6240\uff08\u30a2\u30d1\u30fc\u30c8\u30de\u30f3\u30b7\u30e7\u30f3\u540d\uff09","\u53ce\u7d0d\u4ee3\u884c\u554f\u5408\u305b\u5148\u96fb\u8a71\u756a\u53f7 \u534a\u89d2\u6570\u5b57\uff06\u30cf\u30a4\u30d5\u30f315\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u7ba1\u7406\u756a\u53f7 \u534a\u89d2\u82f1\u6570\u5b5720\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u54c1\u540d \u5168\u89d2/\u534a\u89d2\u300025\u6587\u5b57/50\u6587\u5b57","\u53ce\u7d0d\u4ee3\u884c\u5099\u8003 \u5168\u89d2/\u534a\u89d2\u300014\u6587\u5b57/28\u6587\u5b57","\u8907\u6570\u53e3\u304f\u304f\u308a\u30ad\u30fc \u534a\u89d2\u82f1\u6570\u5b5720\u6587\u5b57","\u691c\u7d22\u30ad\u30fc\u30bf\u30a4\u30c8\u30eb1","\u691c\u7d22\u30ad\u30fc1 \u534a\u89d2\u82f1\u6570\u5b57 20\u6587\u5b57","\u691c\u7d22\u30ad\u30fc\u30bf\u30a4\u30c8\u30eb2","\u691c\u7d22\u30ad\u30fc2 \u534a\u89d2\u82f1\u6570\u5b57 20\u6587\u5b57","\u691c\u7d22\u30ad\u30fc\u30bf\u30a4\u30c8\u30eb3 \u5168\u89d2/\u534a\u89d2 10\u6587\u5b57/20\u6587\u5b57","\u691c\u7d22\u30ad\u30fc3 \u534a\u89d2\u82f1\u6570\u5b57 20\u6587\u5b57","\u691c\u7d22\u30ad\u30fc\u30bf\u30a4\u30c8\u30eb4 \u5168\u89d2/\u534a\u89d2 10\u6587\u5b57/20\u6587\u5b57","\u691c\u7d22\u30ad\u30fc4 \u534a\u89d2\u82f1\u6570\u5b57 20\u6587\u5b57","\u691c\u7d22\u30ad\u30fc\u30bf\u30a4\u30c8\u30eb5","\u691c\u7d22\u30ad\u30fc5","\u4e88\u5099","\u4e88\u5099","\u6295\u51fd\u4e88\u5b9a\u30e1\u30fc\u30eb\u5229\u7528\u533a\u5206 \u534a\u89d2\u6570\u5b57","\u6295\u51fd\u4e88\u5b9a\u30e1\u30fc\u30ebe-mail\u30a2\u30c9\u30ec\u30b9 \u534a\u89d2\u82f1\u6570\u5b57\uff06\u8a18\u53f7 60\u6587\u5b57","\u6295\u51fd\u4e88\u5b9a\u30e1\u30fc\u30eb\u30e1\u30c3\u30bb\u30fc\u30b8","\u6295\u51fd\u5b8c\u4e86\u30e1\u30fc\u30eb\uff08\u304a\u5c4a\u3051\u5148\u5b9b\uff09","\u6295\u51fd\u5b8c\u4e86\u30e1\u30fc\u30eb\uff08\u304a\u5c4a\u3051\u5148\u5b9b\uff09e-mail\u30a2\u30c9\u30ec\u30b9 \u534a\u89d2\u82f1\u6570\u5b57\uff06\u8a18\u53f7 60\u6587\u5b57","\u6295\u51fd\u5b8c\u4e86\u30e1\u30fc\u30eb\uff08\u304a\u5c4a\u3051\u5148\u5b9b\uff09\u30e1\u30fc\u30eb\u30e1\u30c3\u30bb\u30fc\u30b8 \u5168\u89d2/\u534a\u89d2 159\u6587\u5b57/318\u6587\u5b57 \u203b\u534a\u89d2\u30ab\u30bf\u30ab\u30ca\u53ca\u3073\u534a\u89d2\u30b9\u30da\u30fc\u30b9\u306f\u4f7f\u3048\u307e\u305b\u3093\u3002","\u6295\u51fd\u5b8c\u4e86\u30e1\u30fc\u30eb\uff08\u3054\u4f9d\u983c\u4e3b\u5b9b\uff09\u5229\u7528\u533a\u5206 \u534a\u89d2\u6570\u5b57 1\u6587\u5b57 0 : \u5229\u7528\u3057\u306a\u3044 1 : \u5229\u7528\u3059\u308b PC\u5b9b\u3066","\u6295\u51fd\u5b8c\u4e86\u30e1\u30fc\u30eb\uff08\u3054\u4f9d\u983c\u4e3b\u5b9b\uff09e-mail\u30a2\u30c9\u30ec\u30b9 \u534a\u89d2\u82f1\u6570\u5b57\uff06\u8a18\u53f7 60\u6587\u5b57","\u6295\u51fd\u5b8c\u4e86\u30e1\u30fc\u30eb\uff08\u3054\u4f9d\u983c\u4e3b\u5b9b\uff09\u30e1\u30fc\u30eb\u30e1\u30c3\u30bb\u30fc\u30b8 \u5168\u89d2/\u534a\u89d2 159\u6587\u5b57/318\u6587\u5b57"],gP=(e,t,r)=>{const n=r?e.map((e=>r.reduce(((t,r)=>{var n;return t[r]=null!==(n=e[r])&&void 0!==n?n:"",t}),{}))):e,o=We().unparse(n,r?{columns:r}:void 0),a=new Blob([o],{type:"text/csv;charset=utf-8"});(0,Fe.saveAs)(a,t)},vP=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e.includes("\u30e4\u30de\u30c8")||e.includes("\u914d\u9001")},yP="0",bP="104-0042",wP="\u6771\u4eac\u90fd\u4e2d\u592e\u533a\u5165\u8239\uff11\u2212\uff19\u2212\uff18",xP="\u30d4\u30a8\u30ce\u30a2\u30fc\u30af\u5165\u8239\uff15\u968e",SP="CANDY HOUSE, Inc.",AP="08039113625",kP={ticket:"",mobile:"",zip:"",address:"",addressDetail:"",name:"",products:"",otherProducts:""},CP=async(e,t)=>{const r=await fetch(e,{headers:{Authorization:t}});if(!r.ok)throw new Error(`Freshdesk request failed: ${r.status}`);return r.json()},IP=e=>{let{ticket:t,ticketInfo:r,customerInfo:n,recipientName:o}=e;return{"\u304a\u5ba2\u69d8\u7ba1\u7406\u756a\u53f7\u534a\u89d2\u82f1\u6570\u5b5750\u6587\u5b57":t,"\u9001\u308a\u72b6\u7a2e\u985e":"8","\u51fa\u8377\u4e88\u5b9a\u65e5 \u534a\u89d210\u6587\u5b57 \uff62YYYY/MM/DD\uff63\u3067\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002":(new Date).toISOString().slice(0,10).replace(/-/g,"/"),"\u304a\u5c4a\u3051\u5148\u96fb\u8a71\u756a\u53f7 \u534a\u89d2\u6570\u5b5715\u6587\u5b57\u30cf\u30a4\u30d5\u30f3\u542b\u3080 (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":r.requester.mobile,"\u304a\u5c4a\u3051\u5148\u90f5\u4fbf\u756a\u53f7 \u534a\u89d2\u6570\u5b578\u6587\u5b57 \u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6587\u5b57\u3082\u53ef (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":n.custom_fields.rand456254,"\u304a\u5c4a\u3051\u5148\u4f4f\u6240 \u5168\u89d2/\u534a\u89d2 \u90fd\u9053\u5e9c\u770c\uff08\uff14\u6587\u5b57\uff09 \u5e02\u533a\u90e1\u753a\u6751\uff08\uff11\uff12\u6587\u5b57\uff09 \u753a\u30fb\u756a\u5730\uff08\uff11\uff16\u6587\u5b57\uff09":n.custom_fields.test,"\u304a\u5c4a\u3051\u5148\u30a2\u30d1\u30fc\u30c8\u30de\u30f3\u30b7\u30e7\u30f3\u540d \u5168\u89d2/\u534a\u89d2  16\u6587\u5b57/32\u6587\u5b57":n.custom_fields.rand836477,"\u304a\u5c4a\u3051\u5148\u540d \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57  (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":o,"\u3054\u4f9d\u983c\u4e3b\u96fb\u8a71\u756a\u53f7 \u534a\u89d2\u6570\u5b5715\u6587\u5b57\u30cf\u30a4\u30d5\u30f3\u542b\u3080":yP,"\u3054\u4f9d\u983c\u4e3b\u90f5\u4fbf\u756a\u53f7 \u534a\u89d2\u6570\u5b578\u6587\u5b57 \u30cf\u30a4\u30d5\u30f3\u306a\u3057\u534a\u89d27\u6587\u5b57\u3082\u53ef":bP,"\u3054\u4f9d\u983c\u4e3b\u4f4f\u6240 \u5168\u89d2/\u534a\u89d232\u6587\u5b57/64\u6587\u5b57 \u90fd\u9053\u5e9c\u770c\uff08\uff14\u6587\u5b57\uff09 \u5e02\u533a\u90e1\u753a\u6751\uff08\uff11\uff12\u6587\u5b57\uff09 \u753a\u30fb\u756a\u5730\uff08\uff11\uff16\u6587\u5b57\uff09 (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":wP,"\u3054\u4f9d\u983c\u4e3b\u30a2\u30d1\u30fc\u30c8\u30de\u30f3\u30b7\u30e7\u30f3 \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57":xP,"\u3054\u4f9d\u983c\u4e3b\u540d \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57  (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":SP,"\u54c1\u540d\uff11 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57":`${t}:${r.custom_fields.cf_test_products}`,"\u54c1\u540d\uff12 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57":r.custom_fields.cf_testproducts,"\u8377\u6271\u3044\uff11 \u5168\u89d2/\u534a\u89d2 10\u6587\u5b57/20\u6587\u5b57":"\u7cbe\u5bc6\u6a5f\u5668","\u8377\u6271\u3044\uff12 \u5168\u89d2/\u534a\u89d2 10\u6587\u5b57/20\u6587\u5b57":"\u4e0b\u7a4d\u53b3\u7981","\u8acb\u6c42\u5148\u9867\u5ba2\u30b3\u30fc\u30c9 \u534a\u89d2\u6570\u5b5712\u6587\u5b57":AP,"\u904b\u8cc3\u7ba1\u7406\u756a\u53f7":"01","\u304a\u5c4a\u3051\u4e88\u5b9a\uff45\u30e1\u30fc\u30eb 1 : \u5229\u7528\u3059\u308b":"0","\u5165\u529b\u6a5f\u7a2e":"0"}},EP=e=>{let{tableData:t}=e;return(0,qh.jsx)(hP,{children:(0,qh.jsxs)(kM.A,{size:"small",children:[(0,qh.jsx)(CM.A,{sx:{backgroundColor:"action.disabledBackground","& .MuiTableCell-root":{color:"action.disabled"}},children:(0,qh.jsxs)(IM.A,{children:[(0,qh.jsx)(EM.A,{children:"Ticket No."}),(0,qh.jsx)(EM.A,{children:"Customer Phone Number"}),(0,qh.jsx)(EM.A,{children:"Customer Postal Code"}),(0,qh.jsx)(EM.A,{children:"Customer Address"}),(0,qh.jsx)(EM.A,{children:"Customer Building Name"}),(0,qh.jsx)(EM.A,{children:"Recipient Name"}),(0,qh.jsx)(EM.A,{children:"Ticket Number: Repair Item"})]})}),(0,qh.jsx)(DM.A,{children:""!==t.ticket&&(0,qh.jsxs)(IM.A,{children:[(0,qh.jsx)(EM.A,{component:iP,href:`https://candyhouseinc.freshdesk.com/a/tickets/${t.ticket}`,target:"_blank",sx:{color:"primary.main"},children:t.ticket}),(0,qh.jsx)(EM.A,{children:t.mobile}),(0,qh.jsx)(EM.A,{children:t.zip}),(0,qh.jsx)(EM.A,{children:t.address}),(0,qh.jsx)(EM.A,{children:t.addressDetail}),(0,qh.jsx)(EM.A,{children:t.name}),(0,qh.jsxs)(EM.A,{children:[t.ticket,":",t.products,t.otherProducts]})]},t.ticket)})]})})},DP=e=>{let{gManageEmployee:r,setSnackbarValue:n}=e;const[o,a]=(0,t.useState)(""),[i,s]=(0,t.useState)([]),[l,c]=(0,t.useState)(!1),[u,d]=(0,t.useState)(kP),f=async()=>{o&&!l&&(c(!0),r.getRepairAuthKey((async e=>{if(!1===(null===e||void 0===e?void 0:e.success))return c(!1),void(null===n||void 0===n||n({open:!0,msg:e.message}));try{const{authorizationKey:t=null}=e.data||{},{row:r,tableData:n}=await(async(e,t)=>{const r=await CP(`https://candyhouseinc.freshdesk.com/api/v2/tickets/${e}?include=requester`,t),n=await CP(`https://candyhouseinc.freshdesk.com/api/v2/contacts/${r.requester.id}`,t),o=null===n.custom_fields.rand85614?n.name:n.custom_fields.rand85614;return{row:IP({ticket:e,ticketInfo:r,customerInfo:n,recipientName:o}),tableData:{ticket:e,mobile:r.requester.mobile,zip:n.custom_fields.rand456254,address:n.custom_fields.test,addressDetail:n.custom_fields.rand836477,name:o,products:r.custom_fields.cf_test_products,otherProducts:r.custom_fields.cf_testproducts}}})(o,t);s([r]),d(n)}catch(r){var t;console.error(r),null===n||void 0===n||n({open:!0,msg:String(null!==(t=null===r||void 0===r?void 0:r.message)&&void 0!==t?t:r)})}finally{c(!1)}})))};return(0,qh.jsx)(ym,{sx:{p:2},children:(0,qh.jsxs)(JI,{sx:{p:2},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:1,mb:2},children:[(0,qh.jsx)(GD.A,{label:"Ticket Number",size:"small",variant:"filled",value:o,onChange:e=>a(e.target.value.trim()),onKeyDown:e=>{"Enter"===e.key&&f()},sx:{"& .MuiFilledInput-root":{height:"40px"}}}),(0,qh.jsx)(RE,{variant:"contained",disabled:!o||l,loading:l,onClick:f,sx:{color:"white",height:"40px"},children:"Search"})]}),(0,qh.jsx)(EP,{tableData:u}),i.length>0&&o&&(0,qh.jsx)(QI.A,{sx:{mt:2},startIcon:(0,qh.jsx)(dP,{}),onClick:()=>gP(i,`${o}.csv`,mP),children:"Download Repair CSV"})]})})},TP=(0,dD.A)((0,qh.jsx)("path",{d:"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8zm4 18H6V4h7v5h5zM8 15.01l1.41 1.41L11 14.84V19h2v-4.16l1.59 1.59L16 15.01 12.01 11z"}),"UploadFile"),OP=()=>{const e=(0,t.useRef)(null),[r,n]=(0,t.useState)([]),[o,a]=(0,t.useState)({start:"",end:""}),[i,s]=(0,t.useState)([]),[l,c]=(0,t.useState)([]),[u,d]=(0,t.useState)([]),f=async e=>{if(!e)return;const t=await e.text(),r=(0,ze.parse)(t,{header:!0,skipEmptyLines:!0}),[o,i,l]=(e=>{var t,r,n,o;const a=e.map((e=>({...e,name1:Number(e.Name.substring(3))}))).sort(((e,t)=>t.name1-e.name1)),i=new Set;for(const l of a){const e=String(l["Fulfillment Status"]||"").toLowerCase();vP(l["Shipping Method"])&&("unfulfilled"===e||"\u672a\u767a\u9001"===e)&&i.add(l.Name)}const s=a.filter((e=>i.has(e.Name)));return[null!==(t=null===(r=s[0])||void 0===r?void 0:r.Name)&&void 0!==t?t:"",null!==(n=null===(o=s[s.length-1])||void 0===o?void 0:o.Name)&&void 0!==n?n:"",s]})(r.data),[u,f,p,h]=(e=>{e.forEach((e=>(e=>{for(const t in e)""!==e[t]&&void 0!==e[t]||delete e[t];return e})(e)));const t=e.reduce(((e,t)=>{const r=e.find((e=>e.Name===t.Name));return e.push(r?{...r,...t}:t),e}),[]).filter((e=>"refunded"!==e["Financial Status"])).filter((e=>"\u4fdd\u8a3c\u5916\u4fee\u7406\u30b5\u30fc\u30d3\u30b9"!==e["Lineitem sku"]&&"\u7279\u5225\u53d6\u6271\u624b\u6570\u6599"!==e["Lineitem name"]&&void 0!==e["Shipping Method"])),r=t.filter((e=>{var t;return"pending"===e["Lineitem fulfillment status"]&&(e["Shipping Method"].includes("\u30e4\u30de\u30c8")||e["Shipping Method"].includes("\u9001\u6599")||e["Shipping Method"].includes("\u914d\u9001"))&&"\u7279\uff71\uff80\uff9e_\u30aa\u30c0"!==e["Lineitem sku"]&&"\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u30a2\u30c0\u30d7\u30bf\u30fc"!==e["Lineitem sku"]&&"\u4fdd\u8a3c\u5916\u4fee\u7406\u30b5\u30fc\u30d3\u30b9"!==e["Lineitem sku"]&&!(null!==(t=e["Lineitem name"])&&void 0!==t&&t.includes("\u30c6\u30b9\u30c8"))&&"0"!==e["Lineitem price"]&&"0"===e["Outstanding Balance"]&&void 0===e["Cancelled at"]})),n=t.filter((e=>"\u7279\u6b8a\u30a2\u30c0\u30d7\u30bf\u30fc"===e["Lineitem sku"])),o=t.filter((e=>"0"!==e["Outstanding Balance"])).reduce(((e,t)=>e.some((e=>e.Name===t.Name))?e:e.concat([t])),[]),a=r.map((e=>({product:e["Lineitem sku"],productAmount:Number(e["Lineitem quantity"])}))).reduce(((e,t)=>{const r=e.find((e=>e.product===t.product));return r?r.productAmount+=t.productAmount:e.push(t),e}),[]).sort(((e,t)=>e.product<t.product?1:e.product>t.product?-1:1));return[(i=r,[...i].sort(((e,t)=>e["Lineitem sku"]<t["Lineitem sku"]?1:e["Lineitem sku"]>t["Lineitem sku"]?-1:1)).map((e=>{const t=(e["Shipping Street"]||"").replaceAll(" ","").replaceAll(",","").replaceAll("\u3000","");return{"\u304a\u5ba2\u69d8\u7ba1\u7406\u756a\u53f7\u534a\u89d2\u82f1\u6570\u5b5750\u6587\u5b57":e.Name,"\u8a18\u4e8b \u5168\u89d2/\u534a\u89d2 22\u6587\u5b57/44\u6587\u5b57":e.Name,"\u9001\u308a\u72b6\u7a2e\u985e":e["Shipping Method"],"\u54c1\u540d":`${e["Lineitem sku"]}x${e["Lineitem quantity"]}`,"\u304a\u5c4a\u3051\u5148\u96fb\u8a71\u756a\u53f7 \u534a\u89d2\u6570\u5b5715\u6587\u5b57\u30cf\u30a4\u30d5\u30f3\u542b\u3080 (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":e["Shipping Phone"],"\u304a\u5c4a\u3051\u5148\u90f5\u4fbf\u756a\u53f7 \u534a\u89d2\u6570\u5b578\u6587\u5b57 \u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6587\u5b57\u3082\u53ef (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":e["Shipping Zip"],"\u304a\u5c4a\u3051\u5148\u4f4f\u6240 \u5168\u89d2/\u534a\u89d2 \u90fd\u9053\u5e9c\u770c\uff08\uff14\u6587\u5b57\uff09 \u5e02\u533a\u90e1\u753a\u6751\uff08\uff11\uff12\u6587\u5b57\uff09 \u753a\u30fb\u756a\u5730\uff08\uff11\uff16\u6587\u5b57\uff09":(e["Shipping Province Name"]||"")+(e["Shipping City"]||"").replaceAll(" ","").replace("N/A","")+t.substring(0,16),"\u304a\u5c4a\u3051\u5148\u30a2\u30d1\u30fc\u30c8\u30de\u30f3\u30b7\u30e7\u30f3\u540d \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57":t.substring(16,32),"\u304a\u5c4a\u3051\u5148\u4f1a\u793e\u30fb\u90e8\u9580\uff11 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57":t.substring(32),"\u304a\u5c4a\u3051\u5148\u4f1a\u793e\u30fb\u90e8\u9580\uff12 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57":e["Shipping Company"],"\u304a\u5c4a\u3051\u5148\u540d \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57  (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":e["Shipping Name"]||""}})).map((e=>{const t="\u304a\u5c4a\u3051\u5148\u96fb\u8a71\u756a\u53f7 \u534a\u89d2\u6570\u5b5715\u6587\u5b57\u30cf\u30a4\u30d5\u30f3\u542b\u3080 (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\uff24\uff2d\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)";return e[t]&&(e[t]=e[t].replaceAll("+81","0").replaceAll("+80","0").replaceAll("+86","0").replace(/[^\d]/g,"")),e["\u9001\u308a\u72b6\u7a2e\u985e"]&&(e["\u9001\u308a\u72b6\u7a2e\u985e"]=8),e})).reduce(((e,t)=>{const r=e.find((e=>e["\u304a\u5ba2\u69d8\u7ba1\u7406\u756a\u53f7\u534a\u89d2\u82f1\u6570\u5b5750\u6587\u5b57"]===t["\u304a\u5ba2\u69d8\u7ba1\u7406\u756a\u53f7\u534a\u89d2\u82f1\u6570\u5b5750\u6587\u5b57"]));return r?r["\u54c1\u540d"]=`${r["\u54c1\u540d"]} ${t["\u54c1\u540d"]}`:e.push(t),e}),[]).map((e=>({...e,"\u54c1\u540d\uff11 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57":e["\u54c1\u540d"].substring(0,25),"\u54c1\u540d\uff12 \u5168\u89d2/\u534a\u89d2 25\u6587\u5b57/50\u6587\u5b57":e["\u54c1\u540d"].substring(25),"\u51fa\u8377\u4e88\u5b9a\u65e5 \u534a\u89d210\u6587\u5b57 \uff62YYYY/MM/DD\uff63\u3067\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002":(new Date).toISOString().slice(0,10).replace(/-/g,"/"),"\u3054\u4f9d\u983c\u4e3b\u96fb\u8a71\u756a\u53f7 \u534a\u89d2\u6570\u5b5715\u6587\u5b57\u30cf\u30a4\u30d5\u30f3\u542b\u3080":"0","\u3054\u4f9d\u983c\u4e3b\u90f5\u4fbf\u756a\u53f7 \u534a\u89d2\u6570\u5b578\u6587\u5b57 \u30cf\u30a4\u30d5\u30f3\u306a\u3057\u534a\u89d27\u6587\u5b57\u3082\u53ef":"104-0042","\u3054\u4f9d\u983c\u4e3b\u4f4f\u6240 \u5168\u89d2/\u534a\u89d232\u6587\u5b57/64\u6587\u5b57 \u90fd\u9053\u5e9c\u770c\uff08\uff14\u6587\u5b57\uff09 \u5e02\u533a\u90e1\u753a\u6751\uff08\uff11\uff12\u6587\u5b57\uff09 \u753a\u30fb\u756a\u5730\uff08\uff11\uff16\u6587\u5b57\uff09 (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":"\u6771\u4eac\u90fd\u4e2d\u592e\u533a\u5165\u8239\uff11\u2212\uff19\u2212\uff18","\u3054\u4f9d\u983c\u4e3b\u30a2\u30d1\u30fc\u30c8\u30de\u30f3\u30b7\u30e7\u30f3 \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57":"\u30d4\u30a8\u30ce\u30a2\u30fc\u30af\u5165\u8239\uff15\u968e","\u3054\u4f9d\u983c\u4e3b\u540d \u5168\u89d2/\u534a\u89d2 16\u6587\u5b57/32\u6587\u5b57  (\u203b\u5b85\u6025\u4fbf_\u5fc5\u9808\u9805\u76ee) (\u203b\u30cd\u30b3\u30dd\u30b9_\u5fc5\u9808\u9805\u76ee)":"CANDY HOUSE, Inc.","\u8377\u6271\u3044\uff11 \u5168\u89d2/\u534a\u89d2 10\u6587\u5b57/20\u6587\u5b57":"\u7cbe\u5bc6\u6a5f\u5668","\u8377\u6271\u3044\uff12 \u5168\u89d2/\u534a\u89d2 10\u6587\u5b57/20\u6587\u5b57":"\u4e0b\u7a4d\u53b3\u7981","\u8acb\u6c42\u5148\u9867\u5ba2\u30b3\u30fc\u30c9 \u534a\u89d2\u6570\u5b5712\u6587\u5b57":"08039113625","\u904b\u8cc3\u7ba1\u7406\u756a\u53f7":"01","\u304a\u5c4a\u3051\u4e88\u5b9a\uff45\u30e1\u30fc\u30eb 1 : \u5229\u7528\u3059\u308b":"0","\u5165\u529b\u6a5f\u7a2e":"0"})))),a,n,o];var i})(l);n(u),a({start:o,end:i}),c(f),s(p),d(h),gP(u,"yamato_b2.csv",mP)};return(0,qh.jsx)(ym,{sx:{p:2},children:(0,qh.jsxs)(JI,{sx:{p:2},children:[(0,qh.jsxs)(ym,{sx:{p:4,textAlign:"center",border:"2px dashed",borderColor:"primary.main",borderRadius:"6px",cursor:"pointer"},onClick:()=>{var t;return null===(t=e.current)||void 0===t?void 0:t.click()},onDragOver:e=>e.preventDefault(),onDrop:async e=>{e.preventDefault(),await f(Array.from(e.dataTransfer.files)[0])},children:[(0,qh.jsx)(TP,{color:"primary"}),(0,qh.jsx)(Bh.A,{children:"DROP HERE(order_export.csv)"}),(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"info.light"},children:"or click to choose a CSV file"}),(0,qh.jsx)("input",{ref:e,type:"file",accept:".csv,text/csv",hidden:!0,onChange:async e=>{var t;await f(null===(t=e.target.files)||void 0===t?void 0:t[0]),e.target.value=""}})]}),r.length>0&&(0,qh.jsx)(QI.A,{sx:{mt:2},startIcon:(0,qh.jsx)(dP,{}),onClick:()=>gP(r,"yamato_b2.csv",mP),children:"Yamato CSV"}),(0,qh.jsx)(mM,{sx:{my:2}}),(0,qh.jsx)(Bh.A,{sx:{color:"primary.main"},children:"\u51fa\u8ca8\u7d71\u8a08"}),l.map((e=>(0,qh.jsxs)(Bh.A,{children:[e.product,":",e.productAmount]},e.product))),(0,qh.jsxs)(Bh.A,{children:["\u7d50\u675f\u55ae\u865f\uff1a",o.start]}),(0,qh.jsxs)(Bh.A,{children:["\u958b\u59cb\u55ae\u865f\uff1a",o.end]}),0!==i.length&&(0,qh.jsx)(Bh.A,{sx:{mt:2,color:"primary.main"},children:"\u4f8b\u5916\u72c0\u6cc1"}),i.map(((e,t)=>(0,qh.jsxs)(Bh.A,{children:[e.Name,":",e["Lineitem sku"]]},`${e.Name}-${t}`))),0!==u.length&&(0,qh.jsx)(Bh.A,{sx:{mt:2,color:"primary.main"},children:"\u66f4\u52d5\u8a02\u55ae\u60c5\u6cc1"}),u.map(((e,t)=>(0,qh.jsx)(Bh.A,{children:e.Name},`${e.Name}-${t}`)))]})})},MP=()=>{var e,r;const n=hg(),{gAuth:o,gStripe:a,gMediaType:i,gManageEmployee:s,setSnackbarValue:l}=(0,t.useContext)(VI),[c,u]=(0,t.useState)(!1),[d,f]=(0,t.useState)(null),p=i.isMobile,h=a.isFromApp,m={position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:p?"90%":500,bgcolor:"background.paper",borderRadius:"5px",padding:4},g="180px",v="60px",y="60px",[b,w]=(0,t.useState)(null),[x,S]=(0,t.useState)(!1),[A,k]=(0,t.useState)(!1),[C,I]=(0,t.useState)(""),E=()=>S(!1),D=dg(),T=Fk&&PT.includes(D.pathname),O=e=>t=>{(!t||"keydown"!==t.type||"Tab"!==t.key&&"Shift"!==t.key)&&u(e)};(0,t.useEffect)((()=>{x&&I("")}),[a.customerInfo.name,x]);const M=(0,t.useMemo)((()=>e=>{let{onItemClick:t}=e;return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)($T.A,{disablePadding:!0,children:(0,qh.jsx)(lO,{component:"a",style:{textDecoration:"none",color:"#111111",height:y},onClick:()=>{window.open(YD.url,"_blank")},children:(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",overflow:"hidden"},children:(0,qh.jsx)("img",{src:GT,width:30,height:30,alt:"icon"})})})}),(0,qh.jsx)(XM,{location:D,onClick:t})]})}),[D.pathname,y]);return(0,qh.jsx)(PM,{children:(0,qh.jsxs)(ym,{sx:T?{position:"fixed",inset:0,display:"flex",flexDirection:"column",overflow:"hidden"}:void 0,children:[(0,qh.jsxs)(EO,{container:!0,sx:T?{flex:1,minHeight:0,minWidth:0,overflowY:"auto",overflowX:"hidden",overscrollBehaviorX:"none"}:{minHeight:"100%"},children:[(0,qh.jsxs)(MO,{position:"fixed",elevation:0,sx:{color:"#111111",backgroundColor:"#F1F1F1",display:h?"none":"block"},children:[(0,qh.jsxs)(PO.A,{variant:"dense",sx:{width:"100%",justifyContent:"space-between",alignItems:"center",height:y,minHeight:"unset"},children:[(0,qh.jsx)(ym,{sx:{display:"inline-flex"},children:p?(0,qh.jsx)(cE.A,{edge:"start",color:"inherit","aria-label":"menu",onClick:O(!0),children:(0,qh.jsx)(KT,{})}):(0,qh.jsx)(OM,{})}),(0,qh.jsxs)(ym,{sx:{display:"inline-flex",alignItems:"center"},children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:(null===(e=a.customerInfo)||void 0===e?void 0:e.name)||""}),(0,qh.jsx)(JM,{}),(0,qh.jsx)(QT,{onClick:e=>w(e.currentTarget)})]}),(0,qh.jsxs)(jO.A,{id:"basic-menu",anchorEl:b,open:Boolean(b),onClose:()=>{w(null)},MenuListProps:{"aria-labelledby":"basic-button"},sx:{borderRadius:"0px"},children:[a.companies.map(((e,t)=>{var r,o;return(0,qh.jsx)(ym,{children:(0,qh.jsxs)(RO.A,{value:e.companyID,onClick:t=>{localStorage.setItem("curLogin",e.companyID),a.getCustomerInfo(e.companyID),w(null),n(e.isSesameApp?"/":"/biz")},sx:{display:"flex",alignItems:"center",padding:"8px 16px"},children:[(0,qh.jsx)(ym,{sx:{width:"24px",display:"flex",justifyContent:"center",marginRight:"8px"},children:e.companyID===a.customerInfo.companyID&&!(null!==(r=a.customerInfo)&&void 0!==r&&null!==(o=r.tag)&&void 0!==o&&o.includes("\u30b2\u30b9\u30c8"))&&(0,qh.jsx)(eT,{})}),(0,qh.jsx)(ym,{sx:{width:"24px",marginRight:"8px",display:"flex",justifyContent:"center"},children:e.isSesameApp?(0,qh.jsx)(XT,{sx:{color:"#333333"}}):(0,qh.jsx)(JT,{sx:{color:"#333333",fontSize:"20px"}})}),(0,qh.jsx)(Bh.A,{children:e.name})]})},e.companyID)})),(0,qh.jsxs)(RO.A,{onClick:()=>{S(!0)},sx:{paddingLeft:"50px"},children:[(0,qh.jsx)(ZT,{sx:{fontSize:"14px",mr:"5px"}}),"\u65b0\u898f\u4f1a\u793e\u767b\u9332"]}),(0,qh.jsx)(mM,{}),!(null===(r=a.customerInfo)||void 0===r||!r.isCS)&&[(0,qh.jsx)(RO.A,{sx:{padding:"10px 50px"},onClick:()=>{w(null),f("search")},children:"\ud83d\udd0d \ud83e\uddd0 \ud83d\udd0e"},"cs-search"),(0,qh.jsx)(RO.A,{sx:{padding:"10px 50px"},onClick:()=>{w(null),f("repair")},children:"\ud83d\udee0\ufe0f CSV"},"cs-repair"),(0,qh.jsx)(RO.A,{sx:{padding:"10px 50px"},onClick:()=>{w(null),f("yamatoShipping")},children:"\ud83d\ude9b Yamato CSV"},"cs-yamato")],(0,qh.jsx)(RO.A,{sx:{padding:"10px 50px"},onClick:()=>{o.handleSignout()},children:"\u30ed\u30b0\u30a2\u30a6\u30c8"})]})]}),(0,qh.jsx)(hy.A,{open:x,onClose:(e,t)=>{"backdropClick"!==t&&E()},children:(0,qh.jsx)(ym,{sx:m,children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{fontWeight:"bold",paddingBottom:"16px"},children:"\u65b0\u898f\u4f1a\u793e\u767b\u9332"}),(0,qh.jsxs)(ym,{fullWidth:"true",sx:{display:"flex",mt:"5px",flexDirection:p?"column":"row",alignItems:p?"flex-start":"center"},children:[(0,qh.jsx)(Bh.A,{sx:{mr:"5px",mb:p?"5px":"0"},children:"\u4f1a\u793e\u540d"}),(0,qh.jsx)(GD.A,{required:!0,size:"small",sx:{border:"1px solid #F1F1F1",borderRadius:"5px",width:p?"100%":"60%"},value:C,onChange:e=>{I(e.target.value)},onKeyDown:e=>{e.stopPropagation()}})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",mt:"10px"},children:[(0,qh.jsx)(QI.A,{disabled:A,size:"small",sx:{mr:"10px"},onClick:()=>{S(!1),w(null)},children:"\u30ad\u30e3\u30f3\u30bb\u30eb"}),(0,qh.jsx)(RE,{loading:A,disableElevation:!0,size:"small",variant:"contained",sx:{color:"white",minWidth:"120px"},disabled:""===C,onClick:()=>{k(!0),a.addCompany(C,a.customerInfo.employeeEmail,a.customerInfo.subUUID,(e=>{k(!1),E(),I("")}))},children:"\u4f1a\u793e\u3092\u767b\u9332"})]})]})})})]}),p||h?(0,qh.jsx)(QO,{anchor:"left",open:p&&c,onClose:O(!1),PaperProps:{sx:{overflowY:"auto","&::-webkit-scrollbar":{display:"none"},scrollbarWidth:"none",msOverflowStyle:"none"}},children:(0,qh.jsxs)(ym,{sx:{width:250},role:"presentation",children:[(0,qh.jsx)(M,{onItemClick:p?O(!1):void 0}),(0,qh.jsx)(_M,{})]})}):(0,qh.jsxs)(EO,{className:"Navi",sx:{height:"100%",width:g,position:"fixed",left:"0px",top:"0px",display:"flex",flexDirection:"column"},children:[(0,qh.jsx)(M,{}),(0,qh.jsx)(_M,{})]}),(0,qh.jsx)(EO,{className:"child",sx:{marginTop:h?0:v,marginLeft:p||h?"0":g,width:p||h?"100%":`calc(100% - ${g})`,height:Fk?"auto":h?"100vh":`calc(100vh - ${v})`,minHeight:T?"100%":Fk?"100dvh":void 0,minWidth:0,position:T?"relative":void 0},children:(0,qh.jsx)(Mg,{})})]},T?D.pathname:void 0),Fk&&(0,qh.jsx)(VT,{}),a.isPending&&(0,qh.jsx)(EO,{sx:{position:"fixed",margin:"auto auto",zIndex:"999",left:0,right:0,top:0,bottom:0,backgroundColor:"white"},children:(0,qh.jsx)(MM,{})}),(0,qh.jsx)(aM,{open:Boolean(d),onClose:()=>f(null),PaperProps:{sx:{p:2,borderRadius:"5px",width:"80vw",height:{xs:"min(70vh, 420px)",sm:420},minWidth:360,minHeight:{xs:420,sm:280},maxWidth:"calc(100vw - 32px)",maxHeight:"calc(100vh - 32px)",boxSizing:"border-box",overflow:"hidden",resize:"both",m:{xs:2,sm:4}}},children:(0,qh.jsxs)(uM,{sx:{p:0,height:"100%",overflow:"auto"},children:["search"===d&&(0,qh.jsx)(uP,{open:"search"===d,gManageEmployee:s,setSnackbarValue:l,onClose:()=>f(null)}),"repair"===d&&(0,qh.jsx)(DP,{gManageEmployee:s,setSnackbarValue:l}),"yamatoShipping"===d&&(0,qh.jsx)(OP,{})]})})]})})};var PP=r(84431);const jP="function"===typeof(0,PP.Dp)({}),RP=(e,t)=>({WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",boxSizing:"border-box",WebkitTextSizeAdjust:"100%",...t&&!e.vars&&{colorScheme:e.palette.mode}}),_P=e=>({color:(e.vars||e).palette.text.primary,...e.typography.body1,backgroundColor:(e.vars||e).palette.background.default,"@media print":{backgroundColor:(e.vars||e).palette.common.white}}),NP=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const r={};t&&e.colorSchemes&&"function"===typeof e.getColorSchemeSelector&&Object.entries(e.colorSchemes).forEach((t=>{let[n,o]=t;const a=e.getColorSchemeSelector(n);a.startsWith("@")?r[a]={":root":{colorScheme:o.palette?.mode}}:r[a.replace(/\s*&/,"")]={colorScheme:o.palette?.mode}}));let n={html:RP(e,t),"*, *::before, *::after":{boxSizing:"inherit"},"strong, b":{fontWeight:e.typography.fontWeightBold},body:{margin:0,..._P(e),"&::backdrop":{backgroundColor:(e.vars||e).palette.background.default}},...r};const o=e.components?.MuiCssBaseline?.styleOverrides;return o&&(n=[n,o]),n},LP="mui-ecs",UP=(0,PP.Dp)(jP?e=>{let{theme:t,enableColorScheme:r}=e;return NP(t,r)}:e=>{let{theme:t}=e;return(e=>{const t=NP(e,!1),r=Array.isArray(t)?t[0]:t;return!e.vars&&r&&(r.html[`:root:has(${LP})`]={colorScheme:e.palette.mode}),e.colorSchemes&&Object.entries(e.colorSchemes).forEach((t=>{let[n,o]=t;const a=e.getColorSchemeSelector(n);a.startsWith("@")?r[a]={[`:root:not(:has(.${LP}))`]:{colorScheme:o.palette?.mode}}:r[a.replace(/\s*&/,"")]={[`&:not(:has(.${LP}))`]:{colorScheme:o.palette?.mode}}})),t})(t)});const BP=function(e){const r=(0,im.b)({props:e,name:"MuiCssBaseline"}),{children:n,enableColorScheme:o=!1}=r;return(0,qh.jsxs)(t.Fragment,{children:[jP&&(0,qh.jsx)(UP,{enableColorScheme:o}),!jP&&!o&&(0,qh.jsx)("span",{className:LP,style:{display:"none"}}),n]})},FP=()=>{const e=hg();return(0,qh.jsx)(EO,{container:!0,spacing:1,sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh",padding:1},children:(0,qh.jsxs)(JI,{sx:{minWidth:275},children:[" ",(0,qh.jsxs)(lE,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%"},children:[(0,qh.jsx)(Bh.A,{children:"\u3053\u306e\u30da\u30fc\u30b8\u3092\u95b2\u89a7\u3059\u308b\u6a29\u9650\u304c\u3042\u308a\u307e\u305b\u3093"}),(0,qh.jsx)(QI.A,{onClick:()=>{e("/")},children:"\u30db\u30fc\u30e0\u306b\u623b\u308b"})]})]})})},zP=(0,dD.A)((0,qh.jsx)("path",{d:"M3 11h8V3H3zm2-6h4v4H5zM3 21h8v-8H3zm2-6h4v4H5zm8-12v8h8V3zm6 6h-4V5h4zm0 10h2v2h-2zm-6-6h2v2h-2zm2 2h2v2h-2zm-2 2h2v2h-2zm2 2h2v2h-2zm2-2h2v2h-2zm0-4h2v2h-2zm2 2h2v2h-2z"}),"QrCode"),WP=(0,dD.A)((0,qh.jsx)("path",{d:"M21 10h-8.35C11.83 7.67 9.61 6 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6c2.61 0 4.83-1.67 5.65-4H13l2 2 2-2 2 2 4-4.04zM7 15c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3"}),"Key"),HP=(0,dD.A)((0,qh.jsx)("path",{d:"M17 1.01 7 1c-1.1 0-2 .9-2 2v18c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99-2-1.99M17 19H7V5h10z"}),"Smartphone"),YP=(0,dD.A)((0,qh.jsx)("path",{d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96M17 13l-5 5-5-5h3V9h4v4z"}),"CloudDownload"),VP=(0,dD.A)((0,qh.jsx)("path",{d:"M18 2h-8L4 8v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2m-6 15-4-4h3V9.02L13 9v4h3z"}),"SimCardDownload");function GP(e){return(0,oy.Ay)("MuiFab",e)}const ZP=(0,mm.A)("MuiFab",["root","primary","secondary","extended","circular","focusVisible","disabled","colorInherit","sizeSmall","sizeMedium","sizeLarge","info","error","warning","success"]),QP=(0,am.Ay)($E.A,{name:"MuiFab",slot:"Root",shouldForwardProp:e=>(0,JE.A)(e)||"classes"===e,overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.variant],t[`size${(0,ey.A)(r.size)}`],"inherit"===r.color&&t.colorInherit,t[(0,ey.A)(r.size)],t[r.color]]}})((0,qv.A)((e=>{let{theme:t}=e;return{...t.typography.button,minHeight:36,transition:t.transitions.create(["background-color","box-shadow","border-color"],{duration:t.transitions.duration.short}),borderRadius:"50%",padding:0,minWidth:0,width:56,height:56,zIndex:(t.vars||t).zIndex.fab,boxShadow:(t.vars||t).shadows[6],"&:active":{boxShadow:(t.vars||t).shadows[12]},color:t.vars?t.vars.palette.text.primary:t.palette.getContrastText?.(t.palette.grey[300]),backgroundColor:(t.vars||t).palette.grey[300],"&:hover":{backgroundColor:(t.vars||t).palette.grey.A100,"@media (hover: none)":{backgroundColor:(t.vars||t).palette.grey[300]},textDecoration:"none"},[`&.${ZP.focusVisible}`]:{boxShadow:(t.vars||t).shadows[6]},variants:[{props:{size:"small"},style:{width:40,height:40}},{props:{size:"medium"},style:{width:48,height:48}},{props:{variant:"extended"},style:{borderRadius:24,padding:"0 16px",width:"auto",minHeight:"auto",minWidth:48,height:48}},{props:{variant:"extended",size:"small"},style:{width:"auto",padding:"0 8px",borderRadius:17,minWidth:34,height:34}},{props:{variant:"extended",size:"medium"},style:{width:"auto",padding:"0 16px",borderRadius:20,minWidth:40,height:40}},{props:{color:"inherit"},style:{color:"inherit"}}]}})),(0,qv.A)((e=>{let{theme:t}=e;return{variants:[...Object.entries(t.palette).filter((0,pE.A)(["dark","contrastText"])).map((e=>{let[r]=e;return{props:{color:r},style:{color:(t.vars||t).palette[r].contrastText,backgroundColor:(t.vars||t).palette[r].main,"&:hover":{backgroundColor:(t.vars||t).palette[r].dark,"@media (hover: none)":{backgroundColor:(t.vars||t).palette[r].main}}}}}))]}})),(0,qv.A)((e=>{let{theme:t}=e;return{[`&.${ZP.disabled}`]:{color:(t.vars||t).palette.action.disabled,boxShadow:(t.vars||t).shadows[0],backgroundColor:(t.vars||t).palette.action.disabledBackground}}}))),KP=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiFab"}),{children:n,className:o,color:a="default",component:i="button",disabled:s=!1,disableFocusRipple:l=!1,focusVisibleClassName:c,size:u="large",variant:d="circular",...f}=r,p={...r,color:a,component:i,disabled:s,disableFocusRipple:l,size:u,variant:d},h=(e=>{const{color:t,variant:r,classes:n,size:o}=e,a={root:["root",r,`size${(0,ey.A)(o)}`,"inherit"===t?"colorInherit":t]},i=(0,zv.A)(a,GP,n);return{...n,...i}})(p);return(0,qh.jsx)(QP,{className:(0,Fh.A)(h.root,o),component:i,disabled:s,focusRipple:!l,focusVisibleClassName:(0,Fh.A)(h.focusVisible,c),ownerState:p,ref:t,...f,classes:h,children:n})})),XP=(0,t.forwardRef)(((e,r)=>{let{children:n,popupComponent:o,isMobile:a=!1,onClose:i}=e;const[s,l]=(0,t.useState)(!1),c=a&&o,u=()=>{l(!0)},d=()=>{l(!1),i&&i()};return(0,t.useImperativeHandle)(r,(()=>({handleClose:d,handleOpen:u})),[s]),(0,qh.jsxs)(qh.Fragment,{children:[n,c&&(0,qh.jsx)(KP,{onClick:u,sx:{position:"fixed",bottom:16,right:16,zIndex:1e3,bgcolor:"white","&:hover":{bgcolor:"white"},boxShadow:"0px 3px 5px -1px rgba(0,0,0,0.2), 0px 6px 10px 0px rgba(0,0,0,0.14), 0px 1px 18px 0px rgba(0,0,0,0.12)"},children:(0,qh.jsx)(ZT,{color:"primary"})}),o&&(0,qh.jsx)(aM,{open:s,onClose:d,PaperProps:{sx:{minWidth:a?"280px":"60%",width:"90%",maxHeight:"65%",bgcolor:"background.paper",borderRadius:"5px",padding:0,overflow:"auto"}},children:(0,qh.jsxs)(ym,{sx:{position:"relative",p:2},children:[(0,qh.jsx)(cE.A,{onClick:d,sx:{position:"absolute",right:0,top:0,zIndex:1},children:(0,qh.jsx)(tT,{})}),o]})})]})})),JP=e=>["sesame_2","sesame_4","sesame_5","sesame_5_pro","sesame_5_us","sesame_6","sesame_6_pro","sesame_6_pro_slidingdoor","BLE_Connector_1","sesame_miwa"].includes(e),$P=e=>["bot_2","bot_3"].includes(e),qP=e=>["ssmbot_1","bot_2","bot_3"].includes(e),ej=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return Array.from({length:10},((r,n)=>{var o,a;const i=e.find((e=>Number(e.actionIndex)===n));return{id:n,name:(null===i||void 0===i?void 0:i.alias)||`\ud83c\udfac ${(null===(o=t[n])||void 0===o?void 0:o.name)||n}`,displayOrder:null!==(a=null===i||void 0===i?void 0:i.displayOrder)&&void 0!==a?a:n,isDefault:1===(null===i||void 0===i?void 0:i.isDefault)}})).sort(((e,t)=>e.displayOrder-t.displayOrder||e.id-t.id))},tj=(e,t)=>uT("botScript",t,{deviceUUID:e}),rj=new Map;function nj(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const o=e.toUpperCase();if(rj.has(o))return rj.get(o);const a=(async()=>{n&&await tj(o,{deleteAll:!0});const e=Array.from({length:10},((e,o)=>{var a,i;const s=n?null:t.find((e=>Number(e.actionIndex)===o));return{actionIndex:String(o),alias:(null===s||void 0===s?void 0:s.alias)||`\ud83c\udfac ${o}`,displayOrder:null!==(a=null===s||void 0===s?void 0:s.displayOrder)&&void 0!==a?a:o,isDefault:null!==(i=null===s||void 0===s?void 0:s.isDefault)&&void 0!==i?i:o===r?1:0}}));for(const r of e){const e=n?null:t.find((e=>e.actionIndex===r.actionIndex));null!==e&&void 0!==e&&e.alias&&null!=e.displayOrder&&null!=e.isDefault||await tj(o,r)}return e})().finally((()=>rj.delete(o)));return rj.set(o,a),a}const oj={wm_2:[],bike_1:[],bike_2:[],bike_3:["fingerprint"],ssm_touch:["card","fingerprint"],ssm_touch_2:["card","fingerprint"],ssm_touch_pro:["card","fingerprint","passcode"],ssm_touch_2_pro:["card","fingerprint","passcode"],sesame_face:["card","fingerprint","face","palm"],sesame_face_2:["card","fingerprint","face","palm"],sesame_face_3:["card","fingerprint","face","palm"],sesame_face_Pro:["card","fingerprint","passcode","face","palm"],ssm_face_2_pro:["card","fingerprint","passcode","face","palm"],sesame_face_ai:["face","palm"],sesame_face_2_ai:["face","palm"],sesame_face_pro_ai:["passcode","face","palm"],sesame_face_2_pro_ai:["passcode","face","palm"],remote:[],remote_nano:[],open_sensor_1:[],open_sensor_2:[]},aj=(Object.keys(oj),e=>Object.hasOwn(oj,e)),ij=e=>oj[e]||[],sj=e=>["bike_1","bike_2","bike_3"].includes(e),lj=["sesame_face_2","ssm_face_2_pro","sesame_face_2_ai","sesame_face_2_pro_ai"],cj=e=>lj.includes(e)?83:51,uj=e=>lj.includes(e)?[[30,65],[60,50],[80,36],[100,30]]:[[30,116],[60,44],[80,31],[100,23]],dj=e=>uj(e)[3][1],fj=Math.fround;function pj(e,t){const r=Math.max(0,Math.min(100,t)),n=uj(e),o=n[0][1];if(r<=30){const e=fj(fj(r)/fj(30));return Math.round(fj(512+fj(e*(o-512))))}if(r>=100)return dj(e);for(let a=0;a<n.length-1;a++){const[e,t]=n[a],[o,i]=n[a+1];if(r>=e&&r<=o){const n=fj(fj(r-e)/(o-e));return Math.trunc(fj(t+fj(n*(i-t))))}}return o}const hj={card:"manageCard",fingerprint:"manageFingerprint",passcode:"managePasscode",face:"manageFace",palm:"managePalmVeins"},mj=e=>"card"===e?"nfc_card":e;function gj(e){const t=e.rawName||"",r=t.replace(/-/g,""),n=/^[0-9a-f]{8}(?:-[0-9a-f]{4}){3}-[0-9a-f]{12}$/i.test(t)||/^[0-9a-f]{12}4[0-9a-f]{3}[89ab][0-9a-f]{15}$/i.test(r),o=n?`${r.slice(0,8)}-${r.slice(8,12)}-${r.slice(12,16)}-${r.slice(16,20)}-${r.slice(20)}`.toLowerCase():"";let a="";return!n&&/^(?:[0-9a-f]{2})+$/i.test(t)&&(a=(new TextDecoder).decode(Uint8Array.from(t.match(/../g),(e=>parseInt(e,16)))).replace(/\0+$/,"")),{credentialId:e.credentialId,nameUUID:o,name:a,type:e.type}}function vj(e,t){if("card"===e){const e=t.slice(0,32).padEnd(32,"f").toLowerCase();return`${e.slice(0,8)}-${e.slice(8,12)}-${e.slice(12,16)}-${e.slice(16,20)}-${e.slice(20)}`}return"passcode"===e?[...t].filter(((e,t)=>t%2===1)).join(""):String(parseInt(t.slice(0,2),16)+("fingerprint"===e?1:0)).padStart(3,"0")}function yj(e,r){var n,o,a,i,s;const{t:l}=Fv(),{gManageDevice:c,setSnackbarValue:u}=(0,t.useContext)(VI),d=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot)[e.toUpperCase()],f=c.companyDevices.find((t=>t.deviceUUID.toUpperCase()===e.toUpperCase())),p=(null===f||void 0===f||null===(n=f.stateInfo)||void 0===n?void 0:n.scriptList)||[],h=(0,t.useRef)();h.current={metadata:p,device:f,gManageDevice:c};const m=t=>{var r;const n=h.current;n.metadata=t,n.gManageDevice.updateDeviceState({deviceUUID:(null===(r=n.device)||void 0===r?void 0:r.deviceUUID)||e,stateInfo:{scriptList:t}})},g=Fk&&$P(r||(null===f||void 0===f?void 0:f.deviceModel)),v=g&&(null===d||void 0===d?void 0:d.bleConnected),y=10===(null===d||void 0===d||null===(o=d.scripts)||void 0===o?void 0:o.length);(0,t.useEffect)((()=>{var t;if(!v||!y||!c.devicesLoaded)return;let r=!0;return nj(e,h.current.metadata,null!==(t=d.scriptIndex)&&void 0!==t?t:0).then((e=>{r&&m(e)})).catch((()=>{r&&u({open:!0,msg:l("lockSettings.failed"),severity:"error"})})),()=>{r=!1}}),[e,v,y,c.devicesLoaded]);const b=ej(p,null===d||void 0===d?void 0:d.scripts),w=null!==(a=null!==(i=null===(s=b.find((e=>e.isDefault)))||void 0===s?void 0:s.id)&&void 0!==i?i:null===d||void 0===d?void 0:d.scriptIndex)&&void 0!==a?a:0,x=async(t,r)=>{const n=b.find((e=>e.id===t));await tj(e,{actionIndex:String(t),displayOrder:n.displayOrder,...r});const o=ej(h.current.metadata,null===d||void 0===d?void 0:d.scripts).map((e=>({actionIndex:String(e.id),alias:e.name,displayOrder:e.displayOrder,isDefault:1===r.isDefault?Number(e.id===t):Number(e.isDefault),...e.id===t?r:{}})));m(o)};return{scripts:b,selected:w,select:async t=>{await Yk.request("botSettings",{deviceUUID:e,operation:"select",index:t}),await x(t,{isDefault:1})},save:x,reorder:async t=>{await tj(e,{batchDisplayOrders:t.map(((e,t)=>({actionIndex:String(e),displayOrder:t})))}),m(b.map((e=>({actionIndex:String(e.id),alias:e.name,isDefault:Number(e.isDefault),displayOrder:t.indexOf(e.id)}))))},connected:v,enabled:g}}const bj={WebkitTapHighlightColor:"transparent","& .MuiTouchRipple-root":{display:"none"},'& button, & [role="button"]':{WebkitTapHighlightColor:"transparent",outline:"none"},"& .MuiButton-root:hover, & .MuiIconButton-root:hover, & .MuiSwitch-switchBase:hover":{backgroundColor:"transparent"},"& .MuiListItemButton-root:hover, & .MuiListItemButton-root.Mui-focusVisible":{backgroundColor:"transparent"}},wj=(0,dD.A)((0,qh.jsx)("path",{d:"M8 5v14l11-7z"}),"PlayArrow");var xj=r(17119);const Sj="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement;function Aj(e){const t=Object.prototype.toString.call(e);return"[object Window]"===t||"[object global]"===t}function kj(e){return"nodeType"in e}function Cj(e){var t,r;return e?Aj(e)?e:kj(e)&&null!=(t=null==(r=e.ownerDocument)?void 0:r.defaultView)?t:window:window}function Ij(e){const{Document:t}=Cj(e);return e instanceof t}function Ej(e){return!Aj(e)&&e instanceof Cj(e).HTMLElement}function Dj(e){return e instanceof Cj(e).SVGElement}function Tj(e){return e?Aj(e)?e.document:kj(e)?Ij(e)?e:Ej(e)||Dj(e)?e.ownerDocument:document:document:document}const Oj=Sj?t.useLayoutEffect:t.useEffect;function Mj(e){const r=(0,t.useRef)(e);return Oj((()=>{r.current=e})),(0,t.useCallback)((function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return null==r.current?void 0:r.current(...t)}),[])}function Pj(e,r){void 0===r&&(r=[e]);const n=(0,t.useRef)(e);return Oj((()=>{n.current!==e&&(n.current=e)}),r),n}function jj(e,r){const n=(0,t.useRef)();return(0,t.useMemo)((()=>{const t=e(n.current);return n.current=t,t}),[...r])}function Rj(e){const r=Mj(e),n=(0,t.useRef)(null),o=(0,t.useCallback)((e=>{e!==n.current&&(null==r||r(e,n.current)),n.current=e}),[]);return[n,o]}function _j(e){const r=(0,t.useRef)();return(0,t.useEffect)((()=>{r.current=e}),[e]),r.current}let Nj={};function Lj(e,r){return(0,t.useMemo)((()=>{if(r)return r;const t=null==Nj[e]?0:Nj[e]+1;return Nj[e]=t,e+"-"+t}),[e,r])}function Uj(e){return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return n.reduce(((t,r)=>{const n=Object.entries(r);for(const[o,a]of n){const r=t[o];null!=r&&(t[o]=r+e*a)}return t}),{...t})}}const Bj=Uj(1),Fj=Uj(-1);function zj(e){if(!e)return!1;const{KeyboardEvent:t}=Cj(e.target);return t&&e instanceof t}function Wj(e){if(function(e){if(!e)return!1;const{TouchEvent:t}=Cj(e.target);return t&&e instanceof t}(e)){if(e.touches&&e.touches.length){const{clientX:t,clientY:r}=e.touches[0];return{x:t,y:r}}if(e.changedTouches&&e.changedTouches.length){const{clientX:t,clientY:r}=e.changedTouches[0];return{x:t,y:r}}}return function(e){return"clientX"in e&&"clientY"in e}(e)?{x:e.clientX,y:e.clientY}:null}const Hj=Object.freeze({Translate:{toString(e){if(!e)return;const{x:t,y:r}=e;return"translate3d("+(t?Math.round(t):0)+"px, "+(r?Math.round(r):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;const{scaleX:t,scaleY:r}=e;return"scaleX("+t+") scaleY("+r+")"}},Transform:{toString(e){if(e)return[Hj.Translate.toString(e),Hj.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:r,easing:n}=e;return t+" "+r+"ms "+n}}}),Yj="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function Vj(e){return e.matches(Yj)?e:e.querySelector(Yj)}const Gj={display:"none"};function Zj(e){let{id:r,value:n}=e;return t.createElement("div",{id:r,style:Gj},n)}function Qj(e){let{id:r,announcement:n,ariaLiveType:o="assertive"}=e;return t.createElement("div",{id:r,style:{position:"fixed",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"},role:"status","aria-live":o,"aria-atomic":!0},n)}const Kj=(0,t.createContext)(null);const Xj={draggable:"\n    To pick up a draggable item, press the space bar.\n    While dragging, use the arrow keys to move the item.\n    Press space again to drop the item in its new position, or press escape to cancel.\n  "},Jj={onDragStart(e){let{active:t}=e;return"Picked up draggable item "+t.id+"."},onDragOver(e){let{active:t,over:r}=e;return r?"Draggable item "+t.id+" was moved over droppable area "+r.id+".":"Draggable item "+t.id+" is no longer over a droppable area."},onDragEnd(e){let{active:t,over:r}=e;return r?"Draggable item "+t.id+" was dropped over droppable area "+r.id:"Draggable item "+t.id+" was dropped."},onDragCancel(e){let{active:t}=e;return"Dragging was cancelled. Draggable item "+t.id+" was dropped."}};function $j(e){let{announcements:r=Jj,container:n,hiddenTextDescribedById:o,screenReaderInstructions:a=Xj}=e;const{announce:i,announcement:s}=function(){const[e,r]=(0,t.useState)("");return{announce:(0,t.useCallback)((e=>{null!=e&&r(e)}),[]),announcement:e}}(),l=Lj("DndLiveRegion"),[c,u]=(0,t.useState)(!1);if((0,t.useEffect)((()=>{u(!0)}),[]),function(e){const r=(0,t.useContext)(Kj);(0,t.useEffect)((()=>{if(!r)throw new Error("useDndMonitor must be used within a children of <DndContext>");return r(e)}),[e,r])}((0,t.useMemo)((()=>({onDragStart(e){let{active:t}=e;i(r.onDragStart({active:t}))},onDragMove(e){let{active:t,over:n}=e;r.onDragMove&&i(r.onDragMove({active:t,over:n}))},onDragOver(e){let{active:t,over:n}=e;i(r.onDragOver({active:t,over:n}))},onDragEnd(e){let{active:t,over:n}=e;i(r.onDragEnd({active:t,over:n}))},onDragCancel(e){let{active:t,over:n}=e;i(r.onDragCancel({active:t,over:n}))}})),[i,r])),!c)return null;const d=t.createElement(t.Fragment,null,t.createElement(Zj,{id:o,value:a.draggable}),t.createElement(Qj,{id:l,announcement:s}));return n?(0,xj.createPortal)(d,n):d}var qj,eR;function tR(){}function rR(e,r){return(0,t.useMemo)((()=>({sensor:e,options:null!=r?r:{}})),[e,r])}function nR(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return(0,t.useMemo)((()=>[...r].filter((e=>null!=e))),[...r])}(eR=qj||(qj={})).DragStart="dragStart",eR.DragMove="dragMove",eR.DragEnd="dragEnd",eR.DragCancel="dragCancel",eR.DragOver="dragOver",eR.RegisterDroppable="registerDroppable",eR.SetDroppableDisabled="setDroppableDisabled",eR.UnregisterDroppable="unregisterDroppable";const oR=Object.freeze({x:0,y:0});function aR(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function iR(e,t){let{data:{value:r}}=e,{data:{value:n}}=t;return r-n}function sR(e,t){let{data:{value:r}}=e,{data:{value:n}}=t;return n-r}function lR(e){let{left:t,top:r,height:n,width:o}=e;return[{x:t,y:r},{x:t+o,y:r},{x:t,y:r+n},{x:t+o,y:r+n}]}function cR(e,t){if(!e||0===e.length)return null;const[r]=e;return t?r[t]:r}function uR(e,t,r){return void 0===t&&(t=e.left),void 0===r&&(r=e.top),{x:t+.5*e.width,y:r+.5*e.height}}const dR=e=>{let{collisionRect:t,droppableRects:r,droppableContainers:n}=e;const o=uR(t,t.left,t.top),a=[];for(const i of n){const{id:e}=i,t=r.get(e);if(t){const r=aR(uR(t),o);a.push({id:e,data:{droppableContainer:i,value:r}})}}return a.sort(iR)};function fR(e,t){const r=Math.max(t.top,e.top),n=Math.max(t.left,e.left),o=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),i=o-n,s=a-r;if(n<o&&r<a){const r=t.width*t.height,n=e.width*e.height,o=i*s;return Number((o/(r+n-o)).toFixed(4))}return 0}const pR=e=>{let{collisionRect:t,droppableRects:r,droppableContainers:n}=e;const o=[];for(const a of n){const{id:e}=a,n=r.get(e);if(n){const r=fR(n,t);r>0&&o.push({id:e,data:{droppableContainer:a,value:r}})}}return o.sort(sR)};function hR(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:oR}function mR(e){return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return n.reduce(((t,r)=>({...t,top:t.top+e*r.y,bottom:t.bottom+e*r.y,left:t.left+e*r.x,right:t.right+e*r.x})),{...t})}}const gR=mR(1);function vR(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}const yR={ignoreTransform:!1};function bR(e,t){void 0===t&&(t=yR);let r=e.getBoundingClientRect();if(t.ignoreTransform){const{transform:t,transformOrigin:n}=Cj(e).getComputedStyle(e);t&&(r=function(e,t,r){const n=vR(t);if(!n)return e;const{scaleX:o,scaleY:a,x:i,y:s}=n,l=e.left-i-(1-o)*parseFloat(r),c=e.top-s-(1-a)*parseFloat(r.slice(r.indexOf(" ")+1)),u=o?e.width/o:e.width,d=a?e.height/a:e.height;return{width:u,height:d,top:c,right:l+u,bottom:c+d,left:l}}(r,t,n))}const{top:n,left:o,width:a,height:i,bottom:s,right:l}=r;return{top:n,left:o,width:a,height:i,bottom:s,right:l}}function wR(e){return bR(e,{ignoreTransform:!0})}function xR(e,t){const r=[];return e?function n(o){if(null!=t&&r.length>=t)return r;if(!o)return r;if(Ij(o)&&null!=o.scrollingElement&&!r.includes(o.scrollingElement))return r.push(o.scrollingElement),r;if(!Ej(o)||Dj(o))return r;if(r.includes(o))return r;const a=Cj(e).getComputedStyle(o);return o!==e&&function(e,t){void 0===t&&(t=Cj(e).getComputedStyle(e));const r=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some((e=>{const n=t[e];return"string"===typeof n&&r.test(n)}))}(o,a)&&r.push(o),function(e,t){return void 0===t&&(t=Cj(e).getComputedStyle(e)),"fixed"===t.position}(o,a)?r:n(o.parentNode)}(e):r}function SR(e){const[t]=xR(e,1);return null!=t?t:null}function AR(e){return Sj&&e?Aj(e)?e:kj(e)?Ij(e)||e===Tj(e).scrollingElement?window:Ej(e)?e:null:null:null}function kR(e){return Aj(e)?e.scrollX:e.scrollLeft}function CR(e){return Aj(e)?e.scrollY:e.scrollTop}function IR(e){return{x:kR(e),y:CR(e)}}var ER,DR;function TR(e){return!(!Sj||!e)&&e===document.scrollingElement}function OR(e){const t={x:0,y:0},r=TR(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},n={x:e.scrollWidth-r.width,y:e.scrollHeight-r.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=n.y,isRight:e.scrollLeft>=n.x,maxScroll:n,minScroll:t}}(DR=ER||(ER={}))[DR.Forward=1]="Forward",DR[DR.Backward=-1]="Backward";const MR={x:.2,y:.2};function PR(e,t,r,n,o){let{top:a,left:i,right:s,bottom:l}=r;void 0===n&&(n=10),void 0===o&&(o=MR);const{isTop:c,isBottom:u,isLeft:d,isRight:f}=OR(e),p={x:0,y:0},h={x:0,y:0},m=t.height*o.y,g=t.width*o.x;return!c&&a<=t.top+m?(p.y=ER.Backward,h.y=n*Math.abs((t.top+m-a)/m)):!u&&l>=t.bottom-m&&(p.y=ER.Forward,h.y=n*Math.abs((t.bottom-m-l)/m)),!f&&s>=t.right-g?(p.x=ER.Forward,h.x=n*Math.abs((t.right-g-s)/g)):!d&&i<=t.left+g&&(p.x=ER.Backward,h.x=n*Math.abs((t.left+g-i)/g)),{direction:p,speed:h}}function jR(e){if(e===document.scrollingElement){const{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}const{top:t,left:r,right:n,bottom:o}=e.getBoundingClientRect();return{top:t,left:r,right:n,bottom:o,width:e.clientWidth,height:e.clientHeight}}function RR(e){return e.reduce(((e,t)=>Bj(e,IR(t))),oR)}function _R(e,t){if(void 0===t&&(t=bR),!e)return;const{top:r,left:n,bottom:o,right:a}=t(e);SR(e)&&(o<=0||a<=0||r>=window.innerHeight||n>=window.innerWidth)&&e.scrollIntoView({block:"center",inline:"center"})}const NR=[["x",["left","right"],function(e){return e.reduce(((e,t)=>e+kR(t)),0)}],["y",["top","bottom"],function(e){return e.reduce(((e,t)=>e+CR(t)),0)}]];class LR{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const r=xR(t),n=RR(r);this.rect={...e},this.width=e.width,this.height=e.height;for(const[o,a,i]of NR)for(const e of a)Object.defineProperty(this,e,{get:()=>{const t=i(r),a=n[o]-t;return this.rect[e]+a},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class UR{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach((e=>{var t;return null==(t=this.target)?void 0:t.removeEventListener(...e)}))},this.target=e}add(e,t,r){var n;null==(n=this.target)||n.addEventListener(e,t,r),this.listeners.push([e,t,r])}}function BR(e,t){const r=Math.abs(e.x),n=Math.abs(e.y);return"number"===typeof t?Math.sqrt(r**2+n**2)>t:"x"in t&&"y"in t?r>t.x&&n>t.y:"x"in t?r>t.x:"y"in t&&n>t.y}var FR,zR,WR,HR;function YR(e){e.preventDefault()}function VR(e){e.stopPropagation()}(zR=FR||(FR={})).Click="click",zR.DragStart="dragstart",zR.Keydown="keydown",zR.ContextMenu="contextmenu",zR.Resize="resize",zR.SelectionChange="selectionchange",zR.VisibilityChange="visibilitychange",(HR=WR||(WR={})).Space="Space",HR.Down="ArrowDown",HR.Right="ArrowRight",HR.Left="ArrowLeft",HR.Up="ArrowUp",HR.Esc="Escape",HR.Enter="Enter",HR.Tab="Tab";const GR={start:[WR.Space,WR.Enter],cancel:[WR.Esc],end:[WR.Space,WR.Enter,WR.Tab]},ZR=(e,t)=>{let{currentCoordinates:r}=t;switch(e.code){case WR.Right:return{...r,x:r.x+25};case WR.Left:return{...r,x:r.x-25};case WR.Down:return{...r,y:r.y+25};case WR.Up:return{...r,y:r.y-25}}};class QR{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;const{event:{target:t}}=e;this.props=e,this.listeners=new UR(Tj(t)),this.windowListeners=new UR(Cj(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(FR.Resize,this.handleCancel),this.windowListeners.add(FR.VisibilityChange,this.handleCancel),setTimeout((()=>this.listeners.add(FR.Keydown,this.handleKeyDown)))}handleStart(){const{activeNode:e,onStart:t}=this.props,r=e.node.current;r&&_R(r),t(oR)}handleKeyDown(e){if(zj(e)){const{active:t,context:r,options:n}=this.props,{keyboardCodes:o=GR,coordinateGetter:a=ZR,scrollBehavior:i="smooth"}=n,{code:s}=e;if(o.end.includes(s))return void this.handleEnd(e);if(o.cancel.includes(s))return void this.handleCancel(e);const{collisionRect:l}=r.current,c=l?{x:l.left,y:l.top}:oR;this.referenceCoordinates||(this.referenceCoordinates=c);const u=a(e,{active:t,context:r.current,currentCoordinates:c});if(u){const t=Fj(u,c),n={x:0,y:0},{scrollableAncestors:o}=r.current;for(const r of o){const o=e.code,{isTop:a,isRight:s,isLeft:l,isBottom:c,maxScroll:d,minScroll:f}=OR(r),p=jR(r),h={x:Math.min(o===WR.Right?p.right-p.width/2:p.right,Math.max(o===WR.Right?p.left:p.left+p.width/2,u.x)),y:Math.min(o===WR.Down?p.bottom-p.height/2:p.bottom,Math.max(o===WR.Down?p.top:p.top+p.height/2,u.y))},m=o===WR.Right&&!s||o===WR.Left&&!l,g=o===WR.Down&&!c||o===WR.Up&&!a;if(m&&h.x!==u.x){const e=r.scrollLeft+t.x,a=o===WR.Right&&e<=d.x||o===WR.Left&&e>=f.x;if(a&&!t.y)return void r.scrollTo({left:e,behavior:i});n.x=a?r.scrollLeft-e:o===WR.Right?r.scrollLeft-d.x:r.scrollLeft-f.x,n.x&&r.scrollBy({left:-n.x,behavior:i});break}if(g&&h.y!==u.y){const e=r.scrollTop+t.y,a=o===WR.Down&&e<=d.y||o===WR.Up&&e>=f.y;if(a&&!t.x)return void r.scrollTo({top:e,behavior:i});n.y=a?r.scrollTop-e:o===WR.Down?r.scrollTop-d.y:r.scrollTop-f.y,n.y&&r.scrollBy({top:-n.y,behavior:i});break}}this.handleMove(e,Bj(Fj(u,this.referenceCoordinates),n))}}}handleMove(e,t){const{onMove:r}=this.props;e.preventDefault(),r(t)}handleEnd(e){const{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){const{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}}function KR(e){return Boolean(e&&"distance"in e)}function XR(e){return Boolean(e&&"delay"in e)}QR.activators=[{eventName:"onKeyDown",handler:(e,t,r)=>{let{keyboardCodes:n=GR,onActivation:o}=t,{active:a}=r;const{code:i}=e.nativeEvent;if(n.start.includes(i)){const t=a.activatorNode.current;return(!t||e.target===t)&&(e.preventDefault(),null==o||o({event:e.nativeEvent}),!0)}return!1}}];class JR{constructor(e,t,r){var n;void 0===r&&(r=function(e){const{EventTarget:t}=Cj(e);return e instanceof t?e:Tj(e)}(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;const{event:o}=e,{target:a}=o;this.props=e,this.events=t,this.document=Tj(a),this.documentListeners=new UR(this.document),this.listeners=new UR(r),this.windowListeners=new UR(Cj(a)),this.initialCoordinates=null!=(n=Wj(o))?n:oR,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){const{events:e,props:{options:{activationConstraint:t,bypassActivationConstraint:r}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(FR.Resize,this.handleCancel),this.windowListeners.add(FR.DragStart,YR),this.windowListeners.add(FR.VisibilityChange,this.handleCancel),this.windowListeners.add(FR.ContextMenu,YR),this.documentListeners.add(FR.Keydown,this.handleKeydown),t){if(null!=r&&r({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(XR(t))return this.timeoutId=setTimeout(this.handleStart,t.delay),void this.handlePending(t);if(KR(t))return void this.handlePending(t)}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),null!==this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,t){const{active:r,onPending:n}=this.props;n(r,e,this.initialCoordinates,t)}handleStart(){const{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(FR.Click,VR,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(FR.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){var t;const{activated:r,initialCoordinates:n,props:o}=this,{onMove:a,options:{activationConstraint:i}}=o;if(!n)return;const s=null!=(t=Wj(e))?t:oR,l=Fj(n,s);if(!r&&i){if(KR(i)){if(null!=i.tolerance&&BR(l,i.tolerance))return this.handleCancel();if(BR(l,i.distance))return this.handleStart()}return XR(i)&&BR(l,i.tolerance)?this.handleCancel():void this.handlePending(i,l)}e.cancelable&&e.preventDefault(),a(s)}handleEnd(){const{onAbort:e,onEnd:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleCancel(){const{onAbort:e,onCancel:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleKeydown(e){e.code===WR.Esc&&this.handleCancel()}removeTextSelection(){var e;null==(e=this.document.getSelection())||e.removeAllRanges()}}const $R={cancel:{name:"pointercancel"},move:{name:"pointermove"},end:{name:"pointerup"}};class qR extends JR{constructor(e){const{event:t}=e,r=Tj(t.target);super(e,$R,r)}}qR.activators=[{eventName:"onPointerDown",handler:(e,t)=>{let{nativeEvent:r}=e,{onActivation:n}=t;return!(!r.isPrimary||0!==r.button)&&(null==n||n({event:r}),!0)}}];const e_={move:{name:"mousemove"},end:{name:"mouseup"}};var t_,r_;(r_=t_||(t_={}))[r_.RightClick=2]="RightClick";class n_ extends JR{constructor(e){super(e,e_,Tj(e.event.target))}}n_.activators=[{eventName:"onMouseDown",handler:(e,t)=>{let{nativeEvent:r}=e,{onActivation:n}=t;return r.button!==t_.RightClick&&(null==n||n({event:r}),!0)}}];const o_={cancel:{name:"touchcancel"},move:{name:"touchmove"},end:{name:"touchend"}};class a_ extends JR{constructor(e){super(e,o_)}static setup(){return window.addEventListener(o_.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(o_.move.name,e)};function e(){}}}var i_,s_,l_,c_;function u_(e){let{acceleration:r,activator:n=i_.Pointer,canScroll:o,draggingRect:a,enabled:i,interval:s=5,order:l=l_.TreeOrder,pointerCoordinates:c,scrollableAncestors:u,scrollableAncestorRects:d,delta:f,threshold:p}=e;const h=function(e){let{delta:t,disabled:r}=e;const n=_j(t);return jj((e=>{if(r||!n||!e)return d_;const o={x:Math.sign(t.x-n.x),y:Math.sign(t.y-n.y)};return{x:{[ER.Backward]:e.x[ER.Backward]||-1===o.x,[ER.Forward]:e.x[ER.Forward]||1===o.x},y:{[ER.Backward]:e.y[ER.Backward]||-1===o.y,[ER.Forward]:e.y[ER.Forward]||1===o.y}}}),[r,t,n])}({delta:f,disabled:!i}),[m,g]=function(){const e=(0,t.useRef)(null);return[(0,t.useCallback)(((t,r)=>{e.current=setInterval(t,r)}),[]),(0,t.useCallback)((()=>{null!==e.current&&(clearInterval(e.current),e.current=null)}),[])]}(),v=(0,t.useRef)({x:0,y:0}),y=(0,t.useRef)({x:0,y:0}),b=(0,t.useMemo)((()=>{switch(n){case i_.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case i_.DraggableRect:return a}}),[n,a,c]),w=(0,t.useRef)(null),x=(0,t.useCallback)((()=>{const e=w.current;if(!e)return;const t=v.current.x*y.current.x,r=v.current.y*y.current.y;e.scrollBy(t,r)}),[]),S=(0,t.useMemo)((()=>l===l_.TreeOrder?[...u].reverse():u),[l,u]);(0,t.useEffect)((()=>{if(i&&u.length&&b){for(const e of S){if(!1===(null==o?void 0:o(e)))continue;const t=u.indexOf(e),n=d[t];if(!n)continue;const{direction:a,speed:i}=PR(e,n,b,r,p);for(const e of["x","y"])h[e][a[e]]||(i[e]=0,a[e]=0);if(i.x>0||i.y>0)return g(),w.current=e,m(x,s),v.current=i,void(y.current=a)}v.current={x:0,y:0},y.current={x:0,y:0},g()}else g()}),[r,x,o,g,i,s,JSON.stringify(b),JSON.stringify(h),m,u,S,d,JSON.stringify(p)])}a_.activators=[{eventName:"onTouchStart",handler:(e,t)=>{let{nativeEvent:r}=e,{onActivation:n}=t;const{touches:o}=r;return!(o.length>1)&&(null==n||n({event:r}),!0)}}],(s_=i_||(i_={}))[s_.Pointer=0]="Pointer",s_[s_.DraggableRect=1]="DraggableRect",(c_=l_||(l_={}))[c_.TreeOrder=0]="TreeOrder",c_[c_.ReversedTreeOrder=1]="ReversedTreeOrder";const d_={x:{[ER.Backward]:!1,[ER.Forward]:!1},y:{[ER.Backward]:!1,[ER.Forward]:!1}};var f_,p_,h_;(p_=f_||(f_={}))[p_.Always=0]="Always",p_[p_.BeforeDragging=1]="BeforeDragging",p_[p_.WhileDragging=2]="WhileDragging",(h_||(h_={})).Optimized="optimized";const m_=new Map;function g_(e,t){return jj((r=>e?r||("function"===typeof t?t(e):e):null),[t,e])}function v_(e){let{callback:r,disabled:n}=e;const o=Mj(r),a=(0,t.useMemo)((()=>{if(n||"undefined"===typeof window||"undefined"===typeof window.ResizeObserver)return;const{ResizeObserver:e}=window;return new e(o)}),[n]);return(0,t.useEffect)((()=>()=>null==a?void 0:a.disconnect()),[a]),a}function y_(e){return new LR(bR(e),e)}function b_(e,r,n){void 0===r&&(r=y_);const[o,a]=(0,t.useState)(null);function i(){a((t=>{if(!e)return null;var o;if(!1===e.isConnected)return null!=(o=null!=t?t:n)?o:null;const a=r(e);return JSON.stringify(t)===JSON.stringify(a)?t:a}))}const s=function(e){let{callback:r,disabled:n}=e;const o=Mj(r),a=(0,t.useMemo)((()=>{if(n||"undefined"===typeof window||"undefined"===typeof window.MutationObserver)return;const{MutationObserver:e}=window;return new e(o)}),[o,n]);return(0,t.useEffect)((()=>()=>null==a?void 0:a.disconnect()),[a]),a}({callback(t){if(e)for(const r of t){const{type:t,target:n}=r;if("childList"===t&&n instanceof HTMLElement&&n.contains(e)){i();break}}}}),l=v_({callback:i});return Oj((()=>{i(),e?(null==l||l.observe(e),null==s||s.observe(document.body,{childList:!0,subtree:!0})):(null==l||l.disconnect(),null==s||s.disconnect())}),[e]),o}const w_=[];function x_(e,r){void 0===r&&(r=[]);const n=(0,t.useRef)(null);return(0,t.useEffect)((()=>{n.current=null}),r),(0,t.useEffect)((()=>{const t=e!==oR;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)}),[e]),n.current?Fj(e,n.current):oR}function S_(e){return(0,t.useMemo)((()=>e?function(e){const t=e.innerWidth,r=e.innerHeight;return{top:0,left:0,right:t,bottom:r,width:t,height:r}}(e):null),[e])}const A_=[];function k_(e){if(!e)return null;if(e.children.length>1)return e;const t=e.children[0];return Ej(t)?t:e}const C_=[{sensor:qR,options:{}},{sensor:QR,options:{}}],I_={current:{}},E_={draggable:{measure:wR},droppable:{measure:wR,strategy:f_.WhileDragging,frequency:h_.Optimized},dragOverlay:{measure:bR}};class D_ extends Map{get(e){var t;return null!=e&&null!=(t=super.get(e))?t:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter((e=>{let{disabled:t}=e;return!t}))}getNodeFor(e){var t,r;return null!=(t=null==(r=this.get(e))?void 0:r.node.current)?t:void 0}}const T_={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new D_,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:tR},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:E_,measureDroppableContainers:tR,windowRect:null,measuringScheduled:!1},O_={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:tR,draggableNodes:new Map,over:null,measureDroppableContainers:tR},M_=(0,t.createContext)(O_),P_=(0,t.createContext)(T_);function j_(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new D_}}}function R_(e,t){switch(t.type){case qj.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case qj.DragMove:return null==e.draggable.active?e:{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}};case qj.DragEnd:case qj.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case qj.RegisterDroppable:{const{element:r}=t,{id:n}=r,o=new D_(e.droppable.containers);return o.set(n,r),{...e,droppable:{...e.droppable,containers:o}}}case qj.SetDroppableDisabled:{const{id:r,key:n,disabled:o}=t,a=e.droppable.containers.get(r);if(!a||n!==a.key)return e;const i=new D_(e.droppable.containers);return i.set(r,{...a,disabled:o}),{...e,droppable:{...e.droppable,containers:i}}}case qj.UnregisterDroppable:{const{id:r,key:n}=t,o=e.droppable.containers.get(r);if(!o||n!==o.key)return e;const a=new D_(e.droppable.containers);return a.delete(r),{...e,droppable:{...e.droppable,containers:a}}}default:return e}}function __(e){let{disabled:r}=e;const{active:n,activatorEvent:o,draggableNodes:a}=(0,t.useContext)(M_),i=_j(o),s=_j(null==n?void 0:n.id);return(0,t.useEffect)((()=>{if(!r&&!o&&i&&null!=s){if(!zj(i))return;if(document.activeElement===i.target)return;const e=a.get(s);if(!e)return;const{activatorNode:t,node:r}=e;if(!t.current&&!r.current)return;requestAnimationFrame((()=>{for(const e of[t.current,r.current]){if(!e)continue;const t=Vj(e);if(t){t.focus();break}}}))}}),[o,r,a,s,i]),null}function N_(e,t){let{transform:r,...n}=t;return null!=e&&e.length?e.reduce(((e,t)=>t({transform:e,...n})),r):r}const L_=(0,t.createContext)({...oR,scaleX:1,scaleY:1});var U_,B_;(B_=U_||(U_={}))[B_.Uninitialized=0]="Uninitialized",B_[B_.Initializing=1]="Initializing",B_[B_.Initialized=2]="Initialized";const F_=(0,t.memo)((function(e){var r,n,o,a;let{id:i,accessibility:s,autoScroll:l=!0,children:c,sensors:u=C_,collisionDetection:d=pR,measuring:f,modifiers:p,...h}=e;const m=(0,t.useReducer)(R_,void 0,j_),[g,v]=m,[y,b]=function(){const[e]=(0,t.useState)((()=>new Set)),r=(0,t.useCallback)((t=>(e.add(t),()=>e.delete(t))),[e]);return[(0,t.useCallback)((t=>{let{type:r,event:n}=t;e.forEach((e=>{var t;return null==(t=e[r])?void 0:t.call(e,n)}))}),[e]),r]}(),[w,x]=(0,t.useState)(U_.Uninitialized),S=w===U_.Initialized,{draggable:{active:A,nodes:k,translate:C},droppable:{containers:I}}=g,E=null!=A?k.get(A):null,D=(0,t.useRef)({initial:null,translated:null}),T=(0,t.useMemo)((()=>{var e;return null!=A?{id:A,data:null!=(e=null==E?void 0:E.data)?e:I_,rect:D}:null}),[A,E]),O=(0,t.useRef)(null),[M,P]=(0,t.useState)(null),[j,R]=(0,t.useState)(null),_=Pj(h,Object.values(h)),N=Lj("DndDescribedBy",i),L=(0,t.useMemo)((()=>I.getEnabled()),[I]),U=(B=f,(0,t.useMemo)((()=>({draggable:{...E_.draggable,...null==B?void 0:B.draggable},droppable:{...E_.droppable,...null==B?void 0:B.droppable},dragOverlay:{...E_.dragOverlay,...null==B?void 0:B.dragOverlay}})),[null==B?void 0:B.draggable,null==B?void 0:B.droppable,null==B?void 0:B.dragOverlay]));var B;const{droppableRects:F,measureDroppableContainers:z,measuringScheduled:W}=function(e,r){let{dragging:n,dependencies:o,config:a}=r;const[i,s]=(0,t.useState)(null),{frequency:l,measure:c,strategy:u}=a,d=(0,t.useRef)(e),f=function(){switch(u){case f_.Always:return!1;case f_.BeforeDragging:return n;default:return!n}}(),p=Pj(f),h=(0,t.useCallback)((function(e){void 0===e&&(e=[]),p.current||s((t=>null===t?e:t.concat(e.filter((e=>!t.includes(e))))))}),[p]),m=(0,t.useRef)(null),g=jj((t=>{if(f&&!n)return m_;if(!t||t===m_||d.current!==e||null!=i){const t=new Map;for(let r of e){if(!r)continue;if(i&&i.length>0&&!i.includes(r.id)&&r.rect.current){t.set(r.id,r.rect.current);continue}const e=r.node.current,n=e?new LR(c(e),e):null;r.rect.current=n,n&&t.set(r.id,n)}return t}return t}),[e,i,n,f,c]);return(0,t.useEffect)((()=>{d.current=e}),[e]),(0,t.useEffect)((()=>{f||h()}),[n,f]),(0,t.useEffect)((()=>{i&&i.length>0&&s(null)}),[JSON.stringify(i)]),(0,t.useEffect)((()=>{f||"number"!==typeof l||null!==m.current||(m.current=setTimeout((()=>{h(),m.current=null}),l))}),[l,f,h,...o]),{droppableRects:g,measureDroppableContainers:h,measuringScheduled:null!=i}}(L,{dragging:S,dependencies:[C.x,C.y],config:U.droppable}),H=function(e,t){const r=null!=t?e.get(t):void 0,n=r?r.node.current:null;return jj((e=>{var r;return null==t?null:null!=(r=null!=n?n:e)?r:null}),[n,t])}(k,A),Y=(0,t.useMemo)((()=>j?Wj(j):null),[j]),V=function(){const e=!1===(null==M?void 0:M.autoScrollEnabled),t="object"===typeof l?!1===l.enabled:!1===l,r=S&&!e&&!t;if("object"===typeof l)return{...l,enabled:r};return{enabled:r}}(),G=function(e,t){return g_(e,t)}(H,U.draggable.measure);!function(e){let{activeNode:r,measure:n,initialRect:o,config:a=!0}=e;const i=(0,t.useRef)(!1),{x:s,y:l}="boolean"===typeof a?{x:a,y:a}:a;Oj((()=>{if(!s&&!l||!r)return void(i.current=!1);if(i.current||!o)return;const e=null==r?void 0:r.node.current;if(!e||!1===e.isConnected)return;const t=hR(n(e),o);if(s||(t.x=0),l||(t.y=0),i.current=!0,Math.abs(t.x)>0||Math.abs(t.y)>0){const r=SR(e);r&&r.scrollBy({top:t.y,left:t.x})}}),[r,s,l,o,n])}({activeNode:null!=A?k.get(A):null,config:V.layoutShiftCompensation,initialRect:G,measure:U.draggable.measure});const Z=b_(H,U.draggable.measure,G),Q=b_(H?H.parentElement:null),K=(0,t.useRef)({activatorEvent:null,active:null,activeNode:H,collisionRect:null,collisions:null,droppableRects:F,draggableNodes:k,draggingNode:null,draggingNodeRect:null,droppableContainers:I,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),X=I.getNodeFor(null==(r=K.current.over)?void 0:r.id),J=function(e){let{measure:r}=e;const[n,o]=(0,t.useState)(null),a=v_({callback:(0,t.useCallback)((e=>{for(const{target:t}of e)if(Ej(t)){o((e=>{const n=r(t);return e?{...e,width:n.width,height:n.height}:n}));break}}),[r])}),i=(0,t.useCallback)((e=>{const t=k_(e);null==a||a.disconnect(),t&&(null==a||a.observe(t)),o(t?r(t):null)}),[r,a]),[s,l]=Rj(i);return(0,t.useMemo)((()=>({nodeRef:s,rect:n,setRef:l})),[n,s,l])}({measure:U.dragOverlay.measure}),$=null!=(n=J.nodeRef.current)?n:H,q=S?null!=(o=J.rect)?o:Z:null,ee=Boolean(J.nodeRef.current&&J.rect),te=hR(re=ee?null:Z,g_(re));var re;const ne=S_($?Cj($):null),oe=function(e){const r=(0,t.useRef)(e),n=jj((t=>e?t&&t!==w_&&e&&r.current&&e.parentNode===r.current.parentNode?t:xR(e):w_),[e]);return(0,t.useEffect)((()=>{r.current=e}),[e]),n}(S?null!=X?X:H:null),ae=function(e,r){void 0===r&&(r=bR);const[n]=e,o=S_(n?Cj(n):null),[a,i]=(0,t.useState)(A_);function s(){i((()=>e.length?e.map((e=>TR(e)?o:new LR(r(e),e))):A_))}const l=v_({callback:s});return Oj((()=>{null==l||l.disconnect(),s(),e.forEach((e=>null==l?void 0:l.observe(e)))}),[e]),a}(oe),ie=N_(p,{transform:{x:C.x-te.x,y:C.y-te.y,scaleX:1,scaleY:1},activatorEvent:j,active:T,activeNodeRect:Z,containerNodeRect:Q,draggingNodeRect:q,over:K.current.over,overlayNodeRect:J.rect,scrollableAncestors:oe,scrollableAncestorRects:ae,windowRect:ne}),se=Y?Bj(Y,C):null,le=function(e){const[r,n]=(0,t.useState)(null),o=(0,t.useRef)(e),a=(0,t.useCallback)((e=>{const t=AR(e.target);t&&n((e=>e?(e.set(t,IR(t)),new Map(e)):null))}),[]);return(0,t.useEffect)((()=>{const t=o.current;if(e!==t){r(t);const i=e.map((e=>{const t=AR(e);return t?(t.addEventListener("scroll",a,{passive:!0}),[t,IR(t)]):null})).filter((e=>null!=e));n(i.length?new Map(i):null),o.current=e}return()=>{r(e),r(t)};function r(e){e.forEach((e=>{const t=AR(e);null==t||t.removeEventListener("scroll",a)}))}}),[a,e]),(0,t.useMemo)((()=>e.length?r?Array.from(r.values()).reduce(((e,t)=>Bj(e,t)),oR):RR(e):oR),[e,r])}(oe),ce=x_(le),ue=x_(le,[Z]),de=Bj(ie,ce),fe=q?gR(q,ie):null,pe=T&&fe?d({active:T,collisionRect:fe,droppableRects:F,droppableContainers:L,pointerCoordinates:se}):null,he=cR(pe,"id"),[me,ge]=(0,t.useState)(null),ve=function(e,t,r){return{...e,scaleX:t&&r?t.width/r.width:1,scaleY:t&&r?t.height/r.height:1}}(ee?ie:Bj(ie,ue),null!=(a=null==me?void 0:me.rect)?a:null,Z),ye=(0,t.useRef)(null),be=(0,t.useCallback)(((e,t)=>{let{sensor:r,options:n}=t;if(null==O.current)return;const o=k.get(O.current);if(!o)return;const a=e.nativeEvent,i=new r({active:O.current,activeNode:o,event:a,options:n,context:K,onAbort(e){if(!k.get(e))return;const{onDragAbort:t}=_.current,r={id:e};null==t||t(r),y({type:"onDragAbort",event:r})},onPending(e,t,r,n){if(!k.get(e))return;const{onDragPending:o}=_.current,a={id:e,constraint:t,initialCoordinates:r,offset:n};null==o||o(a),y({type:"onDragPending",event:a})},onStart(e){const t=O.current;if(null==t)return;const r=k.get(t);if(!r)return;const{onDragStart:n}=_.current,o={activatorEvent:a,active:{id:t,data:r.data,rect:D}};(0,xj.unstable_batchedUpdates)((()=>{null==n||n(o),x(U_.Initializing),v({type:qj.DragStart,initialCoordinates:e,active:t}),y({type:"onDragStart",event:o}),P(ye.current),R(a)}))},onMove(e){v({type:qj.DragMove,coordinates:e})},onEnd:s(qj.DragEnd),onCancel:s(qj.DragCancel)});function s(e){return async function(){const{active:t,collisions:r,over:n,scrollAdjustedTranslate:o}=K.current;let i=null;if(t&&o){const{cancelDrop:s}=_.current;if(i={activatorEvent:a,active:t,collisions:r,delta:o,over:n},e===qj.DragEnd&&"function"===typeof s){await Promise.resolve(s(i))&&(e=qj.DragCancel)}}O.current=null,(0,xj.unstable_batchedUpdates)((()=>{v({type:e}),x(U_.Uninitialized),ge(null),P(null),R(null),ye.current=null;const t=e===qj.DragEnd?"onDragEnd":"onDragCancel";if(i){const e=_.current[t];null==e||e(i),y({type:t,event:i})}}))}}ye.current=i}),[k]),we=(0,t.useCallback)(((e,t)=>(r,n)=>{const o=r.nativeEvent,a=k.get(n);if(null!==O.current||!a||o.dndKit||o.defaultPrevented)return;const i={active:a};!0===e(r,t.options,i)&&(o.dndKit={capturedBy:t.sensor},O.current=n,be(r,t))}),[k,be]),xe=function(e,r){return(0,t.useMemo)((()=>e.reduce(((e,t)=>{const{sensor:n}=t;return[...e,...n.activators.map((e=>({eventName:e.eventName,handler:r(e.handler,t)})))]}),[])),[e,r])}(u,we);!function(e){(0,t.useEffect)((()=>{if(!Sj)return;const t=e.map((e=>{let{sensor:t}=e;return null==t.setup?void 0:t.setup()}));return()=>{for(const e of t)null==e||e()}}),e.map((e=>{let{sensor:t}=e;return t})))}(u),Oj((()=>{Z&&w===U_.Initializing&&x(U_.Initialized)}),[Z,w]),(0,t.useEffect)((()=>{const{onDragMove:e}=_.current,{active:t,activatorEvent:r,collisions:n,over:o}=K.current;if(!t||!r)return;const a={active:t,activatorEvent:r,collisions:n,delta:{x:de.x,y:de.y},over:o};(0,xj.unstable_batchedUpdates)((()=>{null==e||e(a),y({type:"onDragMove",event:a})}))}),[de.x,de.y]),(0,t.useEffect)((()=>{const{active:e,activatorEvent:t,collisions:r,droppableContainers:n,scrollAdjustedTranslate:o}=K.current;if(!e||null==O.current||!t||!o)return;const{onDragOver:a}=_.current,i=n.get(he),s=i&&i.rect.current?{id:i.id,rect:i.rect.current,data:i.data,disabled:i.disabled}:null,l={active:e,activatorEvent:t,collisions:r,delta:{x:o.x,y:o.y},over:s};(0,xj.unstable_batchedUpdates)((()=>{ge(s),null==a||a(l),y({type:"onDragOver",event:l})}))}),[he]),Oj((()=>{K.current={activatorEvent:j,active:T,activeNode:H,collisionRect:fe,collisions:pe,droppableRects:F,draggableNodes:k,draggingNode:$,draggingNodeRect:q,droppableContainers:I,over:me,scrollableAncestors:oe,scrollAdjustedTranslate:de},D.current={initial:q,translated:fe}}),[T,H,pe,fe,k,$,q,F,I,me,oe,de]),u_({...V,delta:C,draggingRect:fe,pointerCoordinates:se,scrollableAncestors:oe,scrollableAncestorRects:ae});const Se=(0,t.useMemo)((()=>({active:T,activeNode:H,activeNodeRect:Z,activatorEvent:j,collisions:pe,containerNodeRect:Q,dragOverlay:J,draggableNodes:k,droppableContainers:I,droppableRects:F,over:me,measureDroppableContainers:z,scrollableAncestors:oe,scrollableAncestorRects:ae,measuringConfiguration:U,measuringScheduled:W,windowRect:ne})),[T,H,Z,j,pe,Q,J,k,I,F,me,z,oe,ae,U,W,ne]),Ae=(0,t.useMemo)((()=>({activatorEvent:j,activators:xe,active:T,activeNodeRect:Z,ariaDescribedById:{draggable:N},dispatch:v,draggableNodes:k,over:me,measureDroppableContainers:z})),[j,xe,T,Z,v,N,k,me,z]);return t.createElement(Kj.Provider,{value:b},t.createElement(M_.Provider,{value:Ae},t.createElement(P_.Provider,{value:Se},t.createElement(L_.Provider,{value:ve},c)),t.createElement(__,{disabled:!1===(null==s?void 0:s.restoreFocus)})),t.createElement($j,{...s,hiddenTextDescribedById:N}))})),z_=(0,t.createContext)(null),W_="button";function H_(e){let{id:r,data:n,disabled:o=!1,attributes:a}=e;const i=Lj("Draggable"),{activators:s,activatorEvent:l,active:c,activeNodeRect:u,ariaDescribedById:d,draggableNodes:f,over:p}=(0,t.useContext)(M_),{role:h=W_,roleDescription:m="draggable",tabIndex:g=0}=null!=a?a:{},v=(null==c?void 0:c.id)===r,y=(0,t.useContext)(v?L_:z_),[b,w]=Rj(),[x,S]=Rj(),A=function(e,r){return(0,t.useMemo)((()=>e.reduce(((e,t)=>{let{eventName:n,handler:o}=t;return e[n]=e=>{o(e,r)},e}),{})),[e,r])}(s,r),k=Pj(n);Oj((()=>(f.set(r,{id:r,key:i,node:b,activatorNode:x,data:k}),()=>{const e=f.get(r);e&&e.key===i&&f.delete(r)})),[f,r]);return{active:c,activatorEvent:l,activeNodeRect:u,attributes:(0,t.useMemo)((()=>({role:h,tabIndex:g,"aria-disabled":o,"aria-pressed":!(!v||h!==W_)||void 0,"aria-roledescription":m,"aria-describedby":d.draggable})),[o,h,g,v,m,d.draggable]),isDragging:v,listeners:o?void 0:A,node:b,over:p,setNodeRef:w,setActivatorNodeRef:S,transform:y}}function Y_(){return(0,t.useContext)(P_)}const V_={timeout:25};function G_(e,t,r){const n=e.slice();return n.splice(r<0?n.length+r:r,0,n.splice(t,1)[0]),n}function Z_(e,t){return e.reduce(((e,r,n)=>{const o=t.get(r);return o&&(e[n]=o),e}),Array(e.length))}function Q_(e){return null!==e&&e>=0}const K_=e=>{let{rects:t,activeIndex:r,overIndex:n,index:o}=e;const a=G_(t,n,r),i=t[o],s=a[o];return s&&i?{x:s.left-i.left,y:s.top-i.top,scaleX:s.width/i.width,scaleY:s.height/i.height}:null},X_={scaleX:1,scaleY:1},J_=e=>{var t;let{activeIndex:r,activeNodeRect:n,index:o,rects:a,overIndex:i}=e;const s=null!=(t=a[r])?t:n;if(!s)return null;if(o===r){const e=a[i];return e?{x:0,y:r<i?e.top+e.height-(s.top+s.height):e.top-s.top,...X_}:null}const l=function(e,t,r){const n=e[t],o=e[t-1],a=e[t+1];if(!n)return 0;if(r<t)return o?n.top-(o.top+o.height):a?a.top-(n.top+n.height):0;return a?a.top-(n.top+n.height):o?n.top-(o.top+o.height):0}(a,o,r);return o>r&&o<=i?{x:0,y:-s.height-l,...X_}:o<r&&o>=i?{x:0,y:s.height+l,...X_}:{x:0,y:0,...X_}};const $_="Sortable",q_=t.createContext({activeIndex:-1,containerId:$_,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:K_,disabled:{draggable:!1,droppable:!1}});function eN(e){let{children:r,id:n,items:o,strategy:a=K_,disabled:i=!1}=e;const{active:s,dragOverlay:l,droppableRects:c,over:u,measureDroppableContainers:d}=Y_(),f=Lj($_,n),p=Boolean(null!==l.rect),h=(0,t.useMemo)((()=>o.map((e=>"object"===typeof e&&"id"in e?e.id:e))),[o]),m=null!=s,g=s?h.indexOf(s.id):-1,v=u?h.indexOf(u.id):-1,y=(0,t.useRef)(h),b=!function(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}(h,y.current),w=-1!==v&&-1===g||b,x=function(e){return"boolean"===typeof e?{draggable:e,droppable:e}:e}(i);Oj((()=>{b&&m&&d(h)}),[b,h,m,d]),(0,t.useEffect)((()=>{y.current=h}),[h]);const S=(0,t.useMemo)((()=>({activeIndex:g,containerId:f,disabled:x,disableTransforms:w,items:h,overIndex:v,useDragOverlay:p,sortedRects:Z_(h,c),strategy:a})),[g,f,x.draggable,x.droppable,w,h,v,c,p,a]);return t.createElement(q_.Provider,{value:S},r)}const tN=e=>{let{id:t,items:r,activeIndex:n,overIndex:o}=e;return G_(r,n,o).indexOf(t)},rN=e=>{let{containerId:t,isSorting:r,wasDragging:n,index:o,items:a,newIndex:i,previousItems:s,previousContainerId:l,transition:c}=e;return!(!c||!n)&&((s===a||o!==i)&&(!!r||i!==o&&t===l))},nN={duration:200,easing:"ease"},oN="transform",aN=Hj.Transition.toString({property:oN,duration:0,easing:"linear"}),iN={roleDescription:"sortable"};function sN(e){let{animateLayoutChanges:r=rN,attributes:n,disabled:o,data:a,getNewIndex:i=tN,id:s,strategy:l,resizeObserverConfig:c,transition:u=nN}=e;const{items:d,containerId:f,activeIndex:p,disabled:h,disableTransforms:m,sortedRects:g,overIndex:v,useDragOverlay:y,strategy:b}=(0,t.useContext)(q_),w=function(e,t){var r,n;if("boolean"===typeof e)return{draggable:e,droppable:!1};return{draggable:null!=(r=null==e?void 0:e.draggable)?r:t.draggable,droppable:null!=(n=null==e?void 0:e.droppable)?n:t.droppable}}(o,h),x=d.indexOf(s),S=(0,t.useMemo)((()=>({sortable:{containerId:f,index:x,items:d},...a})),[f,a,x,d]),A=(0,t.useMemo)((()=>d.slice(d.indexOf(s))),[d,s]),{rect:k,node:C,isOver:I,setNodeRef:E}=function(e){let{data:r,disabled:n=!1,id:o,resizeObserverConfig:a}=e;const i=Lj("Droppable"),{active:s,dispatch:l,over:c,measureDroppableContainers:u}=(0,t.useContext)(M_),d=(0,t.useRef)({disabled:n}),f=(0,t.useRef)(!1),p=(0,t.useRef)(null),h=(0,t.useRef)(null),{disabled:m,updateMeasurementsFor:g,timeout:v}={...V_,...a},y=Pj(null!=g?g:o),b=v_({callback:(0,t.useCallback)((()=>{f.current?(null!=h.current&&clearTimeout(h.current),h.current=setTimeout((()=>{u(Array.isArray(y.current)?y.current:[y.current]),h.current=null}),v)):f.current=!0}),[v]),disabled:m||!s}),w=(0,t.useCallback)(((e,t)=>{b&&(t&&(b.unobserve(t),f.current=!1),e&&b.observe(e))}),[b]),[x,S]=Rj(w),A=Pj(r);return(0,t.useEffect)((()=>{b&&x.current&&(b.disconnect(),f.current=!1,b.observe(x.current))}),[x,b]),(0,t.useEffect)((()=>(l({type:qj.RegisterDroppable,element:{id:o,key:i,disabled:n,node:x,rect:p,data:A}}),()=>l({type:qj.UnregisterDroppable,key:i,id:o}))),[o]),(0,t.useEffect)((()=>{n!==d.current.disabled&&(l({type:qj.SetDroppableDisabled,id:o,key:i,disabled:n}),d.current.disabled=n)}),[o,i,n,l]),{active:s,rect:p,isOver:(null==c?void 0:c.id)===o,node:x,over:c,setNodeRef:S}}({id:s,data:S,disabled:w.droppable,resizeObserverConfig:{updateMeasurementsFor:A,...c}}),{active:D,activatorEvent:T,activeNodeRect:O,attributes:M,setNodeRef:P,listeners:j,isDragging:R,over:_,setActivatorNodeRef:N,transform:L}=H_({id:s,data:S,attributes:{...iN,...n},disabled:w.draggable}),U=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return(0,t.useMemo)((()=>e=>{r.forEach((t=>t(e)))}),r)}(E,P),B=Boolean(D),F=B&&!m&&Q_(p)&&Q_(v),z=!y&&R,W=z&&F?L:null,H=F?null!=W?W:(null!=l?l:b)({rects:g,activeNodeRect:O,activeIndex:p,overIndex:v,index:x}):null,Y=Q_(p)&&Q_(v)?i({id:s,items:d,activeIndex:p,overIndex:v}):x,V=null==D?void 0:D.id,G=(0,t.useRef)({activeId:V,items:d,newIndex:Y,containerId:f}),Z=d!==G.current.items,Q=r({active:D,containerId:f,isDragging:R,isSorting:B,id:s,index:x,items:d,newIndex:G.current.newIndex,previousItems:G.current.items,previousContainerId:G.current.containerId,transition:u,wasDragging:null!=G.current.activeId}),K=function(e){let{disabled:r,index:n,node:o,rect:a}=e;const[i,s]=(0,t.useState)(null),l=(0,t.useRef)(n);return Oj((()=>{if(!r&&n!==l.current&&o.current){const e=a.current;if(e){const t=bR(o.current,{ignoreTransform:!0}),r={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(r.x||r.y)&&s(r)}}n!==l.current&&(l.current=n)}),[r,n,o,a]),(0,t.useEffect)((()=>{i&&s(null)}),[i]),i}({disabled:!Q,index:x,node:C,rect:k});return(0,t.useEffect)((()=>{B&&G.current.newIndex!==Y&&(G.current.newIndex=Y),f!==G.current.containerId&&(G.current.containerId=f),d!==G.current.items&&(G.current.items=d)}),[B,Y,f,d]),(0,t.useEffect)((()=>{if(V===G.current.activeId)return;if(null!=V&&null==G.current.activeId)return void(G.current.activeId=V);const e=setTimeout((()=>{G.current.activeId=V}),50);return()=>clearTimeout(e)}),[V]),{active:D,activeIndex:p,attributes:M,data:S,rect:k,index:x,newIndex:Y,items:d,isOver:I,isSorting:B,isDragging:R,listeners:j,node:C,overIndex:v,over:_,setNodeRef:U,setActivatorNodeRef:N,setDroppableNodeRef:E,setDraggableNodeRef:P,transform:null!=K?K:H,transition:function(){if(K||Z&&G.current.newIndex===x)return aN;if(z&&!zj(T)||!u)return;if(B||Q)return Hj.Transition.toString({...u,property:oN});return}()}}function lN(e){if(!e)return!1;const t=e.data.current;return!!(t&&"sortable"in t&&"object"===typeof t.sortable&&"containerId"in t.sortable&&"items"in t.sortable&&"index"in t.sortable)}const cN=[WR.Down,WR.Right,WR.Up,WR.Left],uN=(e,t)=>{let{context:{active:r,collisionRect:n,droppableRects:o,droppableContainers:a,over:i,scrollableAncestors:s}}=t;if(cN.includes(e.code)){if(e.preventDefault(),!r||!n)return;const t=[];a.getEnabled().forEach((r=>{if(!r||null!=r&&r.disabled)return;const a=o.get(r.id);if(a)switch(e.code){case WR.Down:n.top<a.top&&t.push(r);break;case WR.Up:n.top>a.top&&t.push(r);break;case WR.Left:n.left>a.left&&t.push(r);break;case WR.Right:n.left<a.left&&t.push(r)}}));const l=(e=>{let{collisionRect:t,droppableRects:r,droppableContainers:n}=e;const o=lR(t),a=[];for(const i of n){const{id:e}=i,t=r.get(e);if(t){const r=lR(t),n=o.reduce(((e,t,n)=>e+aR(r[n],t)),0),s=Number((n/4).toFixed(4));a.push({id:e,data:{droppableContainer:i,value:s}})}}return a.sort(iR)})({active:r,collisionRect:n,droppableRects:o,droppableContainers:t,pointerCoordinates:null});let c=cR(l,"id");if(c===(null==i?void 0:i.id)&&l.length>1&&(c=l[1].id),null!=c){const e=a.get(r.id),t=a.get(c),i=t?o.get(t.id):null,l=null==t?void 0:t.node.current;if(l&&i&&e&&t){const r=xR(l).some(((e,t)=>s[t]!==e)),o=dN(e,t),a=function(e,t){if(!lN(e)||!lN(t))return!1;if(!dN(e,t))return!1;return e.data.current.sortable.index<t.data.current.sortable.index}(e,t),c=r||!o?{x:0,y:0}:{x:a?n.width-i.width:0,y:a?n.height-i.height:0},u={x:i.left,y:i.top};return c.x&&c.y?u:Fj(u,c)}}}};function dN(e,t){return!(!lN(e)||!lN(t))&&e.data.current.sortable.containerId===t.data.current.sortable.containerId}const fN=e=>{let{transform:t}=e;return{...t,x:0}};function pN(e){let{script:t,onRun:r,disabled:n}=e;const{setNodeRef:o,attributes:a,listeners:i,transform:s,transition:l}=sN({id:t.id,disabled:n});return(0,qh.jsxs)(ym,{ref:o,sx:{display:"flex",transform:s?`translateY(${s.y}px)`:void 0,transition:l},children:[(0,qh.jsx)(QI.A,{disabled:n,onClick:()=>r(t.id),...a,...i,disableRipple:!0,sx:{flex:1,justifyContent:"flex-start",color:"text.primary",touchAction:"pan-y",fontSize:17,"&.Mui-disabled":{color:"text.primary"}},children:t.name}),(0,qh.jsx)(cE.A,{disabled:n,onClick:()=>r(t.id),disableRipple:!0,"aria-label":t.name,sx:{width:104,flexShrink:0,mr:"-8px",color:"primary.main","&.Mui-disabled":{color:"primary.main"}},children:(0,qh.jsx)(wj,{})})]})}function hN(e){let{scripts:r,onRun:n,onError:o,onReorder:a}=e;const[i,s]=(0,t.useState)(!1),l=r,c=nR(rR(n_,{activationConstraint:{distance:5}}),rR(a_,{activationConstraint:{delay:350,tolerance:8}}),rR(QR,{coordinateGetter:uN})),u=async e=>{if(!i){s(!0);try{await n(e)}catch(t){o(t)}finally{s(!1)}}};return(0,qh.jsx)(ym,{sx:{...bj,px:3,pb:1},children:(0,qh.jsx)(F_,{sensors:c,collisionDetection:dR,modifiers:[fN],onDragEnd:async e=>{let{active:t,over:r}=e;if(!r||t.id===r.id||i)return;const n=l.map((e=>e.id));s(!0);try{const e=G_(n,n.indexOf(t.id),n.indexOf(r.id));await a(e)}catch(c){o(c)}finally{s(!1)}},children:(0,qh.jsx)(eN,{items:l.map((e=>e.id)),strategy:J_,children:l.map((e=>(0,qh.jsx)(pN,{script:e,onRun:u,disabled:i},e.id)))})})})}const mN=(0,dD.A)((0,qh.jsx)("path",{d:"M17.71 7.71 12 2h-1v7.59L6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 11 14.41V22h1l5.71-5.71-4.3-4.29zM13 5.83l1.88 1.88L13 9.59zm1.88 10.46L13 18.17v-3.76z"}),"Bluetooth"),gN=(0,dD.A)((0,qh.jsx)("path",{d:"m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9m8 8 3 3 3-3c-1.65-1.66-4.34-1.66-6 0m-4-4 2 2c2.76-2.76 7.24-2.76 10 0l2-2C15.14 9.14 8.87 9.14 5 13"}),"Wifi"),vN=(0,dD.A)((0,qh.jsx)("path",{d:"M17 5v16c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1V5c0-.55.45-1 1-1h2V2h4v2h2c.55 0 1 .45 1 1m-2 1H9v14h6z"}),"Battery0Bar"),yN=(0,dD.A)((0,qh.jsx)("path",{d:"M17 5v16c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1V5c0-.55.45-1 1-1h2V2h4v2h2c.55 0 1 .45 1 1m-2 1H9v12h6z"}),"Battery1Bar"),bN=(0,dD.A)((0,qh.jsx)("path",{d:"M17 5v16c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1V5c0-.55.45-1 1-1h2V2h4v2h2c.55 0 1 .45 1 1m-2 1H9v10h6z"}),"Battery2Bar"),wN=(0,dD.A)((0,qh.jsx)("path",{d:"M17 5v16c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1V5c0-.55.45-1 1-1h2V2h4v2h2c.55 0 1 .45 1 1m-2 1H9v8h6z"}),"Battery3Bar"),xN=(0,dD.A)((0,qh.jsx)("path",{d:"M17 5v16c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1V5c0-.55.45-1 1-1h2V2h4v2h2c.55 0 1 .45 1 1m-2 1H9v6h6z"}),"Battery4Bar"),SN=(0,dD.A)((0,qh.jsx)("path",{d:"M17 5v16c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1V5c0-.55.45-1 1-1h2V2h4v2h2c.55 0 1 .45 1 1m-2 1H9v4h6z"}),"Battery5Bar"),AN=(0,dD.A)((0,qh.jsx)("path",{d:"M17 5v16c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1V5c0-.55.45-1 1-1h2V2h4v2h2c.55 0 1 .45 1 1m-2 1H9v2h6z"}),"Battery6Bar"),kN=(0,dD.A)((0,qh.jsx)("path",{d:"M15.67 4H14V2h-4v2H8.33C7.6 4 7 4.6 7 5.33v15.33C7 21.4 7.6 22 8.33 22h7.33c.74 0 1.34-.6 1.34-1.33V5.33C17 4.6 16.4 4 15.67 4"}),"BatteryFull"),CN=e=>{let{opacity:t=1,level:r}=e;if("number"!==typeof r)return(0,qh.jsx)(qh.Fragment,{});const n=Math.max(0,Math.min(100,Number(r))),o=n<15?"error.main":n<30?"#f3dd71":"primary.main";let a;return a=0===n?vN:100===n?kN:n<=16?yN:n<=33?bN:n<=50?wN:n<=66?xN:n<=83?SN:AN,(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(a,{sx:{opacity:t,color:o,fontSize:"26px",transform:"rotate(90deg)"}}),(0,qh.jsx)(Bh.A,{variant:"h5",sx:{ml:"5px",color:"info.light"},children:`${n}%`})]})},IN="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL0AAAC9CAYAAADm13wwAAAACXBIWXMAADa2AAA2tgF/POa4AAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAIABJREFUeJztnX9wY1eV57/nvqenH5b8s7tjW7Lb7e4OSSfdJGTJMksYkpDZ7BSkMgw0YRJYdmphZyBQFD9mwrBQ1QzDj0BClp2kAjVDDTOZpEg6DKQSGDL5QTP0TLFZ8mOTdBOSjmO7Jdtx25Ysy5Le03v37B/64WdbtmVbtmTpfqqU9Hv3vafbra+Ozj333HOJmaHYOENDQ20+n69bStkDIEJEfcTcy0R7AOwC0M7M7QQEAQQAGIUXAICIbGbOEFGapcxAiBkAMwBmiHmCiSYAxISUw6xpr2ez2YnBwcHZGvxVGwZSoq+M8fHxgBDivFwud6EGHHGAi4joIgBhMLcA8AMQW/X+ROQAyDBzBsAEAS9K4DkAL2qadspxnMlIJJLZqvdvJJToy0BE9Nprr3l1XT8ogLcz89sAHAbRXuSt9UaeueY1m/gs0sw8TMDzRPRvEviFbduvDAwMZDf6wEZGib4AEdGrr77a5/V6r4aU14LoCgCRSu7VNG3hpevQhIDQNAghIIQAES16LYWZF15SgpnhSAnpOHCkhGPbcByn9KqQKJhPQohHhRBP9vT0jFb+r9HYNLXoT5w4oQ8ODr5BCHEdAe8GcBHylrysWRaaBl3T4DEMeHQdHsOAVhA3UJk13yjFz4mlhO04yFkWcraNnGXBtm1IKVe8FUAawAsMPMTMj0xOTv72sssuy21ZZ+ucZhS9iMVivQBuAPNRAIexgsuiaRoMw4Dh9cIwDOiaBipY7nqBmSGlhOM4sCwLlmnCsqzVfhHSAF4A8wNC1x/s6emJAljxG9OINI3oz5w54/V6vb9PRB8SRNcwc7DcdV6vF16fD16vFx6Pp64EXinMjFwuB8s0kclmYZnmSpfOA3hUMt/T19f3MICKfaedTMOLfmJiYsDJ5W4kIT7CzHuxxHUhIeD1euH3+eD1+aBpWo16unVIx0HWNJHJZGCZZjlXiEE0AuBvhRD3NLr/36iiF7FY7DCk/CgDR4mo091IRPAYBgKBAHw+X2mw2fAUBsjZbBbpdBo5yyoXMZoi4CHStNtOnjz5ytGjRxvO+jea6CkWix0h5lsY+APkY+clhKYhEAjA7/fvWNelWjAzbNtGOp1GJp1eNgYgojkwPwwhbuvt7X0O+QFxQ9Awoh8ZGXmTLsSfg+g9AHR3m2EYaAkGS1ZdsRhmRiaTwXwqBcuylrZZBPyIib4aiUSer1EXq8qOF310aOigMIxbGLgRLstORPB6vQgGgzC83qa26pXCzLAsC6m5OWSzy+a1UiA6DtP8enhw8OVa9K9a7FjRDw8Pt2uadrMg+gyAjlIDEfw+H4KhUNO7MBtlDfFPg/nbDvOd/f398Vr0b7PsSNHHRkffByG+DOB893mvz4fW1lYYhrHCnYr1wMzIWRbmyov/DIg+Hw6Hj9eib5thR4k+NjR0Pjye20D0TriSuwzDyItduTFbAjPDNE3MJZNLfX4JokeEELf09PS8VKv+rZcdIfrh4WGfR9M+CqK/ALC7eF7TNIRaWxEIBJTYtwGWEulMBslkEtId7WF+nTTtL9Pp9PcOHDiw4kxYvVD3oh8ZGdnn0fXvAngHM5ese0tLC0KtrQ05mVTvOI6DuWQS8/Pz7tMSwKOarn+su7t7uDY9q4x6Fr2IxWI3gflbyC/GAAB4PB60tbfD6/XWsGsKADBNE7OJBHK5RblrUwL4VE8kch/qNKenLkU/OjraoWva7VLKDxCRB8iHIFuCQYRCIRVrryOklJibm8N8KuWe3c2B6D7HcT5VjxGeuhN9NBo9Qsx/R0JcyswEALquo72jA17DAJTvXn8ww7QsJOJx2LYNACAiZimflcCH+vr6XqxxDxdRV6IfGxu7gaW8C0BX8VwgEEBbe7uy7jsAKSUSiQQy6bT79AwJcXNvb+8PatWvpdSF6E+fPm2EQqFjhYkmA8hnP7a1tanIzA6DmZFOpzGbSLjdHQvM3wz39R0DYNeud3lqLvrR0dEOXYg7GXg/CrF3XdfR0dmpJpl2MJZlIT4zU3J3kI/p3+s4zidr7efXVPRnz57tFUT3AriyeM7n86G9o0OFIhsA6TiYicdhLp7N/TkDH4xEIrFa9atmop+cnNyfs6xHAFxQPBcMhdDa2qrcmQaCmZGcnUUqlXKffsmR8p39/f1DtehTTUQfjUYvJ+ABAHuBfDiyta0NLS0tSvANCDNjPpVCMpks+flENCyZb4hEIk9td3+2XfSvx2JvsZkfBBAG8oJv7+hAILChcjKKHUQ6nUYiHncPcGMgem84HP7VdvZjW0U/EY1e7gAPA9gDAEIIdHR2wufzbVsfFLXFNE3MTE+71+lOasB13dto8bdN9AUL/xBcgu/atUtFaJoQy7IwPTW1SPggun67LP62zPhEo9HLCy5NXvCahq6uLiX4JsUwDHR1dUEsROj2gPnBaDR6+Xa8/5Zb+tHR0UFd055g5gGgYOG7umCohLGmxzJNTC92dUYk8zv6+vpe3cr33VLRR6PRMAGPoxCWVC6NYillXJ2XCsIf26r33DL3ZnR0tIOAe1AQPBGhU7k0iiUYhoHOzk53qPoCQXTv6Ohox2r3bYatEr2uadq3AVwFLIQlVQ68ohzewiy8S/hX6kLcefr06S2xkFsi+lgsdgzMNxWPWwuJYwrFSgQCAbS2tpaOGXh/KBQ6thXvVXWffmxs7P0s5d+jkC0ZDAbR2tamZloVa1ImZcEiIf5rb2/v/dV8n6qKPhqNHibgBIBOIP+z1dXVpQSvqBhmxsz0tLvkyDQDV1ezulrV3JvR0dEOYv4+CoLXdR2di/00hWJNiuM/XS9VZuwi5r+r5sC2WqIXHk27g4S4FMgvAOno7HRPPigUFaNpGjpcER0S4lKN6HZUSa9Vech4NHqjZL6xuKa1ra1NhSYVm8IwDLS1twMAmJkY+EAsFrtpjdsqYtM+/cjIyD5d055CoUyHPxBAh3JrFFWAmRGPx91rbqc0XX/zZuvqbMrSnzlzxqtr2l0oCF7XdbS3tyvBK6oCEaG9vd3t3++Stv2d4eHhTaXlbkr0gUDgvwO4ttTBjg5VtUBRVYQQiyeuiH7P4/F8dDPP3LB7Mz4+foG07RMgOg/IL/Vra21VdWkU1YcZs8kkUnNzxTPnYFlXbLRO/obNMkt5a1HwHo8HoVBICV6xNRAhVNhvoMBueDzf3OjjNiT6WCx2lJnfVTxWxZgUW40QohTNAQAS4p2x0dH3behZ671hdHS0A8xfLd7b0tKiEskU24LX60VLSwsAgJk1CPHl4eHh9jVuW8a6Ra8RfRzAASC/AirkShJSKLaaJeXZz9c07eb1PmNdA9lYLHY+mP8dhVqT7R0dpW+eQrFdzM/PIxEvFUmLs2X9x8jg4CuV3r9eS/85FARvGAYCfv8alysU1ScQCLhn/DuEYdyynvsrFn00Gj0C5qPF41BrK0gNXhU1gIiW5t7fODIy8qZK769UtUTMnwcQBPL1JtXgVVFLDK8X3oV6SX5diD8HUFHMvCLRj42NXcLAu4vHoVBIpRooakrJ2i/M1L4nFosdqeTeNUV//PhxDVJ+logMIG/lPSqDUlEHGIYB/4K114n5FlSg6TWjN+Pj4xewlE8xcwgAdu3erVwbRd1gWRamzp0r1sfMgOh3wuHw/1vtnjW/Few4ny0K3ufzqTx5RV3h8XjcRtgPKddMRltV9OPj4/0MXF88DipfXlFnEBGCwWDpmIGjExMTA6vds6ropW1/EIVcecMwlJVX1CWG11vSJhF1Orncjatdv5roNQjx4eJBSzCorLyiLinuMVw6FuIjZ86cWXHguaLoz549ex2Y9wL5hbp+NftaNZgZTiaNXDyOXCIOJ5MG6mCXx52Mz+crFSJg5r1er/f3V7pWX+G8EEQfRCHYr7a13CTMsFMppE69iOTTTyF95gxyswlIywQACMOAp6MTgf0H0XrpmxC8+Ag09cu6LoQQCAQCxYUmRET/DfkNQJyl15YNWY6Pj/dLxzkNoIWIsHvPHncCv2Id5BJxTP74h5h+4nHkZqYrusezaxc6f/cqdL/3BuhtbVvcw8ZhUfiSKAXgwnA4HF16XVn3Rtr2ewG0AIDHMNwLcxUVwtLB9JOP4/TN/wMTx++vWPAAkJuawuv/dBynPvYRTP/8cbCzzFgpyuDxeBYmTpmDAG4od90y0T/99NMeEJVWpCjXZv1Iy8Lonf8bw//rNtiJxIafYyfiGLnjNpz9zl1wMpkq9rAxIaLFhYKZj544cWKZxV4m+siePW8AcBjI+0lqE7T1IS0LI399B6Ye/SlQBQvNjoNzP30Yw3d8A9I0q9DDxsbn9bqN9OHBwcE3LL1mmehz+bWvASAf/9RU+nDFsHQQ/Zu7MfPk4xVdL7xeCG9lRiXxbycR/dvvghe2nVeUQdM0t6EOCCGuW3rNMtNPQpRmYP1+v6pwsA6mn3gMU4/+84rt5PGg9ZJL0fG7VyF46CJowSAAgjOfwvzpU5j55S+QfOZpcM4qe/+5n/0ELRdciK53/N4W/Q0aACL4fD5kCu4gAe8molvZFbFZFL1xR20AoKe3V1U5qJBcIoHffOJPkJuZKdse2H8AkY/8KYKHLgatUNiWpcT86VMY/e5dyAyV32vMs3sPLvzWX8PT2Vm1vjcajuNgYny8eDhPQlzY29t7tnhikaKllFfD5doowVcIMyZ//OCKgg8ePoKDf/V1hA6/cUXBA/lqz8GLD+P8r3wDrZe9uew1uXOTmHzoh1XpdqOiaZp798oAM1/tbl+saimvRWFCyq8GsBXjZNKYfvyxsm3+wf3Y/z+PQW+tPN6ut7Zi8HNfgH9gX9n2qcf+BdLMlm1T5HH59UTM15JrdFsS/fDwsA9EVxSP1T6vlZN89hnk4sutPBkG+v7kZuih0LqfqQUC6P/oJ0Blkvzs2QRmn3l6Q31tFtxrPhh422uvvVY6URK9rusHAUSA/M+DmoGtnLnnni17vvWSNyF46KINP7floosROnJJ+fd89pkNP7cZ8Hg87vo4kYK+AbhEL4C3F/9sGIaakKoQlhLpFQadnVdevamKEUSEriuvLtuWfu1VNVO7CkS0KBXere/SJ8LMby3+Wbk2lSMzGeQS8eUNQiBw4ODy8+vEv/9A2cFvbmZGTVatgVvH7HLdBQBEo1E/A6WV5GqxSOXIXA5cRnya3w+tCtXftJYgtJbgsvMymwE7aqJqNdw6JubD4+PjAaAgetu2zyOiASCfeqCpDdIqRzpl3QxhGKuGJyuFdA1UJuGPczYg5aaf38jomraQYw8MCCHOAwqi13X9EArxed3jUfF5RUNAQkBfMDyBXC53IbDg019cbPF4PGoQq2gIiGhRjSat4MKLwn9KcTGPyp1XNBBuPTvARUBB9Oy29GoQq2gg3Homorzoh4aG2gB0Fxt0NYhVNBBLgjLhoaGhNuHz+bqJyF+8QJXfVjQSi6KRzC0+n69bkOOcB6AkeoWi0XDp2i+l7NGlEANg1oqNKnKjaCSIyC16ASCiAwgXz2gqclMWZoYdj2P2108h9ZtTyJ07V5qQ4pwFez617B47lcKrXz626Qkqtm3Yc8ll551MBq/+1ZdKE1dkGPCFwwgduQShN14CzR9Ydk+z4tY1EfXpxNxdXDul1sMux8lmMPGD+3Dup4/AKSPuleBcDqlTL2xdx6SD1OkXF51K/hqYfOhH8IYj6PmjD6Dz7VepMRoW65qYe3Vm7i6ugxXKp1+EOfk6Xv3SF5EZfq3WXVkXZiyK4dtvRfKZp7H345+EaPIEQvdYlYn2CAhRWmyp0g8WyMVndqTgSzBj5snHcPY7dzV9BYUlv3a7BIAF0atBLIC8Dx/7/vd2ruBdTD32M8RP/mutu1FTlhjzdgEpS6JX/l+e9CsvY+ZfT9S6G9WBGeM/uBdOer7WPakZ7ogkM7cLEsJfbFDhyjwzTz4OtsrXntmJZKNnkfrN6Vp3o2a4tU1AUDBzwN2oAJLPP1frLlQXZqReeL7WvagZS3QdEMUUhDKNTYs1MVHrLlSd7Fis1l2oGUt0bQhmVjNSLmQ225ALrps5grPElBtq5KpoOpToFU2HANA4YQqFogzuDaaIyF4k+nL7TykUOx23rpk5IwCkyzUqFI2CW9dElBYMpIoNSvSKRsStbZYyI4go4W5UKBoNdhfFEmJGgLkkeqkqZikaELnYmM8IME+VGpXoFQ3IEl3PCCKaXKFRoWgIpGuGnZgnBBONFU84DTj9rlA4LmPORBOCmUu7rjlNnJ+haFyW6DomAEQBSCBv6VUER9FIMHPJgyEiR0g5LIQQ4wAygHJvFI1JUdfMnGVNe11ks9kJAPPFRjWYVTQSLKXbmKez2eyEGBwcnAVRaYWBsvaKRsJerOeJwcHB2XypbuZTxbO5BlobqlC49UzAi0Ahn14DFkSvIjiKBsKtZwk8BxRE7wClVcM5y1IRHEVDwMxLPZcFS+/xeH6DQoqxClsqGgUpJeyCpSeieU3TTgEF0UspXwfzCJAXva1cHEUD4I5GSuZhx3EmgYLoe3p60gBKJXYtNZhVNABLdPx8JBLJAK6F4UT0y9LFavt1RQPg1rEA/t315zwS+EXpYjWYVexwpJSLLL1b3yXR27b9CvJ5OHAcB7lcbjv7qFBUFdu23ROt0YK+AbhEv2/fPhPMJ4vHpnJxFDsYt2tDwC8HBgayxeOS6JmZIcSjKJQJMbNZKBQ7lcyCfpmJHnW3LapwZprmkyjE603TVHk4ih2J4zhuS58WQvzc3b5I9Pv37z8LV0pCtgmtPXk8yyp+NgLNtOHGEtf8hZ6enlH3iUX/EszMDPyoeJzNZpsuikOaBk9H59oX7jA8nY33dyoHMyOTySwcAw8tvWbZ119K+TBcLk4z5tcHD11U6y5UneChi2vdhW1BSum29GlmfmTpNctEPzQ09FsUZmdZyqZ0cdrf+jaggdwBvb0dwYsP17ob20I2m3UXd3phcnLyt0uvWfbJXnnllTaIjhePM+l007k4bf/hzQjsP1jrblSNXdf8Fxi7dte6G1sOMyOdTrtPPHDZZZctm3BayZzdT0QpID8722wTVcLwov9jn4AWCtW6K5smcPB8dN/wR7XuxrZg27Y7lXhe6PqD5a4rK/pwODwmmR8Hlg8MmoWWg+dj4JOfgRbcucL3D+7H/i8cgxYIrH1xA5B2eyVEP+vp6YmWu24lSy+Z+e9RmKhKp9PNN6AlQvvvvBUHv/xVBA6+AaCd4+OTrqPz6mtw4EtfaQq3BigY5wXXhqWU/4hCaZul0Er++pkzZ7wBv/8lZh4AgI7OTgSaxGIshW0bif/zK8yceBLpV36LXHym7jYuE14fjO5uhC4+gq5r/jMCB89vqt0i0+k04jMz+QOi4XA4fABA2dnVFUUPALGzZz8Poq8AgGEY2LV7d1P9Qy6FmfNir8eZaiKQpoE0DWiyz4iZMXXu3EJWJdEXwuHwV1a6ftXtNDXHuc/R9U8D6LIsC5ZpwuvzVbXDOwkiys/Yejy17orChWVZ7jTiKSHEPatdv6qj2j0wMAzm0gg4lUo1XfhSUd8wM1Jzc6VjAh5amnawlLVHZ0LcjULZP9M0my58qahvLMsqTaAS0Rxp2m1r3bOm6MPh8AsE/BhY/q1SKGrJMj0yP3zy5MlXVr4jz6oD2SKxWOyNYP41AJ2IsGv3bhiGsZn+KhSbxjRNTJ07BwBgZkto2lt6e3ufXeu+ioLP4XD4eRD9sPBwJJNJ5dsraspSKy+E+Kfe3t7nKrm30hkXtm37Gyj69tmsqpigqCmmabqTIVOS+WtYvDn4ilQ8zbh3795nCLiveKysvaJWsJSYSyYXThAdj0Qiz698x2LWNbcuLetWAHEgP2pelNGmUGwT6UzGHZefhml+fT33r0v0kcHBVyTz7cXjuWRSraNVbCuO4yDptvLM3w4PDr68nmesO4vKcZy7ALxc7MCinxmFYouZSybdW2SecZjvXO8z1i36gYGBBKT8IgoZbPPz82pQq9gWTNPE/Px88VCC6PP9/f3x9T5nQ/my4f7+ByTzT4rHiUSi+VKPFduKlBKzicTCCeZHwuHw8ZXvWJkNJ4mLXO6zAM4BQC6XQ2puTkVzFFsCM2Nubm4hBYb5daHrt2z0eRsWfXhw8GUQfY2IJJBPRlMlvhVbgWVZmE+lioeSNO0ve3p6Xtro8za1HCiXy90N5seA/LcxEY8rN0dRVaSUSMTjbi/i0XQ6/b3NPLOi3JvVmJiYGHBs+/8C2AUAgUAA7R0dTb3YRFEdmBnxeNy9DHBK0/U3d3d3D2/muZte+Nnd3T0Mok8zcw7IL9tSk1aKapBJp92Cz4Ho05sVPFAF0QNAOBy+l4B7iYgBYHZ2Vvn3ik2RsywkZmcBAETEYL4vHA7fW41nV2uJv3SYP81SPgvkcyPiMzNqtlaxIRzHwczMTKlSGUv5rMP8KaxQ3WC9VK2uRX9/f5yJ/hjANJAvvLNkAKJQrEkxIOLa4XJGAh/ayCTUSlS1mEskEnmehLgZgAXk6wqqbExFpTAzkrOz7pRhi4S4ua+v78Vqvk/VKxj19vbeX0hKy8fv5+bcMVaFYkXm5+eRcsXjQfTN3t7eH1T7fbakbNfc3NwxZr6/eJxMJlVER7Eq6XQaycLAtcC94XD42Fa815aI/tChQ5ZkvhnACWDBT1P7WCnKYZrm0vHfzx0pPwlgS8rIbXpyajXOnj3bK4ieAHABAAgh0LVrl1pUrihhWRamp6bcM/kvMXBNJBKJbdV7bqnoAWBycnJ/zrKeALAXyAu/s6sLXq93S99XUf+YpomZ6emS4Ilo2Hacd/T39w9t5ftueSnePXv2vMrA+5h5DMjnUszMzKh9apsc0zQxMzNTEjwzj0nmG7Za8MA2WPoisVjsLWB+CMAeQLk6zUwZl2YSRNeHw+Ffbcf7b5voAWAiGr3cAR6GS/jK1Wkustks4i4LD2BSA67rjkSe2q4+bOtOA92RyFO24/yB29WZnppS4cwmIZ1OL/LhmXkMRNdvp+CBbbb0RaLR6OUEPIDC4JaI0NraipZgUKUkNyDMjPn5eSRnZ91hyREG3hfZZsEDNRI9AIyOjg5qQvwEhXAmAASDQbS2tSnhNxDF1ILU4ln5lyTzu/r6+l6tRZ9qJnoAiEajYQLuAXBV8ZzP50N7Rwc0TatZvxTVwXEcJOLxpXsRn5DMN/X19Y3Vql813T0sEonEHCnfg7zwJZAf6EydO+feGlGxA7EsC1PnzrkFLwm4z5HyD2speKDGlt6FHovFjoH5zwAYAEBCoL2tDf5AQLk7O4jiBsazs7PunbstyXz73NzcsUOHDtXcmtWL6AEAY2Nj72cp7wLQWTznDwTQ3t4O0UDb1jcqUkokEgn3Ej8AmCYhbu7t7b1/pfu2m7oSPQBEo9HDxPx9EuJSZiYA0HUd7R0dMAxDWf06hJlhWdaixR9ExCzls0z0x+upKLwd1J3oAWB0dLRDI7oDRDcC8AD5sGYwGEQwFFJWv46QUmKusGaiqCVmzhHwjw7zZ6q54qla1KXoC4hYLHYTmL+FQnkRAPB4PGhrb1ezuHWAaZqYTSSWbr43BaJPFxZx12URpHoWPQBgZGRkn65pdwG4Fq5oU0tLC0KtrSq0WQOK1apdxVRBRBLMjwld/9NqlOnYSupe9ABw5swZr9fr/bAAvgii84rnhaahtbUVAb8fpFyeLacYmSmzL8E5EH0tl8vdPTAwUPcrhXaE6IuMj49fIG37VhC9Cy6rbxgGQq2t8Hq9aqC7BTAzLNNEMplcVM+IiBwGfgLT/LP1boxQS3aU6IvEYrGjYP4qgAPu8z6fD8FQSEV5qohlWUgmk+WWer4MKb8Y7u9/oBb92gw7UvRAKcLzcRB9EkCXu02Jf3Mwc6n8eiabBRZrJC6Zb3cc566BgYHESs+oZ3as6IvEYrHzAXwOzEcBBN1tSvzro+jGpFIpmKa5tF5RhoD7pGXdGhkcXHNX7npmx4u+SDQaPSKI/kJK+YdEtGg5lmEYaAkG4ff7lfjLIKVENpvFfPk9Bmww/9CW8ht79+59phb9qzYNI/oCNDY2dgmk/CyIrmPmkLtR0zT4AwEEAgHout7UX4CiC5PJZJBOp92blxXJEPBjJro1HA4/jwo3Jt4JNJroAQDHjx/XrrjiioPsOJ9l4Hq4JreA/OyuxzAQCATg8/kghGiKLwAzQzoOsqaJdDqNnGWVK7k4DeYHIcTd4XD4BdTpBNNmaEjRuxkfH++Xtv1BCPFhMO8FsEjdQggYXi/8fn/pC9BoOI4DM5tFtvAq85kzEY2wlH+jOc593QMDwzXo5rbR8KJ3oZ09e/Y6Ivog5Wd3W8pdZHi98Pt8MLxeeDyeHfkLUHRdTNOEmc2uXG6FKEXMjznM/2Ca5j8fOHCgKeqyNJPoi4jx8fGItO33guh9AA4DCJS7UNM0GIYBw+uFYRjQNK3uXCFmBjPDtm1YlgXLNGFZ1mp7A6QBvACi4wDuD4fDY2hAF2Y1mlH0JZ5++mlPZM+eN+SY30VCXI+FL0BZVQshoHs88Hg88Og6PIYBXdNKKRBb+WUofk5SSjiOg5xlIWfbyBUEvorIGXmhn2LgR1LKh4eGhn575ZVXbkmdyJ1AU4t+KePj4/1SyquI+VoG3gYgUsl9mqYtvHQdmhAQmgat8KtAxf8XXkspWuviS0pZejmOA8e2S8Jex+4uUQJ+yUSPEtGT4XA4yurDBqBEvyLDw8M+XdcPCuDtEvhPAI4QsA8ruEJrUcmvwEY/CyKaB/MIE71AzCcl8Avbtl/Zt2+fqYS+HCX6ColGo37bts/Tdf0QgIsFcAkDFwPoJiI/AD8zb2WeswSQAdE8gBgzn9KAUw7wvMfj+Y2U8vWenh5VNasClOg3ydDQUJvP5+smxzlPCjEAIEzM3UzUjfxa305I2UlC+Jk5QER+ZtZdj7AKrzTAHpkBAAAAKElEQVQDKSJKgDkBoilinmSiMWY+CyAqhBjPZrMTg4ODs8t7oqiU/w8Un5ygmspHMgAAAABJRU5ErkJggg==";const EN=r.p+"static/media/arrow.0b1bb0506b894eb647e0179d5b72f6ff.svg",DN=e=>{let{state:t}=e;switch(t){case-1:return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL0AAAC9CAYAAADm13wwAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAANgAAAABAAAA2AAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAvaADAAQAAAABAAAAvQAAAAB3ShUyAAAACXBIWXMAACE4AAAhOAFFljFgAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgoZXuEHAAAYzElEQVR4Ae1da3rbRpbFS5JlyxblV1ufaZvsBcyo0//HHPf/jr8soO1kAd3uLCCxvYBOvIHY7gUkTi8glrOAibKBIS2po0zbbdFvS3xg7inhQgUIIEESBEHi1vdJBRQKqMKpg4tTtwpF05AwMgI79XqlbRgV07YrrutWDMsqWaa5rLYNo2SYZkkVgmNxwTQb6pDrNilumvTXNYynRrfbNOmY2+k0HMNorFarB/lUZvk3DAKErYSkCNTr9ZJtGDVnYeGK2+2uEanX6NwK/R2QOumFRs+3QQ3X6Ha7P9NDsU4P3Ea1WsXDIiEBAkL6HiBt1+tr1sLCVUVwIrvRy1L3uE4mh+htYLruBr1t1rt7e0/K1epGJuVOYSFCeq3RYMnnbPu6aVlXyYpfp0OJLDjlNxzbNpy5OcOmbZu2LfpTsWkaOI7gOCRQYkK7TfaaQqfTUTFZcaNDaV3XNVr7+wdxq2XQA6iO9/3nPQQksx5RRZ6srq42+p5TkAyFJz30eNdxbriw5Ad/sU0P8s4Rsefpb25+3pgjEoPITOrYE1M8ANLvE/nxIOABUdvJHoZ1ehAfUf/g+6I/AIUkPSz6wsLCjW6nA2tei+MkyHzs2DFFcsqviB6Xd9LpeAj29vbUX4veEHhL9Agbtml+XdQ3QKFIv1Wv10zH+ZLIUIsjxDyRe5GInneSx9Wf0/kheP/hg7FPD0NcIAI8ogfk4eVq9VFcnllLn3nSw6rPO85fSL7cosY7otFZspw4cUKRPUupkhWZIInev3+v/j7QQxAVCJ+6Y5p3imD9Z5b0ynfuOLfoBm9EkZ0tOsg+i0SPIjbS+AF4++5d7BuAdP990v93Z1X7zxzpe0kYkHtpack4SX9FInrcAwDd/+rVK2MPneKIPsCskn9mSA/L3nGc+9TAtXAjw6qD6McWF8OHZN9D4N3bt8abN2+MFnmCwmHWyD/1pFejpLb9NfmjIWMCAWQ/deqU6pQGDshOLALwAOEBeEfyJxxmhfxTS/peHVQhe5iug++z9Ikgv0ukuX3x0qW7g181H2dMJemVbp+bux+eFiBkT59UceRnb89qufww/VLHe8WpIn2cbheyj5ckuDpkz+7u7pEO7zRKnqkh/S9bW3+hWSe3CX/f1w4PDDQ7PDISskEAev/V69dh8u/SbM+75StXvs6mFqOVknvSx1l3EB2EF9fjaAQY5uw4yUPXemw7zmd59+/nmvQ729s3Oq4L6+FbdwLVWFlZEY/MMGxN+RyQ/9nz5wGrPw1aP5ekh2eGpvh+SV8c3dLbCdZ9ueTzXz8k2xNEAANcr+kvEFz3q1anczePH7fkjvRKzszNPdY9M2LdA3TK5U6s1Xeca3mTO1aeEFRyxnF+0gkP6/6b8+dFzuSpoSLqAsN0ntrphOZUIItapYfhf9CuEadMLCk3lv6fW1tfkh68zUiIZ4aRmL74DXl3IHno6zOufK4GtCZOeqXf5+a+IoRuMkKwGufOnjUQS5hOBKLkDnz69KXX55PW+RMlveeO/I6adY2bFgNNZ8+cEVckAzLFMYjfbDaN0Bz+n8iYfTJJnT8x0kd1WMU7M8UM71H1sHdHuTUn2MGdCOmjCA9XJEgvYTYRyBPxMyf99vY2pMx37KFBh3V5ednAF0wSZhsBzNhs0vwd7uBOyuJnSnpFeNd9TE2rRphAeHRYsZyGhGIggA/Wnz175hOf7nqXBiGvlcvljawQyIz0YcLDM3Pm9GkhfFYtnaNyQPx/v3ihT1/IlPiZDE5BwxPm8NIoC88uSbHwOWJihlVBu4dc0iskeb7d2dmpZFGNsVv6cKeVCY9YQrERCPvys9L4Y7X0YcJDw0PSCOGLTXa+e/AAfKBBK5VE/6u0pucP47b4YyM9RlppdYKAl0Y6rdzcEjMCSuqcOxcgPr0BvgV/OE/a8dhITwudfkWVXeMKwy0pGp7RkFhHALwo0TcSWvgdLZL7N20/1c2xkB6Tx/S5NCfpCyfxw6fabjN3sePHj6vxGr4x6tjeJB59wftpxql3ZLc3N2/Su+o+VxKEx2d9EgSBJAhgrs5bWnTKCy6trvxp2isupEp61XHFfHjPNYllrs/Q4JMEQWAQBJ7T4BVWX/DCLnV4P0pzglpq8kZ1XPHFk+aLL8mnfdxwEg+AwGmaZat5+Fbg0UmzY5sa6dU3rd5vMvH0Aq3iA9yyZC06ApY3PUV3ZRK/UtP3qZDe0/G3uLGg4YXwjIbEwyAA/gT6grRIwE5Knx2OrOnDA1AyJ36YJpZz4hAIdWxT0fcjW3q1PLYna448nXF3IumCQEIEQqphhQauvkl4amy2kUiPpfboyjW+OkZcoeclCAJpIQB9j8W9tFDbfvrUl9JaeuLNoeVN2D0p/vjEmEvGIRBIU+YMbZZbtn2b6q7mR4isGaIV5ZSBEID7W3OOjCRzhiI9vDX6L39A1kgQBMaNQFjmbG1t1YYpcyjSG5b1JReGORPaE8jJEgsCqSOA3/bVVlCDNP9mmEGrgUnvTSar4I5E1gAFCVkiAG+ONmhVcSxr4E7tQB1Zr/Na55vE6+a4rGLAcEicEQJYNvDly5dc2m6r3f7tIKumDWTpvc6rKgxWXgjPuEucJQJLJ0/qC/qu0Nx7fLuROCS29GErf5a+doHGkiAITAIBzMLEbEwvuGSEf5t0JmZiS69beXRehfCMt8STQAD80zhoDjJSm4j0sPK6izIwEWgSdyxlCgKEAAZEtVBL6sJMRPqwlRcXpQa1bE4MgbC1J62eaPpxX9KLlZ9Ym0rBCRAIW/sky4f0Jb1Y+QTIS5aJIRC29u39/b5++56kD1t5cVFOrG2l4B4I6NaeZvn+qd8obU/Sd2y7xmVhbRKtt8zJEgsCE0cgZO1L/UZpe5Jen2OzJCOvE29cqUA8AvqcHLL2f47PaRixpN/c3LzOP5wgo6+9IJRjeUAA1p7n5FB9Sr3cl7Gkp0V2bvDNLMiPJjAUEucUAXxhhekJXsCSsLHuy8hpCOEpBxcuXJDpw4TmP7e3GVQ/vlgu+9uyMVkEut2usfPLL1wJlyainY6aiBZp6fUOLH7iUgajogkPdPEgRD0MjLzE2SEAa687W+Ys62ZU6ZGkJ3GED75VOEHzbCT0R0DI3x+jLHJgKUkvmOSI+SPv6PER0kPaUIY1zrQopGcoEsVC/kQwjS0TxpK0Dm0taoT2COk7lnWda7S4uKhfgJMlToCAkD8BSGPIAokzrzleaIT2ZriYI6SnV8LHnEl7VXCSxAMiIHp/QMBSyK7NHDDJZ/9f4UsGSO9JmxpnEmnDSIwWi9UfDb9Bzw4Z61p4WkKA9GGvjaaNBi1X8kcgIOSPAGUMSWEvjm3bvmRHcQHSE8l9aQM9L2E8CAj5x4OrflXN2pu2ZV3VjwVI75qm77XR/Z36CbKdHgKi99PDMnylhUPXJc2mcX1jjnw+6b2fsa8gEYNR9OuA2JQwZgTE6o8HYPBXk+el7XrdN+g+6Y1Op8bF05IKvClxRggI+dMHOiDRLavGJfikJ9eOr3sw9UDCZBAQ8qeHu6ZWTNO2/5Ov7JNe9DxDko9YyD96O+i6vuu6vlFXpFd+TO/XRODu0Z6Q0UuWK4yEAMgvYTgEdF1P04kr7K9XpHe0uTaO6PnhEB7jWWL1hwdXn5JA28raH8gby6rxZaUTy0jkLxbyD94muhF32+0qrqBIT5LGF/kyd35wYLM+Q8ifHHHN0vudWUV6l/QOX0b0PCOR/1j0fv820vlMg1TKuB/IG03Ta09G/ytKjokjIFa/dxPQvBs9QwU7FvVo1YbaIc+NNoqFJAlTgoCQP7qh4I3UOF3CRyUWeW4qnF0X/Zwm8XQhIOQ/2l4OTavh0G63aQVu265wAs1G402JpxwB0fuHDRjS9RWLxH2FD4ulZyRmIxarf9CONMXGb1CT+I69EqdA/0iYPQSKTn7nsDNrkqdymXhuXeFm1g5yksQzhEBRyW8dkt4gb86yRcz3Lb3+GpihtpZbCSFQNPLrbkvI+YC8CWEjuzOOAMhfhBCS7SU4MX1Lrz8RRQBD7rEYyxLSjwT6TQ1lIz1XH45ibxTF6qOVLV6DHju6Ex/7EoqFwKwSX59ESTZfafpitazcbeEREHlTeAoUDwAhffHavPB3LKQvPAUOASjKr6oI6Q/bvNBbRSE8GvlwzmWhm7y4N18ksnMrY3CqwTs015g3JS4AAkUhfEfjNQ1ONcTSF4Dc4VssCtnD9837Dg1ONXmHJuPwpsQziEBRyd7udPzWpMGpJiy9T3r8DqeE2UOgqGSPacmmQ0R/yrPQoOllXfoYqKYwWch+0Gi6MSc189KCuef2FHnDSEx/LIQ/bMNAR9Z1VUfWJ71+8PAU2ZomBITsR1uLVizmRFdpeloTpMEp+muA0ySeDgSE7PHt1Nrf9w9Sr7XhuJ1Ow/TWBWlp/kw/l2zkGgEhe//m0WU79V+fWjQc1eDTRN4wEtMRC+GTtdO+Zunpm5GGVa1WG3Sq0vWQN/pTkeySkitrBEB2IXwy1MOcXl1d9UdkG3SJNVwGbkt9RSikScgHAkL0wduh1WrpJ21gR01DoKfhZ9I6ivR4FQjpdZwmvy1kH74N9E4sqZinuJKaWkz/1BOAhHbwyUCShAkiIIQfDXxtCoJL2l2z9OS25In1odfBaCXK2UMjIGQfGrrAiQEjbllPcFDJm06ns26x21IsfQC0rHeE7OkirntuqL+qLL0y8OTBafK8evR2xdqnC3ySq4HsQvgkSCXPAx6zNxLz6BXP6XR/Pn2303lCndkKLrm3tyedWQCRQRCijw/kvQ8fDi/uuj/zDkt59Gj9zqze4+WMEqePgBA+fUz1K8J4ewGd2HXe8S09rWG8TgdU+gf9CeGcEqeGgJA9NSh7XkiX6Wa3qzqxOMG39OVyGZa+iUTR9UAh/QCyC+HTxzXqiiA8OWjUIej5crXqKxmf9DhKZP+eL6C9GjhJ4iERELIPCdwIp8XpeVwyQHpa0nidy/nw/j1vSjwCAmLZRwBvhFM1ie46lvWdfqkA6VudziM+CEvP7h5Okzg5AmLdk2OVdk7I84BSse0f9TICpPf8mOuc4d27d7wpcUIEhOwJgRpjtpBKWcfMSr24AOlxwNV6ue+F9DpWPbeF7D3hyfTg+0Np7hKf/X4qV+II6dvd7gM+qI9ocVpR4zhtLmTPFyMgbTQ9bzjz80dIT9/JHg3bW1uPKbWGI8ulkrG0tIRNCYJA7hF49/atsbu7y/X8qXzp0ke8w/ERS68OaK+EkD7i8yQWBHKJgNYPdW3T/DqqkpGkb2kSR7w4UbBJWh4RwGBUL68N1zmS9J4XBxJHhdevX/OmxIJAbhF49fKlXzdyt38f9trwwUjS4yAN3d7lTG/fvBGfPYMhcW4R0Ky8a9n2/biKxpL+0qVL63SSPxcnMKwbdzVJFwQmhAA6sPpcm4sXL/4jriqxpMcJ5OO8xye+IWsvQRDIKwIaP13HNG/3qmdP0pPPHr1fZe3x6tBeH72uKccEgUwRAC/1acQ0Tf7HXhXoSXp0aMnaP+QLvH71ijclFgRygwCkDQdam/VBXAeW8/QkPTLRAva+r1OsPcMmcV4QgI7XffPUgb3br259Sb96sOzfoftSrH0/TOV4hgjobsokVh5V60t6ZNLdl2LtgYiEPCAwjJVHvROR3nNfirXPQ0tLHXwEhrHyODkR6ZHRbrc/Q4wg1v4AB/k/OQTAwUG1PNc2Memh7elnTB7wieLJYSQkngQCuy9e+MUm1fJ8QmLS4wTSUH+lyPfbY3qCBEEgawT00VcqG1MO7g5Sh4FI7/nt/VHaV+TJke9oB4Fb8o6KADqv4J0XsFLTnX5+ec7M8UCkx0kYpaWC6tjGVyp6ZwJpEgSBcSIAvoH4CMTDBjlZ7gxa3sCk96Ydf8YFYc4DOhUSBIFxIxB2UfabYxNXn4FJjwuFXZh6pyKuIEkXBEZF4Nm//uVfQnVey+W/+wkDbAxFelzfc2GqjxHxBL5sqv7tAEVLVkEgOQLwFrKsobN2B+286iUNTXo1PcE07/LFROYwEhKnjQDIPmrnVa9T5GoIeoZ+27Rywg+U57+Rz7Zt4zcXLtDvO4x82X7FyvGCIADv4P/9+qtu5R/TCgfXRrn9oS09FxqWOeLNYWQkTgOBkLembjvOZ6Ned2TSeyO1n3NFIHNk0IrRkHgUBN7QggThL6IG9clHlT8y6XHRy5cvP6ApCv68e+gvrdMRVa6kCQI9EQjreOLXvdUhvTXhglIhPS5KlbyjD1rBvSSjtWG4ZT8JAiC8zh/wCvxKcm6SPKmRHoNWTrt9jQr13Zj/fv48SR0kjyAQQKBJy/KB+F7YdRznD96gKKeNFKdGetRC0/f0cB5MQRb/PZCQkBQB+OO1BVixNN+tNHS8Xn6qpMeFoe+J8Xe5EOnYMhIS90MAhD/ij09Jx+tlj82hvrm5eZ9+zucmF7aysmIcP3GCdyUWBAIIhFYbdqnj+pAM6KeBTCntpG7puV6kyTD3/ifef0mz4wJrk/ABiQuPAHjRDE5j2fD4MxZsxmbpUduder3SdpwfqJAq9ukXyY2z587Jr5EDDAkKARBe99TQcP7/0sj+H9LW8TrcY7P0KAQdW3h0dFcmPDpaz1yvi2wXDAHwAHzwXdsZEB4Qj9XScxuGLT7m6Jw7f17N1eE8EhcLARAeFt43gBkRHihnQnoUtL29vUaPNCanrWAfxD9z9qxIHYBRsABJE3rjv6A5Nb8fp6TRIR6rvNELKpfLG6TXrlGaP3j1/Nkz6dzqIBVgmzW8b+EN4wXxYqwaPgxrZpaeCw5LHXRul5eXxZ3JAM1wDLckvDSs4dHXo2nonyiDmOF9Z0563FuY+Eg7deqUcZL+JMwmApgxCbe1HzLU8H6Z3sZESI+yhfjhppjdfUxF0aYIU09y/G7JXmhOjPSoFIjfcZxvafN3XMnFxUX127Xo6EqYbgQgY9Bh1VbLwJysDeq0fpJVpzUKwcw6slGFw4/fIj++t1wgADHwE+cBV1bUiZKWewTQUcVnfjrhMbUA7T1JwgO4iVp6veW2trZuU2W+4Dqhgwudf0J+rVyHaSq2od8xcYw7rFRptRLZMAszjeOGc0N63Nz25uZN0nt/o03ly0faEpH+FHl35GNzoJHvAJLjm9aAfoeLutv9a/nKlYd5qX2uSA9Qojq4MoKbF7rE1wMyBot+af53WPc6PgCZtJwJ13qimj5cGexD57fb7Y9I/+GbW6XzAeSvOzuGLA8ehdhk02Dd4Z3BQKNOeGq/e9SOmY2yDoJC7iy9XnnIHdc0v6BKVjldrD4jMfk4wrqjUrmTM2Gkck16VNZza35DmzX68+t7/PhxpfXFtUmoZBxitDveyutYlyZvciYMj0+i8IG87dOEtVvkA4B3x+/kgvDw8MgXWdm1VoRnBoXvEuPvkHfmXnY1Gb6kqSE9bhFWv2Xbt+kzxD/Rrl93kH/l9GljYWFheCTkzJ4IQMqgT6X53ZF/aqy7fnM+cfTEvG9rWr9CdfXvQSRP+i0XR3Zie4NK+5Ss+5P0Sx3vFX3CjLeY8Vw9PKDFpQj5GYnh4xiy44KQMvDM3KvSWkfDlzC5M6ea9IAtTvLgGMgPvS+yB2gkCz3ITo4088F+q/X5tJKdEZh60vON9CL/3Py8sUTklw4voxWM4Y3BAktYeDek2ZFxKnV78A6DezNDer6tXuRHhxdWH9MaxNWJCTGuAW/Ma/rDdigostM/eGWehI5N9e7MkZ5bI0R+JAfuFeSH/FmkvyLN6wG5YdFh2WOsehOzIefm5u7l3d/ObT1oHCDCoCdPQ36Qv2PbNW9kt0J1PnLPmMN/7NixmX0AQHRM2cbnevv7+3FWvUlWfao7qEn5eIQASU+cxny01OB1WhD0BjXux179j9w/3gB4ABboj6zdNN6mqjM+wN4jax5j0ZEH8gVhfRYlzMGtRf8/0ujR2WYrla0/6Zo/052teXd3BAvo/nnqBOMv7w8BkxwxrHqERsdt+kSnX+d7RPLm79PuifHabqDoSEMPdPYMZMYD4C4sfNztdGD9a94tReIC7Y8HAG8APBDwCmE/yz4ByEw+crV0SoukCkgeI1m4dXyi08YTmur7cFa1Ot9wvziycfudNKvH+Q1AJP5jl94ABE7Fu9eeOPHDgK+9HHogaJqEQeQyTNpHYE8R0uICiIwAUne7XTVNlx7Eg5j26TM7o00Ej7Hg+mWZ5E2q1yO303nS6na/L6JF10HRt3s2pp6xiNtYlY2IfJWIczX0EACOPGDHBIduadDDtk4P2gY9ND9mvZbMNPEjDw03NXjV6/USWes1MsU1ehj+g4hWocpzn0C/jzRx9YntFYCh/wZZ8Q0QnN4QT+njjSdiyXX4e2+n2Ti9S5rhozs7OxUiX8V03QrJjwqtSV4iYXOZ2Fqi2y55MV4NlTgYKE8DxygPSA1p0uh0uy/pmk1Ka7iW9ZQeuEbR9TgwGjX8P4bdHcgY8PzyAAAAAElFTkSuQmCC",alt:"No signal icon",style:{opacity:1,width:"51px",height:"51px"}});case 0:return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL0AAAC9CAYAAADm13wwAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAANgAAAABAAAA2AAAAAEAAqACAAQAAAABAAAAvaADAAQAAAABAAAAvQAAAAAhv0H1AAAACXBIWXMAACE4AAAhOAFFljFgAAACaGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MTg5PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjE4OTwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4Kvsq8IgAAGQxJREFUeAHtXc123MaVBtAgKUqU2NRfxKOW1J3dbGYYz5lt1FFmbWv8AJHsB0gUP4At6QFi6wUsKQ9gS1nPsahsc05Mr7KbbpGM6YkUkfoX2T/I/Yq4YDUIdKPRaADduHUOWUChgCp89eHiq1uFatOQMDICW41GtW0YVbNUqjqOUzUsq2yZ5qLaNoyyYZplVQiOhQXTbKpDjrND8Y5Jf13DeGJ0uzsmHXM6naZtGM3lWm0/n8os/+IgQNhKiIpAo9Eolwyjbs/NXXK63RUi9QqdW6W/fVJHvdDo+dao4ZrdbvcHeihW6YFbq9VqeFgkREBASN8HpM1GY8Wam7usCE5kN/pZ6j7XSeUQvQ1Mx1mjt81qd3f3caVWW0ul3AksREivNRos+UypdNW0rMtkxa/SoUgWnPIbdqlk2DMzRom2S7Rt0Z+KTdPAcQTbJoESEtptstcUOp2OismKGx1K6zqO0drb249bLYMeQHV84D/3ISCZ9YAq8nh5ebk58JyCZCg86aHHu7Z9zYEl3/8LbXqQd4aIPUt/M7OzxgyRGERmUoeemOABkH6PyI8HAQ+I2o72MKzSg/iA+gcPi/4AFJL0sOhzc3PXup0OrHk9jJMg85EjRxTJKb8ieljerNPxEOzu7qq/Fr0h8JboE9ZKpvlVUd8AhSL9RqNRN237CyJDPYwQs0TueSJ63kkeVn9O54fg3fv3xh49DGGBCPCAHpD7F2u1B2F5pi196kkPqz5r278j+XKDGu+QRmfJcuzYMUX2NKVKWmSCJHr37p36e08PQVAgfBq2ad4qgvWfWtIr37lt36AbvBZEdrboIPs0Ej2I2EjjB+DN27ehbwDS/XdJ/9+eVu0/daTvJ2FA7oWFBeM4/RWJ6GEPAHT/y5cvjV10igP6ANNK/qkhPSx7x7bvUgPX/Y0Mqw6iH5mf9x+SfReBt2/eGK9fvzZa5Anyh2kj/8STXo2SlkpfkT8aMqYngOwnTpxQndKeA7ITigA8QHgA3pL88YdpIf/Ekr5fB1XI7qfr8PssfQLI7xBpbp6/cOH28FfNxxkTSXql22dm7vqnBQjZkydVGPnZ27NcqdxPvtTxXnGiSB+m24Xs4yUJrg7Zs729fajDO4mSZ2JI/+PGxu9o1slNwt/ztcMDA80Oj4yEdBCA3n/56pWf/Ns02/N25dKlr9KpxWil5J70YdYdRAfhxfU4GgHinB0meehaj0q2/Wne/fu5Jv3W5ua1juPAenjWnUA1lpaWxCMTh60JnwPyP332rMfqT4LWzyXp4ZmhKb5f0BdHN/R2gnVfLHv81w/JdoYIYIDrFf31BMf5stXp3M7jxy25I72SMzMzj3TPjFj3HjrlcifU6tv2lbzJHStPCCo5Y9vf64SHdf/Z2bMiZ/LUUAF1gWE6S+10THMqkEWt0cPwV7RrwCmZJeXG0v99Y+ML0oM3GQnxzDASkxe/Ju8OJA99fcaVz9WAVuakV/p9ZuZLQug6IwSrceb0aQOxhMlEIEjuwKdPX3p9lrXOz5T0rjvyW2rWFW5aDDSdPnVKXJEMyATHIP7Ozo7hm8P/PRmzj7PU+ZmRPqjDKt6ZCWZ4n6r7vTvKrZlhBzcT0gcRHq5IkF7CdCKQJ+KnTvrNzU1ImW/ZQ4MO6+LiooEvmCRMNwKYsblD83e4g5uVxU+V9IrwjvOImlaNMIHw6LBiOQ0JxUAAH6w/ffrUIz7d9TYNQl6pVCpraSGQGun9hIdn5tTJk0L4tFo6R+WA+P98/lyfvpAq8VMZnIKGJ8zhpVEWnl2SYuFzxMQUq4J297mkl0jyfLO1tVVNoxpjt/T+TisTHrGEYiPg9+WnpfHHaun9hIeGh6QRwheb7Hz34AH4QINWKon+12hNz+/GbfHHRnqMtNLqBD1eGum0cnNLzAgoqXPmTA/x6Q3wDfjDeZKOx0Z6Wuj0S6rsClcYbknR8IyGxDoC4EWZvpHQwi9okdw/aPuJbo6F9Jg8ps+lOU5fOIkfPtF2m7qLHT16VI3X8I1Rx/Y68ehz3k8yTrwju7m+fp3eVXe5kiA8PuuTIAhEQQBzdd7QolNucGh15U+SXnEhUdKrjivmw7uuSSxzfYoGnyQIAsMg8IwGr7D6ghu2qcP7QZIT1BKTN6rjii+eNF98WT7t44aTeAgETtIsW83DtwSPTpId28RIr75pdX+TiacXaBUf4pYla9ERsNzpKbork/iVmL5PhPSujr/BjQUNL4RnNCSOgwD409MXpEUCthL67HBkTe8fgJI58XGaWM4JQ8DXsU1E349s6dXy2K6sOfR0ht2JpAsCERHwqYYlGrj6OuKpodlGIj2W2qMr1/nqGHGFnpcgCCSFAPQ9FvfSQn3zyRNPSmvpkTdjyxu/e1L88ZExl4wxEEhS5sQ2y61S6SbVXc2PEFkToxXllKEQgPtbc46MJHNikR7eGv2XPyBrJAgC40bAL3M2NjbqccqMRXrDsr7gwjBnQnsCOVliQSBxBPDbvtoKapDmX8cZtBqa9O5ksiruSGQNUJCQJgLw5miDVlXbsobu1A7VkXU7rw2+SbxujsoqBgyHxCkhgGUDX7x4waVtt9rtnw+zatpQlt7tvKrCYOWF8Iy7xGkisHD8uL6g7xLNvce3G5FDZEvvt/Kn6WsXaCwJgkAWCGAWJmZjusEhI/zzqDMxI1t63cqj8yqEZ7wlzgIB8E/joDnMSG0k0sPK6y7KnolAWdyxlCkIEAIYENVCPaoLMxLp/VZeXJQa1LKZGQJ+a09aPdL044GkFyufWZtKwREQ8Fv7KMuHDCS9WPkIyEuWzBDwW/v23t5Av31f0vutvLgoM2tbKbgPArq1p1m+vxk0StuX9J1Sqc5lYW0SrbfMyRILApkj4LP25UGjtH1Jr8+xWZCR18wbVyoQjoA+J4es/W/DcxpGKOnX19ev8g8nyOhrPwjlWB4QgLXnOTlUn3I/92Uo6WmRnWt8M3PyowkMhcQ5RQBfWGF6ghuwJGyo+zJwGoJ/ysG5c+cKP3343779EwPqxf/7Xx8Y5ysVb182skWg2+0aWz/+yJVwaCLayaCJaIGWXu/A4icuiz4YFUR4IPvff/mrgWN/39xkoCXOEAFYe93ZMmNZ14OqE0h6Ekf44FuFYzTPRkJ/BIT8/fFJ8yiWknSDSY6YD3lHjw+RHtKGMqxwpnkhPUMxMBbyD4Ro7BkwlqR1aOtBI7SHSN+xrKtcs/n5ef0CnCzxAASE/AMAGuNhSJxZzfFCI7TX/cUdIj29Ej7iTNqrgpMkHgIBkF/0/hCAJZRVmzlgks/+l/7L9pDelTZ1ziTShpGIH4vVj49d3DN9xrrun5bQQ3q/10bTRnHLl/NcBIT86VHB78UplUqeZEctekhPJPekDfS8hOQREPInj2nQFTVrb5Ys67Kep4f0jml6Xhvd36mfINvJICB6Pxkcw64yd+C6pNk0jmfMkd8jvfsz9lUkYjCKfh0QmxLGiIBY/fGBC/5q8ry82Wh4Bt0jvdHp1LkKtKQCb0qcAgJC/vGA3CPRLavOpXikJ9eOp3sw9UBC+ggI+ZPFXFMrplkq/Qdf3SO96HmGJPtYyJ9MG+i6vus4nlFXpFd+TPfXRODu0Z6QZEqXq8RCAOSXwa1Y0KmTdF1P04mr7K9XpLe1uTa26Pn4KI/hTLH6o4GqT0mgbWXt9+WNZdX50tKJZSTyFQv547WHbsSddruGqyjSk6TxRH7R587Hgza9s4T8w2GtWXqvM6tI75De4UuJnmck8h2L3o/WPjqfaZBKGfd9eaNpeu3JiHZVyZUZAmL1B0NP8270TFXsWNSjVRtqhzw32igWkiRMAAJC/vBGgjdS43QZH5VY5Lmp8im66Oc0iScHASF/cFvZNK2GQ7vdphW4S6UqJ9BsNN6UeIIREL3f23g+XV+1SNxXOYtYekZi8mOx+gdtSFNsvB2T+I69MqdA/0iYLgSE/IZhH3RmTfJULhLPrUvczNpBTpJ4ShAoMvmtA9Ib5M1ZtIj5nqXXXwNT0tZyGz4Eikh+3W0JOd8jb3z4yO4UIwDyF2Uym0+2l+HE9Cy9/kRMcXvLrbkIFMXq048Eem0OZSM9Vw+O4m4UyeqjlS1egx47uhMf+xKKg8A0E1+fREk2X2n64rSs3KkgQAiIvBEaFA4BIX3hmlxuWEgvHFAIFOlXVYT0QnqjSIRHcx/MuZTGLxwCRSM7NzAGp5q8Q3ONeVPiKUegSITvaLymwammWPopJ7f/9opEdv+9875Ng1M7vEOTcXhT4ilDoMhkb3c6XmvS4NQOLL1HevwOp4TpQqDIZA9pyR2biP6EZ6FB08u69CFQTViykP2gwXRjTmrmhQVzz4dF3jASkx0L4Xvbr6cj6ziqI+uRXj/Ye5rsTQICQvbgVqIVi/mAozQ9rQnS5BT9NcBpEucfASF7/zZq7e15GajX2rSdTqdpuuuCtDR/ppdLNnKLgJA9WtPosp36r08sGo5q8qkibxiJ/MdC+OhttKdZevpmpGnXarXm5sYGdH0Z8gZPhbYMWvQrS85UEBCyDwczc5rPWl5e9kZkm5S4ggNwW+orQiFNQvYICNnjtUGr1dJPXMOOmoZAT8MPpHUU6fEqENLrOGW7LWQfDX+9E0sq5gmupqYW0z/1BCCh3ftkIElCRggI4UcHXpuC4JB21yw9uS15Yr3vdTB6qXKFoREQsg8NWegJPUbcsh4jo5I3nU5n1WK3pVj6UADHfUDInjzCuueG+qsHlp48ODubm5tNLAeC3i6svej65Bsg7IpC9jBkRksHj9lHj3n04Dmu6M2n73Y6j6kzW0Xi7u6ukB5AjDkI2ccL8O779wcFOM4PvMNSHj1arzOr93g5o8TJIiCETxbPoKvBeLsBndhV3vEsPa1hvEoHVPp7/QnhnBIngoCQPREYI11Ed8qY3a7qxOJEj/SVSmVNH5kVXR8J18iZhOyRoUokI/hLDhp1Lej5C7Wap2Q80uModWIfkq6/hm3R9UBh9CBkHx3DOFcI0/O4lqfp1Y5priJGeP/u3f6G/I+NgBA+NnQjn6hJdMe2rG/1C/ZY+lan82DGtu8iAyy9TD7ToYq+LWSPjtU4csLtrnViDeqv/lkvp4f0yl+/sbFKGerI9PbtW+PYsWPYlBABASF7BJBSyOJTKauYWakX20N6HHCol0u/PVXH9jshPWAYGITsAyFKNcO7A2nuEJ8f+gvv0fQ42O5273EmfUSL04oY/+1/Pgy8bZAdx85XKoHHJTF9BCBtND1v2LOzh0hP38keDuS6fESpdRxZLJeNhYUFbEoQBHKPwNs3b4zt7W2u5/eVCxc+4B2OD1l6dUB7Jfj0EZ8nsSCQSwTQD3WDUzLNr3hHjwNJ39IkDntx9JNkWxDIIwIYjOrnteE6B5LenY0GiaPCq1eveFNiQSC3CLx88cKrG7nbH/q9NnwwkPQ46BjGbc705vVrb4omp0ksCOQNAc3KO1appMabguoYSvoLFy6s0glq/rFy9ssktCD8JC0nCKADq8+1OX/+/J/CqhZKepxAPs47fOJrsvYSBIG8IqDx07FN82a/evYlPfns0ftV1h6vDu310e+ackwQSBUB8FKfRuyfduCvTF/So0NL1v4+n/Tq5UvelFgQyA0CkDYcaKGye2EdWM7Tl/TIRAvYe75OsfYMm8R5QQA6XvfNUwf29qC6DST9Mi37Rxc5cF+KtR+EqRxPEQHdTRnFyqNqA0mPTLr7Uqw9EJGQBwTiWHnUOxLpXfelWPs8tLTUwUMgjpXHyZFIj4yldvtTxAhi7fdxkP/ZIQAODqvlubaRSQ9tTz9jco9PFE8OIyFxFghsP3/uFRtVy/MJkUmPE0hD/Z4iz2+P6QkSBIG0EdBHX6lsTDm4PUwdhiK967f3RmlfkieHl00bplDJKwjERQCdV/DODVip6dYgvzxn5ngo0uMkjNJSQQ1sY06O3plAmgRBYJwIgG8gPgLxsElOllvDljc06d1px59yQZjzgE6FBEFg3Aj4XZSD5tiE1Wdo0uNCfhem3qkIK0jSBYFREXj6j394l1Cd10rlj17CEBuxSI/ruy5M9TEinsAXO6p/O0TRklUQiI4AvIUsa+is7WE7r3pJsUmvpieY5m2+mMgcRkLipBEA2UftvOp1ClwNQc8waJtWTviO8vwK+UqlkvGzc+fkJzkHgSbHIyMA7+D///STbuUf0QoHVyJfICBjbEvP1/LLHPHmMDISJ4GAz1vTKNn2p6Ned2TSuyO1n3FFIHNk0IrRkHgUBF7TggT+L6KG9ckHlT8y6XHRixcv3qMpCt68e+gvrdMRVK6kCQJ9EfDreOLXneWY3hp/QYmQHhelSt7SB63gXpLRWj/csh8FARBe5w94BX5FOTdKnsRIj0Eru92+QoV6bsx/PnsWpQ6SRxDoQWCHluUD8d2wbdv2r91BUU4bKU6M9KiFpu/p4dyfgiz+eyAhISoC8MdrC7Biab4bSeh4vfxESY8LQ98T429zIdKxZSQkHoQACH/IH5+QjtfLHtlPr19M315fX79rmeZ1TltaWjKOyg88MBwS+xDwrTbsUMf1PhnQT3zZEtlN3NJzrUiTYe7997z/gmbH9axNwgckLjwC4MVO7zSWNZc/Y8FmbJYetd1qNKpt2/6OCqlhn3650Dh95oz8GjnAkKAQAOF1Tw0N5/8fjez/Omkdr8M9NkuPQtCxhUdHd2XCo6P1zPW6yHbBEAAPwAfPtZ0C4QHxWC09t6Hf4mOOzpmzZ9VcHc4jcbEQAOFh4T0DmBLhgXIqpEdBm5ubK/RIY3LaEvZB/FOnT4vUARgFC5A0vjf+c5pT85/jlDQ6xGOVN3pBlUpljfTaFUrzBq+ePX0qnVsdpAJss4b3LLxhPCdejFXD+2FNzdJzwX6pg87t4uKiuDMZoCmO4ZaEl4Y1PPp69AXUx8ogpnjfqZMe9+YnPtJOnDhhHKc/CdOJAGZMwm3thRQ1vFemu5EJ6VG2EN/fFNO7j6ko2hRh6kmO3y3ZD83MSI9Kgfgd2/6GNn/BlZyfn1e/XYuOroTJRgAyBh1WbbUMzMlao07rx2l1WoMQTK0jG1Q4/Pgt8uO7ywUCEAM/cd7jygo6UdJyjwA6qvjMTyc8phagvbMkPIDL1NLrLbexsXGTKvM51wkdXOj8Y/Jr5TpME7EN/Y6JY9xhpUqrlcjiLMw0jhvODelxc5vr69dJ7/2BNpUvH2kLRPoT5N2hXj52JeQYAZAc37T26He4qLvd31cuXbqfl6rnjklBHVwZwc0LXcLrARmDRb80/zusewMfgGQtZ/y1zlTT+yuDfej8drv9Aek/fHOrdD6A/Glry5DlwYMQyzYN1h3eGQw06oSn9rtD7ZjaKOswKOTO0uuVh9xxTPNzqmSN08XqMxLZxwHWHZXKnZzxI5Vr0qOyrlvza9qs059X36NHjyqtL65NQiXlEKLd8VZexbo0eZMzfng8EvkP5G2fJqzdIB8AvDteJxeEh4dHvshKr7UCPDMofJsYf4u8M3fSq0n8kiaG9LhFWP1WqXSTPkP8De16dQf5l06eNObm5uIjIWf2RQBSBn0qze+O/BNj3fWb84ijJ+Z9W9P6Vaqrdw8ieZJvuTCyE9ubVNonZN0fJ1/qeK/oEWa8xYzn6v4BLS5FyM9IxI9DyI4LQsrAM3OnRmsdxS8huzMnmvSALUzy4BjID70vsgdoRAt9yE6ONPPeXqv12aSSnRGYeNLzjfQj/8zsrLFA5JcOL6PVG8MbgwWWsPCuT7Mj40Tq9t477N2bGtLzbfUjPzq8sPqY1iCuTkyIcQx4Y17RH7Z9QZGd/sEr89h3bKJ3p4703Bo+8iO5515Bfsifefor0rwekBsWHZY9xKrvYDbkzMzMnbz727mth417iDDsyZOQH+TvlEp1d2S3SnU+dM+Yw3/kyJGpfQBAdEzZxud6e3t7YVZ9h6z6RHdQo/LxEAGinjiJ+Wipwau0IOg1atyP3Pofun+8AfAAzNEfWbtJvE1VZ3yAvUvWPMSiIw/kC8LqNEqY/VsL/n+o0YOzTVcqW3/SNb+lO1tx7+4QFtD9s9QJxl/eHwImOWJY9QCNjtv0iE6/zveA5M0fJ90T47bdUNGhhh7q7CnIjAfAmZv7qNvpwPrX3VsKxAXaHw8A3gB4IOAVwn6afQKQmXzkaumUFkkVkDxEsnDreESnjcc01ff+tGp1vuFBcWDjDjppWo/zG4BI/GGX3gAETtW917448cOAr71seiBomoRB5DJM2kdgTxHSwgKIjABSd7tdNU2XHsT9mPbpMzujTQQPseD6ZZnkO1SvB06n87jV7T4sokXXQdG3+zamnrGI21iVjYh8mYhz2fcQAI48YMcEh25p0sO2Sg/aGj00f057LZlJ4kceGm5i8Go0GmWy1itkiuv0MPw7Ea1Klec+gX4fSeLqEdstAEP/TbLiayA4vSGe0Mcbj8WS6/D3306ycfqXNMVHt7a2qkS+quk4VZIfVVqTvEzC5iKxtUy3XXZjvBqqYTBQniaOUR6QGtKk2el2X9A1dyit6VjWE3rgmkXX48Bo1PAvayJspIPreNYAAAAASUVORK5CYII=",alt:"Unlocked icon",style:{opacity:1,width:"51px",height:"51px"}});case 1:return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL0AAAC9CAYAAADm13wwAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAANgAAAABAAAA2AAAAAEAAqACAAQAAAABAAAAvaADAAQAAAABAAAAvQAAAAAhv0H1AAAACXBIWXMAACE4AAAhOAFFljFgAAACaGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MTg5PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjE4OTwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4Kvsq8IgAAGPtJREFUeAHtXe1y3MaVBTAgKUqySOrDscqUNcwD7CrO/9WsU/trq2KXHyCS/QCJ4gewJT1AbL2AZeUBbDlV+bVVNpX/u6ZfYGckck1vpIjUt8j5QM4BccEeEJjBzGAwmMHtKrIbjQa6cfr0xe3bFz22pWFkBLbr9WrLsqp2pVL1PK9qOc6yY9tLftqyli3bXvYr4bmkYNsN/5Tn7SLetfHXsaz7Vqeza+Oc1243XMtqnF9bOyjnF9Z/wyAAbDWkRaBery9XLKvmLixc9DqdSyD1JVxbxd8BqdPeaPRyG+i4RqfT+RGDYh0DbmNtbY2DRUMKBJT0PUDaqtcvOQsLl32Cg+xWL0nd4z65nMLbwPa8Dbxt1jt7e/dW19Y2cql3CitR0hudRkk+V6l8YDvOZUjxD3AqlQRHecutVCx3bs6qIF1B2sGfH9u2xfMMrgsFJSG0WpDXCO12248hxa028jqeZzX39w/iZtPCAPTP9/0XDAKoWXfRkHvnz59v9L2mJAVKT3rq4x3XveJRkh/8JXY9yTsHYs/jb25+3poDiUlkIXXihRmeIOn3QX4OBA4QP51uMKxjIN7F/ODbsg+AUpKeEn1hYeFKp92mNK8lcZJkPnbsmE9ylPeJnlR20vkcBHt7e/5fE28IviV6hI2KbX9R1jdAqUi/Wa/XbNf9DGSoJRFiHuReBNGLTvKk9ku+DIJXr19b+xgMSQEEuIsBcuedtbW7SWVmLX/mSU+pPu+6f4D6cg2dd0RHF5XlxIkTPtnzVFXyIhNVolevXvl/rzEI4gLwqbu2faMM0n9mSe/bzl33Gh7wShzZRaKT7LNI9DhiM08GwIuXLxPfAND7b0P/vzmruv/Mkb6XCkNynzx50noDf2UietIAoN7/9OlTa4+T4pg5wKySf2ZIT8nedt3b6OBatJMp1Un0Y4uL0VN6HCDw8sUL6/nz51YTlqBomDXyTz3p/VXSSuUL2KOpxnQFkv3UqVP+pLTrhB4kIkALEAfAS6g/0TAr5J9a0veaoCrZo3Qd/FhUnxjyeyDN9bcvXLg5+F2LccVUkt7X2+fmbkfdApTs2ZMqifxi7Tm/unon+1rHe8epIn2S3q5kHy9JeHeqPTs7O0cmvNOo8kwN6X/a3PwDvE6uA//Q1k4LDHV2WmQ05IMA9f2nz55Fyb8Db8+bqxcvfpFPK0arpfCkT5LuJDoJr6bH0QgwzNVJKg/u9X3FdT8uun2/0KTf3tq60vY8So9QugNUa2VlRS0yw7A142tI/oePHnVJ/WnQ9QtJelpm4OL7Gb44umb2E6X70nLIf/OUpieIABe4nuGvK3je5812+2YRP24pHOl9dWZu7nvTMqPSvYtOhTxIlPqu+17R1B2nSAj66ozr/mASntL9F2++qepMkToqpi0UTG+in04YRgVI1DUMhv9hv8ZcMrGswkj6/9vc/Az64HVBQi0zgsT0xc9h3aHKg6/PpPGFWtCaOOl9/X1u7nMgdFUQotQ4d/asxVjDdCIQp+7Qpo8vvT6ZtJ4/UdIH5shv0K2XpGu50HT2zBk1RQogUxyT+Lu7u1bEh/8HCLMPJ6nnT4z0cRNWtc5MMcN7ND1q3fHNmhOc4E6E9HGEpymSpNcwmwgUifi5k35ra4uqzDdioeGEdWlpyeIXTBpmGwF6bO7Cf0cmuJOS+LmS3ie8532PrvVXmEh4Tli5nYaGciDAD9YfPnwYEh9PvYNFyPdWV1c38kIgN9JHCU/LzJnTp5XwefV0geoh8f/x+LHpvpAr8XNZnKIOD8xppfElvJgkVcIXiIk5NoX9HjFJr0Dl+Xp7e7uaRzPGLumjk1YhPGMN5UYgasvPS8cfq6SPEp46PFUaJXy5yS5PTx6QD1i08rPwfw17en43bok/NtJzpRW7E3RZaXTSKt2tsSDgqzrnznURH2+Ar8kfKZN1PDbSY6PTz9HYS9JgmiVVhxc0NDYRIC+W8Y2EEX6FTXL/ZBxnmhwL6ek8ZvrSvIEvnNQOn2m/zdzNjh8/7q/XyINhYnsVPPpUjrOMM5/Ibj14cBXvqtvSSBKen/VpUATSIEBfnRfYdCoIHnZX/ijrHRcyJb0/caU/fGCa5DbXZ7D4pEERGASBR1i84u4LQdjBhPfdLB3UMlNv/Ikrv3gybPHL+mmfdJzGAyBwGl62hoVvhRadLCe2mZHe/6Y1+E0mcS8wGj7AI2vRsiPgBO4ppikT/MpMv8+E9IEef006izq8El7Q0HgYBMifrrkgNgnYzuizw5F1+ugClPrED9PFek0SApGJbSb6/ciS3t8eO1BrjozOpCfRfEUgJQIRrWEFC1dfprw0sdhIpOdWe7hzTe7OFVfq8xoUgawQoH7Pzb2MUNu6fz9UpY381Mmh1ZuoeVLt8akx14JDIJClmjO0WG5WKtfRdt8/QtWaIXpRLxkIAZq/DePISGrOUKSntcb85Q+qNRoUgXEjEFVzNjc3a8PUORTpLcf5TCqjz4QxAiVbY0UgcwT4277GDmpUzb8cZtFqYNIHzmRVPpGqNURBQ54I0JpjLFpVXccZeFI70EQ2mLzW5SH5ujmuuxgIHBrnhAC3DXzy5InUttNstX45yK5pA0n6YPLqV0Ypr4QX3DXOE4GTb7xhbui7At97fruROqSW9FEpfxZfu1DH0qAITAIBemHSGzMIHoTwL9N6YqaW9KaU5+RVCS94azwJBMg/g4P2ICu1qUhPKW+aKLscgSbxxFqnIgAEuCBqhFpaE2Yq0kelvJooDag1OTEEotIeunoq9+O+pFcpP7E+1YpTIBCV9mm2D+lLepXyKZDXIhNDICrtW/v7fe32PUkflfJqopxY32rFPRAwpT28fH/Xb5W2J+nblUpN6uLeJMZsWbI1VgQmjkBE2i/3W6XtSXrTx+akrrxOvHO1AckImD45kPa/Ty5pWYmkf/DgwQfywwm6+toLQj1XBAQo7cUnB+1Z7mW+TCQ9Ntm5Ig+zoD+aIFBoXFAE+IUV3ROCwC1hE82XsW4IUZeDt956S92HgeZ//+d/CKhh/Ou//leY1sRkEeh0Otb2Tz9JIzw4op2Oc0SLlfTmBJY/camLUfGEJ7ocCHGDQZDXOD8EKO1NY8uc41yNqz2W9FCO+MG3H07Az0ZDfwSU/P0xyqMEt5IMgg1DzG/lwIyPkJ6qDQpckkKLSnqBIlWs5E8F09gKcS3JmNDW4lZoj5C+7TgfSIsWFxfNG0i2xikQUPKnAGkMRajizBuGF6zQXo1Wc4T0eCW8L4WMV4VkaTwgAqrvDwhYBsUNzwEbNvt/i96yi/SBalOTQqraCBKjxSr1R8Nv0KsjwroWdUvoIn3UamPoRoPWq+VjEFDyx4AyhqyoFadSqYQqO6vrIj1IHqo21Oc1jAcBJf94cDXvakh7u+I4l81zXaT3bDu02pj2TvMCTWeHgOr72WEZvdPCoekS3jReKMxZLiR98DP2VWZyMQq/DsikhjEjoFJ/PACTv4Z6vrxVr4cCPSS91W7XpHpsqSBJjXNCQMmfPdBdKrrj1KSGkPQw7YR6D10PNEwGASV/drgb2optVyr/KncOSa/6vEBSjFjJP3o/mHp9x/NCoe6T3rdjBr8mQnOPMUJGr1nvMBICJL+G4RAw9Xq4E1fFXu+T3jV8bVzV54dDeIxXqdQfHlzTJQFpX9ofqDeOU5Pb6iRWkCherOQfvE9MIe61Wmu8g096qDShkq++84MDm/cVSv70iBuSPpzM+qT3oO/IbVSfFySKH6u+37+PTD5jkcoX7gfqjaHTGyOj/x21xMQRUKnfuwvgd2MWqPLAwYzWT/gHsNwYq1jM0jAlCCj54zuK1kiD08v8qMSB5aYqxU2lX/I0ni4ElPxH+8uFW42EVquFHbgrlapkwBtNkhpPOQKq7x92YESvrzpQ7qtyWiW9IDEbsUr9g36Ei03YoTb4zqNlyaH+o2H2ECg7+d3DyawNS+USeO5clG42TkqWxjOEQFnJ7xyS3oI1Z8kB80NJb74GZqiv9VEiCJSN/KbZkup8l3oTwUYPZxwBkr8MIaK2L9OIGUp6c0SUAQx9xnJsS4gfCQy7mpqNzlxDOMqdKIvUZy87sgc9D0wjPo81lAuBWSW+6UQJme/r9OXqWX3a0iOg6k3pKVA+AJT05evz0j+xkr70FDgEoCy/qqKkP+zzUqfKQnh28qHPZam7vLwPXyaySy9zcaohB/A1lqTGJUCgLIRvG7zG4lRDJX0JyB19xLKQPfrccuxicWpXDuCMI0mNZxCBspK91W6HvYnFqV1K+pD0/B1ODbOHQFnJntCTuy6Ifl+80KjT6770CVBNYbaS/aDTTGEObeaJQ3Ev/anqjSAx/bES/rAPuyaynudPZEPSmycPL9HUNCGgZD/aW9ixWDI9X6fHniANyTFfA5Kn8XQgoGRP7qfm/n54ErPWhuu12w072Bekadgzw1KaKDQCSvb+3WOq7Zi/3newHNWQy1S9ESSmI1bCp+unfUPS45uRhru2ttbY2tykXr9M9YajwtgGLd1dtVSuCCjZ08MtnJYrzp8/H67INpB5iSdotjR3hGKehmIgoGQfvB+azaZ50QYPfDcEjIYfoev4pOerQElv4jT5tJJ9+D4wJ7HQYu7zTr5rMf75I4AZre6RwSwNE0RACT8a+IYLggfd3ZD0MFuKY33kdTBajXr10Ago2YeGruvCLiHuOPd40ldv2u32uiNmS5X0XaDlfaBkzxZx03KD+eqhpIcFZ3dra6vB7UA426W0V70+W/D73U3J3g+hwc+Tx2Kjpx89ec67hP70nXb7HiazVWbu7e0p6QlEDkHJPj6Q916/Pry55/0oB6LKc0YbTmbNGa8U1Dh7BJTw2WNq3pHCOwicxK7LQSjpsYfxOk74+a/NESIlNc4MASV7ZlD2vJFplLE7HX8SywtC0q+urm6YK7Oq1/fEc6iTSvahYBvqIvIXBhr/WurzF9bWQk0mJD3PYhL7LfT6K0yrXk8UsglK9mxwHOQuSfo87xHq9P6Bba8zZnj96tVBQv+PhIASfiT4hr7YUNE913G+MW/UJemb7fbdOde9zQKU9Op8ZkI1WFrJPhheWZam2d2YxFqYr/7NvH8X6X17/ebmOgrUWOjly5fWiRMnmNSQEgEle0qgxlgsoqWs07PSrK6L9DzhYZaL356qMf1KSU8YUgUleyqYcin06lA198Dnb6OVdun0PNnqdL6SQuaKluSVNU4iNfOTzpUVq0k+N1UbQ5+33Pn5I6THd7JHA0yX3yO3xjNLy8vWyZMnmdSgCBQegZcvXlg7OzvSzh9WL1x4Vw4kPiLp/RPGKyGiH8l1GisChUSA89AgeBXb/kIOzDiW9E1DxRErjnmRphWBIiLAxaheVhtpcyzpA280qjh+ePbsmSQ1VgQKi8DTJ0/CtsHc/m3UaiMnY0nPk55l3ZRCL54/D100JU9jRaBoCBhS3nMqFX+9Ka6NiaS/cOHCOi7w/Y99Y786ocXhp3kFQYATWNPX5u233/5LUtMSSc8LYOO8JRc+h7TXoAgUFQGDn55r29d7tbMn6WGz5+zXl/Z8dRivj1731HOKQK4IkJemG3HU7SDamJ6k54QW0v6OXPTs6VNJaqwIFAYBqjYSsFHZV0kTWCnTk/QshA3sQ1unSnuBTeOiIEA93rTNYwJ7s1/b+pL+PLb9w00OzZcq7fthqudzRMA0U6aR8mxaX9KzkGm+VGlPRDQUAYFhpDzbnYr0gflSpX0RelrbECIwjJTnxalIz4KVVutjxgwq7Q9w0P+TQ4AcHFSXl9amJj11e/yMyVdyoVpyBAmNJ4HAzuPHYbVpdXm5IDXpeQF0qD8iCu32dE/QoAjkjYC5+oq66XJwc5A2DET6wG4frtI+hSVHtk0bpFItqwgMiwAnr+RdELhT041+dnkpLPFApOdFXKVFRXWm6ZNjTiaYp0ERGCcC5BuJzwAeNmBkuTFofQOTPnA7/lgqos8DJxUaFIFxIxA1UfbzsUlqz8Ck542iJkxzUpFUkeYrAqMi8PDvfw9v4U9eV1f/HGYMkBiK9Lx/YML0P0bkCHyy689vB6haiyoC6RGgtVDUGly1M+jk1axpaNL77gm2fVNupmqOIKFx1giQ7KNOXs02xe6GYBbol8bOCd+hzL+zXKVSsX7x1lv6k5z9QNPzqRGgdfD/f/7ZlPLfY4eD91LfIKbg0JJe7hVVc9SaI8honAUCEWtNveK6H49635FJH6zUfiINoZqji1aChsajIPAcGxJEv4ga1CYfV//IpOdN33nnna/gohD63VP/MiYdcfVqniLQE4GoHg9+3To/pLUmWlEmpOdN0cgb5qIVzUu6WhuFW4/TIEDCm/whr8ivNNemKZMZ6blo5bZa76HS0Iz5j0eP0rRByygCXQjsYls+Ej8IO67r/iZYFJW8keLMSM9WGPo9BueBC7La74mEhrQI0B5vbMDKrfmuZaHHm/VnSnremPo9GH9TKtGJrSChcT8ESPgj9viM9Hiz7pHt9ObNzPSDBw9uO7Z9VfJWVlas4/oDDwKHxhEEIrsNe5i43oEA/ShSLJPDzCW9tAo6GX3vf5DjJ/CO69qbRE5oXHoEyIvdbjeWjYA/Y8FmbJKerd2u16st1/0OlazxGL9caJ09d05/jZxgaPARIOFNSw2W8/8XK/u/yVqPN+Eem6RnJZzY0qJjmjJp0TFm5mZbNF0yBMgD8iE0bedAeEI8VkkvfRiV+PTROffmm76vjpTRuFwIkPCU8KEAzInwRDkX0rOira2tSxjSdE5b4TGJf+bsWVV1CEbJAlWayBv/MXxqfj1OlcaEeKzqjVnR6urqBvS195AXLl49evhQJ7cmSCVIiw4fSnjLegxejFWHj8Kam6SXiqOqDie3S0tLas4UgGY4plmSVhrR4TnXwxdQH/oCMcfnzp30fLYo8Zl36tQp6w38aZhNBOgxSbN1GHLU4cM6g8RESM+6lfjRrpjdY7qiGC7CmEmO3yzZC82JkZ6NIvHbrvs1kr+SRi4uLvq/XcuJrobpRoBqDCesxm4Z9MnawKT1w7wmrXEI5jaRjaucdvwm7PjBdoEExOJPnHeZsuIu1LzCI8CJKj/zMwlP1wL29yQJT+AmKunNntvc3LyOxnwqbeIEl3r+Cf21chOmqUhTf6fjmExY0Wh/J7JhNmYaxwMXhvR8uK0HD65C3/sTkr4tn3knQfpTsO5gls9DDQVGgCTnN61d+jtN1J3OH1cvXrxTlKYXjklxE1xdwS0KXZLbQTWGm34Z9ndK9zo/AJm0OhNt9UR1+mhjeEw9v9VqvQv9j9/c+no+gfx5e9vS7cHjEJtsHqU7rTNcaDQJj/67hX7MbZV1EBQKJ+nNxlPd8Wz7UzRyTfJV6gsSk49jpDsbVTh1JopUoUnPxgZmzS+RrOEvbO/x48d9XV9Nm0Al55Cgu/OtvM59aYqmzkThCUkUPVG0YzisXYMNgNadcJJLwtPCo19k5ddbMZYZVr4Dxt+AdeZWfi0ZvqapIT0fkVK/Walcx2eIv8Nh2HaSf+X0aWthYWF4JPTKnghQleGcyrC7s/zUSHfz4ULimJlFTxu6fhVtDZ9BVZ7sey6J7GB7A7V9BOl+L/tax3vHkDDjrWY8d48uaEktSn5BYvg4gey8IVUZWmZurWGvo+FrmNyVU016wpak8vAcyU99X9UeopEu9CA7DGn2V/vN5ifTSnZBYOpJLw/Si/xz8/PWSZBfJ7yCVndMaww3WOLGuxGdnQWnUm/vfsLuo5khvTxWL/JzwkupT7cGNXXSIcazaI15hj+mI8EnO/7RKnMvcm6qD2eO9NIbEfIzu+tZSX6qP4v4K5NfD8lNiU7JniDVd+kNOTc3d6vo9nbp60HjLiIMevE0lCf525VKLVjZraLNR56ZPvzHjh2b2QFAotNlm5/r7e/vJ0n1XUj1qZ6gpuXjEQKkvXAay2GrwQ+wIegVdO77QfuPPD/fABwAC/iDtJvGx/TbzA+w9yDNEyQ6y1B9YVifRRXm4NHi/x/p9Phis5Ur0h96ze/xZJeCpzuCBfX+eUyC+Vf0QSAkZ0ypHqOj8zFDouPX+e5CvfnztFtigr4bKDrS0QNdPQOFOQC8hYX3O+02pX8teKRYXKj7cwDwDcABQasQj/OcE5DMsJH7W6c0oaqQ5Akqi/ROSHQk7sHV986s6urywP3i2M7td9Gsnpc3AEj82w7eAACnGjxrT5xkMPBrLxcDAm4SFshl2ThmEEsR85ICicxAUnc6Hd9NFwPxIMYxPrOzWiB4ggQ3bysk30W77nrt9r1mp/NtGSW6CYqZ7tmZZsEyprkrG4h8GcS5HBkEhKMI2AnBqbc0MNjWMdA2MGj+lvdeMtPEjyJ03NTgVa/XlyGtL0EU1zAY/gVEq6LxMicwnyNLXENiBxVw6b8BKb5BguMNcR8fb9xTSW7C3zudZef0rmmGz25vb1dBvqrteVWoH1XsSb4MxeYdsHUZj70cxHw1VJNgQJkGz6EMSU3VpNHudJ7gnrvIa3iOcx8DrlF2fZwYjRr+CSr0DvOaMyprAAAAAElFTkSuQmCC",alt:"Locked icon",style:{opacity:1,width:"51px",height:"51px"}});default:return(0,qh.jsx)("img",{src:IN,alt:"Lock icon",style:{opacity:1}})}},TN=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:IN,alt:"Lock Icon",style:{opacity:t,width:"51px",height:"51px"}})},ON=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADMAAAAzCAYAAAA6oTAqAAAACXBIWXMAACE4AAAhOAFFljFgAAAFVElEQVR4nNVa3W7bNhT20vVqQzcM6NC+wXbRvUh7m5t1Q/cEHXpfID8Fuj1LthXYCgzIVW5aIMCM/KBG4rmh/ilRlOXEjWM7tkwOnyJ6sutltiXX9gFI2aJEnk+Hhzw85xQKU5CU8iMp5Y30vb29vduEkPuGYaxZlvUrpfTQ8zzOGOtwziWuzPMCl9JD2zRfmLq+TiqVB5VK5fZQ3zfQ/zR8TQsiHqxUKn1KKpWHlmX9yRk77/V6Ukop5Hgk8HzA+Tner1Qq321vb38yapzcCQNsbW3F0iiVSl/ohKx7rutEUZQGADTdpEQjgInkvnqmp+53u13pui41NO3p/v7+58mYK7lLSU0pKeVNTdMec9/nQ8zFiDJQlAbv+36gadqPxWLxZnr83ID8/ebN145tF1MSmCX1UNmWVSyXy1/lAmhtbW0F13K5/H2tVmulvuKHABPhRy0MW9CnND8T01byJQghm+12Ww0waxCjQPXarZYkb99uxnwlejs+kOQFU9d/liKext0JVqm8ScTjCyENTftpIkBqbuq6vpF01pkjEEUi4UOCL/C3s7Pz8VhATk5Ofri8mlqjltd5kQA/4EvTtEdpfkcBiZXr+Pj4Xi0M36U6WCQSqMAfIeRemu9RtBJw/ip5MeveMSuKUHHOX6+urr4vGSUu2zSfJC9A4ReZuqhMXX8yMN2UuVAqle5Ug4At6PQappi/gHN2dHR0t49DoaKUPlsSqcg0n8x1nw9IZ3d391YYBE7y0IfeGKelHqqAc6dYLH7W1xnHNB+Jq80xSq65UKvVkmG1Kn3GMKhsnJ/LvPoXCb+owH8fjEvpH3mvYPWzM2kahnRsOwbjUhr/B6jk3JMHRaiobb+MgRiGcbdarZ4ljZk+m/rqF42GNHRdVoNggPF39Xp8PwzDTAjeWwiC4Ewvle4UDEIedDuxpYBRc5kDzPNiSYySAIDYliVxGMuBBPjudDrSMIz7BZ2QzaShm8d8BgAwW0u+vupTXZsXF/F0gz6l70+FRIj0nrNRoLb9e9KWi/LjGA0wZ6enA8yqK0AATLPZHLifdRFwHedFwfe8w6StlwcYMAsw0BcYhTiLqIL/0BvLNOMFonflP8gKpofKc93DAmMsUG1ZgSh9wAqGgt+jSroNy3VGEqiY5/GCz1is/XlIBF9cARmnAAx1nFyWasZYp8B9P1Mnamo2Go2JwaiC1Sgrcd+XmSWT3lvmCYZBMoyxtA9sGcGIGIznBQUv42o2TzBieDXD+pxln1kAMBEq7JdwJ21ksQAWAEy3bwHApulksM3mrDMCfMO2hI0J/xiOy1NbzXNemgUq8A/rPz4GUEpfJo3RPDbNJCwyDUWocB4bOGmqxiz2GewxGJEANW6p1+vZlF8I6TjOvydNnKFDzjP7ADBAq9mMzfz/K9Cxy8vLaYfq81kLQxs+jAGfGbwcy+idoZQ+6+NQfjP4n+CHWia/WTUIGPx9af9fXzrmsnk0TXPQo5km+G4Dzl8vg6854PwVfOPXRgHK5fI3ix4FOK3V6ohWXBsFUOJC/GOp4zOKVERq0SNnctzos4oZIoa4iDFNOWkYXQFaiGhzu92XyMTR5kXKAzit1ZqZ8wAUKZEiU8Kx7b9Sg80ajERGSG4ZGsOAkMuCnBbGWHWWuTPc97l2cvI499yZFCCkTcViRtaRpmlPXUpp4gC/LqtJpA9S/5XVhGOA67oOIWQdWVNKP2aZexbngakBkB9GCHlomebU+WZ4D/lmhJBvkb82apzCLGlUJuDBwcGXKhPQsazfkPHnq0xA37/KBGTMR4agY1m/4Dk8jwzCob6nBvEPWu3vE4LBtMIAAAAASUVORK5CYII=",alt:"Disabled lock icon",style:{opacity:t,width:"51px",height:"51px"}})},MN=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL0AAAC9CAYAAADm13wwAAAACXBIWXMAADa2AAA2tgF/POa4AAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAIABJREFUeJztnXtwJFeV5r9zMyvrodKjJHW3pCqp1XL7ge3uAYwbGGxoHruODfAaMA2EjWHYnY1d1kQQPGYM7LLhmIkxGGxmHYGXnZiZGGY89mK3GfDaBOthgGZpCPDS2LTtxsZttR5VKkmtt1SPzMq8Z/+oh1LVpe6SVKV63V9EhTszb2Zdub46de65555LzAzF9hkdHe30+Xx9Usp+ABEiGiTmASbaC6AXQBczdxEQBBAAYOReAAAispk5RURJljIFIRYALABYIOZpJpoGEBNSjrGmzaTT6emRkZHlGvypTQMp0ZdHPB4PCCH2ZTKZ12jAYQe4hoiuARAGcxsAPwBRrfcnIgdAiplTAKYJeEECzwF4QdO0Fx3HmY1EIqlqvX8zoURfAiKic+fOeXVdv1wAb2PmGwEcAtF+ZK31dp55yTY7+CySzDxGwGki+rkEfmrb9ivDw8Pp7T6wmVGiz0FE9Oqrrw56vd53QMqbQHQDgEg592qatv7SdWhCQGgahBAQQoCINryKYeb1l5RgZjhSQjoOHCnh2DYcxym8yiQK5pMQ4mkhxI/7+/snyv+/0dy0tOhPnDihj4yMXCmEuJmA9wG4BllLXtIsC02DrmnwGAY8ug6PYUDLiRsoz5pvl/znxFLCdhxkLAsZ20bGsmDbNqSUm94KIAngeQaeYOanZmdnX77uuusyVetsndOKohexWGwAwIfAfAzAIWzismiaBsMwYHi9MAwDuqaBcpa7XmBmSCnhOA4sy4JlmrAs62K/CEkAz4P5MaHrj/f390cBbPqNaUZaRvRnz571er3ef0NEHxNE72LmYKl2Xq8XXp8PXq8XHo+nrgReLsyMTCYDyzSRSqdhmeZmTRMAnpbMDw0ODj4JoGzfqZFpetFPT08PO5nMbSTEf2Dm/ShyXUgIeL1e+H0+eH0+aJpWo55WD+k4SJsmUqkULNMs5QoxiMYB/I0Q4qFm9/+bVfQiFosdgpSfYOAYEXW7LxIRPIaBQCAAn89XGGw2PbkBcjqdRjKZRMaySkWM5gh4gjTtvpMnT75y7NixprP+zSZ6isVih4n5Lgbei2zsvIDQNAQCAfj9/oZ1XSoFM8O2bSSTSaSSyQvGAES0CuYnIcR9AwMDzyE7IG4Kmkb04+Pjr9eF+FMQ3QpAd18zDANtwWDBqis2wsxIpVJIrK3BsqziaxYB32WieyKRyOkadbGiNLzoo6OjlwvDuIuB2+Cy7EQEr9eLYDAIw+ttaateLswMy7KwtrqKdPqCea01EB2HaX4lPDLy+1r0r1I0rOjHxsa6NE27UxB9FkCocIEIfp8Pwfb2lndhtsslxD8P5gcc5m8MDQ0t1qJ/O6UhRR+bmPgghPhzAFe4z3t9PnR0dMAwjE3uVGwFZkbGsrBaWvxnQfTFcDh8vBZ92wkNJfrY6OgV8HjuA9G74UruMgwjK3blxlQFZoZpmlhdWSn2+SWInhJC3NXf3/9Srfq3VRpC9GNjYz6Ppn0CRF8AsCd/XtM0tHd0IBAIKLHvAiwlkqkUVlZWIN3RHuYZ0rQ/SyaTf3vw4MFNZ8LqhboX/fj4+AGPrv8VgHcyc8G6t7W1ob2joyknk+odx3GwurKCRCLhPi0BPK3p+n/u6+sbq03PyqOeRS9isdjtYP46sosxAAAejwedXV3wer017JoCAEzTxPLSEjKZDblrcwL4dH8k8gjqNKenLkU/MTER0jXtfinlR4jIA2RDkG3BINrb21WsvY6QUmJ1dRWJtTX37G4GRI84jvPpeozw1J3oo9HoYWL+OxLidcxMAKDrOrpCIXgNA1C+e/3BDNOysLS4CNu2AQBExCzlsxL42ODg4As17uEG6kr0U1NTH2IpHwTQkz8XCATQ2dWlrHsDIKXE0tISUsmk+/QCCXHnwMDAt2vVr2LqQvRnzpwx2tvb785NNBlANvuxs7NTRWYaDGZGMpnE8tKS292xwPy18ODg3QDs2vUuS81FPzExEdKF+AYDH0Yu9q7rOkLd3WqSqYGxLAuLCwsFdwfZmP7DjuN8qtZ+fk1FPzk5OSCIHgZwNH/O5/OhKxRSocgmQDoOFhYXYW6czf0JA3dEIpFYrfpVM9HPzs5elrGspwBclT8XbG9HR0eHcmeaCGbGyvIy1tbW3KdfcqR899DQ0Ggt+lQT0Uej0SMEPAZgP5ANR3Z0dqKtrU0JvglhZiTW1rCyslLw84loTDJ/KBKJPLPb/dl10c/EYm+ymR8HEAaygu8KhRAIbKucjKKBSCaTWFpcdA9wYyD6QDgc/uVu9mNXRT8djR5xgCcB7AUAIQRC3d3w+Xy71gdFbTFNEwvz8+51urMacHPfLlr8XRN9zsI/AZfge3p7VYSmBbEsC/NzcxuED6Jbdsvi78qMTzQaPZJzabKC1zT09PQowbcohmGgp6cHYj1CtxfMj0ej0SO78f5Vt/QTExMjuqb9iJmHgZyF7+mBoRLGWh7LNDG/0dUZl8zvHBwcfLWa71tV0Uej0TAB/4JcWFK5NIpiSrg6L+WEP1Wt96yaezMxMREi4CHkBE9E6FYujaIIwzDQ3d3tDlVfJYgenpiYCF3svp1QLdHrmqY9AODtwHpYUuXAK0rhzc3Cu4R/VBfiG2fOnKmKhayK6GOx2N1gvj1/3JFLHFMoNiMQCKCjo6NwzMCH29vb767Ge1Xcp5+amvowS/n3yGVLBoNBdHR2qplWxSUpkbJgkRAfHRgYeLSS71NR0Uej0UMEnADQDWR/tnp6epTgFWXDzFiYn3eXHJln4B2VrK5WMfdmYmIiRMzfQk7wuq6je6OfplBckvz4T9cLlRl7iPnvKjmwrZTohUfT/pKEeB2QXQAS6u52Tz4oFGWjaRpCrogOCfE6jeh+VEivFXlIPBq9TTLfll/T2tnZqUKTih1hGAY6u7oAAMxMDHwkFovdfonbymLHPv34+PgBXdOeQa5Mhz8QQEi5NYoKwMxYXFx0r7md03T9+p3W1dmRpT979qxX17QHkRO8ruvo6upSgldUBCJCV1eX27/vlbb9P8fGxnaUlrsj0QcCgX8P4KZCB0MhVbVAUVGEEBsnroj+lcfj+cROnrlt9yYej18lbfsEiPYB2aV+nR0dqi6NovIwY3llBWurq/kz52FZN2y3Tv62zTJLeW9e8B6PB+3t7UrwiupAhPbcfgM59sDj+dp2H7ct0cdisWPM/J78sSrGpKg2QohCNAcASIh3xyYmPritZ231homJiRCY78nf29bWphLJFLuC1+tFW1sbAICZNQjx52NjY12XuO0Ctix6jeiTAA4C2RVQ7a4kIYWi2hSVZ79C07Q7t/qMLQ1kY7HYFWD+BXK1JrtCocI3T6HYLRKJBJYWC0XSFtmy3hgZGXml3Pu3auk/j5zgDcNAwO+/RHOFovIEAgH3jH9IGMZdW7m/bNFHo9HDYD6WP27v6ACpwauiBhBRce79bePj468v9/5yVUvE/EUAQSBbb1INXhW1xPB64V2vl+TXhfhTAGXFzMsS/dTU1GsZeF/+uL29XaUaKGpKwdqvz9TeGovFDpdz7yVFf/z4cQ1Sfo6IDCBr5T0qg1JRBxiGAf+6tdeJ+S6UoelLRm/i8fhVLOUzzNwOAL179ijXRlE3WJaFufPn8/UxUyB6czgc/u3F7rnkt4Id53N5wft8PpUnr6grPB6P2wj7IeUlk9EuKvp4PD7EwC3546Dy5RsChxmrmQzmTRPzpom1TAZOHWyzVA2ICMFgsHDMwLHp6enhi92jX+yitO07QNQLZP0nZeXrEwaQzNj41dwcTs7M4szSMuZNEynHAQHw6xpChoHXdHbiaN8+HNnTC7+ulxfqaAAMrxeGYcCyLBBRt5PJ3Abgns3aX8yn12Kx2FnkalCGurtV7Zo6ZNE08dCr5/DY2BjmTause3q9Xhwb3o+PXHYA3U0yPksmk1hcWACQ3fAhmUpddfDgQbNU201FPzk5+V5B9E8ASNM07OvrU65NHWFLif89GcV/P/MSzm/c06lser1efPbaq/HuSBieBp9olFJiZmYG0nEAgCXz+wcHB79Xqu1mf6kQRHcgF+xX21rWFynHwT2nX8B/e/a32xY8AMyZJv7rb57DPadfQNKu+U6XO0II4fZEiIj+CEDJchwlRR+PxyNwLQP0K7embkjZDu769W/wv86NVWRw6jDj2+fG8IVTz8LMWsmGxe/3r5cNIXpnLBbrL9WupOilbX8AQBsAeAzDvTBXUUMyUuKrL7yIH07FL9lWEKHT40Gnx1PWtPs/T8XxledfhL1eMrvh8Hg86xOnzEEAHyrV7gI1nzp1ytO3b19hRYpybeqHpyajeHxsfNPrXk3gzXv24N2RMA6HQmjzZD/etUwGpxeW8P1oFL88PwdzE2EfHxvHoVAX3r9/qCr9rzZEhEAgAMvMjV+Zj504ceKBo0ePbvDdLhjIzkxOXmsT/QpAQAiBvfv2qY2M64C5tIlbf/JTzG7iw1/Z2YH/cvhavOEitUMlM07Nz+MvfvsCXl5ZKdmmz+/DY0ffij0NuvmdY9uYmZnJz9AmHSmPDA0Nvehuc8EvXya79jUAZOOfWoOP6psBZsa3zp7dVPBv3bcX/3DDW3B9b+9Ff5UFEa7v7cVDb30Lbty3t2Sb6VQaD716riL9rgWaprl3qwwIIW4ubnOBokmIwgys3+9XFQ7qgIRt46nJ0rvKX9nRga+94fXoMDwlr5ei3ePBfW+4Dld0tJe8/p2xcaQadVBLtGGLVgLeR0WWYIPo4/H4EIBD+WO1v2t98Mvzc5gpYeUNIfDFw9eiYxsz5R2GB188fAhGiV/yBcvCz2dmt9XXesC7UbfXxGKxiPvEhr9YSvkOuFwbVdajPjg5W1qAb9rTizf09mz7uUd6e3Bkk/t/Pnt+28+tNZqmuXevDDDzO9zXN6paypuQm5DyKytfF0hmvLxcetD5nsEIxA7cTyLCvx0aLHntzNJyQ4cvXV4KEfNNbhenIPqxsTEfiG7IH6t9XuuDpO1gwbwwhUQQ4VBoyyVfLuDarq7SLo5pIu00rujdaz4YuPHcuXOFE4W/Vtf1ywFEgOzPg6uEmqKGWNIpKb42TUNHBT6jNo+OYInJx4Rtw+bGFb3H43GH2iM5fQNwiV4Ab8v/2zAMNSFV51Tq89GISoalHWY0cgo+EW1IhXfru/DXMvNb8v9Wro2iGXDrmF2uuwCAaDTqZ6CwklwtFlE0A24dE/OheDweAHKit217HxENA9kUTZV2oGgGdE0rbPbHwLAQYh+QE72u61cjF5/XPR4Vn1c0BSQE9HUDHshkMq8B1n36a/NXPB6PGsQqmgIi2lCjScu58DoACOC1+YG6R+XOX0AtgxgNHECpC9x6doBrgJzo2W3p1SAWQHYm9MzSMv55agqnF5YwnUpB1kCCkhnzJSanVjMZ3P5/T2I4GMQNe/fiXQN92KeqSF+AW89ElBX96Ohop9cw+vIXdDWIRSyRxP0vnsGP4tOw6nQqngGMrSUwtpbAiekZ/I+XX8YdIyP46MERBNSvdYGioEx4dHS0U/h8vj4i8ucbtHr57ZeXV/DRkz/HD2JTdSv4UiyYFh743Uv4zDOnsJbJ1Lo7dcOGaCRzm8/n69PJcfaxEAXRtzKTiQT+4y9+WTKNt1H46cwMPn/qWdx//XXwlvF5+jUNf3RwBImiagheTYNPbw49aJoGJ7s+wC+l7NelEMNg1vIXWzVyY0uJv/jtCw0t+Dw/jk/jsXPjuOPgyCXbBnQd/+7yg7vQq9pARG5jLgBEBIBw/ozWwr7gcwuL+MUmeeuNBgN46NVRLFvlVTxrdty6JqJBQcyFQWwrr4d9cjKKTCNnWBURTSZxan6h1t2oC9y6JuYBwS7Rixb26X91fq7WXagoDODX8/O17kZd4B6rMtFeASG68ydaNf0gadtYaEJXYCqZrHUX6oKiiGSvALAu+hYdxFpSYiv76TYKjRRyrSZFxrxLQMqC6Fs9Rq9oTtwRSWbuEpSL0RNRy4YrFc2NW9sEBAUzu+sb16xjCkW1KNJ1QORTEEpcVCiagiJdG4KZW3dGStESFJlyQ41cFS2HEr2i5RAAmm9WRqFw4Z6BISJ7g+ibcYJGoXDrmplTAkCy1EWFollw65qIkoKBtfwFJXpFM+LWNkuZEkS05L6oUDQb7M5BEmJBgLkgeqkSlBRNiNxozBcEmAuJ5Er0imakSNcLgohmN7moUDQF0rVpHDFPCyaayp9wGnVHOYXiIjguY85E04KZJwsXi8pAKBTNQJGuYwJAFIAEspZeRXAUzQQzFzwYInKElGNCCBEHkAKUe6NoTvK6ZuY0a9qMSKfT0wAS+YtqMKtoJlhKtzFPptPpaTEyMrIMosIe7MraK5oJe6Oep0dGRpYFADDzi/mzmSYshaFoXdx6JuAFIJdPrwHrolcRHEUT4dazBJ4DcqJ3gNOFRpalIjiKpoCZiz2XdUvv8Xh+h1yKsQpbKpoFKSXsnKUnooSmaS8COdFLKWfAPA5kRW8rF0fRBLijkZJ5zHGcWSAn+v7+/iSA5/ONLTWYVTQBRTo+HYlEUoBrYTgR/azQuMTGXgpFo+HWsQB+4fp3Fgn8tNC4xQazXk1ryuK1WnHFlxZCSrnB0rv1XRC9bduvIJuHA8dxkGmhzbp8QqDX5611NyrOULCt1l2oGbZtuydaozl9A3CJ/sCBAyaYT+aPzRZycYgIr+0O1bobFYUAXNfTU+tu1Ay3a0PAz4aHhwubiRVEz8wMIZ5GrkyI2QQbjm2FWwYHm8rFGQgEcH1v64o+ta5fZqKn3dc2VDgzTfPHyMXrTdNsqTyc1/V048a9e2vdjYpAAD5++WVo93hq3ZWa4DiO29InhRA/cV/fIPrLLrtsEq6UhHQLWXuPEPjC4Wuwz++rdVd2zNv69uHW/UO17kbNKHLNn+/v759wn9ggemZmBr6bP06n0y0VxdkfDOKBI9ej19u4g9o37unFvW94PXwtumkeMyOVSq0fA08Ut7mggKuU8km4XJxWy6//g+4QHjv6VvzrgX7oDeTjhwwDn7zqSvzVm9+IjhZ1a4BsqNJl6ZPM/FRxGyq25CdOnNAvP3jwJIA3AkBXKIS2ttYLfdlS4uWVFfwgOoXTC4uIp1Jg1NevnkdoGA624Q/37sG7+vvR5/e1/MYaiUQCS4uL+cNfTc/M3HjddddtiL9fIHoAiMVinwXzfQDg9XrR09vb8v8zFfUPM2Nubm59EMv82fDg4NeL221Wn/5RIloDsrOzrTRRpWhcbNt2pxInhK4/XqpdSdGHw+EpyfwvwIUDA4WiXkkmk+uBF6L/09/fHy3VbjNLL5n575GbqEomky03oFU0FsyM1PoO6Syl/EfkStsUs+n2O6Zp/oCIxoFsWbRWitkrGo9UKrU+mUo0Pjg4+ORmbTcV/cGDB02W8q/zx4m1tZaK2SsaB2ZGYm3NfepvAGyaTnDRjdY0x3kEwDyQHdCqPHtFPWJZljuNeE4I8dDF2l9U9H3Dw2NgLoyA15S1V9QZzIy11dXCMQFPFKcdFHPpLTWF+CZyZf9M01ThS0VdYVlWYbxJRKukafdd6p5Lij4cDj9PwPeAC79VCkUtuUCPzE+ePHnylc3vyFJyRraYWCz2B2D+NQCdiNC7Zw8Mw9hJfxWKHWOaJubOnwcAMLMlNO1NAwMDz17qvrJ2DA+Hw6dB9J3cw7GysqJ8e0VNKbbyQoh/GhgYeK6ce8sSPQC2bfuryPv26bSK5Chqimma7rmjNcn8ZaC8jMByRY/9+/f/hoBH8sfK2itqBUuJ1ZWV9RNExyORyOnN79hI2aIHAGlZ9wJYBLKj5uT6tK9CsWskUyl3XH4epvmVrdy/JdFHRkZekcz3549XV1Zaah2tovY4joMVt5VnfiA8MvL7rTxjS6LPvemDAH6f78CGnxmFosqsrqy4t8g86zB/Y6vP2LLoh4eHlyDll5DLYEskEmpQq9gVTNNEIpHIH0oQfXFoaGjxYveUYsuiB4Dw0NBjkvn7+eOlpSWVeqyoKlJKLC8trZ9gfiocDh/fzrO2JXoAEJnM5wCcB4BMJoO11VUVzVFUBWbG6urqegoM84zQ9bu2+7xtiz48MvJ7EH2ZiCSQTUZTJb4V1cCyLHfqsCRN+7P+/v6Xtvu8bYseADKZzDfB/EMg+21cWlxUbo6iokgpsbS46PYink4mk3+7k2eWlXtzMaanp4cd2/5/AHoBIBAIoCsUUtUTFDuGmbG4uOheBjin6fr1fX19Yzt57o4sPQD09fWNgegzzJwBsutp1aSVohKkkkm34DMg+sxOBQ9UQPQAEA6HHybgYSJiAFheXlb+vWJHZCwLS8vLAAAiYjA/Eg6HH67EsysiegDSYf4MS/kskM2NWFxYULO1im3hOA4WFhbAufEhS/msw/xpbFLdYKtUSvQYGhpaZKKPI7em1rbt4gGIQnFJ8gER1w6XCxL42HYmoTajYqIHgEgkcpqEuBOABWSrHqtsTEW5MDNWlpfdKcMWCXHn4ODgC5V8n4qKHgAGBgYezSWlZeP3q6vF5RkUipIkEgmsueLxIPrawMDAtyv9PhUXPQCsrq7ezcyP5o9XVlZUREdxUZLJJFZyA9ccD4fD4bur8V5VEf3VV19tSeY7AZwA1v20VtvHSlEepmkWj/9+4kj5KQBV2bp+x5NTF2NycnJAEP0IwFUAIIRAT2+vWlSuKGBZFubn5twz+S8x8K5IJBKr1ntWVfQAMDs7e1nGsn4EYD+QFX53Tw+8DbzFjaIymKaJhfn5guCJaMx2nHcODQ2NVvN9q+LeuNm7d++rDHyQmaeAbC7FwsJCS+1Tq7gQ0zSxsLBQEDwzT0nmD1Vb8MAuWPo8sVjsTWB+AsBeQLk6rUwJl2YWRLeEw+Ff7sb775roAWA6Gj3iAE/CJXzl6rQW6XQaiy4LD2BWA27ui0Se2a0+VN29cdMXiTxjO8573a7O/NycCme2CMlkcoMPz8xTILplNwUP7LKlzxONRo8Q8Bhyg1siQkdHB9qCQZWS3IQwMxKJBFaWl91hyXEGPhjZZcEDNRI9AExMTIxoQnwfuXAmAASDQXR0dirhNxH51IK1jbPyL0nm9wwODr5aiz7VTPQAEI1GwwQ8BODt+XM+nw9doRC0Ft3xuplwHAdLi4vFWzedkMy3Dw4OTtWqX7vq0xcTiURijpS3Iit8CWQHOnPnz7u3RlQ0IJZlYe78ebfgJQGPOFK+v5aCB2ps6V3osVjsbjD/CQADAEgIdHV2wh8IKHengWBmJJNJLC8vF/LhAViS+f7V1dW7r7766ppbs3oRPQBgamrqwyzlgwC68+f8gQC6urogRE1/lBRlIKXE0tKSe4kfAMyTEHcODAw8utl9u01diR4AotHoIWL+FgnxOmYmANB1HV2hEAzDUFa/DmFmWJa1YfEHETFL+SwTfXwrFYV3g7oTPQBMTEyENKK/BNFtADxANqwZDAYRbG9XVr+OkFJiNbdmIq8lZs4Q8I8O82crueKpUtSl6HOIWCx2O5i/jlx5EQDweDzo7OpSs7h1gGmaWF5aKt58bw5En8kt4q7LIkj1LHoAwPj4+AFd0x4EcBNc0aa2tja0d3So0GYNyFerdhVTBRFJMP9Q6Pp/qkSZjmpS96IHgLNnz3q9Xu8fC+BLINqXPy80DR0dHQj4/SDl8lSdfGSmxL4E50H05Uwm883h4eG6XynUEKLPE4/Hr5K2fS+I3gOX1TcMA+0dHfB6vWqgWwWYGZZpYmVlZUM9IyJyGPg+TPNPtroxQi1pKNHnicVix8B8D4CD7vM+nw/B9nYV5akglmVhZWWl1FLP30PKL4WHhh6rRb92QkOKHihEeD4Jok8B6HFfU+LfGcxcKL+eSqeBjRpZlMz3O47z4PDw8NJmz6hnGlb0eWKx2BUAPg/mYwCC7mtK/Fsj78asra3BNM3iekUpAh6RlnVvZGTkkrty1zMNL/o80Wj0sCD6gpTy/US0YTmWYRhoCwbh9/uV+EsgpUQ6nUai9B4DNpi/Y0v51f379/+mFv2rNE0j+hw0NTX1Wkj5ORDdzMzt7ouapsEfCCAQCEDX9Zb+AuRdmFQqhWQy6d68LE+KgO8x0b3hcPg0ytyYuBFoNtEDAI4fP67dcMMNl7PjfI6BW+Ca3AKys7sew0AgEIDP54MQoiW+AMwM6ThImyaSySQyllWq5OI8mB+HEN8Mh8PPo04nmHZCU4reTTweH5K2fQeE+GMw7wewQd1CCBheL/x+f+EL0Gw4jgMznUY69yrxmTMRjbOUf605ziN9w8NjNejmrtH0onehTU5O3kxEd1B2dretVCPD64Xf54Ph9cLj8TTkL0DedTFNE2Y6vXm5FaI1Yv6hw/wPpmn+4ODBgy1Rl6WVRJ9HxOPxiLTtD4DogwAOAQiUaqhpGgzDgOH1wjAMaJpWd64QM4OZYds2LMuCZZqwLOtiewMkATwPouMAHg2Hw1NoQhfmYrSi6AucOnXKE9m798oM83tIiFuw/gUoqWohBHSPBx6PBx5dh8cwoGtaIQWiml+G/OckpYTjOMhYFjK2jUxO4BcROSMr9BcZ+K6U8snR0dGXjx49WpU6kY1AS4u+mHg8PiSlfDsx38TAjQAi5dynadr6S9ehCQGhadByvwqU/2/uVUzeWudfUsrCy3EcOLZdEPYWdneJEvAzJnqaiH4cDoejrD5sAEr0mzI2NubTdf1yAbxNAn8I4DABB7CJK3QpyvkV2O5nQUQJMI8z0fPEfFICP7Vt+5UDBw6YSugXokRfJtFo1G/b9j5d168GcK0AXsvAtQD6iMgPwM/M1cxzlgBSIEoAiDHzixrwogOc9ng8v5NSzvT396uqWWWgRL9DRkdHO30+Xx85zj4pxDCAMDH3MVEfsmt9uyFlNwnhZ+YAEfmZWXc9wsq9kgysEdESmJdANEfMs0w0xcyWABnwAAAAGElEQVSTAKJCiHg6nZ4eGRlZvrAninL5/5l4mDiViTkPAAAAAElFTkSuQmCC",alt:"Unlock icon",style:{opacity:t,width:"51px",height:"51px"}})},PN=e=>{let{opacity:t=1,label:r,size:n=51}=e;return(0,qh.jsxs)(ym,{sx:{position:"relative",display:"inline-flex",width:n,height:n},children:[(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL0AAAC9CAYAAADm13wwAAAAAXNSR0IArs4c6QAAAPBlWElmTU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAfAAAAcgEyAAIAAAAUAAAAkodpAAQAAAABAAAApgAAAAAAAADYAAAAAQAAANgAAAABQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpAAAyMDI0OjEwOjE0IDE2OjAwOjA5AAAEkAQAAgAAABQAAADcoAEAAwAAAAEAAQAAoAIABAAAAAEAAAC9oAMABAAAAAEAAAC9AAAAADIwMjQ6MTA6MTEgMTc6NTQ6MzQAM0qtagAAAAlwSFlzAAAhOAAAITgBRZYxYAAAEotpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgICAgICAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyI+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDI0LTEwLTE0VDE2OjAwOjA5KzA4OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMjQtMTAtMTFUMTc6NTQ6MzQrMDg6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDI0LTEwLTE0VDE2OjAwOjA5KzA4OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMjQtMTAtMTFUMTc6NTQ6MzQrMDg6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6OTk0ZGY2NjMtZGQxOS03ZjQ5LTkwNDctYjNiYWY4YzJhYzFiPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNvbnZlcnRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6cGFyYW1ldGVycz5mcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wPC9zdEV2dDpwYXJhbWV0ZXJzPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAyNC0xMC0xMVQxNzo1ODo0OSswODowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo2ODRiNTkzYi03ZTdjLWNkNGYtODAxOS1kNmU4NTNiNmJhZGI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMjQtMTAtMTFUMTg6MDE6MDUrMDg6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6N2JmYmIwOTYtZDY2OC03ZjRiLTk5MTctNDVhZjE3MDJhNmUzPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDI0LTEwLTExVDE4OjAxOjA1KzA4OjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjZjNzBjNzc2LTY5N2UtZjY0ZS05ZWQyLTgxYmFkZThjMGI0Yzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAyNC0xMC0xNFQxNjowMDowOSswODowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDplZjVlNGJiMS1lOTZjLWYyNGItYjJkOC1lZWM0NDE4MDJlNDU8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6OTk0ZGY2NjMtZGQxOS03ZjQ5LTkwNDctYjNiYWY4YzJhYzFiPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDplMmRmYzI0Yi01YjY4LTc5NGYtYWFmYy05NmVmMDRiYmQ5NTk8L3htcE1NOkRvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpEZXJpdmVkRnJvbSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgIDxzdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+eG1wLmRpZDo5OTRkZjY2My1kZDE5LTdmNDktOTA0Ny1iM2JhZjhjMmFjMWI8L3N0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDo3YmZiYjA5Ni1kNjY4LTdmNGItOTkxNy00NWFmMTcwMmE2ZTM8L3N0UmVmOmluc3RhbmNlSUQ+CiAgICAgICAgICAgIDxzdFJlZjpkb2N1bWVudElEPnhtcC5kaWQ6OTk0ZGY2NjMtZGQxOS03ZjQ5LTkwNDctYjNiYWY4YzJhYzFiPC9zdFJlZjpkb2N1bWVudElEPgogICAgICAgICA8L3htcE1NOkRlcml2ZWRGcm9tPgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmVmNWU0YmIxLWU5NmMtZjI0Yi1iMmQ4LWVlYzQ0MTgwMmU0NTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cpztvb8AAA6RSURBVHgB7Z3tedw2FoUtNxAlBWwoF7DreP+vae//xI8LWEsuYO11AbGkAvzRgDVyA4kbiEZbQKI0kKEbWE8q0J5DA2OKw5nhN/Fx8DwQSAwI4L44c+cSHEl7t5Q6E7i+vk7QSTHv4/wrU8djZqYk/1n9IzPVS5Q2fzTHfC3Pe3t7LJU6ENjrcG10l0LcFG+K/C3yXZMTlKwfM11hsAz5d+Q58hXeDEuUSjUISPRbIEHkFPZ9ZJYpcoLsasowMb4Z5siXeBPwWKmCgERfgGI8+SNUUegs9wsv+3aYYcIU/s/IfBPwXAkEohe9icefgEVqMoog0xxW8Q3wIfY3QJSiNx6dQn+EnCLHlvgJ8AY5yk+AqEQPsadY6JfILJU+E6D3P4f3ZxlFCl70xqs/w2o+R96PYlXbGbnAZSfIwXv/YEVvYnUKnWGMxA4IDdIZ2p7C+2cNrvGmaXCiVwjTq/aCFH8wojeenYuU9rrs6owEghL/bd/XlDE78gx2LJBTZKX+CRyhywU4v0NO+u9+3B699fSAzzhdN6jj6oWjXSMfI94/HX/ofkb0UvQQfArz+ZGbICtNQ4CfrCcQ//k0w7cf1SvRm49Wij1tb7Ku7JkA18OrnR5vYnoInqHMb8gpspI7BI4wlV+xPtwe9iI57+nl3b3QkZ3kBQ6eur6/77Snh+CfAKK8u5WU++UDTPEXs27OztZJ0QMatyFfg9oMWU9TnZVP5cQOUDvD+r3iOla2mLjSufAGoBIw4cckSyW/CSww/YeuhTtOeXoI3oYzid9rrdkbAvT6vMnlujqTnBE9wLwElRmykx+JzqyYfxP5GlM+w/r+6MrUJw9vAIMiZ/x+6AoUzWMwAmfo+QXCneVgI9ToeFLRQ/AJ5vgT8t0ac1WTMAhwN+7xlHH+ZKI3gr8AgCSMtZQVDQgs0HayG9xJRC/BN5BHuE0nE/7oN7IQPEMZefhwxVzXsgM05IOspO4FfbUb1dMXBM+bVyURIIFPyAx1rsbCMZroJfixltTLcUYV/iiiNx9hCmm81ONokx4txh9c9BL8aKIJYaBRhD+o6CX4EHQ4ug2DC38w0UPwvFllSMPdGiURaEKAD7B4c7tsclHdtkNuWb7GJCT4uiuhdkUC3+HkVbGiz+NBRA8v/xKTPOxzouorOgKH0NEgX1LrPbzBRCn2s+iWSAYPQeAanR4hzDnvs/NeRQ/BJ5gc4zHG80oi0AcB7uHfg/CzPjpjH72JHoKn0Cn4BFlJBPoksEBnFH4vN7Z9xvSM45M+LVVfImAIHKDsLb7vxdMrjpc4RyDQW3zfWfQmjr+A0ckIhmuIuAn0Et/3Ed6cYR2SuNdC1o9EgL9v+67rWJ1EDy//DBNIu05C14tAAwIpdPe8Qfu1pq3DGxPWcLdG25NrWFUxMIFOYU4XT38MwyT4gVdX3VcS6BTmtBI9vPwhpvKkcjqqFIFxCDDMSdsM1Sq8wWALDJa0GVDXiECPBKjDxg+tGnt6CP4lBkp6nLi6EoG2BBJc2PimtpGnh+A5CN9dSiLgCgHe1N5p8hWFpp7+2BVLNQ8RMAR4U/u6CY3anl5evglWtR2ZwDXGo7fP6ozbxNMf1+lQbURgAgJ03rWf1Nby9PLyEyyjhmxKgN6ev1c733VhXU9/vKsjvS4CExOgA6/19eOdnl5efuKl1PBNCNSK7et4+uMmo6qtCExIgE585779Vk8vLz/h8mnotgR27tvv8vRp25F1nQhMRIBfgtzq7Xd5ej59TSaavIYVgbYEPmEX55tNF2/09AhtHuGiZNOFqhcBhwnwn2+nm+a3UfS44Mmmi1QvAo4TYASzcfuyMrzRDazjS6rp1SHA7ctvqr6ItsnTp3V6VRsRcJzAYdX8Non+WVVj1YmARwQYxXxfNd+18EahTRUm1XlKoPIJbZWn566NkgiEQuCwbEiV6H8oN9K5CHhKgJHMP8pzvxHeKLQp49F5AATWdnHKnj4NwEiZIAJlAjdC9rLoFdqUcencdwKMZu4XjSiHNwu8mBQb6FgEAiBw47s4K0+PeP4ujEsCMFAmiECZAL+LQ33naSV6nKWfq/RTBIIkkFqriqK/EffYBipFIAACDOP/Zu0oin7l/u2LKkUgIAIrp57fyCLe2YdxnwIyUKaIQJnANSryb11aTy8vX0ak8xAJ5N7eij4N0ULZJAIlAgc8t6JfBfmlRjoVgVAIrG5mreiTUCyTHSKwhUDu3O2NLIN8JREInUD+ZPa2+WZl6MbKPhEgAT6ZTRjeJDxTEoFICEj0kSy0zPxCQKL/wkJHkRDIRc+nsUoiEAMBbtx8xZj+2xislY0iYAjkopenlx5iIqDwJqbVlq05gX2GN/L0UkNMBHLRx2SwbBWBW3t4QqWvIEgIMRG4tl84i8lo2Ro5AYk+cgHEaL5EH+OqR26zRB+5AGI0X6KPcdUjt1mij1wAMZpP0WcxGi6boyWQydNHu/bxGk7RL+M1X5ZHSGAp0Ue46pGbnIv+Y+QQZH5cBP6Up49rwWUtNm4keskgJgL8cmUe3mQxWS1boyeQe3qJPnodRAXgI8MbiT6qNY/e2Mz+LUv+Qwb92mD0eggewPXe3t5tenqmLP+pHyIQNoErmmdF/3vYtso6EcgJ5M+krOjzd4DAiEDABLhdecPTZwEbK9NEwBK45IG9keVNrP67oEWjMkQC9PRf/rsg7miXqMhCtFQ2iYAhkBmdr25kWZ+7fiESgUAJrDZr7I0s7dTNbKCrLbNuMbSZWw5F0a8q7YsqRSAgAqtIJr+RtYbhL/zpyayFoTIkAgvE83esQUVPz7oP9gWVIhAQgVU8T5vKop8HZKhMEQESYDz/UxFFObzRfn2Rjo5DIEDR30F4k1ljbnh6s485ty+qFIEACMyLgqc9N0RvDFzd5QZgsEyImwC9/Np96o3whnz4b8RRLHisJAKeE1gLbWjPmqc3HwVzz43V9EWABK7KoQ0r10TPSqS1j4TP1fopAt4QoJd/UzXbtfCGjRDiaBenipbqfCJQGdrQgEpPb3ZxLnyyUHMVgRKBD1WhDdtUit5cfFrqRKci4AsBevmzTZOtDG9sY30Xx5JQ6RmBG9+1Kc99m6dn27flC3QuAo4ToJc/3jbHXZ6eN7QLZJZKIuADAYr+xtcOypPe6unNDe15+SKdi4DDBGabbmDtnLd6ejbSE1qLSqUHBHZ6edqw1dOzgXnXXPBYSQQcJ7DTy3P+Oz09G8HbpygkfMJQcpVALS/Pye/09GwEbz9HIdEThpKrBGp5eU6+lqdnQ8X2pKDkKIHaXp7zr+Xp2dDE9jMeK4mAYwRqe3nOu7anZ2N4e+3bE4SSSwQaeXlOvLanZ2N4+yUKPaUlDCUXCFDwJyYKqT2fRp6evRpv/ysOD2qPooYiMAyBrd+x2TRkI0/PToy3f7qpQ9WLwEgE6OWP24zVWPQcBMKfo7jgsZIITERgBh2+bzN24/DGDmK2MBnmfG3rVIrASAT45yfvNY3l7dxaeXpebAY8tR2pFIGRCLS6eS3OrbWnt53A4/+C4wf2XKUIDEzgAg73YZcx+hB9ggkozOmyCrq2LoEFGj5sG9bYQVqHN7YDM4EX9lylCAxEIN+t6Sp4zq2z6NkJJjJD8YbHSiIwAAEK/i109r6PvjuHN3YSemhlSagcgMAf6PPvED2/EdA59SZ6zkTbmJ3XQx2sE+i0PbneXU/hje3YxFuM7/lxpCQCXQlQR8+Nrrr2tbq+l5h+1RsOMMEZitNinY5FoAUBCv4Eeuolji+O32t4U+wYoc4Zzg+LdToWgZoEKPhzCP6oZvtGzYYUPb97zwdX3zWakRqLwK1bvwEC9+N7uXEtA+09vLEDmAk/xvnC1qkUgRoEuFPzeCjBc/zBPL01zuzo0OMf2DqVIrCBAAX/Twg+2/B6L9WDi56zlPB7WavQOxlF8IQ4iug5EIR/FwU9vr6KTCBKRQL/wwkfPmXFyqGOB4vpyxOGQVeoe4jMhw1KImAJUPCDhzR2MJajiZ6DGeHfw6FubglEiTqg4OkQR0ujhTdFixTjF2lEezxaDF8mPInoOQkJv7wUUZ1PJnhSHjW8KS6ruWlhjM8HEUpxEOCTVq73qDF8Ge1koudECsKf4ZRAlMIlwPU9R+78m09dEU0qek4ewl8iH+HwFFnCJ5TwEtf1hOuMPMhXC5ogmyymr5ok4vxD1L9C1l5+FSA/67hF/R+InV7eieSU6ElEN7hO6KKPSdC7L5Anjd+rDJk8vClPCh4hQx338t8gK9wBBA8T1+0t8mhPWZswcs7TFydvwp0fUXdQrNex0wScC2fKtJwWPSdrwp13OEyRnZ8v5hhronefIz81n9bOcnAuvCmTIkDkh6jn797Siyi5R8B698m3I+ug8cpzGq9/DMP+hezV3OsshodtvPHuRbZeCqcQ6ycwxksbiovg4THFniEf4VP40rf5ey0YiP8YwHmj67UdnomGoQx3ZvgXxyZ/0NSGnfdiUcjTZtlbXUPvPkN+4avYrdXei94aIvFbEr2XXsbt2yg4v3uzbfLF1+B9uMtziLo7yOfIXCyl9gTI7wL5Abh6sStT19RgPH3Z4JLn58vB2lq2vcM5hc44nU6DMXuGMrgUvBCM+FOsHG94E+TgbYaNTZMVu9c3qHWNjkoAeAM8ApgnyD8YQFHZXxIFhc40Rz6BV7/kSQwpykUveP9/Y5HvmoWOgUVR6D/D7vcQO8OZqFIMC711Qc0bgJ6fOTWNQ+JSFPol7DuH0DNjZ5RFSIvbeQELnwDfozN+AiSmU584WZHTg9ObU+gfYvToZu3WCp8Wc23yQ1fgTUDh3ze5+Cbg0C6wswLnfDLkOfIV8n8hcpZKFQRcWLiKablZhTfBPmZG8afIf0VOkHleTn1yLQqb4yyRM+Qrkz+ivJQnB4Waqc/FqTlkeM1MWJTAMpv3cfwXZJY24zB/nWVVykzlEiUzz/8sHFPcfADHeqUOBP4P0fdaPo5s2LsAAAAASUVORK5CYII=",alt:"ops icon",style:{opacity:t,width:n,height:n}}),null!=r&&""!==r&&(0,qh.jsx)(ym,{sx:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",fontSize:"1rem",fontWeight:600,color:"#e4e3e3",pointerEvents:"none"},children:r})]})},jN=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:EN,alt:"arrow icon",style:{opacity:t,width:"20px",height:"20px"}})},RN=e=>{let{gIot:r,deviceUUID:n,shareKey:o,model:a="ssm_touch_pro",defaultState:i,relayIndex:s=l.hub3RelayId.relay1,relayEnabled:c=!0,onCommand:u,onCommandStart:d,position:f,large:p=!1,botIndex:h}=e;const{setSnackbarValue:m}=(0,t.useContext)(VI),g=(0,t.useRef)(!1),v=async e=>{if(!g.current){g.current=!0,null===d||void 0===d||d();try{await e()}catch(t){null===m||void 0===m||m({open:!0,msg:t.message})}finally{g.current=!1}}},[y,b]=(0,t.useState)(void 0),[w,x]=(0,t.useState)(!0);(0,t.useEffect)((()=>{n&&(n.includes("----")||""===n)&&x(!1)}),[a]),(0,t.useEffect)((()=>{b(i?"unlocked"===i:void 0)}),[i]);const S=e=>{e.stopPropagation(),v((()=>u?u():r.sendCommandToWM2({device_id:n,sescretKey:o})))},A=(0,t.useMemo)((()=>{if(Dh.isBotModel(a))return(0,qh.jsx)(cE.A,{onClick:e=>{e.stopPropagation(),v((()=>u?u():r.sendCommandToWM2({device_id:n,sescretKey:o,cmd:Number.isInteger(h)?170+h:89})))},children:void 0===y?(0,qh.jsx)(DN,{state:-1}):(0,qh.jsx)(DN,{state:0})});if(Dh.isLockModel(a))return(0,qh.jsx)(cE.A,{onClick:S,children:void 0===y?(0,qh.jsx)(ON,{}):y?(0,qh.jsx)(MN,{}):(0,qh.jsx)(TN,{})});if(Dh.isOPSModel(a))return(0,qh.jsx)(cE.A,{children:(0,qh.jsx)(PN,{label:i,size:p?88:51})});if(Dh.isHub3Pro(a)){const e=!1===c;return(0,qh.jsx)(cE.A,{disabled:e,onClick:t=>{if(t.stopPropagation(),e)return;const a=y?l.hub3RelayAction.off:l.hub3RelayAction.on;v((()=>r.sendCommandToHub3WithConnectionId({device_id:n,secretKey:o,cmd:l.cmdCode.HUB3_ITEM_CODE_RELAY_SWITCH,iotPayload:{relayId:s,action:a}})))},children:e||void 0===y?(0,qh.jsx)(ON,{}):y?(0,qh.jsx)(MN,{}):(0,qh.jsx)(TN,{})})}return(0,qh.jsx)(qh.Fragment,{})}),[y,a,n,o,S,s,c,u,h,p]);return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)(hD,{show:w,children:(0,qh.jsxs)(ym,{sx:{position:"relative",display:"inline-flex",...p?{"& img":{width:"88px !important",height:"88px !important"}}:{}},children:[A,Number.isFinite(f)&&JP(a)&&(0,qh.jsx)(ym,{sx:{position:"absolute",left:"50%",top:"50%",width:p?88:51,height:p?88:51,transform:`translate(-50%, -50%) rotate(${-f}deg)`,pointerEvents:"none"},children:(0,qh.jsx)(ym,{sx:{position:"absolute",right:-3,top:"50%",width:p?8:6,height:p?8:6,borderRadius:"50%",bgcolor:void 0===y?"info.light":y?"primary.main":"#c74740",transform:"translateY(-50%)"}})})]})})})},_N=(0,dD.A)((0,qh.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"}),"Search"),NN=e=>{let{callSearch:r,initialValue:n=""}=e;const[o,a]=t.useState(n),i=(0,t.useRef)(r);(0,t.useEffect)((()=>{i.current=r}),[r]);const s=(0,t.useRef)((0,PI.debounce)((e=>{i.current&&i.current(e)}),500));return(0,t.useEffect)((()=>{n!==o&&a(n)}),[n]),(0,t.useEffect)((()=>()=>{s.current.cancel()}),[]),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",width:"100%",position:"relative",background:"#FAFAFA",borderRadius:"32px",height:"40px"},children:[(0,qh.jsx)(_N,{sx:{color:"action.active",ml:2,mr:1,mt:.5}}),(0,qh.jsx)(GD.A,{variant:"standard",placeholder:"\u691c\u7d22",value:o,sx:{width:"100%","& .MuiInputBase-root":{paddingRight:"40px"}},InputProps:{disableUnderline:!0,style:{border:"none",flexGrow:1}},onChange:e=>{a(e.target.value),s.current(e.target.value)}}),o&&(0,qh.jsx)(cE.A,{"aria-label":"clear search",onClick:()=>{a(""),s.current.cancel(),i.current&&i.current("")},size:"small",sx:{position:"absolute",right:"20px",top:"50%",transform:"translateY(-50%)",padding:"4px"},children:(0,qh.jsx)($M,{fontSize:"small"})})]})},LN=(0,dD.A)((0,qh.jsx)("path",{d:"M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2"}),"MoreHoriz"),UN="getRemoteList",BN="searchRemoteList",FN="sendIR",zN="updateRemoteState",WN="addIRRemote",HN="deleteIRRemote",YN="updateRemoteAlias",VN="getIRMode",GN="setIRMode",ZN="subscribeIRMode",QN="subscribeIRModeRsp",KN="subscribeIRData",XN="subscribeIRDataRsp",JN="unsubscribeIRMode",$N="unsubscribeIRData",qN="matchRemote",eL="getIRCodes",tL="addIRCode",rL="updateIRCode",nL="deleteIRCode",oL="addRemoteToMatter",aL=(e,r,n)=>{const[o,a]=(0,t.useState)([]),[i,s]=(0,t.useState)([]),[l,c]=(0,t.useState)(!1),[u,d]=(0,t.useState)(!1),[f,p]=(0,t.useState)(!1),{t:h}=Fv(),[m,g]=(0,t.useState)(new Map),[v,y]=(0,t.useState)(new Map),{gManageDevice:b}=(0,t.useContext)(VI);const{registerCallback:w,invokeCallbacks:x}=JC(),S=e=>{if(e.action===NC)if(x(e),c(!1),d(!1),p(!1),e.success)switch(e.op){case UN:const t=e.data||{},r=t.data||[],o=(t.pagination||{}).currentPage||1;a(1===o?r:e=>[...e,...r]);break;case BN:const i=(e.data||{}).data||[];s(i);break;case FN:e.success?n({open:!0,msg:h("pages.ir.remote.sendSuccess"),severity:"success"}):(console.error("\u7ea2\u5916\u7801\u53d1\u9001\u5931\u8d25:",e.message),n({open:!0,msg:e.message||h("pages.ir.remote.sendFail"),severity:"error"}));break;case zN:e.success||console.error("device state update failed:",e.message);break;case WN:e.success||console.error("infrared remote control save failed:",e.message);break;case HN:e.success||console.error("infrared remote control delete failed:",e.message);break;case YN:e.success||console.error("device alias update failed:",e.message);break;case VN:break;case GN:e.success||console.error("IR mode set failed:",e.message);break;case ZN:e.success||console.error("IR mode subscription failed:",e.message);break;case QN:C(e);break;case XN:I(e);break;case KN:e.success||console.error("IR data subscription failed:",e.message);break;case JN:case $N:case qN:case eL:break;case tL:e.success||(console.error("infrared button add failed:",e.message),n({open:!0,msg:e.message||h("pages.ir.remote.addIRCodeFail"),severity:"error"}));break;case rL:e.success||(console.error("infrared button update failed:",e.message),n({open:!0,msg:e.message||h("pages.ir.remote.updateIRCodeFail"),severity:"error"}));break;case nL:e.success||(console.error("infrared button delete failed:",e.message),n({open:!0,msg:e.message||h("pages.ir.remote.deleteIRCodeFail"),severity:"error"}));break;case oL:e.success||console.error("IR remote add to Matter failed:",e.message)}else{if(406===e.code)return;n({open:!0,msg:e.message||"\u30ea\u30e2\u30b3\u30f3\u30ea\u30b9\u30c8\u306e\u53d6\u5f97\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002"})}},A=(0,t.useCallback)((e=>{var t;if(65024===e.type)return!0;const r=b.devicceStatus;if(!r)return console.warn(`Device with ID ${e.deviceUUID} not found`),!0;const o=(null===(t=r.stateInfo)||void 0===t?void 0:t.remoteList)||[];let a=0;for(let n of o)32768!==n.type&&8192!==n.type&&57344!==n.type&&49152!==n.type||a++;return a>=3&&n({open:!0,msg:h("pages.ir.remote.toMaxRemoteLimit"),severity:"warning"}),a<3}),[b.devicceStatus,n,h]),k=(0,t.useCallback)((function(e,t){var r;let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];Ue.triggerBridge({action:"requestRefreshApp"});const o=null===b||void 0===b?void 0:b.deviceStatus;if(!o)return void console.warn(`Device with ID ${e} not found`);const a=(null===(r=o.stateInfo)||void 0===r?void 0:r.remoteList)||[];let i;if(n)i=a.filter((e=>e.uuid!==t.uuid));else{i=a.findIndex((e=>e.uuid===t.uuid))>=0?a.map((e=>e.uuid===t.uuid?t:e)):[t,...a]}b.updateDeviceState({deviceUUID:e,stateInfo:{remoteList:i}})}),[b,null===b||void 0===b?void 0:b.deviceStatus]),C=(0,t.useCallback)((e=>{m.forEach(((t,r)=>{try{t(e)}catch(n){console.error(`IR mode subscription callback execution failed (device: ${r}):`,n)}}))}),[m]),I=(0,t.useCallback)((e=>{v.forEach(((t,r)=>{try{t(e)}catch(n){console.error(`IR data subscription callback execution failed (device: ${r}):`,n)}}))}),[v]);KC(NC,S);const E=e=>{XC(e)},D=(0,t.useCallback)((function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:200,o=arguments.length>3?arguments[3]:void 0;1===t?c(!0):d(!0);const a=r.customerInfo.companyID,i={action:NC,op:UN,type:e,companyID:a,pagination:{page:t,pageSize:n}};E(i),o&&"function"===typeof o&&w(i.action,i.op,o)}),[E,w,n,r.customerInfo.companyID]),T=(0,t.useCallback)(((e,t,n)=>{if(!e)return void console.error("Type is required for searchRemoteList");if(!t||0===t.trim().length)return void s([]);p(!0);const o=r.customerInfo.companyID,a={action:NC,op:BN,type:e,companyID:o,searchTerm:t.trim(),pagination:{page:1,pageSize:1e3}};E(a),n&&"function"===typeof n&&w(a.action,a.op,n)}),[E,w,r.customerInfo.companyID]),O=(0,t.useCallback)(((e,t,r)=>{if(!t.hasMore||t.isLoadingMore)return;const n=t.currentPage+1;D(e,n,t.pageSize,r)}),[D]),M=(0,t.useCallback)((()=>{s([])}),[]),P=(0,t.useCallback)(((e,t,n,o,a,i)=>{const s=r.customerInfo.companyID,l={action:NC,op:FN,deviceId:e,command:n,operation:o,irType:a,companyID:s,irDeviceUUID:t};E(l),i&&"function"===typeof i&&w(l.action,l.op,i)}),[E,w,n,r.customerInfo.companyID]),j=(0,t.useCallback)(((e,t,n,o)=>{const a=r.customerInfo.companyID,i={action:NC,op:zN,deviceId:e,uuid:t,state:n,companyID:a};E(i),o&&"function"===typeof o&&w(i.action,i.op,o)}),[E,w,r.customerInfo.companyID]),R=(0,t.useCallback)(((e,t)=>{if(!A(e))return void(t&&"function"===typeof t&&t({success:!1,message:h("pages.ir.remote.toMaxRemoteLimit")}));const n=r.customerInfo.companyID,o={action:NC,op:WN,remote:e,companyID:n};E(o),t&&"function"===typeof t&&w(o.action,o.op,t)}),[E,w,r.customerInfo.companyID]),_=(0,t.useCallback)(((e,t,n)=>{const o=r.customerInfo.companyID,a={action:NC,op:HN,hub3DeviceId:e,uuid:t,companyID:o};E(a),n&&"function"===typeof n&&w(a.action,a.op,n)}),[E,w,r.customerInfo.companyID]),N=(0,t.useCallback)(((e,t,n,o)=>{const a=r.customerInfo.companyID,i={action:NC,op:YN,deviceId:e,uuid:t,alias:n,companyID:a};E(i),o&&"function"===typeof o&&w(i.action,i.op,o)}),[E,w,r.customerInfo.companyID]),L=(0,t.useCallback)(((e,t)=>{const n=r.customerInfo.companyID,o={action:NC,op:VN,deviceId:e,companyID:n};E(o),t&&"function"===typeof t&&w(o.action,o.op,t)}),[E,w,r.customerInfo.companyID]),U=(0,t.useCallback)(((e,t,n)=>{const o=r.customerInfo.companyID,a={action:NC,op:GN,deviceId:e,mode:t,companyID:o};E(a),n&&"function"===typeof n&&w(a.action,a.op,n)}),[E,w,r.customerInfo.companyID]),B=(0,t.useCallback)(((e,t)=>{const n=`hub3/${e}/ir/mode`,o=r.customerInfo.companyID,a={action:NC,op:ZN,topic:n,deviceId:e,companyID:o};E(a),t&&"function"===typeof t&&g((r=>new Map(r.set(e,t)))),w(a.action,ZN,(e=>{}))}),[E,w,r.customerInfo.companyID]),F=(0,t.useCallback)(((e,t)=>{const n=`hub3/${e}/ir/learned/data`,o=r.customerInfo.companyID,a={action:NC,op:KN,topic:n,deviceId:e,companyID:o};E(a),t&&"function"===typeof t&&y((r=>new Map(r.set(e,t)))),w(a.action,KN,(e=>{}))}),[E,w,r.customerInfo.companyID]),z=(0,t.useCallback)((e=>{const t=`hub3/${e}/ir/mode`;g((t=>{const r=new Map(t);return r.delete(e),r}));const n=r.customerInfo.companyID;E({action:NC,op:JN,deviceId:e,topic:t,companyID:n})}),[E,r.customerInfo.companyID]),W=(0,t.useCallback)((e=>{const t=`hub3/${e}/ir/learned/data`;y((t=>{const r=new Map(t);return r.delete(e),r}));const n=r.customerInfo.companyID;E({action:NC,op:$N,deviceId:e,topic:t,companyID:n})}),[E,r.customerInfo.companyID]),H=(0,t.useCallback)(((e,t,n,o)=>{const a=r.customerInfo.companyID,i={action:NC,op:qN,irData:e,irWaveLength:e.length/2,irType:t,brandName:n,companyID:a};E(i),o&&"function"===typeof o&&w(i.action,i.op,o)}),[E,w,r.customerInfo.companyID]);KC(NC,S);const Y=(0,t.useCallback)(((e,t,n)=>{const o=r.customerInfo.companyID,a={action:NC,op:eL,hub3DeviceId:e,remoteId:t,companyID:o};E(a),n&&"function"===typeof n&&w(a.action,a.op,n)}),[E,w,r.customerInfo.companyID]),V=(0,t.useCallback)(((e,t)=>{const n=r.customerInfo.companyID,o={action:NC,op:tL,irCode:e,companyID:n};E(o),t&&"function"===typeof t&&w(o.action,o.op,t)}),[E,w,r.customerInfo.companyID]),G=(0,t.useCallback)(((e,t,n,o,a)=>{const i=r.customerInfo.companyID,s={action:NC,op:rL,hub3DeviceId:e,remoteId:t,keyUUID:n,name:o,companyID:i};E(s),a&&"function"===typeof a&&w(s.action,s.op,a)}),[E,w,r.customerInfo.companyID]),Z=(0,t.useCallback)(((e,t,n,o)=>{const a=r.customerInfo.companyID,i={action:NC,op:nL,hub3DeviceId:e,remoteId:t,keyUUID:n,companyID:a};E(i),o&&"function"===typeof o&&w(i.action,i.op,o)}),[E,w,r.customerInfo.companyID]),Q=(0,t.useCallback)(((e,t,n,o,a)=>{const i=r.customerInfo.companyID,s={action:NC,op:oL,hub3DeviceId:e,irDeviceType:o.type,cmdOn:t,cmdOff:n,irDeviceUUID:o.uuid,irDeviceName:o.alias,companyID:i};E(s),a&&"function"===typeof a&&w(s.action,s.op,a)}),[E,w,r.customerInfo.companyID]);return{remoteList:o,searchResults:i,isLoading:l,isLoadingMore:u,isSearching:f,getRemoteList:D,searchRemoteList:T,loadMoreRemotes:O,clearSearchResults:M,setRemoteList:a,setIsLoading:c,setSearchResults:s,sendIR:P,updateRemoteState:j,addIRRemote:R,deleteIRRemote:_,modifyIRRemote:N,getIRMode:L,setIRMode:U,subscribeIRMode:B,subscribeIRData:F,unsubscribeIRMode:z,unsubscribeIRData:W,matchRemote:H,getIRCodes:Y,addIRCode:V,updateIRCode:G,deleteIRCode:Z,addRemoteToMatter:Q,updateLocalRemoteList:k}};function iL(e){var r;let{deviceUUID:n,editable:o=!0}=e;const{gManageDevice:a}=(0,t.useContext)(VI),{t:i}=Fv(),[s,l]=(0,t.useState)({stateInfo:{remoteList:[]}}),[c,u]=(0,t.useState)(null),[d,f]=(0,t.useState)(-1),[p,h]=(0,t.useState)(!1),m=hg(),{gAuth:g,gStripe:v,setSnackbarValue:y}=(0,t.useContext)(VI),{deleteIRRemote:b,updateLocalRemoteList:w}=aL(0,v,y),x={overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"};(0,t.useEffect)((()=>{const e=e=>{var t;return(null===e||void 0===e||null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===(null===n||void 0===n?void 0:n.toUpperCase())},t=e(a.deviceStatus)?a.deviceStatus:null,r=a.companyDevices.find(e),i=o?t||r:r||t;if(i){var s;const e={...i,stateInfo:{...i.stateInfo,remoteList:(null===(s=i.stateInfo)||void 0===s?void 0:s.remoteList)||[]}};l(e)}else l({deviceUUID:n,stateInfo:{remoteList:[]}})}),[n,o,a.deviceStatus,a.companyDevices]);const S=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:c,t="",r=parseInt(e.type);t=0===e.code?"/biz/access-control/learn":49152===r?"/biz/access-control/remote-air":"/biz/access-control/remote-non-air";const n=window.location.href,o=new URL(n);o.searchParams.delete("keyLevel"),o.searchParams.delete("deviceUUID");const a=Object.fromEntries(o.searchParams.entries());m({pathname:t,search:Bg({...a,hub3DeviceId:s.deviceUUID,remote:JSON.stringify(e)}).toString()}),h(!1)},A=(null===(r=s.stateInfo)||void 0===r?void 0:r.remoteList)||[];return(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:[(0,qh.jsxs)($T.A,{disablePadding:!0,children:[A.map(((e,r)=>(0,qh.jsx)(t.Fragment,{children:(0,qh.jsxs)(lO,{sx:{px:0},onClick:t=>{t.stopPropagation(),S(e)},children:[(0,qh.jsx)(iD.A,{sx:{minWidth:0},primary:(0,qh.jsx)(Bh.A,{sx:x,children:e.alias||`Remote ${r+1}`})}),o&&(0,qh.jsx)(cD,{sx:{minWidth:"auto"},onClick:t=>{t.stopPropagation(),((e,t)=>{u(e),f(t),h(!0)})(e,r)},children:(0,qh.jsx)(LN,{})})]})},r))),o&&(0,qh.jsxs)(qh.Fragment,{children:[(null===A||void 0===A?void 0:A.length)>0&&(0,qh.jsx)(mM,{sx:{opacity:.4}}),(0,qh.jsxs)(lO,{onClick:()=>{const e=window.location.href,t=new URL(e);t.searchParams.delete("keyLevel"),t.searchParams.delete("deviceUUID");const r=Object.fromEntries(t.searchParams.entries());m({pathname:"/biz/access-control/ir-type",search:Bg({...r,hub3DeviceId:s.deviceUUID}).toString()})},sx:{px:0},children:[(0,qh.jsx)(iD.A,{sx:{minWidth:0},primary:(0,qh.jsx)(Bh.A,{sx:x,children:i("pages.ir.remote.addRemote")})}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(ZT,{})})]})]})]}),(0,qh.jsx)(QO,{anchor:"bottom",open:p,onClose:()=>h(!1),PaperProps:{sx:{borderTopLeftRadius:"16px",borderTopRightRadius:"16px",maxHeight:"50vh"}},children:(0,qh.jsx)(ym,{sx:{width:"100%","& .MuiListItem-root":{justifyContent:"center"}},children:(0,qh.jsxs)($T.A,{children:[(0,qh.jsx)(lO,{children:(0,qh.jsx)(Bh.A,{sx:{color:"rgb(204, 204, 204)",...x},children:(null===c||void 0===c?void 0:c.alias)||`Remote ${d+1}`})}),(0,qh.jsx)(lO,{onClick:()=>S(c),children:(0,qh.jsx)(Bh.A,{children:i("pages.ir.remote.detail")})}),(0,qh.jsx)(lO,{onClick:()=>function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:c;b(s.deviceUUID,e.uuid,(t=>{t.success?w(s.deviceUUID,e,!0):(console.error("delete failed:",t.message),y({open:!0,msg:i("pages.ir.remoteList.deleteFailed"),severity:"error"}))})),h(!1)}(c),children:(0,qh.jsx)(Bh.A,{color:"error.main",children:i("pages.ir.remote.delete")})}),(0,qh.jsx)(lO,{onClick:()=>h(!1),children:(0,qh.jsx)(Bh.A,{children:i("deviceMember.opt.cancel")})})]})})})]})}const sL=(0,dD.A)((0,qh.jsx)("path",{d:"m7 14 5-5 5 5z"}),"ArrowDropUp"),lL=(0,dD.A)((0,qh.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-2h2zm0-4h-2V7h2z"}),"Error"),cL=e=>{var t,r;if(null===(t=e.stateInfo)||void 0===t||!t.hasOwnProperty("wm2State")||!0===e.stateInfo.wm2State)return Dh.isHub3Pro(e.deviceModel)?1===(null===(r=e.stateInfo)||void 0===r?void 0:r.relayStatus)?"unlocked":"locked":e.stateInfo.CHSesame2Status},uL=(e,t)=>{var r,n;if(null!==(r=e.stateInfo)&&void 0!==r&&r.hasOwnProperty("wm2State")&&!0!==e.stateInfo.wm2State)return;let o=((null===(n=e.stateInfo)||void 0===n?void 0:n.relayInfo)||{})[`status${t}`];var a;void 0===o&&1===t&&(o=null===(a=e.stateInfo)||void 0===a?void 0:a.relayStatus);return 1===Number(o)?"unlocked":"locked"},dL=(e,t)=>{var r;const n=((null===(r=e.stateInfo)||void 0===r?void 0:r.relayInfo)||{})[`enable${t}`];return void 0===n||1===Number(n)},fL=e=>{var r,n,o,a,s,l;let{index:c,device:u,callRowClick:d,gIot:f,enableDrag:p,expandedDevices:h,toggleExpanded:m}=e;const{attributes:g,listeners:v,setNodeRef:y,transform:b,transition:w,isDragging:x}=sN({id:u.deviceUUID,disabled:!p}),S=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot),A=Fk?S[u.deviceUUID.toUpperCase()]:null,{setSnackbarValue:k,gStripe:C}=(0,t.useContext)(VI),I=yj(u.deviceUUID,u.deviceModel),E=I.enabled,D=e=>k({open:!0,msg:e.message}),T=e=>Yk.request("command",{deviceUUID:u.deviceUUID,...void 0===e?{}:{scriptIndex:e}}).catch(D),O=null!==A&&void 0!==A&&A.bleConnected?{...u,stateInfo:{...u.stateInfo,wm2State:!0,CHSesame2Status:A.bleStatus.toLowerCase()}}:u,M=h.includes(u.deviceUUID),P="hub_3"===u.deviceModel,j={transform:b?`translate3d(0, ${b.y}px, 0)`:void 0,transition:w};return(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(lO,{ref:y,...g,...v,onClick:e=>{x||(P&&M&&m(u.deviceUUID),d(c))},style:j,sx:{display:"flex",justifyContent:"space-between",alignItems:"center",height:Fk?"7rem":"5rem",...j},children:[(0,qh.jsxs)(ym,{sx:{flexGrow:1},children:[(0,qh.jsxs)(sm,{direction:"row",spacing:"5px",alignItems:"center",children:[(null===A||void 0===A?void 0:A.showBle)&&(0,qh.jsx)(mN,{fontSize:"small",sx:{color:A.bleConnected?"primary.main":"info.light"}}),(0,qh.jsx)(gN,{fontSize:"small",sx:{color:!0===u.stateInfo.wm2State?"primary.main":"info.light"}}),(0,qh.jsx)(CN,{level:null!==A&&void 0!==A&&A.bleConnected&&null!==(r=A.batteryPercentage)&&void 0!==r?r:u.stateInfo.batteryPercentage}),(null===(n=u.stateInfo)||void 0===n?void 0:n.currentFwVer)&&(null===(o=u.stateInfo)||void 0===o?void 0:o.currentFwVer)!==(null===(a=u.stateInfo)||void 0===a?void 0:a.latestFwVer)&&(0,qh.jsx)(lL,{sx:{color:"error.main",fontSize:16}})]}),(0,qh.jsxs)(sm,{direction:"row",spacing:"0px",alignItems:"center",children:[(P||E)&&(0,qh.jsx)(ym,{onClick:e=>{e.stopPropagation(),x||(m(u.deviceUUID),E&&!M&&Yk.request("scripts",{deviceUUID:u.deviceUUID}).catch(D))},sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:"auto"},children:(0,qh.jsx)(sL,{fontSize:"small",sx:{width:"32px",height:"32px",marginRight:"-4px",marginLeft:"-8px",transform:M?"rotate(180deg)":"rotate(90deg)",transition:"transform 0.2s ease-in-out"}})}),(0,qh.jsx)(iD.A,{primary:u.deviceName})]}),(null===A||void 0===A?void 0:A.showBle)&&!A.bleConnected&&A.bleStatus&&"NoBleSignal"!==A.bleStatus&&(0,qh.jsx)(Bh.A,{variant:"caption",color:"text.disabled",children:A.bleStatus})]}),(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center"},onClick:e=>{e.stopPropagation()},children:Dh.isHub3Pro(u.deviceModel)?(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(RN,{model:u.deviceModel,deviceUUID:u.deviceUUID,gIot:f,relayIndex:1,relayEnabled:dL(u,1),defaultState:uL(u,1),shareKey:u.secretKey}),(0,qh.jsx)(RN,{model:u.deviceModel,deviceUUID:u.deviceUUID,gIot:f,relayIndex:2,relayEnabled:dL(u,2),defaultState:uL(u,2),shareKey:u.secretKey})]}):(0,qh.jsx)(RN,{model:u.deviceModel,deviceUUID:u.deviceUUID,gIot:f,defaultState:cL(O),onCommandStart:Fk?()=>{!async function(e,t){if(Fk&&(JP(e.deviceModel)||qP(e.deviceModel)||sj(e.deviceModel)))try{const{data:r}=await Yk.request("currentLocation");if(!r||!Number.isFinite(r.latitude)||!Number.isFinite(r.longitude))return;const n=Object.keys(i).find((t=>i[t]===e.deviceModel));if(void 0===n)return;await uT("deviceInfo",{deviceModel:n,longitude:String(r.longitude),latitude:String(r.latitude)},{deviceUUID:e.deviceUUID,account:t})}catch(r){}}(u,C.customerInfo.subUUID)}:void 0,onCommand:null!==A&&void 0!==A&&A.bleConnected?()=>T(E?I.selected:void 0):void 0,position:null!==A&&void 0!==A&&A.bleConnected?A.position:!0===(null===(s=u.stateInfo)||void 0===s?void 0:s.wm2State)&&Number.isFinite(null===(l=u.stateInfo)||void 0===l?void 0:l.position)?Math.trunc(360*u.stateInfo.position/1024):void 0,large:Fk,botIndex:E?I.selected:null===A||void 0===A?void 0:A.scriptIndex,shareKey:u.secretKey})})]}),E&&!x&&(0,qh.jsx)(WM,{in:M,timeout:"auto",unmountOnExit:!0,children:(0,qh.jsx)(hN,{deviceUUID:u.deviceUUID,scripts:I.scripts,onReorder:I.reorder,onError:D,onRun:e=>A.bleConnected?T(e):f.sendCommandToWM2({device_id:u.deviceUUID,sescretKey:u.secretKey,cmd:170+e})})}),P&&!x&&(0,qh.jsx)(WM,{in:M,timeout:"auto",unmountOnExit:!0,children:(0,qh.jsx)(ym,{sx:{pl:2,pr:2,pb:1},children:(0,qh.jsx)(iL,{deviceUUID:u.deviceUUID,editable:!1})})})]})},pL=e=>{let{devices:r,gIot:n,callRowClick:o,onDragEnd:a,callSearch:i}=e;const[s,l]=(0,t.useState)(r),[c,u]=(0,t.useState)([]),[d,f]=(0,t.useState)(!1);(0,t.useEffect)((()=>{l(r)}),[r]);const p=nR(rR(n_,{activationConstraint:{distance:5}}),rR(a_,{activationConstraint:{delay:250,tolerance:5}}),rR(QR,{coordinateGetter:uN})),h=e=>{u((t=>t.includes(e)?t.filter((t=>t!==e)):[...t,e]))};return(0,qh.jsx)(F_,{sensors:p,collisionDetection:dR,onDragStart:e=>{f(!0),u([])},onDragEnd:e=>{f(!1);const{active:t,over:r}=e;if(r&&t.id!==r.id){const e=s.findIndex((e=>e.deviceUUID===t.id)),n=s.findIndex((e=>e.deviceUUID===r.id)),o=G_(s,e,n);l(o),a&&a(o,e,n)}},modifiers:[fN],children:(0,qh.jsx)(eN,{items:s.map((e=>e.deviceUUID)),strategy:J_,children:(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:[(0,qh.jsx)(ym,{sx:{p:"16px",pb:"8px"},children:(0,qh.jsx)(NN,{callSearch:i})}),(0,qh.jsx)($T.A,{disablePadding:!0,onTouchMoveCapture:()=>{Fk&&document.activeElement instanceof HTMLInputElement&&document.activeElement.blur()},children:s.map(((e,t)=>(0,qh.jsx)(fL,{index:t,device:e,callRowClick:o,gIot:n,enableDrag:!!a,expandedDevices:c,toggleExpanded:h,isDragging:d},e.deviceUUID)))})]})})})},hL=(0,t.forwardRef)(((e,r)=>{let{dataSource:n=[],onDragEnd:o,onItemClick:a,onSearch:i,popupComponent:s,gIot:l,isMobile:c=!1,enableFloatingAdd:u=!0,filterFunction:d}=e;const f=(0,t.useRef)(null),[p,h]=(0,t.useState)([]);(0,t.useImperativeHandle)(r,(()=>f.current)),(0,t.useEffect)((()=>{h(n)}),[n]);const m=(0,t.useCallback)(((e,t)=>{var r;return(null===(r=e.deviceName)||void 0===r?void 0:r.includes(t))||!1}),[]),g=(0,t.useCallback)((e=>{if(e)if(i){const t=i(e,n);h(t)}else if(d){const t=n.filter((t=>d(t,e)));h(t)}else{const t=n.filter((t=>m(t,e)));h(t)}else h(n)}),[n,i,d,m]),v=(0,t.useCallback)((e=>{if(a){const t=p[e];a(t,e)}}),[p,a]),y=(0,t.useCallback)(((e,t,r)=>{o&&o(e,t,r)}),[o]),b=Boolean(i||d),w=Boolean(o),x=(0,qh.jsx)(pL,{devices:p,gIot:l,onDragEnd:w?y:void 0,callSearch:b?g:void 0,callRowClick:a?v:void 0});return u?(0,qh.jsx)(XP,{ref:f,isMobile:c,popupComponent:s,children:x}):x}));hL.displayName="GenericDeviceListContainer";const mL=hL;var gL=r(70367);const vL=e=>{let{title:r,data:n,loadingAble:o,setOpenModal:a,handleCheck:i,isWifi:s=!1,selectableRows:l="multiple",enableFilter:c=!1,enableFilterType:u="textField",useCustomSelection:d=!1,customColumns:f=[],isMobile:p=!1}=e;const[h,m]=(0,t.useState)([]),[g,v]=(0,t.useState)(!1),y=(0,t.useMemo)((()=>s?n.map((e=>({...e,wifiState:e.stateInfo.wm2State}))):n),[n,s]),b=[{name:"deviceName",label:"\u30c7\u30d0\u30a4\u30b9\u540d",options:{customBodyRenderLite:e=>{const t=y[e];return s?(0,qh.jsxs)(ym,{sx:{display:"flex"},children:[(0,qh.jsx)(Bh.A,{sx:{mr:"10px"},children:t.deviceName}),(0,qh.jsx)(gN,{style:{color:t.wifiState?"#28aeb1":"#999"}})]}):(0,qh.jsx)(Bh.A,{children:t.deviceName})}}}];return(0,qh.jsx)(ym,{children:(0,qh.jsxs)(Cy.A,{theme:(0,pm.A)({palette:{primary:{main:"#28aeb1"},info:{light:"#cccccc",main:"#666666"},error:{light:"#db807c",main:"#CC4A44"}},typography:{fontFamily:"'Noto Sans JP', sans-serif",h2:{fontSize:"22px",fontWeight:"bold"},h4:{fontSize:"16px"},h5:{fontSize:"14px"},button:{textTransform:"none"}},components:{MuiTypography:{styleOverrides:{root:{letterSpacing:"0.02rem"}}},MUIDataTableBodyRow:{styleOverrides:{root:{"&.Mui-selected":{backgroundColor:"transparent !important","&:hover":{backgroundColor:"transparent !important"}}}}},MuiTableCell:{styleOverrides:{root:{borderBottom:"none",...p&&{padding:"0px",fontSize:"0.8rem",maxWidth:"280px",wordWrap:"break-word",wordBreak:"break-all",whiteSpace:"normal"}}}},MuiTableHead:{styleOverrides:{root:{...p&&{display:"none"}}}},MUIDataTableSelectCell:{styleOverrides:{root:{...p&&{paddingLeft:0,paddingRight:0}}}},MUIDataTablePagination:{styleOverrides:{root:{"& .MuiTablePagination-toolbar":{padding:"0px"},"& .css-1k4xkk7-MuiTableCell-root":{padding:"0px"}},tableCellContainer:{padding:"0px"}}},MUIDataTableToolbar:{styleOverrides:{root:{...p&&{paddingLeft:0,paddingRight:0}}}}},MUIDataTableBodyCell:{styleOverrides:{root:{}}}}),children:[(0,qh.jsx)(gL.Ay,{title:(0,qh.jsx)(Bh.A,{variant:"h2",children:r}),columns:f.length>0?f:b,data:y,options:{setRowProps:(e,t,r)=>({key:e.deviceUUID||t}),isRowSelectable:(e,t)=>{if(s){const t=y[e];return"string"===typeof t.wifiState?"true"===t.wifiState:t.wifiState}return!0},count:y.length,onTableChange:(e,t)=>{},selectToolbarPlacement:"none",responsive:"standard",filter:c,filterType:u,search:!1,print:!1,download:!1,viewColumns:!1,customToolbar:null,pagination:!0,rowsPerPage:10,rowsPerPageOptions:[5,8,10],elevation:0,selectableRows:l,onRowSelectionChange:(e,t,r)=>{m(d?r.map((e=>y[e])):null===t||void 0===t?void 0:t.map((e=>{let{index:t}=e;return y[t]})))},setTableProps:()=>({size:"small"}),tableBodyHeight:"50vh",textLabels:{pagination:{next:"Next Page",previous:"Previous Page",rowsPerPage:"\u8868\u793a\u6570",displayRows:"/"}}}}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",mt:"10px"},children:[(0,qh.jsx)(QI.A,{size:"small",sx:{mr:"10px"},onClick:()=>{a(!1)},children:"\u30ad\u30e3\u30f3\u30bb\u30eb"}),o?(0,qh.jsx)(RE,{loading:g,disabled:0===h.length,disableElevation:!0,size:"small",variant:"outlined",onClick:()=>{v(!0),i(h,(e=>{v(!1)}))},children:"\u78ba\u8a8d"}):(0,qh.jsx)(QI.A,{disabled:0===h.length,disableElevation:!0,size:"small",variant:"outlined",onClick:()=>{i(h)},children:"\u78ba\u8a8d"})]})]})})},yL=()=>{const e=hg();return{navigateToDeviceDetail:t=>{if(!t)return;let r="";r=Dh.isLockModel(t.deviceModel)||JP(t.deviceModel)?Fk&&JP(t.deviceModel)&&2===Number(t.keyLevel)?"/device-setting":"/biz/devices/list-item":Dh.isWifiModel(t.deviceModel)?"/biz/wifi-module/index":"/biz/access-control/region",e({pathname:r,search:Bg({...Fk?{appHome:"1",fromType:"app"}:{},deviceUUID:t.deviceUUID,keyLevel:t.keyLevel,deviceModel:t.deviceModel,deviceName:t.deviceName}).toString()})},navigateToDeviceShare:t=>{t&&e({pathname:"/biz/devices/device-share",search:Bg({dids:t}).toString()})},navigateToDeviceSetting:t=>{if(!t)return;let r="";(Dh.isLockModel(t.deviceModel)||JP(t.deviceModel)||Dh.isOPSModel(t.deviceModel))&&(r="/device-setting"),e({pathname:r,search:Bg({...Fk?{appHome:"1",fromType:"app"}:{},deviceUUID:t.deviceUUID,keyLevel:t.keyLevel,deviceModel:t.deviceModel,deviceName:t.deviceName}).toString()})}}},bL=()=>{var e;const r=dg(),n=r.pathname.includes("/biz/devices/list"),o=r.pathname.includes("/biz/access-control/index"),a=n||o,{gManageDevice:i,gManageGroup:s,setSnackbarValue:l,gIot:c,gStripe:u,setModalContent:d,setCustomModalOpen:f}=(0,t.useContext)(VI),p=(0,t.useRef)(null),{navigateToDeviceDetail:h,navigateToDeviceShare:m}=yL(),[g,v]=(0,t.useState)([]),{t:y}=Fv();(0,t.useEffect)((()=>{v(n?i.filteredSsmDevices:o?i.filteredAccessControlDevices:i.companyDevices)}),[n,o,i.filteredSsmDevices,i.filteredAccessControlDevices,i.companyDevices]);const b=(0,t.useCallback)((()=>{a&&(d((0,qh.jsx)(vL,{loadingAble:!0,title:"\u5165\u9000\u5ba4\u30b7\u30b9\u30c6\u30e0\u3078\u767b\u9332\u3059\u308b\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e",setOpenModal:f,enableFilter:!0,selectableRows:"multiple",handleClose:f(!1),data:n?i.canChoosedSsmDevices:i.canChoosedAccessControlDevices,handleCheck:w})),f(!0))}),[a,n,d,f,i.canChoosedSsmDevices,i.canChoosedAccessControlDevices]),w=(0,t.useCallback)(((e,t)=>{i.addSesameDevicesToBiz3(e,(e=>{f(!1),t&&t(e)}))}),[i,f]),x=(0,t.useMemo)((()=>g.filter((e=>parseInt(e.keyLevel)<2))),[g]),S=e=>{d((0,qh.jsx)(vL,{title:"\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e",setOpenModal:f,enableFilter:!u.isFromApp,selectableRows:"multiple",useCustomSelection:!0,handleClose:f(!1),data:x,handleCheck:t=>{f(!1),e(t)},isMobile:u.isFromApp})),f(!0)},A=(0,t.useMemo)((()=>(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h2",sx:{px:1},children:"\u65b0\u898f\u30c7\u30d0\u30a4\u30b9\u3092\u8ffd\u52a0"}),(0,qh.jsxs)(ym,{sx:{px:1,display:"flex",flexDirection:"column",alignItems:"flex-start"},children:[(0,qh.jsxs)(QI.A,{variant:"text",component:"label",startIcon:(0,qh.jsx)(zP,{}),sx:{justifyContent:"flex-start"},children:["QR\u30b3\u30fc\u30c9\u3067\u8ffd\u52a0",(0,qh.jsx)("input",{type:"file",hidden:!0,onChange:e=>{const t=e.target;Ue.readQrcodeUrl(e.target.files[0],((e,r)=>{if(!r)return p.current.handleClose(),l({open:!0,msg:"\u8aad\u307f\u53d6\u308a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002QR\u30b3\u30fc\u30c9\u304c\u6b63\u3057\u3044\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002"}),void(t.value="");s.redeemQRToken(r,(e=>{if(p.current.handleClose(),!e.success)return l({open:!0,msg:e.message}),void(t.value="");const r=null!==e&&void 0!==e&&e.success?null===e||void 0===e?void 0:e.data:null,n=r?Ue.parseDeviceKeyFromUrl(r):null;if(!n)return l({open:!0,msg:"\u8aad\u307f\u53d6\u308a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002QR\u30b3\u30fc\u30c9\u304c\u6b63\u3057\u3044\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002"}),void(t.value="");i.addSesameDevicesToBiz3([n]),t.value=""}))}))}})]}),a&&(0,qh.jsx)(QI.A,{variant:"text",startIcon:(0,qh.jsx)(HP,{}),sx:{justifyContent:"flex-start"},onClick:()=>{b(),p.current.handleClose()},children:y("pages.sesameAccessControlDevice.index.PersonallyRegisteredDevices")})]})]}),!o&&(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h2",sx:{px:1,mt:1},children:"\u5408\u9375\u767a\u884c"}),(0,qh.jsx)(ym,{sx:{px:1,display:"flex",flexDirection:"column",alignItems:"flex-start"},children:(0,qh.jsx)(QI.A,{variant:"text",startIcon:(0,qh.jsx)(WP,{}),sx:{justifyContent:"flex-start"},onClick:()=>{p.current.handleClose(),S((e=>{e.length<1||m(e.map((e=>e.deviceUUID)).join(","))}))},children:"\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e"})})]}),a&&(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h2",sx:{px:1,mt:1},children:"\u30d5\u30a1\u30a4\u30eb\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9"}),(0,qh.jsxs)(ym,{sx:{px:1,display:"flex",flexDirection:"column",alignItems:"flex-start"},children:[(0,qh.jsx)(QI.A,{variant:"text",startIcon:(0,qh.jsx)(YP,{}),sx:{justifyContent:"flex-start"},onClick:()=>{p.current.handleClose(),Dh.csvUtils.downloadLists(g)},children:"CSV\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9"}),(0,qh.jsx)(QI.A,{variant:"text",startIcon:(0,qh.jsx)(VP,{}),sx:{justifyContent:"flex-start"},onClick:()=>{p.current.handleClose(),Dh.csvUtils.downloadLists(g,!1)},children:"Excel\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9"})]})]})]})),[a,o,l,i,y,b,S,m,g]),k=(0,t.useCallback)(((e,t,r)=>{var n,o,a;if(null===g||void 0===g||null===(n=g[0])||void 0===n||!n.orderKey)return;const s=e[r];if(!s)return;const l=null===(o=e[r-1])||void 0===o?void 0:o.orderKey,c=null===(a=e[r+1])||void 0===a?void 0:a.orderKey;i.updateDeviceOrderKey({subUUID:s.subUUID,deviceUUID:s.deviceUUID,prevKey:l,nextKey:c})}),[i,g]),C=(0,t.useCallback)((e=>{h(e)}),[h]),I=(0,t.useCallback)(((e,t)=>t.filter((t=>t.deviceName.includes(e)))),[]),E=!a&&Boolean(null===g||void 0===g||null===(e=g[0])||void 0===e?void 0:e.orderKey)?k:void 0;return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(mL,{ref:p,dataSource:g,onDragEnd:E,onItemClick:C,onSearch:I,popupComponent:A,gIot:c,enableFloatingAdd:!Fk,isMobile:!u.isFromApp}),Fk&&!a&&i.devicesLoaded&&!i.companyDevices.length&&(0,qh.jsx)(ym,{sx:{position:"absolute",top:0,bottom:0,left:0,right:0,display:"flex",alignItems:"center",justifyContent:"center",px:"20px",pointerEvents:"none"},children:(0,qh.jsx)(Bh.A,{sx:{color:"text.secondary",textAlign:"center",fontSize:17,fontWeight:600,maxWidth:"32rem"},children:y("appHome.noDevices")})})]})},wL=()=>(0,qh.jsx)(bL,{}),xL=()=>{const e=hg(),{gAuth:r,gStripe:n,setSnackbarValue:o}=(0,t.useContext)(VI),{t:a}=Fv(),[i,s]=(0,t.useState)({ready:!1,loading:!1}),[l,c]=(0,t.useState)(""),[u,d]=(0,t.useState)(""),[f,p]=(0,t.useState)(!1),[h,m]=(0,t.useState)(!1),[g,v]=(0,t.useState)(!1),[y,b]=(0,t.useState)(!0),[w]=xv(),x=w.get("redirect")||"/",S=(0,t.useRef)(null);(0,t.useEffect)((()=>{if(w.get("email")&&w.get("code"))return void(async()=>{d(w.get("email").trim()),b(!0),s({ready:!0,loading:!0}),localStorage.getItem("curLogin")&&await r.handleSignout(),r.handleSign({loginMail:w.get("email").trim(),cb:e=>{e instanceof Error?o({open:!0,msg:e.message}):(p(!0),s({ready:!0,loading:!1}),setTimeout((()=>{c(w.get("code").trim())}),200))}})})();localStorage.getItem("curLogin")&&!Fk&&e(Fk?"/?appHome=1&fromType=app":"/")}),[]),(0,t.useEffect)((()=>{4===l.length&&(m(!0),r.handleChallenge({pagePwd:l,cb:t=>{p(!1),t instanceof Error?o({open:!0,msg:t.message}):t&&t.appLogin||(n.getCustomerInfo(Fk?"ch_CandyhouseMobile":u),e(x))}}))}),[l]);const A=(0,t.useCallback)(((e,t)=>{Ue.triggerBridge({action:"requestOpenExternalURL",url:t})&&e.preventDefault()}),[]);return(0,qh.jsxs)(ym,{sx:{flexDirection:"column",display:"flex",height:"100vh",justifyContent:"space-between"},children:[(0,qh.jsxs)(ym,{sx:{padding:"24px 10px 0 10px",maxWidth:"360px",margin:"auto"},children:[(0,qh.jsx)(ym,{component:"img",src:GT,alt:"Biz",sx:{display:"block",maxHeight:"100px",maxWidth:"100%",margin:"16px auto"}}),(0,qh.jsx)(GD.A,{type:"email",inputMode:"email",variant:"standard",fullWidth:!0,InputProps:{disableUnderline:!0},placeholder:a("pages.login.Email"),value:u,onKeyDown:e=>{(e=>{""!==e.target.value&&13===e.keyCode&&S.current.click()})(e)},onChange:e=>{d(e.target.value);const t=Dh.isValidEmail(e.target.value);s({ready:t,loading:!1}),b(t)},sx:{display:f?"none":"block",my:1,"& .MuiInputBase-root":{py:"12px",borderBottom:"1px solid lightgray"},"& .MuiInputBase-input":{textAlign:"center",fontSize:"20px",p:0,outline:"none"},"& .MuiInputBase-root.Mui-focused":{borderBottomColor:"lightgray"}}}),(0,qh.jsx)(Bh.A,{variant:"h6",color:"error",sx:{display:y?"none":"block",textAlign:"center",marginBottom:"30px"},children:a("pages.login.EmailAddressFormatIsIncorrect")}),(0,qh.jsx)(ym,{sx:{display:f?"none":"block"},children:(0,qh.jsxs)(Bh.A,{variant:"h5",sx:{textAlign:"center"},children:[(0,qh.jsx)("a",{href:YD.terms,target:"_blank",onClick:e=>A(e,YD.appTerms),style:{color:"#28aeb1",fontWeight:"bold",display:"inline",cursor:"pointer"},rel:"noopener noreferrer",children:a("pages.login.TermsOfService")}),a("pages.login.And"),(0,qh.jsx)("a",{href:YD.privacy,target:"_blank",onClick:e=>A(e,YD.appPrivacy),style:{color:"#28aeb1",fontWeight:"bold",display:"inline"},rel:"noopener noreferrer",children:a("pages.login.PrivacyPolicy")}),a("pages.login.IfYouAgreePleaseLogIn")]})}),(0,qh.jsx)(RE,{ref:S,loading:i.loading,fullWidth:!0,sx:{color:"#fff",marginTop:"16px",display:f?"none":"block","& .MuiLoadingButton-loadingIndicator":{top:"50%",transform:"translate(-50%, -50%)"}},variant:"contained",color:"primary",disabled:!i.ready,onClick:async()=>{(async()=>{s({ready:i.ready,loading:!0}),r.handleSign({loginMail:u,cb:e=>{c(""),e instanceof Error?o({open:!0,msg:e.message}):(p(!0),s({ready:i.ready,loading:!1}))}})})()},children:a("pages.login.Login")}),(0,qh.jsxs)(ym,{style:{display:f?"block":"none"},children:[(0,qh.jsx)(AE,{color:"primary",sx:{display:h?"block":"none",margin:"0 auto",mb:3}}),(0,qh.jsx)(Bh.A,{variant:"h5",color:"initial",sx:{display:f?"block":"none",textAlign:"center"},children:a("pages.login.EnterVerificationCode")}),(0,qh.jsx)(GD.A,{placeholder:"1234",type:"text",inputMode:"numeric",variant:"standard",fullWidth:!0,InputProps:{disableUnderline:!0},value:l,disabled:!f,onChange:e=>{const t=e.target.value.replace(/\D/g,"").slice(0,4);c(t)},sx:{my:1,"& .MuiInputBase-root":{py:"12px",borderBottom:"1px solid lightgray"},"& .MuiInputBase-input":{textAlign:"center",fontSize:"20px",p:0,outline:"none"},"& .MuiInputBase-root.Mui-focused":{borderBottomColor:"lightgray"}}}),(0,qh.jsx)(Bh.A,{variant:"h6",color:"error",sx:{display:g?"block":"none",textAlign:"center",marginBottom:"30px"},children:"\u5165\u529b\u3055\u308c\u305f\u8a8d\u8a3c\u30b3\u30fc\u30c9\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093\u3002\u8a8d\u8a3c\u30b3\u30fc\u30c9\u304c\u518d\u767a\u884c\u3055\u308c\u3066\u3044\u307e\u3059\u306e\u3067\u3001\u65b0\u3057\u304f\u53d7\u3051\u53d6\u3063\u305f\u30b3\u30fc\u30c9\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002"}),(0,qh.jsx)(Bh.A,{variant:"h5",sx:{textAlign:"center",display:"flex",justifyContent:"center"},children:(0,qh.jsx)(QI.A,{variant:"text",onClick:()=>{p(!1),v(!1),d("")},style:{color:"#28aeb1",fontWeight:"bold",display:"flex",alignItems:"center",cursor:"pointer"},children:a("pages.login.ReturnToMailInput")})})]})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"space-between"},children:[(0,qh.jsx)("img",{alt:"icon",style:{width:"36%"},src:"https://cdn.shopify.com/s/files/1/0016/1870/6495/files/busniess.png?v=1663835284"}),(0,qh.jsx)("img",{alt:"icon",style:{width:"36%"},src:"https://cdn.shopify.com/s/files/1/0016/1870/6495/files/girlAndDoor-07.png?v=1663835270"})]})]})},SL={Auth:{region:"ap-northeast-1",userPoolId:"ap-northeast-1_bY2byhlCa",userPoolWebClientId:"21u50hboia4s5q0sbk6pbdfmss",identityPoolId:"ap-northeast-1:e5a1e548-564f-4681-bd5c-ec746ec9c684",mandatorySignIn:!1}};function AL(e){const t=[];let r=[],n=2;for(const o of e){const e=(new TextEncoder).encode(JSON.stringify(o)).length+1;if(r.length&&(r.length>=20||n+e>24e3)&&(t.push(r),r=[],n=2),e>24e3)throw new Error("Credential too large");r.push(o),n+=e}return r.length&&t.push(r),t}var kL=r(24763);function CL(e){return(0,oy.Ay)("MuiAlert",e)}const IL=(0,mm.A)("MuiAlert",["root","action","icon","message","filled","colorSuccess","colorInfo","colorWarning","colorError","filledSuccess","filledInfo","filledWarning","filledError","outlined","outlinedSuccess","outlinedInfo","outlinedWarning","outlinedError","standard","standardSuccess","standardInfo","standardWarning","standardError"]),EL=(0,dD.A)((0,qh.jsx)("path",{d:"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z"}),"SuccessOutlined"),DL=(0,dD.A)((0,qh.jsx)("path",{d:"M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z"}),"ReportProblemOutlined"),TL=(0,dD.A)((0,qh.jsx)("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"ErrorOutline"),OL=(0,dD.A)((0,qh.jsx)("path",{d:"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z"}),"InfoOutlined"),ML=(0,dD.A)((0,qh.jsx)("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close"),PL=(0,am.Ay)(ny.A,{name:"MuiAlert",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.variant],t[`${r.variant}${(0,ey.A)(r.color||r.severity)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;const r="light"===t.palette.mode?ry.e$:ry.a,n="light"===t.palette.mode?ry.a:ry.e$;return{...t.typography.body2,backgroundColor:"transparent",display:"flex",padding:"6px 16px",variants:[...Object.entries(t.palette).filter((0,pE.A)(["light"])).map((e=>{let[o]=e;return{props:{colorSeverity:o,variant:"standard"},style:{color:t.vars?t.vars.palette.Alert[`${o}Color`]:r(t.palette[o].light,.6),backgroundColor:t.vars?t.vars.palette.Alert[`${o}StandardBg`]:n(t.palette[o].light,.9),[`& .${IL.icon}`]:t.vars?{color:t.vars.palette.Alert[`${o}IconColor`]}:{color:t.palette[o].main}}}})),...Object.entries(t.palette).filter((0,pE.A)(["light"])).map((e=>{let[n]=e;return{props:{colorSeverity:n,variant:"outlined"},style:{color:t.vars?t.vars.palette.Alert[`${n}Color`]:r(t.palette[n].light,.6),border:`1px solid ${(t.vars||t).palette[n].light}`,[`& .${IL.icon}`]:t.vars?{color:t.vars.palette.Alert[`${n}IconColor`]}:{color:t.palette[n].main}}}})),...Object.entries(t.palette).filter((0,pE.A)(["dark"])).map((e=>{let[r]=e;return{props:{colorSeverity:r,variant:"filled"},style:{fontWeight:t.typography.fontWeightMedium,...t.vars?{color:t.vars.palette.Alert[`${r}FilledColor`],backgroundColor:t.vars.palette.Alert[`${r}FilledBg`]}:{backgroundColor:"dark"===t.palette.mode?t.palette[r].dark:t.palette[r].main,color:t.palette.getContrastText(t.palette[r].main)}}}}))]}}))),jL=(0,am.Ay)("div",{name:"MuiAlert",slot:"Icon",overridesResolver:(e,t)=>t.icon})({marginRight:12,padding:"7px 0",display:"flex",fontSize:22,opacity:.9}),RL=(0,am.Ay)("div",{name:"MuiAlert",slot:"Message",overridesResolver:(e,t)=>t.message})({padding:"8px 0",minWidth:0,overflow:"auto"}),_L=(0,am.Ay)("div",{name:"MuiAlert",slot:"Action",overridesResolver:(e,t)=>t.action})({display:"flex",alignItems:"flex-start",padding:"4px 0 0 16px",marginLeft:"auto",marginRight:-8}),NL={success:(0,qh.jsx)(EL,{fontSize:"inherit"}),warning:(0,qh.jsx)(DL,{fontSize:"inherit"}),error:(0,qh.jsx)(TL,{fontSize:"inherit"}),info:(0,qh.jsx)(OL,{fontSize:"inherit"})},LL=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiAlert"}),{action:n,children:o,className:a,closeText:i="Close",color:s,components:l={},componentsProps:c={},icon:u,iconMapping:d=NL,onClose:f,role:p="alert",severity:h="success",slotProps:m={},slots:g={},variant:v="standard",...y}=r,b={...r,color:s,severity:h,variant:v,colorSeverity:s||h},w=(e=>{const{variant:t,color:r,severity:n,classes:o}=e,a={root:["root",`color${(0,ey.A)(r||n)}`,`${t}${(0,ey.A)(r||n)}`,`${t}`],icon:["icon"],message:["message"],action:["action"]};return(0,zv.A)(a,CL,o)})(b),x={slots:{closeButton:l.CloseButton,closeIcon:l.CloseIcon,...g},slotProps:{...c,...m}},[S,A]=(0,kL.A)("closeButton",{elementType:cE.A,externalForwardedProps:x,ownerState:b}),[k,C]=(0,kL.A)("closeIcon",{elementType:ML,externalForwardedProps:x,ownerState:b});return(0,qh.jsxs)(PL,{role:p,elevation:0,ownerState:b,className:(0,Fh.A)(w.root,a),ref:t,...y,children:[!1!==u?(0,qh.jsx)(jL,{ownerState:b,className:w.icon,children:u||d[h]||NL[h]}):null,(0,qh.jsx)(RL,{ownerState:b,className:w.message,children:o}),null!=n?(0,qh.jsx)(_L,{ownerState:b,className:w.action,children:n}):null,null==n&&f?(0,qh.jsx)(_L,{ownerState:b,className:w.action,children:(0,qh.jsx)(S,{size:"small","aria-label":i,title:i,color:"inherit",onClick:f,...A,children:(0,qh.jsx)(k,{fontSize:"small",...C})})}):null]})})),UL=(0,am.Ay)(Bh.A,{name:"MuiDialogTitle",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:"16px 24px",flex:"0 0 auto"}),BL=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiDialogTitle"}),{className:o,id:a,...i}=n,s=n,l=(e=>{const{classes:t}=e;return(0,zv.A)({root:["root"]},sM,t)})(s),{titleId:c=a}=t.useContext(qO);return(0,qh.jsx)(UL,{component:"h2",className:(0,Fh.A)(l.root,o),ownerState:s,ref:r,variant:"h6",id:a??c,...i})}));function FL(e){return(0,oy.Ay)("MuiDialogActions",e)}(0,mm.A)("MuiDialogActions",["root","spacing"]);const zL=(0,am.Ay)("div",{name:"MuiDialogActions",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,!r.disableSpacing&&t.spacing]}})({display:"flex",alignItems:"center",padding:8,justifyContent:"flex-end",flex:"0 0 auto",variants:[{props:e=>{let{ownerState:t}=e;return!t.disableSpacing},style:{"& > :not(style) ~ :not(style)":{marginLeft:8}}}]}),WL=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiDialogActions"}),{className:n,disableSpacing:o=!1,...a}=r,i={...r,disableSpacing:o},s=(e=>{const{classes:t,disableSpacing:r}=e,n={root:["root",!r&&"spacing"]};return(0,zv.A)(n,FL,t)})(i);return(0,qh.jsx)(zL,{className:(0,Fh.A)(s.root,n),ownerState:i,ref:t,...a})})),HL=(0,dD.A)((0,qh.jsx)("path",{d:"M17.81 4.47c-.08 0-.16-.02-.23-.06C15.66 3.42 14 3 12.01 3c-1.98 0-3.86.47-5.57 1.41-.24.13-.54.04-.68-.2-.13-.24-.04-.55.2-.68C7.82 2.52 9.86 2 12.01 2c2.13 0 3.99.47 6.03 1.52.25.13.34.43.21.67-.09.18-.26.28-.44.28M3.5 9.72c-.1 0-.2-.03-.29-.09-.23-.16-.28-.47-.12-.7.99-1.4 2.25-2.5 3.75-3.27C9.98 4.04 14 4.03 17.15 5.65c1.5.77 2.76 1.86 3.75 3.25.16.22.11.54-.12.7s-.54.11-.7-.12c-.9-1.26-2.04-2.25-3.39-2.94-2.87-1.47-6.54-1.47-9.4.01-1.36.7-2.5 1.7-3.4 2.96-.08.14-.23.21-.39.21m6.25 12.07c-.13 0-.26-.05-.35-.15-.87-.87-1.34-1.43-2.01-2.64-.69-1.23-1.05-2.73-1.05-4.34 0-2.97 2.54-5.39 5.66-5.39s5.66 2.42 5.66 5.39c0 .28-.22.5-.5.5s-.5-.22-.5-.5c0-2.42-2.09-4.39-4.66-4.39s-4.66 1.97-4.66 4.39c0 1.44.32 2.77.93 3.85.64 1.15 1.08 1.64 1.85 2.42.19.2.19.51 0 .71-.11.1-.24.15-.37.15m7.17-1.85c-1.19 0-2.24-.3-3.1-.89-1.49-1.01-2.38-2.65-2.38-4.39 0-.28.22-.5.5-.5s.5.22.5.5c0 1.41.72 2.74 1.94 3.56.71.48 1.54.71 2.54.71.24 0 .64-.03 1.04-.1.27-.05.53.13.58.41.05.27-.13.53-.41.58-.57.11-1.07.12-1.21.12M14.91 22c-.04 0-.09-.01-.13-.02-1.59-.44-2.63-1.03-3.72-2.1-1.4-1.39-2.17-3.24-2.17-5.22 0-1.62 1.38-2.94 3.08-2.94s3.08 1.32 3.08 2.94c0 1.07.93 1.94 2.08 1.94s2.08-.87 2.08-1.94c0-3.77-3.25-6.83-7.25-6.83-2.84 0-5.44 1.58-6.61 4.03-.39.81-.59 1.76-.59 2.8 0 .78.07 2.01.67 3.61.1.26-.03.55-.29.64-.26.1-.55-.04-.64-.29-.49-1.31-.73-2.61-.73-3.96 0-1.2.23-2.29.68-3.24 1.33-2.79 4.28-4.6 7.51-4.6 4.55 0 8.25 3.51 8.25 7.83 0 1.62-1.38 2.94-3.08 2.94s-3.08-1.32-3.08-2.94c0-1.07-.93-1.94-2.08-1.94s-2.08.87-2.08 1.94c0 1.71.66 3.31 1.87 4.51.95.94 1.86 1.46 3.27 1.85.27.07.42.35.35.61-.05.23-.26.38-.47.38"}),"Fingerprint"),YL=(0,dD.A)((0,qh.jsx)("path",{d:"M12 19c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2M6 1c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m12-8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m-6 8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2"}),"Dialpad"),VL=(0,dD.A)((0,qh.jsx)("path",{d:"M9 11.75c-.69 0-1.25.56-1.25 1.25s.56 1.25 1.25 1.25 1.25-.56 1.25-1.25-.56-1.25-1.25-1.25m6 0c-.69 0-1.25.56-1.25 1.25s.56 1.25 1.25 1.25 1.25-.56 1.25-1.25-.56-1.25-1.25-1.25M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8 0-.29.02-.58.05-.86 2.36-1.05 4.23-2.98 5.21-5.37C11.07 8.33 14.05 10 17.42 10c.78 0 1.53-.09 2.25-.26.21.71.33 1.47.33 2.26 0 4.41-3.59 8-8 8"}),"Face"),GL=(0,dD.A)((0,qh.jsx)("path",{d:"M13 24c-3.26 0-6.19-1.99-7.4-5.02l-3.03-7.61c-.31-.79.43-1.58 1.24-1.32l.79.26c.56.18 1.02.61 1.24 1.16L7.25 15H8V3.25C8 2.56 8.56 2 9.25 2s1.25.56 1.25 1.25V12h1V1.25c0-.69.56-1.25 1.25-1.25S14 .56 14 1.25V12h1V2.75c0-.69.56-1.25 1.25-1.25s1.25.56 1.25 1.25V12h1V5.75c0-.69.56-1.25 1.25-1.25S21 5.06 21 5.75V16c0 4.42-3.58 8-8 8"}),"BackHand"),ZL=(0,dD.A)((0,qh.jsx)("path",{d:"M15.41 16.59 10.83 12l4.58-4.59L14 6l-6 6 6 6z"}),"KeyboardArrowLeft");function QL(e){let r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot)[null===e||void 0===e?void 0:e.toUpperCase()],o=(0,t.useMemo)((()=>`settings_${Date.now()}_${Math.random()}`),[e]),[a,i]=(0,t.useState)(!1);(0,t.useEffect)((()=>{if(!Fk||!n||!e)return;let t,a=!0;const s=r?"hubSettings":"peripheralSettings",l=()=>Yk.request(s,{deviceUUID:e,operation:"watch",session:o}).then((()=>{a&&i(!0)})).catch((()=>{a&&(t=setTimeout(l,1e3))}));return l(),()=>{a=!1,clearTimeout(t),i(!1),Yk.notify(s,{deviceUUID:e,operation:"unwatch",session:o})}}),[e,!!n,o,r]);return{native:n,session:o,request:function(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Yk.request("peripheralSettings",{deviceUUID:e,session:o,operation:t,...r})},ready:a}}function KL(e){let{deviceUUID:r,scanStatus:n}=e;const o=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot)[null===r||void 0===r?void 0:r.toUpperCase()],{t:a}=Fv(),i=function(e,t,r){return"BleClose"===t?r("bleStatus.off"):!e||e.bleConnected?"":"NoBleSignal"===e.bleStatus?r(e.connectionCount>=7?"bleStatus.tooMany":"bleStatus.noSignal"):e.hub?r(`hubWifi.status.${e.bleStatus}`,{defaultValue:e.bleStatus||""}):e.bleStatus||""}(o,null!==n&&void 0!==n?n:null===o||void 0===o?void 0:o.scanStatus,a);return i?(0,qh.jsx)(ym,{role:"status",sx:{bgcolor:"#993434",color:"#fff",minHeight:53,boxSizing:"border-box",width:"100%",flexShrink:0,display:"flex",alignItems:"center",px:"17px",py:"8px",fontSize:17},children:i}):null}const XL=r.p+"static/media/gif_finger.f47cf6fa5db051dc7697.gif",JL=r.p+"static/media/face_tips.93d19c32a9027deb0dd9.png",$L=r.p+"static/media/facepro_tips.951dd4937368ae060f0e.png",qL=r.p+"static/media/palm_tips.ae60fa490afedfbd05d2.png",eU=r.p+"static/media/palmpro_tips.40280d3200c2aca566ec.png";const tU=(0,dD.A)((0,qh.jsx)("path",{d:"M15.55 5.55 11 1v3.07C7.06 4.56 4 7.92 4 12s3.05 7.44 7 7.93v-2.02c-2.84-.48-5-2.94-5-5.91s2.16-5.43 5-5.91V10zM19.93 11c-.17-1.39-.72-2.73-1.62-3.89l-1.42 1.42c.54.75.88 1.6 1.02 2.47zM13 17.9v2.02c1.39-.17 2.74-.71 3.9-1.61l-1.44-1.44c-.75.54-1.59.89-2.46 1.03m3.89-2.42 1.42 1.41c.9-1.16 1.45-2.5 1.62-3.89h-2.02c-.14.87-.48 1.72-1.02 2.48"}),"RotateRight"),rU=(0,dD.A)((0,qh.jsx)("path",{d:"M7.11 8.53 5.7 7.11C4.8 8.27 4.24 9.61 4.07 11h2.02c.14-.87.49-1.72 1.02-2.47M6.09 13H4.07c.17 1.39.72 2.73 1.62 3.89l1.41-1.42c-.52-.75-.87-1.59-1.01-2.47m1.01 5.32c1.16.9 2.51 1.44 3.9 1.61V17.9c-.87-.15-1.71-.49-2.46-1.03zM13 4.07V1L8.45 5.55 13 10V6.09c2.84.48 5 2.94 5 5.91s-2.16 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93s-3.05-7.44-7-7.93"}),"RotateLeft"),nU=(0,dD.A)((0,qh.jsx)("path",{d:"M6 6h12v12H6z"}),"Stop"),oU=(0,dD.A)((0,qh.jsx)("path",{d:"M6 19h4V5H6zm8-14v14h4V5z"}),"Pause"),aU=(0,dD.A)((0,qh.jsx)("path",{d:"M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4zm-1-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8"}),"AddCircleOutline"),iU=30;function sU(e){let{values:r,value:n,label:o,onChange:a,disabled:i,title:s,visibleRows:l=5}=e;const c=(l-1)/2*iU,u=(0,t.useRef)(null),d=(0,t.useRef)(null),f=(0,t.useRef)(!1),p=(0,t.useRef)(!1),h=(0,t.useRef)(a);h.current=a;const m=Math.max(0,r.indexOf(n)),[g,v]=(0,t.useState)(r.length+m);(0,t.useEffect)((()=>(u.current.scrollTop=(r.length+m)*iU,()=>clearTimeout(d.current))),[]);const y=()=>{if(!f.current||p.current||i)return;f.current=!1;const e=Math.round(u.current.scrollTop/iU);h.current(r[e%r.length])};return(0,qh.jsxs)(ym,{sx:{position:"relative",bgcolor:"#ededed",height:l*iU},children:[(0,qh.jsx)(ym,{sx:{position:"absolute",top:c,height:30,left:0,right:0,borderBlock:"1px solid #d5d5d5",pointerEvents:"none"}}),(0,qh.jsx)(ym,{ref:u,role:"listbox","aria-label":s,"aria-disabled":i,onPointerDown:()=>{p.current=!0,f.current=!0,clearTimeout(d.current)},onPointerUp:()=>{p.current=!1,d.current=setTimeout(y,180)},onPointerCancel:()=>{p.current=!1},onWheel:()=>{f.current=!0},onScroll:()=>{v(Math.round(u.current.scrollTop/iU)),clearTimeout(d.current),d.current=setTimeout(y,180)},sx:{height:"100%",overflowY:"auto",scrollSnapType:"y mandatory",overscrollBehavior:"contain",touchAction:"pan-y",py:`${c}px`,boxSizing:"border-box",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},children:Array.from({length:3*r.length},((e,t)=>{const n=r[t%r.length],a=Math.min(Math.abs(t%r.length-g%r.length),r.length-Math.abs(t%r.length-g%r.length));return(0,qh.jsx)(ym,{component:"button",type:"button",role:"option","aria-selected":t===g,disabled:i,onClick:()=>{clearTimeout(d.current),f.current=!1,h.current(n)},sx:{display:"block",width:"100%",height:iU,p:0,border:0,background:"transparent",font:"inherit",fontSize:17,lineHeight:"30px",scrollSnapAlign:"center",color:0===a?"#333":"#aaa",transform:`scaleY(${0===a?1:1===a?.85:.6})`,cursor:"pointer"},children:o(n)},t)}))})]})}const lU=[tU,rU,nU,oU],cU=Array.from({length:255},((e,t)=>t+1));function uU(e){let{position:r,disabled:n,onDelete:o,children:a}=e;const i=(0,t.useRef)(null),{setNodeRef:s,attributes:l,listeners:c,transform:u,transition:d}=sN({id:r,disabled:n});return(0,qh.jsx)(lO,{ref:s,...l,...c,onTouchStart:e=>{var t;null===c||void 0===c||null===(t=c.onTouchStart)||void 0===t||t.call(c,e);const r=e.touches[0];i.current={x:r.clientX,y:r.clientY,at:Date.now()}},onTouchEnd:e=>{const t=i.current;i.current=null;const r=e.changedTouches[0];!n&&t&&Date.now()-t.at<350&&r.clientX-t.x<-80&&Math.abs(r.clientY-t.y)<40&&o()},sx:{minHeight:80,borderBottom:"1px solid #eee",gap:1,touchAction:"pan-y",transform:u?`translateY(${u.y}px)`:void 0,transition:d},children:a})}var dU=r(53065),fU=r(9360);const pU=(0,dD.A)((0,qh.jsx)("path",{d:"m2.88 7.88 1.54 1.54C4.15 10.23 4 11.1 4 12c0 4.41 3.59 8 8 8s8-3.59 8-8-3.59-8-8-8c-.9 0-1.77.15-2.58.42L7.89 2.89C9.15 2.32 10.54 2 12 2c5.52 0 10 4.48 10 10s-4.48 10-10 10S2 17.52 2 12c0-1.47.32-2.86.88-4.12M7 5.5C7 6.33 6.33 7 5.5 7S4 6.33 4 5.5 4.67 4 5.5 4 7 4.67 7 5.5m5.03 3.49h-.07L10.8 12.3h2.39zM12 18c3.31 0 6-2.69 6-6s-2.69-6-6-6-6 2.69-6 6 2.69 6 6 6m-.71-10.5h1.43l3.01 8h-1.39l-.72-2.04h-3.23l-.73 2.04H8.28z"}),"MotionPhotosAuto"),hU=(0,dD.A)((0,qh.jsx)("path",{d:"M23 5.5V20c0 2.2-1.8 4-4 4h-7.3c-1.08 0-2.1-.43-2.85-1.19L1 14.83s1.26-1.23 1.3-1.25c.22-.19.49-.29.79-.29.22 0 .42.06.6.16.04.01 4.31 2.46 4.31 2.46V4c0-.83.67-1.5 1.5-1.5S11 3.17 11 4v7h1V1.5c0-.83.67-1.5 1.5-1.5S15 .67 15 1.5V11h1V2.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5V11h1V5.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5"}),"PanTool"),mU=(0,dD.A)((0,qh.jsx)("path",{d:"M20 18c1.1 0 1.99-.9 1.99-2L22 6c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2H1c-.55 0-1 .45-1 1s.45 1 1 1h22c.55 0 1-.45 1-1s-.45-1-1-1zM5 6h14c.55 0 1 .45 1 1v8c0 .55-.45 1-1 1H5c-.55 0-1-.45-1-1V7c0-.55.45-1 1-1"}),"ComputerRounded"),gU=(0,dD.A)((0,qh.jsx)("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2M9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9zm9 14H6V10h12zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2"}),"LockOutlined"),vU=(0,dD.A)((0,qh.jsx)("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h2c0-1.66 1.34-3 3-3s3 1.34 3 3v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2m0 12H6V10h12zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2"}),"LockOpenOutlined"),yU=(0,dD.A)((0,qh.jsx)("path",{d:"M9 11.24V7.5C9 6.12 10.12 5 11.5 5S14 6.12 14 7.5v3.74c1.21-.81 2-2.18 2-3.74C16 5.01 13.99 3 11.5 3S7 5.01 7 7.5c0 1.56.79 2.93 2 3.74m9.84 4.63-4.54-2.26c-.17-.07-.35-.11-.54-.11H13v-6c0-.83-.67-1.5-1.5-1.5S10 6.67 10 7.5v10.74c-3.6-.76-3.54-.75-3.67-.75-.31 0-.59.13-.79.33l-.79.8 4.94 4.94c.27.27.65.44 1.06.44h6.79c.75 0 1.33-.55 1.44-1.28l.75-5.27c.01-.07.02-.14.02-.2 0-.62-.38-1.16-.91-1.38"}),"TouchApp"),bU=(0,dD.A)((0,qh.jsx)("path",{d:"M20 9V7c0-1.1-.9-2-2-2h-3c0-1.66-1.34-3-3-3S9 3.34 9 5H6c-1.1 0-2 .9-2 2v2c-1.66 0-3 1.34-3 3s1.34 3 3 3v4c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-4c1.66 0 3-1.34 3-3s-1.34-3-3-3m-2 10H6V7h12zm-9-6c-.83 0-1.5-.67-1.5-1.5S8.17 10 9 10s1.5.67 1.5 1.5S9.83 13 9 13m7.5-1.5c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5.67-1.5 1.5-1.5 1.5.67 1.5 1.5M8 15h8v2H8z"}),"SmartToyOutlined"),wU=(0,dD.A)((0,qh.jsx)("path",{d:"M18 2H6c-1.1 0-2 .9-2 2v18h16V4c0-1.1-.9-2-2-2m-2.5 11.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5"}),"SensorDoor"),xU={color:"#ffffff",fontSize:"30px",padding:"5px",borderRadius:"100%"},SU=e=>{let{type:t,botViaType:r,botHistoryMode:n}=e;if(89===t||t>=170&&t<=179||"manual"===n){if("manual"===n)return(0,qh.jsx)(mN,{sx:{color:e=>e.palette.info.light}});switch(r){case"BLE":return(0,qh.jsx)(mN,{sx:{color:e=>e.palette.info.light}});case"WIFI":return(0,qh.jsx)(gN,{sx:{color:e=>e.palette.info.light}});case"WEB":return(0,qh.jsx)(mU,{sx:{color:e=>e.palette.info.light}});default:return""}}switch(t){case 1:case 2:case 18:case 90:case 91:return(0,qh.jsx)(mN,{sx:{color:e=>e.palette.info.light}});case 6:return(0,qh.jsx)(pU,{sx:{color:e=>e.palette.info.light}});case 7:case 8:case 9:return(0,qh.jsx)(hU,{sx:{color:e=>e.palette.info.light}});case 14:case 15:case 19:return(0,qh.jsx)(gN,{sx:{color:e=>e.palette.info.light}});case 16:case 17:case 20:return(0,qh.jsx)(mU,{sx:{color:e=>e.palette.info.light}});default:return""}},AU=e=>{let{type:t}=e;if(89===t||t>=170&&t<=179||4===t)return(0,qh.jsx)(bU,{sx:{...xU,backgroundColor:"primary.light"}});switch(t){case 1:case 6:case 7:case 14:case 16:return(0,qh.jsx)(gU,{sx:{...xU,backgroundColor:"error.light"}});case 2:case 8:case 9:case 15:case 17:return(0,qh.jsx)(vU,{sx:{...xU,backgroundColor:"primary.light"}});case 18:case 19:case 20:return(0,qh.jsx)(yU,{sx:{...xU,backgroundColor:"primary.light"}});case 90:return(0,qh.jsx)(wU,{sx:{...xU,backgroundColor:"primary.light"}});case 91:return(0,qh.jsx)(wU,{sx:{...xU,backgroundColor:"error.light"}});default:return""}},kU=e=>{let{type:t}=e;switch(t){case 6:return"AUTO";case 7:return Kk.t("pages.sesameAccessControlDevice.event.manualLock");case 8:case 9:return Kk.t("pages.sesameAccessControlDevice.event.manualUnlock");case 18:return"Bluetooth Click";case 19:return"Wifi Click";case 20:return"Web Click";default:return""}},CU=e=>{let{fullHeight:r=!0,histories:n,onLoadMore:o,onItemLongPress:a,onItemClick:i}=e;const[s,l]=(0,t.useState)([]),[c,u]=(0,t.useState)(!0),d=(0,t.useRef)(null),f=(0,t.useRef)(null),[p,h]=(0,t.useState)(!0),[m,g]=(0,t.useState)(!1),v=(0,t.useRef)(null),y=(0,t.useRef)(null),b=(0,t.useRef)(!1),w=(0,t.useRef)({height:0,top:0});(0,t.useEffect)((()=>{if(n&&n.length>0){const e=(e=>{const t=[...e].sort(((e,t)=>e.timestamp-t.timestamp)),r={};return t.forEach((e=>{const t=new Date(e.timestamp),n=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][t.getDay()],o=`${t.getFullYear()}/${String(t.getMonth()+1).padStart(2,"0")}/${String(t.getDate()).padStart(2,"0")} ${n}`;r[o]||(r[o]=[]),r[o].push(e)})),Object.keys(r).sort(((e,t)=>new Date(e)-new Date(t))).map((e=>({date:e,items:r[e]})))})(n);d.current&&!c&&(w.current={height:d.current.scrollHeight,top:d.current.scrollTop}),l(e)}else l([])}),[n,c]),(0,t.useLayoutEffect)((()=>{if(s.length>0&&d.current)if(c)d.current.scrollTop=d.current.scrollHeight,u(!1);else{const e=d.current.scrollHeight-w.current.height;e>0&&(d.current.scrollTop=w.current.top+e-36)}}),[s,c]),(0,t.useEffect)((()=>{if(!v.current||!p||c)return;const e=new IntersectionObserver((e=>{const[t]=e;t.isIntersecting&&!m&&p&&(g(!0),o&&o((e=>{setTimeout((()=>{h(!!e),g(!1)}),100)})))}),{root:d.current,rootMargin:"50px",threshold:.1});return e.observe(v.current),()=>{v.current&&e.unobserve(v.current)}}),[p,m,o,c]);const x=(e,t)=>{b.current=!1,y.current=setTimeout((()=>{b.current=!0,a&&a(t,e)}),500)},S=()=>{y.current&&(clearTimeout(y.current),y.current=null)},A=()=>{y.current&&(clearTimeout(y.current),y.current=null)},k=e=>{const t=e.history_tag?Te.hp.from("object"===typeof e.history_tag?Object.values(e.history_tag):e.history_tag,"base64").toString("utf8"):kU({type:e.type});return"script"===e.botHistoryMode?e.botAlias?`${t} ${e.botAlias}`:t:"widget"===e.botHistoryMode?`${t} Widget Click`:"manual"===e.botHistoryMode?"Manual Click":t};return(0,qh.jsx)(ym,{ref:f,sx:{width:"100%",height:r?"100vh":"100%",bgcolor:"background.paper"},children:(0,qh.jsxs)(ym,{ref:d,sx:{width:"100%",height:"100%",overflowY:"auto",overflowX:"hidden",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},children:[p&&(0,qh.jsx)(ym,{ref:v,sx:{height:40}}),s.map(((e,t)=>(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(ym,{sx:{position:"sticky",top:0,bgcolor:"secondary.main",height:30,display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e3},children:(0,qh.jsx)(Bh.A,{variant:"h4",sx:{p:"0px !important"},children:e.date})}),(0,qh.jsx)($T.A,{sx:{p:0},children:e.items.map(((e,t)=>{var r;return(0,qh.jsxs)(lO,{sx:{height:72,py:0,userSelect:"none",cursor:"pointer"},onClick:()=>(e=>{b.current?b.current=!1:null===i||void 0===i||i(e)})(e),onTouchStart:t=>x(t,e),onTouchEnd:S,onTouchMove:A,onMouseDown:t=>x(t,e),onMouseUp:S,onMouseLeave:S,children:[(0,qh.jsx)(cD,{sx:{minWidth:"2.5rem"},children:(0,qh.jsx)(AU,{type:e.type})}),(0,qh.jsx)(iD.A,{primary:(0,qh.jsx)(Bh.A,{variant:"body1",sx:{fontWeight:400},children:k(e)}),secondary:(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"info.light",mt:.5},children:Ue.timestampToTime(e.timestamp,!1)})}),(null===(r=e.deviceName)||void 0===r?void 0:r.length)>0&&(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"info.light",pl:2},children:e.deviceName}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(SU,{type:e.type,botViaType:e.botViaType,botHistoryMode:e.botHistoryMode}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(fU.A,{component:jN})})]})]},`${e.record_id}-${t}`)}))})]},e.date)))]})})};function IU(e){let{enabled:t=!1,blurAmount:r=10,opacity:n=.6,children:o}=e;return(0,qh.jsx)("div",{style:{filter:t?`blur(${r}px)`:"none",opacity:t?n:1,pointerEvents:t?"none":"auto",userSelect:t?"none":"auto",overflow:"hidden !important",touchAction:t?"none":"auto"},children:o})}function EU(e){let{deviceUUID:r,showToolBar:n=!1}=e;const{gManageGroup:o,gStripe:a}=(0,t.useContext)(VI),i=hg(),[s,l]=(0,t.useState)([]),[c,u]=(0,t.useState)(void 0),[d,f]=(0,t.useState)(!1),[p]=xv(),h=p.get("deviceUUID"),m=p.get("keyLevel"),g=r||h,v=a.isFromApp||!n,[y,b]=(0,t.useState)({open:!1,item:null}),{t:w}=Fv(),x=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1?arguments[1]:void 0;o.getDeviceHistory([{deviceUUID:g,lastKey:e}],(e=>{const r=e.data||[];if(l((e=>[...e,...r])),r.length>0){var n;const e=null===(n=r[r.length-1])||void 0===n?void 0:n.timestamp;u(e),t&&t(e)}else t&&t(null)}))},S=async e=>{if(s.length<1||d)return;let t=[];f(!0);const r=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return new Promise((n=>{o.getDeviceHistory([{deviceUUID:g,lastKey:e}],(e=>{const o=e.data||[];if(t=[...t,...o],o.length>0&&100===o.length){var a;const e=null===(a=o[o.length-1])||void 0===a?void 0:a.timestamp;setTimeout((()=>{r(e).then(n)}),100)}else f(!1),n()}),100)}))};await r(),t.length>0&&Dh.csvUtils.downloadLists(t,e)};(0,t.useEffect)((()=>{g&&x(null)}),[g]);const A=(0,t.useMemo)((()=>2===parseInt(m)),[m]),k=(e,t)=>{t.preventDefault(),b({open:!0,item:e})},C=()=>{b({open:!1,item:null})},I=(0,t.useCallback)((e=>{o.getHistoryEnv({deviceUUID:e.device_id,timestamp:e.timestamp},(e=>{var t;const r=null!==(t=null===e||void 0===e?void 0:e.data)&&void 0!==t?t:{},n="string"===typeof r?r:JSON.stringify(r);Ue.openEnvSnapshot(Te.hp.from(n,"utf8").toString("base64"),a.isFromApp,i)}))}),[o,a.isFromApp,i]),E=(0,t.useCallback)((()=>{if(!y.item)return void C();const{device_id:e,timestamp:t}=y.item;o.makeInvisibleHistory({deviceUUID:e,timestamp:t},(e=>{e.success&&l((e=>e.filter((e=>e.timestamp!==y.item.timestamp))))})),C()}),[y]),D=v?(0,qh.jsx)(CU,{histories:s,onLoadMore:e=>{x(c,(t=>{e(t)}))},onItemLongPress:k,onItemClick:I}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(dU.A,{title:"CSV\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9",children:(0,qh.jsx)(cE.A,{onClick:()=>S(!0),children:(0,qh.jsx)(YP,{fontSize:"small",sx:{color:"rgba(0, 0, 0, 0.54)"}})})}),(0,qh.jsx)(dU.A,{title:"Excel\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9",children:(0,qh.jsx)(cE.A,{onClick:()=>S(!1),children:(0,qh.jsx)(VP,{fontSize:"small",sx:{color:"rgba(0, 0, 0, 0.54)"}})})}),(0,qh.jsx)(ym,{sx:{height:"480px",overflow:"auto",bgcolor:"background.paper",mr:0,mt:1},children:(0,qh.jsx)(CU,{fullHeight:!1,histories:s,onLoadMore:e=>{x(c,(t=>{e(t)}))},onItemLongPress:k,onItemClick:I})})]}),(0,qh.jsxs)(eM.A,{sx:{color:"#fff",zIndex:e=>e.zIndex.drawer+1,display:"flex",flexDirection:"column",gap:2},open:d,children:[(0,qh.jsx)(AE,{color:"inherit"}),(0,qh.jsx)("div",{children:"\u5c65\u6b74\u30c7\u30fc\u30bf\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u4e2d..."})]})]});return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(IU,{enabled:A,children:D}),(0,qh.jsx)(QO,{anchor:"bottom",open:y.open,onClose:C,children:(0,qh.jsxs)($T.A,{sx:{pb:1,justifyContent:"center"},disablePadding:!0,children:[(0,qh.jsx)(lO,{disablePadding:!0,children:(0,qh.jsx)(aD,{onClick:E,children:(0,qh.jsx)(iD.A,{primary:w("pages.ir.remote.delete"),sx:{textAlign:"center",color:"error.main",fontWeight:500}})})}),(0,qh.jsx)(lO,{disablePadding:!0,children:(0,qh.jsx)(aD,{onClick:C,children:(0,qh.jsx)(iD.A,{primary:w("pages.ir.remote.cancel"),sx:{textAlign:"center"}})})})]})})]})}function DU(e){let{handleCheck:r,employeeRole:n}=e;const[o,a]=t.useState(null);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(hD,{show:"Owner"===n,children:[(0,qh.jsx)(cE.A,{size:"small",disabled:!0,children:(0,qh.jsx)(wD,{fontSize:"small",sx:{color:"disabled"}})}),(0,qh.jsx)(cE.A,{size:"small",onClick:e=>{a(e.currentTarget)},color:"inherit",children:(0,qh.jsx)(wD,{fontSize:"small",sx:{color:"error.main"}})})]}),(0,qh.jsx)(jO.A,{elevation:1,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},MenuListProps:{disablePadding:!0},id:"customized-menu",anchorEl:o,keepMounted:!0,open:Boolean(o),onClose:()=>{a(null)},children:(0,qh.jsx)(RO.A,{onClick:()=>{r(),a(null)},children:(0,qh.jsx)(iD.A,{primary:"\u524a\u9664"})})})]})}const TU=e=>{let{handleCheck:r,label:n,isShowAdd:o}=e;const{gStripe:a}=(0,t.useContext)(VI),[i,s]=(0,t.useState)(null);return(0,qh.jsxs)(qh.Fragment,{children:[a.customerInfo.access&&(0,qh.jsx)(WD.A,{style:{margin:1},label:n,onDelete:o?r:void 0}),(0,qh.jsx)(jO.A,{elevation:1,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},MenuListProps:{disablePadding:!0},id:"customized-menu",anchorEl:i,keepMounted:!0,open:Boolean(i),onClose:()=>{s(null)},children:(0,qh.jsx)(RO.A,{onClick:e=>{e.stopPropagation(),r(),s(null)},children:(0,qh.jsx)(iD.A,{primary:"\u524a\u9664"})})})]})};function OU(e){let{tag:r,changeSingleAccess:n,appAccessTags:o}=e;const{gStripe:a}=(0,t.useContext)(VI),[i,s]=(0,t.useState)(null);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(cE.A,{size:"small",onClick:e=>{s(e.currentTarget)},children:(0,qh.jsx)(bD,{htmlColor:"gray"})}),(0,qh.jsx)(jO.A,{elevation:1,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},MenuListProps:{disablePadding:!0},id:"customized-menu",anchorEl:i,keepMounted:!0,open:Boolean(i),onClose:()=>{s(null)},children:o.filter((e=>!r.access.includes(e)&&"\u6a29\u9650\u306a\u3057"!==e)).map((e=>(0,qh.jsx)(RO.A,{onClick:t=>{t.stopPropagation(),s(null),n({...r,access:[...r.access,e]},a.customerInfo.companyID)},children:e},e)))})]})}const MU=e=>{let{datas:t,gIot:r}=e;return[{name:"deviceName",label:"\u30c7\u30d0\u30a4\u30b9\u540d",options:{customBodyRender:(e,t)=>{var r,n;return(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"row",alignItems:"center"},children:[(0,qh.jsx)(Bh.A,{variant:"h5",sx:{mr:"5px"},children:e}),void 0!==(null===(r=t.rowData[1])||void 0===r?void 0:r.wm2State)&&(0,qh.jsx)(gN,{style:{color:!0===(null===(n=t.rowData[1])||void 0===n?void 0:n.wm2State)?"#28aeb1":"#cccccc"}})]})}}},{name:"stateInfo",label:"\u96fb\u6c60\u6b8b\u91cf",options:{filter:!1,sort:!1,customBodyRender:(e,t,r)=>(0,qh.jsx)(ym,{sx:{display:"flex",flexDirection:"row",alignItems:"center"},children:(0,qh.jsx)(CN,{level:null===e||void 0===e?void 0:e.batteryPercentage})})}},{name:"deviceUUID",label:"\u958b\u9589\u30dc\u30bf\u30f3",options:{filter:!1,sort:!1,customBodyRender:(e,n,o)=>{if(t&&t.length>0){var a,i,s;let n=t.find((t=>t.deviceUUID===e));if(!n)return(0,qh.jsx)(qh.Fragment,{});let o=null===(a=n.stateInfo)||void 0===a?void 0:a.CHSesame2Status;return(0,qh.jsx)(RN,{model:n.deviceModel,deviceUUID:n.deviceUUID,gIot:r,defaultState:o,position:!0===(null===(i=n.stateInfo)||void 0===i?void 0:i.wm2State)&&Number.isFinite(null===(s=n.stateInfo)||void 0===s?void 0:s.position)?Math.trunc(360*n.stateInfo.position/1024):void 0,shareKey:n.secretKey})}}}}]},PU={cardColumns:e=>{let{isMobile:t,gManageEmployee:r,_click:n,ref:o,listDevices:a}=e;return[{name:"name",label:"\u30ab\u30fc\u30c9\u540d",options:{customBodyRender:(e,r,n)=>{const o=r.rowData[3],a=window.location.pathname;return o&&o.length>1&&"/cards"===a?(0,qh.jsxs)(Bh.A,{variant:"h5",children:[`${e}`,t?(0,qh.jsx)(qh.Fragment,{children:" "}):(0,qh.jsx)("br",{}),(0,qh.jsx)("span",{style:{color:"#333",opacity:"0.5"},children:"..."})]}):(0,qh.jsx)(Bh.A,{variant:"h5",children:`${e}`})}}},{name:"cardID",label:"ID",options:{customBodyRender:(e,t,r)=>(0,qh.jsx)(Bh.A,{variant:"h5",children:Ue.formatCardID(e)})}},{name:"subUUID",label:"\u30e6\u30fc\u30b6\u30fc",options:{customBodyRender:(e,t,n)=>(0,qh.jsx)(Bh.A,{variant:"h5",children:r.findEmployeeById(e).employeeName})}},{name:"uuids",label:"\u8a8d\u8a3c\u6a5f\u5668",options:{customBodyRender:(e,t,r)=>{var n;let i=Dh.uuidsToNames(e,a);const s=i&&i.length>0?i.map((e=>`${e}`)).join("\n"):"",l=(0,qh.jsx)("div",{style:{whiteSpace:"pre-line"},children:s});return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)("div",{ref:o,children:(0,qh.jsx)(dU.A,{title:l,placement:"bottom-start",componentsProps:{tooltip:{sx:{boxShadow:1,padding:"8px",fontSize:"14px"}}},children:(0,qh.jsx)(Bh.A,{variant:"h5",children:`${null!==(n=null===i||void 0===i?void 0:i.length)&&void 0!==n?n:0}\u53f0\u306e\u8a8d\u8a3c\u6a5f\u5668`})})})})}}}]},touchColumns:e=>{let{datas:t,listNames:r}=e;const n=MU(t,r),o=n.findIndex((e=>"\u958b\u9589\u30dc\u30bf\u30f3"===e.label));return n.splice(o,1,{name:"stateInfo",label:"\u9023\u643a\u6e08\u307f\u30bb\u30b5\u30df",options:{customBodyRender:(e,t)=>{var n,o;return null!==(n=e.sesameDevices)&&void 0!==n&&n.length?null===(o=e.sesameDevices)||void 0===o?void 0:o.map((e=>{var t;const n=null===(t=r.find((t=>t.deviceUUID===e)))||void 0===t?void 0:t.deviceName;return n?(0,qh.jsx)(WD.A,{label:n,style:{margin:"5px"}},e):null})):""}}}),n},deviceGroup:e=>{let{clickCall:t}=e;return[{name:"name",label:"\u30c9\u30a2\u30b0\u30eb\u30fc\u30d7\u540d"},{name:"members",label:"\u30b0\u30eb\u30fc\u30d7\u9375\u6240\u6709\u8005",options:{customBodyRender:(e,t,r)=>(0,qh.jsx)(qh.Fragment,{children:e&&e.length>0?e.map((e=>(0,qh.jsx)(WD.A,{label:e.memberGName,style:{margin:1}},e.memberGName))):(0,qh.jsx)(Bh.A,{sx:{fontSize:"14px",color:"#cccccc"},children:"\u672a\u8a2d\u5b9a"})})}},{name:"uuids",label:"\u4e00\u62ec\u64cd\u4f5c",options:{customBodyRender:(e,r,n)=>(0,qh.jsxs)(ym,{sx:{display:"flex"},children:[(0,qh.jsx)(QI.A,{size:"medium",variant:"contained",disableElevation:!0,sx:{display:"block",fontWeight:"bold",color:"white",backgroundColor:"#28aeb1","&:hover":{backgroundColor:"#28aeb1",opacity:"0.6"}},onClick:r=>{r.stopPropagation(),t&&t(e,83)},children:"\u4e00\u62ec\u89e3\u9320"}),(0,qh.jsx)(QI.A,{size:"medium",variant:"contained",disableElevation:!0,sx:{display:"block",fontWeight:"bold",color:"white",backgroundColor:"#cc4a44",marginLeft:"20px","&:hover":{backgroundColor:"#cc4a44",opacity:"0.6"}},onClick:r=>{r.stopPropagation(),t&&t(e,82)},children:"\u4e00\u62ec\u65bd\u9320"})]})}}]},groupMember:[{name:"employeeName",label:"\u30e6\u30fc\u30b6\u30fc\u540d"},{name:"employeeEmail",label:"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9"}],groupMemberKey:e=>{let{click:t}=e;return[{name:"memberGName",label:"\u30c7\u30d0\u30a4\u30b9\u30b0\u30eb\u30fc\u30d7\u540d",options:{customBodyRender:(e,t,r)=>(0,qh.jsx)(Bh.A,{variant:"h5",children:e})}},{name:"keyLevel",label:"\u5408\u9375\u6a29\u9650",options:{customBodyRender:(e,t,r)=>{let n="\u30b2\u30b9\u30c8\u9375";return"0"!==e&&0!==e||(n="\u30aa\u30fc\u30ca\u30fc\u9375"),"1"!==e&&1!==e||(n="\u30de\u30cd\u30fc\u30b8\u30e3\u30fc\u9375"),(0,qh.jsx)(Bh.A,{variant:"h5",children:n})}}},{name:"msgdata",label:"\u6709\u6548\u6642\u9593",options:{customBodyRender:(e,t,r)=>(0,qh.jsx)(Bh.A,{variant:"h5",children:e})}},{name:"did",label:"\u524a\u9664",options:{customBodyRender:(e,r,n)=>(0,qh.jsx)(DU,{handleCheck:r=>{t&&t(e)}})}}]},ssmDevices:MU,groupDeviceKey:e=>{let{click:t}=e;return[{name:"memberGName",label:"\u30c7\u30d0\u30a4\u30b9\u30b0\u30eb\u30fc\u30d7\u540d"},{name:"keyLevel",label:"\u5408\u9375\u6a29\u9650",options:{customBodyRender:(e,t,r)=>{let n="\u30b2\u30b9\u30c8\u9375";return"0"!==e&&0!==e||(n="\u30aa\u30fc\u30ca\u30fc\u9375"),"1"!==e&&1!==e||(n="\u30de\u30cd\u30fc\u30b8\u30e3\u30fc\u9375"),(0,qh.jsx)(Bh.A,{variant:"h5",children:n})}}},{name:"msgdata",label:"\u6709\u6548\u6642\u9593",options:{customBodyRender:(e,t,r)=>(0,qh.jsx)(Bh.A,{variant:"h5",children:e})}},{name:"mid",label:"\u524a\u9664",options:{customBodyRender:(e,r,n)=>(0,qh.jsx)(DU,{handleCheck:r=>{t&&t(e)}})}}]},membersGroup:[{name:"name",label:"\u30b0\u30eb\u30fc\u30d7\u540d"},{name:"members",label:"\u6240\u6709\u30b0\u30eb\u30fc\u30d7\u9375",options:{customBodyRender:(e,t,r)=>(0,qh.jsx)(qh.Fragment,{children:e&&e.length>0?e.map((e=>(0,qh.jsx)(WD.A,{label:e.memberGName,style:{margin:1}},e.memberGName))):(0,qh.jsx)(Bh.A,{sx:{fontSize:"14px",color:"#cccccc"},children:"\u672a\u8a2d\u5b9a"})})}}],employeeList:()=>[{name:"employeeName",label:"\u30e6\u30fc\u30b6\u30fc\u540d",options:{filter:!1,sort:!1}},{name:"employeeEmail",label:"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",options:{filter:!1,sort:!1}},{name:"department",label:"\u6240\u5c5e",options:{filter:!0,filterType:"dropdown",customBodyRender:e=>(0,qh.jsx)("span",{style:{color:void 0===e?"lightgray":"rgba(0, 0, 0, 0.87)"},children:void 0===e?"\u672a\u8a2d\u5b9a":e})}},{name:"phone",label:"\u96fb\u8a71\u756a\u53f7",options:{filter:!1,customBodyRender:e=>(0,qh.jsx)("span",{style:{color:void 0===e?"lightgray":"rgba(0, 0, 0, 0.87)"},children:void 0===e?"\u672a\u8a2d\u5b9a":e})}},{name:"tag",label:"\u30ed\u30fc\u30eb",options:{filter:!0,filterType:"dropdown",sort:!1,customBodyRender:(e,t,r,n)=>{const o=t.rowData[4];return Array.isArray(o)?(0,qh.jsx)(qh.Fragment,{children:o.map(((e,t)=>(0,qh.jsx)(WD.A,{label:e,style:{margin:1}},t)))}):null}}}],passwordColumns:e=>{let{ref:t,listDevices:r}=e;return[{name:"name",label:"\u6697\u8a3c\u756a\u53f7\u540d"},{name:"passwordID",label:"\u6697\u8a3c\u756a\u53f7",options:{customBodyRender:(e,t,r)=>(0,qh.jsx)(Bh.A,{variant:"h5",children:Dh.binaryToDecimal(e)})}},{name:"uuids",label:"\u8a8d\u8a3c\u6a5f\u5668",options:{customBodyRender:(e,n,o)=>{var a;let i=Dh.uuidsToNames(e,r);const s=i&&i.length>0?i.map((e=>`${e}`)).join("\n"):"",l=(0,qh.jsx)("div",{style:{whiteSpace:"pre-line"},children:s});return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)("div",{ref:t,children:(0,qh.jsx)(dU.A,{title:l,placement:"bottom-start",componentsProps:{tooltip:{sx:{boxShadow:1,padding:"8px",fontSize:"14px"}}},children:(0,qh.jsx)(Bh.A,{sx:{fontSize:"14px !important"},children:`${null!==(a=null===i||void 0===i?void 0:i.length)&&void 0!==a?a:0}\u53f0\u306e\u8a8d\u8a3c\u6a5f\u5668`})})})})}}}]},deviceShareFromDevice:()=>[{name:"deviceName",label:"\u30c7\u30d0\u30a4\u30b9\u540d"},{name:"deviceUUID",label:"UUID"},{name:"keyLevel",label:"\u5408\u9375\u6a29\u9650",options:{customBodyRender:e=>(0,qh.jsx)(qh.Fragment,{children:0===e?"\u30aa\u30fc\u30ca\u30fc\u9375":1===e?"\u30de\u30cd\u30fc\u30b8\u30e3\u30fc\u9375":"\u30b2\u30b9\u30c8\u9375"})}}],deviceShareCanChooseEmployee:()=>[{name:"employeeName",label:"\u30e6\u30fc\u30b6\u30fc\u540d"},{name:"tag",label:"\u30e6\u30fc\u30b6\u30fc\u6a29\u9650 "},{name:"employeeEmail",label:"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9"},{name:"department",label:"\u6240\u5c5e"}],deviceShareChoosedEmployee:()=>[{name:"employeeName",label:"\u30e6\u30fc\u30b6\u30fc\u540d"},{name:"tag",label:"\u30e6\u30fc\u30b6\u30fc\u6a29\u9650 "},{name:"employeeEmail",label:"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9"}],deviceItemCards:e=>{let{gManageDevice:t,ref:r}=e;return[{name:"name",label:"\u30ab\u30fc\u30c9\u540d"},{name:"cardID",label:"ID",options:{customBodyRender:e=>(0,qh.jsx)(Bh.A,{sx:{fontSize:"14px"},children:Ue.formatCardID(e)})}},{name:"uuids",label:"\u8a8d\u8a3c\u6a5f\u5668",options:{customBodyRender:(e,n,o)=>{var a;let i=Dh.uuidsToNames(e,t.filteredAccessControlDevices);const s=i&&i.length>0?i.map((e=>`${e}`)).join("\n"):"",l=(0,qh.jsx)("div",{style:{whiteSpace:"pre-line"},children:s});return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)("div",{ref:r,children:(0,qh.jsx)(dU.A,{title:l,placement:"bottom-start",componentsProps:{tooltip:{sx:{boxShadow:1,padding:"8px",fontSize:"14px"}}},children:(0,qh.jsx)(Bh.A,{sx:{fontSize:"14px !important"},children:`${null!==(a=null===i||void 0===i?void 0:i.length)&&void 0!==a?a:0}\u53f0\u306e\u8a8d\u8a3c\u6a5f\u5668`})})})})}}}]},companyRole:e=>{let{companyRoles:t,setCompanyRoles:r,gManageEmployee:n,changeSingleAccess:o}=e;return[{name:"tag",label:"\u30ed\u30fc\u30eb",options:{filter:!0,filterType:"dropdown",sort:!1}},{name:"access",label:"\u95b2\u89a7\u53ef\u80fd\u30da\u30fc\u30b8",options:{filter:!1,sort:!1,customBodyRenderLite:e=>{const n=t[e];let a=null===n||void 0===n?void 0:n.isShowAdd;return(0,qh.jsxs)(qh.Fragment,{children:[null===n||void 0===n?void 0:n.access.map(((i,s)=>{let l=1===(null===n||void 0===n?void 0:n.access.length);return(0,qh.jsx)(TU,{isShowAdd:a&&!l,id:e,handleCheck:()=>{let a=[...t],s=null===n||void 0===n?void 0:n.access.filter((e=>e!==i));a[e].access=s,r(a),o({...n})},label:i,rowChipLength:null===n||void 0===n?void 0:n.access.length,tag:null===n||void 0===n?void 0:n.tag},s)})),a&&(0,qh.jsx)(OU,{tag:n,appAccessTags:Dh.allTags,changeSingleAccess:o})]})}}},{name:"\u524a\u9664",label:"\u524a\u9664",options:{filter:!1,sort:!1,empty:!0,customBodyRenderLite:e=>{const r=t[e];let o=null===r||void 0===r?void 0:r.isShowAdd;return(0,qh.jsx)(qh.Fragment,{children:o&&(0,qh.jsx)(DU,{handleCheck:()=>{n.removeTag(r,(async e=>{}))}})})}}}]}};var jU=r(72145),RU=r(4139);const _U=e=>{let{onConfirm:r,onCancel:n,showOwnerOption:o=!0,showButton:a=!1}=e;const[i,s]=(0,t.useState)("1"),[l,c]=(0,t.useState)(!1);return(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(JI,{sx:{mb:"10px"},children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(Bh.A,{variant:"h2",children:"\u5408\u9375\u306e\u6a29\u9650\u3092\u9078\u629e"}),sx:{pb:"5px"}}),(0,qh.jsx)(lE,{children:(0,qh.jsx)(jU.A,{sx:{display:"flex",alignItems:"flex-start"},children:(0,qh.jsxs)(zD,{row:!0,value:i,onChange:e=>{s(e.target.value),!a&&r(parseInt(e.target.value))},children:[(0,qh.jsx)(hD,{show:o,children:(0,qh.jsx)(xD.A,{value:"0",control:(0,qh.jsx)(LD,{}),label:"\u30aa\u30fc\u30ca\u30fc\u9375"})}),(0,qh.jsx)(xD.A,{value:"1",control:(0,qh.jsx)(LD,{}),label:"\u30de\u30cd\u30fc\u30b8\u30e3\u30fc\u9375"}),(0,qh.jsx)(xD.A,{value:"2",control:(0,qh.jsx)(LD,{}),label:"\u30b2\u30b9\u30c8\u9375"})]})})})]}),a&&(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",gap:2,mt:2},children:[(0,qh.jsx)(QI.A,{variant:"text",onClick:n,children:"\u30ad\u30e3\u30f3\u30bb\u30eb"}),(0,qh.jsx)(RU.Ay,{item:!0,xs:12,children:(0,qh.jsx)(RE,{loading:l,disableElevation:!0,size:"small",variant:"outlined",onClick:()=>{c(!0),r(parseInt(i),(()=>{c(!1)}))},children:"\u78ba\u8a8d"})})]})]})};function NU(e){return(0,oy.Ay)("MuiListItemAvatar",e)}(0,mm.A)("MuiListItemAvatar",["root","alignItemsFlexStart"]);const LU=(0,am.Ay)("div",{name:"MuiListItemAvatar",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,"flex-start"===r.alignItems&&t.alignItemsFlexStart]}})({minWidth:56,flexShrink:0,variants:[{props:{alignItems:"flex-start"},style:{marginTop:8}}]}),UU=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiListItemAvatar"}),{className:o,...a}=n,i=t.useContext(tD.A),s={...n,alignItems:i.alignItems},l=(e=>{const{alignItems:t,classes:r}=e,n={root:["root","flex-start"===t&&"alignItemsFlexStart"]};return(0,zv.A)(n,NU,r)})(s);return(0,qh.jsx)(LU,{className:(0,Fh.A)(l.root,o),ownerState:s,ref:r,...a})})),BU=(0,dD.A)((0,qh.jsx)("path",{d:"M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"}),"Person");function FU(e){return(0,oy.Ay)("MuiAvatar",e)}(0,mm.A)("MuiAvatar",["root","colorDefault","circular","rounded","square","img","fallback"]);const zU=(0,am.Ay)("div",{name:"MuiAvatar",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[r.variant],r.colorDefault&&t.colorDefault]}})((0,qv.A)((e=>{let{theme:t}=e;return{position:"relative",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,width:40,height:40,fontFamily:t.typography.fontFamily,fontSize:t.typography.pxToRem(20),lineHeight:1,borderRadius:"50%",overflow:"hidden",userSelect:"none",variants:[{props:{variant:"rounded"},style:{borderRadius:(t.vars||t).shape.borderRadius}},{props:{variant:"square"},style:{borderRadius:0}},{props:{colorDefault:!0},style:{color:(t.vars||t).palette.background.default,...t.vars?{backgroundColor:t.vars.palette.Avatar.defaultBg}:{backgroundColor:t.palette.grey[400],...t.applyStyles("dark",{backgroundColor:t.palette.grey[600]})}}}]}}))),WU=(0,am.Ay)("img",{name:"MuiAvatar",slot:"Img",overridesResolver:(e,t)=>t.img})({width:"100%",height:"100%",textAlign:"center",objectFit:"cover",color:"transparent",textIndent:1e4}),HU=(0,am.Ay)(BU,{name:"MuiAvatar",slot:"Fallback",overridesResolver:(e,t)=>t.fallback})({width:"75%",height:"75%"});const YU=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiAvatar"}),{alt:o,children:a,className:i,component:s="div",slots:l={},slotProps:c={},imgProps:u,sizes:d,src:f,srcSet:p,variant:h="circular",...m}=n;let g=null;const v=function(e){let{crossOrigin:r,referrerPolicy:n,src:o,srcSet:a}=e;const[i,s]=t.useState(!1);return t.useEffect((()=>{if(!o&&!a)return;s(!1);let e=!0;const t=new Image;return t.onload=()=>{e&&s("loaded")},t.onerror=()=>{e&&s("error")},t.crossOrigin=r,t.referrerPolicy=n,t.src=o,a&&(t.srcset=a),()=>{e=!1}}),[r,n,o,a]),i}({...u,src:f,srcSet:p}),y=f||p,b=y&&"error"!==v,w={...n,colorDefault:!b,component:s,variant:h};delete w.ownerState;const x=(e=>{const{classes:t,variant:r,colorDefault:n}=e,o={root:["root",r,n&&"colorDefault"],img:["img"],fallback:["fallback"]};return(0,zv.A)(o,FU,t)})(w),[S,A]=(0,kL.A)("img",{className:x.img,elementType:WU,externalForwardedProps:{slots:l,slotProps:{img:{...u,...c.img}}},additionalProps:{alt:o,src:f,srcSet:p,sizes:d},ownerState:w});return g=b?(0,qh.jsx)(S,{...A}):a||0===a?a:y&&o?o[0]:(0,qh.jsx)(HU,{ownerState:w,className:x.fallback}),(0,qh.jsx)(zU,{as:s,className:(0,Fh.A)(x.root,i),ref:r,...m,ownerState:w,children:g})})),VU=(0,dD.A)((0,qh.jsx)("path",{d:"M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4zm-1-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8"}),"AddCircleOutlineOutlined"),GU=(0,dD.A)((0,qh.jsx)("path",{d:"m12 8-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z"}),"ExpandLess"),ZU=(0,dD.A)((0,qh.jsx)("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"ExpandMore"),QU=e=>{let{users:r,fetchUserAndDevices:n,onAddClickHandler:o,onRemoveUser:a,onModifyGuestTag:i,onShareGuestQRCode:s,gStrip:l,gManageEmployee:c,showType:u="widget",defaultManageMode:d=!1,hasMore:f=!1}=e;const[p,h]=(0,t.useState)({}),[m,g]=(0,t.useState)(!1),[v,y]=(0,t.useState)({}),[b,w]=(0,t.useState)(new Set),{t:x}=Fv(),S=(0,t.useRef)(),A="DeviceMemberChanged",k=hg(),[C]=xv(),I=!0===Boolean(C.get("setting")),E="manage"===C.get("type"),D=(0,t.useMemo)((()=>{const e=[],t=new Set;return r.forEach((n=>{const o=n.subUUID||n.guestKeyId;if(!t.has(o))if(n.guestKeyId){const s=r.filter((e=>e.secretKey===n.guestKeyId&&e.subUUID));var a,i;if(s.length>0)e.push({...n,employeeName:null!==(a=Dh.formatTimestampToMonthDayLocal(n.employeeName))&&void 0!==a?a:n.employeeName,items:s}),s.forEach((e=>t.add(e.subUUID)));else e.push({...n,employeeName:null!==(i=Dh.formatTimestampToMonthDayLocal(n.employeeName))&&void 0!==i?i:n.employeeName});t.add(o)}else if(n.secretKey){r.some((e=>e.guestKeyId===n.secretKey))||(e.push(n),t.add(o))}else e.push(n),t.add(o)})),e}),[r]),T=(0,t.useMemo)((()=>{var e;return(null===(e=p.key)||void 0===e?void 0:e.length)>0?p.result:D}),[r,p,D]);(0,t.useEffect)((()=>{if(T&&T.length>0){const e=T.filter((e=>{var t,r;return(null===(t=e.guestKeyId)||void 0===t?void 0:t.length)>0&&(null===(r=e.items)||void 0===r?void 0:r.length)>0})).map((e=>e.guestKeyId));w(new Set(e))}}),[T]);(0,t.useLayoutEffect)((()=>{n&&n(E||d)}),[]),(0,t.useEffect)((()=>{if(r.length<1)return;const e=(null===r||void 0===r?void 0:r.length)||0,t=S.current;if(void 0!==t&&e!==t){const e=`ssm://UI/webview/notify?${new URLSearchParams({notifyName:A})}`;Ue.triggerScheme(e)}S.current=e}),[r]);(0,t.useEffect)((()=>{m||y({})}),[m]);const O=(0,t.useMemo)((()=>r.find((e=>e.subUUID===l.customerInfo.subUUID))),[r]),M=()=>{const e=v.subUUID;e&&(c.addEmployee([{friendID:e,companyID:l.customerInfo.companyID}],(e=>{e.success&&Ue.triggerScheme(`ssm://UI/webview/notify?${new URLSearchParams({notifyName:"RefreshList"})}`)})),g(!1))};var P;return E||d?(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper",pl:0},children:[!Fk&&!l.isFromApp&&I&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",pt:1,pl:2},children:(0,qh.jsxs)(cE.A,{onClick:()=>k(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-2}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"title.main"},children:x("pages.login.ReturnToMailInput")})]})}),(0,qh.jsxs)(ym,{sx:{p:2,pb:1,display:"flex"},children:[(0,qh.jsx)(NN,{callSearch:e=>{const t=e?r.filter((t=>t.employeeName.includes(e))):[];h({key:e,result:t})}}),(0,qh.jsx)(cE.A,{onClick:o,sx:{p:0,pl:1},children:(0,qh.jsx)(VU,{color:"info.light"})})]}),(0,qh.jsx)($T.A,{sx:{pt:0},children:T.map(((e,t)=>{var r,n,o,a,i;return(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(lO,{sx:{py:0},onClick:()=>{parseInt(e.keyLevel)<parseInt(null===O||void 0===O?void 0:O.keyLevel)||(null===O||void 0===O?void 0:O.subUUID)===e.subUUID||(y(e),g(!0))},children:[(0,qh.jsx)(UU,{children:(0,qh.jsx)(YU,{variant:"circular",sx:{bgcolor:"info.light"},children:null!==(r=null===(n=e.employeeName)||void 0===n||null===(o=n.charAt(0))||void 0===o?void 0:o.toUpperCase())&&void 0!==r?r:""})}),(0,qh.jsx)(iD.A,{primary:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,qh.jsx)("span",{children:e.employeeName}),(0,qh.jsx)(WD.A,{label:0===parseInt(e.keyLevel)?x("deviceMember.role.owner"):1===parseInt(e.keyLevel)?x("deviceMember.role.manager"):x("deviceMember.role.guest"),size:"small",variant:"filled",color:"primary.main",sx:{fontSize:"0.6rem",height:"1.2rem"}})]}),secondary:(0,qh.jsxs)(qh.Fragment,{children:[e.employeeEmail&&(0,qh.jsx)(Bh.A,{component:"span",sx:{color:"info.light",fontSize:"0.7rem"},children:e.employeeEmail}),e.msgdata&&(0,qh.jsx)(Bh.A,{component:"span",sx:{color:"info.light",fontSize:"0.7rem"},children:e.msgdata})]})}),(null===(a=e.guestKeyId)||void 0===a?void 0:a.length)>0&&(0,qh.jsx)(cE.A,{onClick:t=>{var r;t.stopPropagation(),r=e.guestKeyId,w((e=>{const t=new Set(e);return t.has(r)?t.delete(r):t.add(r),t}))},sx:{mr:0,color:(null===(i=e.items)||void 0===i?void 0:i.length)>0?"title.main":"info.light"},children:b.has(e.guestKeyId)?(0,qh.jsx)(GU,{}):(0,qh.jsx)(ZU,{})})]}),e.items&&(0,qh.jsx)(WM,{in:b.has(e.guestKeyId),timeout:"none",children:e.items.map((e=>{var t,r,n;return(0,qh.jsxs)(lO,{onClick:()=>{parseInt(e.keyLevel)<parseInt(O.keyLevel)||O.subUUID===e.subUUID||(y(e),g(!0))},sx:{pl:4,py:0},children:[(0,qh.jsx)(UU,{children:(0,qh.jsx)(YU,{variant:"circular",sx:{bgcolor:"info.light"},children:null!==(t=null===(r=e.employeeName)||void 0===r||null===(n=r.charAt(0))||void 0===n?void 0:n.toUpperCase())&&void 0!==t?t:""})}),(0,qh.jsx)(iD.A,{primary:(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center"},children:(0,qh.jsx)("span",{children:e.employeeName})}),secondary:(0,qh.jsx)(qh.Fragment,{children:e.employeeEmail&&(0,qh.jsx)(Bh.A,{component:"span",sx:{color:"info.light",fontSize:"0.7rem"},children:e.employeeEmail})})})]},e.subUUID||e.guestKeyId)}))})]},e.subUUID||e.guestKeyId)}))}),(0,qh.jsx)(QO,{anchor:"bottom",open:m,onClose:()=>g(!1),PaperProps:{sx:{borderTopLeftRadius:"16px",borderTopRightRadius:"16px",maxHeight:"50vh"}},children:(0,qh.jsx)(ym,{sx:{width:"100%","& .MuiListItem-root":{justifyContent:"center"}},children:(0,qh.jsxs)($T.A,{children:[(0,qh.jsx)(lO,{children:(0,qh.jsx)(Bh.A,{sx:{color:"rgb(204, 204, 204)"},children:v.employeeName})}),(null===(P=v.guestKeyId)||void 0===P?void 0:P.length)>0&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(lO,{onClick:()=>{g(!1),i(v)},children:(0,qh.jsx)(Bh.A,{children:x("pages.sesameAccessControlDevice.index.ModifyGuestKeyTag")})}),(0,qh.jsx)(lO,{onClick:()=>{g(!1),s(v)},children:(0,qh.jsx)(Bh.A,{children:x("pages.sesameAccessControlDevice.index.ShareTheKey")})})]}),(0,qh.jsx)(lO,{onClick:()=>{a(v),g(!1)},children:(0,qh.jsx)(Bh.A,{color:"error.main",children:x("deviceMember.opt.revoke")})}),v.subUUID&&(0,qh.jsx)(lO,{onClick:M,children:(0,qh.jsx)(Bh.A,{children:x("deviceMember.opt.addContact")})}),(0,qh.jsx)(lO,{onClick:()=>g(!1),children:(0,qh.jsx)(Bh.A,{children:x("deviceMember.opt.cancel")})})]})})})]}):(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper",p:2,display:"flex",justifyContent:"space-between",alignItems:"center",height:80},onClick:()=>{if(!Fk&&l.isFromApp&&"widget"===u){const e=window.location.href,t=new URL(e);t.searchParams.delete("displayType"),t.pathname=t.pathname.replace("/index","/user");const r=`ssm://UI/webview/open?${new URLSearchParams({notifyName:A,url:`${t.toString()}&type=manage`})}`;Ue.triggerScheme(r)}else{const e=new URL(window.location.href),t=new URLSearchParams(e.searchParams);t.delete("displayType"),t.set("type","manage"),t.set("setting",!0);const r=t.get("did");r&&t.set("deviceUUID",r),t.delete("did"),k({pathname:"/device-setting/user",search:t.toString()})}},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:1,flex:1,minWidth:0,overflow:"hidden"},children:[T.map((e=>{var t,r,n;return(0,qh.jsx)(YU,{sx:{flex:"1 1 0",minWidth:0,maxWidth:48,height:"auto",aspectRatio:"1 / 1",bgcolor:"info.light"},children:null!==(t=null===(r=e.employeeName)||void 0===r||null===(n=r.charAt(0))||void 0===n?void 0:n.toUpperCase())&&void 0!==t?t:""},e.subUUID||e.guestKeyId)})),f&&(0,qh.jsx)(YU,{sx:{flex:"1 1 0",minWidth:0,maxWidth:48,height:"auto",aspectRatio:"1 / 1",bgcolor:"info.light"},children:(0,qh.jsx)(LN,{})})]}),T.length>0&&(0,qh.jsx)(fU.A,{component:jN})]})},KU=e=>{let{title:r,value:n,onConfirm:o,onCancel:a}=e;const[i,s]=(0,t.useState)(n),[l,c]=(0,t.useState)(!1),{t:u}=Fv();return(0,qh.jsxs)(ym,{children:[r&&(0,qh.jsx)(Bh.A,{sx:{pb:1},children:r}),(0,qh.jsx)(ym,{fullWidth:"true",sx:{display:"flex",mt:"5px",flexDirection:"row",alignItems:"center"},children:(0,qh.jsx)(GD.A,{required:!0,size:"small",sx:{borderRadius:"5px",width:"60%"},value:i,onChange:e=>{s(e.target.value)},onKeyDown:e=>{e.stopPropagation()}})}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",mt:"10px"},children:[(0,qh.jsx)(QI.A,{disabled:l,size:"small",onClick:()=>{s(""),a(),c(!1)},children:u("deviceMember.opt.cancel")}),(0,qh.jsx)(RE,{loading:l,disableElevation:!0,size:"small",variant:"outlined",disabled:0===(null===i||void 0===i?void 0:i.length)||i===n,onClick:()=>{c(!0),o(i,(e=>{c(!1)}))},children:u("deviceMember.opt.ok")})]})]})};function XU(e){return(0,oy.Ay)("MuiSwitch",e)}const JU=(0,mm.A)("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),$U=(0,am.Ay)("span",{name:"MuiSwitch",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,r.edge&&t[`edge${(0,ey.A)(r.edge)}`],t[`size${(0,ey.A)(r.size)}`]]}})({display:"inline-flex",width:58,height:38,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"},variants:[{props:{edge:"start"},style:{marginLeft:-8}},{props:{edge:"end"},style:{marginRight:-8}},{props:{size:"small"},style:{width:40,height:24,padding:7,[`& .${JU.thumb}`]:{width:16,height:16},[`& .${JU.switchBase}`]:{padding:4,[`&.${JU.checked}`]:{transform:"translateX(16px)"}}}}]}),qU=(0,am.Ay)(SD.A,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.switchBase,{[`& .${JU.input}`]:t.input},"default"!==r.color&&t[`color${(0,ey.A)(r.color)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{position:"absolute",top:0,left:0,zIndex:1,color:t.vars?t.vars.palette.Switch.defaultColor:`${"light"===t.palette.mode?t.palette.common.white:t.palette.grey[300]}`,transition:t.transitions.create(["left","transform"],{duration:t.transitions.duration.shortest}),[`&.${JU.checked}`]:{transform:"translateX(20px)"},[`&.${JU.disabled}`]:{color:t.vars?t.vars.palette.Switch.defaultDisabledColor:`${"light"===t.palette.mode?t.palette.grey[100]:t.palette.grey[600]}`},[`&.${JU.checked} + .${JU.track}`]:{opacity:.5},[`&.${JU.disabled} + .${JU.track}`]:{opacity:t.vars?t.vars.opacity.switchTrackDisabled:""+("light"===t.palette.mode?.12:.2)},[`& .${JU.input}`]:{left:"-100%",width:"300%"}}})),(0,qv.A)((e=>{let{theme:t}=e;return{"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette.action.activeChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,ry.X4)(t.palette.action.active,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},variants:[...Object.entries(t.palette).filter((0,pE.A)(["light"])).map((e=>{let[r]=e;return{props:{color:r},style:{[`&.${JU.checked}`]:{color:(t.vars||t).palette[r].main,"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,ry.X4)(t.palette[r].main,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${JU.disabled}`]:{color:t.vars?t.vars.palette.Switch[`${r}DisabledColor`]:`${"light"===t.palette.mode?(0,ry.a)(t.palette[r].main,.62):(0,ry.e$)(t.palette[r].main,.55)}`}},[`&.${JU.checked} + .${JU.track}`]:{backgroundColor:(t.vars||t).palette[r].main}}}}))]}}))),eB=(0,am.Ay)("span",{name:"MuiSwitch",slot:"Track",overridesResolver:(e,t)=>t.track})((0,qv.A)((e=>{let{theme:t}=e;return{height:"100%",width:"100%",borderRadius:7,zIndex:-1,transition:t.transitions.create(["opacity","background-color"],{duration:t.transitions.duration.shortest}),backgroundColor:t.vars?t.vars.palette.common.onBackground:`${"light"===t.palette.mode?t.palette.common.black:t.palette.common.white}`,opacity:t.vars?t.vars.opacity.switchTrack:""+("light"===t.palette.mode?.38:.3)}}))),tB=(0,am.Ay)("span",{name:"MuiSwitch",slot:"Thumb",overridesResolver:(e,t)=>t.thumb})((0,qv.A)((e=>{let{theme:t}=e;return{boxShadow:(t.vars||t).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}}))),rB=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiSwitch"}),{className:n,color:o="primary",edge:a=!1,size:i="medium",sx:s,...l}=r,c={...r,color:o,edge:a,size:i},u=(e=>{const{classes:t,edge:r,size:n,color:o,checked:a,disabled:i}=e,s={root:["root",r&&`edge${(0,ey.A)(r)}`,`size${(0,ey.A)(n)}`],switchBase:["switchBase",`color${(0,ey.A)(o)}`,a&&"checked",i&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},l=(0,zv.A)(s,XU,t);return{...t,...l}})(c),d=(0,qh.jsx)(tB,{className:u.thumb,ownerState:c});return(0,qh.jsxs)($U,{className:(0,Fh.A)(u.root,n),sx:s,ownerState:c,children:[(0,qh.jsx)(qU,{type:"checkbox",icon:d,checkedIcon:d,ref:t,ownerState:c,...l,classes:{...u,root:u.switchBase}}),(0,qh.jsx)(eB,{className:u.track,ownerState:c})]})})),nB=(0,dD.A)((0,qh.jsx)("path",{d:"M12 1 3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5zm-2 16-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9z"}),"VerifiedUser"),oB=e=>{let{open:r,onClose:n,userName:o,qrCodeUrl:a,isMobile:i=!1,title:s="\u79c1\u3092\u9023\u7d61\u5148\u306b\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044",subtitle:l="",fullScreen:c=!1,onEncryptChange:u}=e;const{t:d}=Fv(),[f,p]=(0,t.useState)(!0);l=l||d("pages.sesameAccessControlDevice.index.AddDeviceKeyByScanHint");const h=(0,t.useCallback)((e=>{p(e.target.checked),null===u||void 0===u||u(e)}),[u]),m=(0,t.useMemo)((()=>u?(0,qh.jsxs)(ym,{sx:{width:"100%",minHeight:56,mt:2,p:0,flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",gap:1,bgcolor:"background.paper"},children:[(0,qh.jsx)(Bh.A,{sx:{flex:"0 1 auto",maxWidth:"calc(100% - 88px)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"clip",textAlign:"left",fontSize:"clamp(0.75rem, 2.6vw, 1rem)",lineHeight:1.2,minWidth:0},children:d("deviceMember.qrEncrypted")}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",flexShrink:0},children:[(0,qh.jsx)(nB,{fontSize:"small",sx:{color:f?"#4FC372":"grey.400",transition:"color 0.2s ease"}}),(0,qh.jsx)(rB,{size:"small",checked:f,onChange:h,inputProps:{"aria-label":d("deviceMember.qrEncrypted")}})]})]}):null),[h,f,u,d]),g=(0,t.useMemo)((()=>(0,qh.jsxs)(uM,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:c?"center":"flex-start",overflowY:"auto",p:2,textAlign:"center"},children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{mb:3,color:"#333"},children:o}),(0,qh.jsxs)(ym,{sx:{backgroundColor:"#fff",borderRadius:"12px",mb:4,position:"relative"},children:[(0,qh.jsx)("img",{src:a||void 0,alt:"QR Code",draggable:!1,style:{width:i?"320px":"380px",height:i?"320px":"380px",display:"block",visibility:a?"visible":"hidden",pointerEvents:"none",userSelect:"none",WebkitUserSelect:"none",WebkitTouchCallout:"none"}}),(0,qh.jsx)(ym,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:i?56:64,height:i?56:64,borderRadius:"50%",bgcolor:"#fff",boxShadow:"0 2px 10px rgba(0, 0, 0, 0.12)",display:a?"flex":"none",alignItems:"center",justifyContent:"center",p:1},children:(0,qh.jsx)("img",{src:GT,alt:"Site Icon",draggable:!1,style:{width:"100%",height:"100%",objectFit:"contain",pointerEvents:"none",userSelect:"none",WebkitUserSelect:"none",WebkitTouchCallout:"none"}})})]}),(0,qh.jsx)(Bh.A,{variant:"body1",sx:{color:"#666",mb:1,fontSize:"16px"},children:s}),(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"#999",fontSize:"14px"},children:l}),m]})),[o,a,i,s,l,c,m]);return c?(0,qh.jsx)(ym,{sx:{width:"100%",height:"100vh",bgcolor:"background.paper",pt:"100px"},children:g}):(0,qh.jsx)(aM,{open:r,onClose:n,maxWidth:"sm",fullWidth:!0,fullScreen:!1,BackdropProps:{sx:{backgroundColor:"rgba(0, 0, 0, 0.5)"}},PaperProps:{sx:{borderRadius:"12px",margin:i?0:"32px",maxHeight:i?"100vh":"calc(100vh - 64px)"}},children:g})};function aB(e){let{users:r,...n}=e;const{gManageEmployee:o}=(0,t.useContext)(VI),a=o.employees.Items.filter((e=>!r.some((t=>t.subUUID===e.subUUID))));return(0,qh.jsx)(vL,{...n,data:a})}function iB(e){let{deviceUUID:r,defaultManageMode:n=!1}=e;const{gManageGroup:o,gStripe:a,gMediaType:i,setCustomModalOpen:s,setModalContent:l,gManageEmployee:c,gManageDevice:u}=(0,t.useContext)(VI),[d,f]=(0,t.useState)([]),[p]=xv(),h=p.get("deviceUUID"),m=r||h,g=p.get("keyLevel"),{t:v}=Fv(),[y,b]=(0,t.useState)({open:!1,url:"",user:null}),[w,x]=(0,t.useState)(!1),S=(e,t)=>{o.getDeviceEmployeeKeys({deviceUUID:e,limit:t},(e=>{x(e.hasMore);let t=e.data.map((e=>{let t="\u5e38\u6642\u5229\u7528";return 2===e.keyLevel?e.startAt&&e.endAt&&(t=Dh.getStartTimeEndTime(e)):t="",{...e,msgdata:t}}));const r=t.findIndex((e=>e.subUUID===a.customerInfo.subUUID));if(r>-1){const[e]=t.splice(r,1);t.unshift(e)}f(t)}))},A=(0,t.useMemo)((()=>u.companyDevices.find((e=>e.deviceUUID===m))||u.deviceStatus),[m,u.companyDevices,u.deviceStatus]),k=(null===A||void 0===A?void 0:A.deviceModel)||p.get("deviceModel")||"",C=Boolean(k)&&!Dh.isWifiModel(k),I=e=>{var t;l((0,qh.jsx)(_U,{showButton:!0,showOwnerOption:0===(null===(t=d.find((e=>e.subUUID===a.customerInfo.subUUID)))||void 0===t?void 0:t.keyLevel),onConfirm:(t,r)=>{const n={...A};delete n.stateInfo;const a=e.flatMap((e=>({...n,rank:0,...e,keyLevel:t})));o.shareDeviceKeysToEmployees(a,(e=>{r&&r(),s(!1),e.success&&S(m)}))},onCancel:()=>{s(!1)}}))},E=(0,t.useCallback)((function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];o.generateQRToken({deviceUUID:m,keyLevel:e.keyLevel,guestKeyId:e.guestKeyId,name:e.employeeName,...!t&&{isSecure:!1}},(t=>{var r;t.success?Ue.writeQrcode(null===(r=t.data)||void 0===r?void 0:r.qrToken,(t=>{const r=t.toDataURL(10,0);b({open:!0,url:r,user:e})})):console.error("Failed to generate QR token")}))}),[o,m]),D=(0,t.useCallback)((e=>{E(e,!0)}),[E]),T=(0,t.useCallback)((e=>{const t=e.target.checked;b((e=>({...e,url:""}))),y.user&&E(y.user,t)}),[E,y.user]),O=(0,t.useMemo)((()=>2===parseInt(g)),[g]);return(0,qh.jsxs)(IU,{enabled:O,children:[(0,qh.jsx)(QU,{showType:C?"widget":"",gStrip:a,users:d,fetchUserAndDevices:e=>{e&&(c.getEmployees(),u.getDeviceStatus(m)),S(m,e?0:5)},onAddClickHandler:()=>{s(!0),l((0,qh.jsx)(aB,{users:d,title:"\u30e6\u30fc\u30b6\u30fc\u3092\u9078\u629e",customColumns:PU.groupMember,selectableRows:"multiple",enableFilter:!a.isFromApp,useCustomSelection:!0,setOpenModal:s,handleCheck:I,isMobile:a.isFromApp}))},onRemoveUser:async e=>{var t;let r={};if((null===(t=e.guestKeyId)||void 0===t?void 0:t.length)>0){const t=A,n=await iI.cmacTime(t.secretKey);r={guestKeyId:e.guestKeyId,randomTag:n,deviceUUID:m}}else r={subUUID:e.subUUID,deviceUUID:m};o.removeEmployeeDeviceKey(r,(e=>{e.success&&S(m)}))},onModifyGuestTag:async e=>{s(!0),l((0,qh.jsx)(KU,{title:v("pages.sesameAccessControlDevice.index.ModifyGuestKeyTag"),value:e.employeeName,onCancel:()=>s(!1),onConfirm:(t,r)=>{o.updateGuestKeyTag({deviceUUID:m,guestKeyId:e.guestKeyId,keyName:t},(n=>{n.success&&f((r=>r.map((r=>e.guestKeyId===r.guestKeyId?{...r,employeeName:t}:r)))),r&&r(),s(!1)}))}}))},onShareGuestQRCode:D,gManageEmployee:c,defaultManageMode:n,hasMore:w}),(0,qh.jsx)(oB,{open:y.open,qrCodeUrl:y.url,isMobile:i.isMobile,title:`${null===A||void 0===A?void 0:A.deviceName}${v("pages.sesameAccessControlDevice.index.AddDeviceKeyByScan")}`,subtitle:v("pages.sesameAccessControlDevice.index.AddDeviceKeyByScanHint"),userName:null===A||void 0===A?void 0:A.deviceName,onEncryptChange:T,onClose:()=>{b((e=>({...e,open:!1}))),S(m)}})]})}const sB=(0,dD.A)((0,qh.jsx)("path",{d:"M19 13H5v-2h14z"}),"Remove"),lB=(0,dD.A)((0,qh.jsx)("path",{d:"M13 22h8v-7h-3v-4h-5V9h3V2H8v7h3v2H6v4H3v7h8v-7H8v-2h8v2h-3zM10 7V4h4v3zM9 17v3H5v-3zm10 0v3h-4v-3z"}),"LanOutlined"),cB=(0,dD.A)((0,qh.jsx)("path",{d:"M17 4h3v16h-3zM5 14h3v6H5zm6-5h3v11h-3z"}),"SignalCellularAlt"),uB=(0,dD.A)((0,qh.jsx)("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2m6.93 6h-2.95c-.32-1.25-.78-2.45-1.38-3.56 1.84.63 3.37 1.91 4.33 3.56M12 4.04c.83 1.2 1.48 2.53 1.91 3.96h-3.82c.43-1.43 1.08-2.76 1.91-3.96M4.26 14C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2s.06 1.34.14 2zm.82 2h2.95c.32 1.25.78 2.45 1.38 3.56-1.84-.63-3.37-1.9-4.33-3.56m2.95-8H5.08c.96-1.66 2.49-2.93 4.33-3.56C8.81 5.55 8.35 6.75 8.03 8M12 19.96c-.83-1.2-1.48-2.53-1.91-3.96h3.82c-.43 1.43-1.08 2.76-1.91 3.96M14.34 14H9.66c-.09-.66-.16-1.32-.16-2s.07-1.35.16-2h4.68c.09.65.16 1.32.16 2s-.07 1.34-.16 2m.25 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95c-.96 1.65-2.49 2.93-4.33 3.56M16.36 14c.08-.66.14-1.32.14-2s-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1.36-.26 2z"}),"Language"),dB=(0,dD.A)((0,qh.jsx)("path",{d:"M16.59 7.58 10 14.17l-3.59-3.58L5 12l5 5 8-8zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"CheckCircleOutline");function fB(e){let{status:t={},resolved:r=!0,hub3Pro:n=!1,connectivity:o={}}=e;const{isAPWork:a,isNetwork:i,isIoTWork:s,isBindingAPWork:l,isConnectingNetwork:c,isConnectingIoT:u}=t,d=function(e,t,r,n){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};return(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",...o},children:[(0,qh.jsx)(ym,{sx:{width:25,display:"flex",alignItems:"center",justifyContent:"center"},children:t?(0,qh.jsx)(AE,{size:14,sx:{color:"primary.main"}}):n?(0,qh.jsx)(qh.Fragment,{}):(0,qh.jsx)(sB,{sx:{color:r?"primary.main":"title.other"}})}),(0,qh.jsx)(e,{sx:{color:r?"primary.main":"title.other"}})]},e.name)};return(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center"},children:r?(0,qh.jsxs)(qh.Fragment,{children:[n?(0,qh.jsxs)(qh.Fragment,{children:[d(lB,!1,o.ethernet,!0,{marginRight:-2.5}),d(cB,!1,o.lte,!0,{marginRight:-2.5}),d(gN,!1,o.wifi,!0)]}):(0,qh.jsx)(qh.Fragment,{children:d(gN,!a&&l,a,!0)}),d(uB,!i&&c,i),d(dB,!s&&u,s)]}):(0,qh.jsx)(ym,{sx:{width:25,height:24}})})}function pB(e,t){const r=t=>{var r;return(null===t||void 0===t||null===(r=t.deviceUUID)||void 0===r?void 0:r.toUpperCase())===e.toUpperCase()},n=(arguments.length>2&&void 0!==arguments[2]?arguments[2]:[]).find(r)||{};if(!r(t))return n;const o={...n.stateInfo,...t.stateInfo};for(const i of["currentFwVer","batteryPercentage"]){var a;null!=o[i]&&""!==o[i]||(o[i]=null===(a=n.stateInfo)||void 0===a?void 0:a[i])}return{...n,...t,stateInfo:o}}const hB=()=>{const{gStripe:e,gManageDevice:r}=(0,t.useContext)(VI),[n]=xv(),o=n.get("deviceUUID"),a=n.get("keyLevel"),i="widget"===n.get("displayType"),[s,l]=(0,t.useState)(""),{t:c}=Fv(),u=hg(),d=(0,t.useRef)(null),f=(0,t.useRef)(null),p=t=>{if(e.isFromApp&&i){const e=window.location.href,r=new URL(e);r.searchParams.delete("displayType"),r.searchParams.set("deviceName",s),r.pathname=r.pathname.replace("/index",t);const n=`ssm://UI/webview/open?${new URLSearchParams({notifyName:"DeviceMemberChanged",url:r.toString()})}`;Ue.triggerScheme(n)}else{const e=new URL(window.location.href);e.searchParams.delete("displayType"),e.searchParams.set("deviceName",s),e.searchParams.set("notifyType","bridge"),u({pathname:`/device-setting${t}`,search:e.searchParams.toString()})}};return(0,t.useEffect)((()=>{var e,t;if(!o)return;const a=r.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===o.toUpperCase()}))||((null===(e=r.deviceStatus)||void 0===e||null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===o.toUpperCase()?r.deviceStatus:null);null!==a&&void 0!==a&&a.deviceName?l(a.deviceName):(l(n.get("deviceName")||""),r.getDeviceStatus(o))}),[o,r.deviceStatus,r.companyDevices]),(0,t.useLayoutEffect)((()=>{if(!d.current)return;const e=d.current.offsetHeight;f.current!==e&&(f.current=e,Ue.triggerBridge({action:"requestAutoLayoutHeight",height:e}))}),[e.customerInfo.isAnonymous,s]),(0,qh.jsxs)(ym,{ref:d,sx:{width:"100%",bgcolor:"background.paper"},children:[!e.customerInfo.isAnonymous&&parseInt(a)<2&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(iB,{deviceUUID:o}),(0,qh.jsx)(ym,{sx:{height:"10px",bgcolor:"secondary.light",width:"100%"}})]}),(0,qh.jsxs)($T.A,{disablePadding:!0,children:[(0,qh.jsxs)(lO,{onClick:()=>p("/rename"),children:[(0,qh.jsx)(iD.A,{primary:c("deviceMember.editName")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:s}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(fU.A,{component:jN})})]}),parseInt(a)<2&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{onClick:()=>p("/share"),children:[(0,qh.jsx)(iD.A,{primary:c("deviceMember.shareManagement")}),(0,qh.jsxs)(cD,{sx:{minWidth:"auto"},children:[(0,qh.jsx)(zP,{}),(0,qh.jsx)(fU.A,{component:jN})]})]})]}),(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:c("deviceMember.permission")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:0===parseInt(a)?c("deviceMember.role.owner"):1===parseInt(a)?c("deviceMember.role.manager"):c("deviceMember.role.guest")})]})]})]})]})};function mB(e){return new Promise(((t,r)=>{const n=setTimeout((()=>r(new Error("Cloud response timed out"))),3e4);e((e=>{clearTimeout(n),null!==e&&void 0!==e&&e.success?t(e.data):r(new Error((null===e||void 0===e?void 0:e.message)||"Cloud operation failed"))}))}))}const gB=e=>{let{deviceUUID:r,subUUID:n,deviceName:o,showHint:a=!0,named:i=!1}=e;const{gManageDevice:s,setSnackbarValue:l}=(0,t.useContext)(VI),{t:c}=Fv(),[u,d]=(0,t.useState)(!1),[f,p]=(0,t.useState)(!1),h=hg(),m=(0,t.useCallback)((()=>{if(Fk)return Ue.triggerBridge({action:"requestRefreshApp"}),void h({pathname:"/",search:"?appHome=1&fromType=app"},{replace:!0});Ue.triggerBridge({action:"requestRefreshApp"})?Ue.triggerBridge({action:"requestDestroySelf"}):h(-1)}),[h]);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(lO,{onClick:()=>d(!0),sx:{justifyContent:"center",height:"48px"},children:(0,qh.jsx)(Bh.A,{sx:{color:"error.main",fontWeight:i?"bold":void 0},children:i?c("lockExtras.deleteName",{deviceName:o}):c("pages.ir.remote.delete")})}),a&&(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",pl:2,py:.5},children:(0,qh.jsx)(Bh.A,{color:"info.light",sx:{lineHeight:"30px"},children:c("pages.sesameAccessControlDevice.index.DropKeyDesc",{deviceName:o})})}),(0,qh.jsx)(QO,{anchor:"bottom",open:u,onClose:()=>d(!1),PaperProps:{sx:{borderTopLeftRadius:"16px",borderTopRightRadius:"16px",maxHeight:"50vh"}},children:(0,qh.jsx)(ym,{sx:{width:"100%","& .MuiListItem-root":{justifyContent:"center"}},children:(0,qh.jsxs)($T.A,{children:[(0,qh.jsxs)(lO,{onClick:()=>{p(!0);const e=s.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===r.toUpperCase()})),t=()=>s.removeSesameDevices([{deviceUUID:r,subUUID:n}],(async e=>{try{if(!e.success)return;Fk&&(await Yk.request("dropDevice",{deviceUUID:r}),Yk.request("pushInfo").then((e=>{let{data:t}=e;return mB((e=>s.switchDeviceNotify({pushToken:t.pushToken,deviceUUID:r,enablePush:!1},e)))})).catch((()=>{})),Ey().filter((e=>e.deviceUUID.toUpperCase()===r.toUpperCase()&&e.subUUID===n)).forEach(Ty)),m()}catch(t){l({open:!0,msg:c("lockSettings.failed"),severity:"error"})}finally{p(!1),d(!1)}}),!0);Fk&&$P(null===e||void 0===e?void 0:e.deviceModel)?tj(r,{deleteAll:!0}).then(t).catch((()=>{p(!1),l({open:!0,msg:c("lockSettings.failed"),severity:"error"})})):t()},children:[(0,qh.jsx)(Bh.A,{color:"error.main",children:c("deviceMember.opt.ok")}),f&&(0,qh.jsx)(AE,{size:16,color:"info",sx:{ml:1}})]}),(0,qh.jsx)(lO,{onClick:()=>d(!1),children:(0,qh.jsx)(Bh.A,{children:c("deviceMember.opt.cancel")})})]})})})]})},vB=e=>{var t;let{device:r}=e;const{t:n}=Fv(),o=hg();return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:()=>{const e=new URL(window.location.href),t=new URLSearchParams(e.searchParams),n=t.get("did");n&&t.set("deviceUUID",n),t.set("deviceName",r.deviceName||""),t.set("setting",!0),t.delete("did"),o({pathname:"/device-setting/battery-trend",search:t.toString()})},children:[(0,qh.jsx)(iD.A,{primary:n("pages.sesameAccessControlDevice.index.Battery")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:""+(null!=(null===(t=r.stateInfo)||void 0===t?void 0:t.batteryPercentage)?`${r.stateInfo.batteryPercentage}%`:"unknown")}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(fU.A,{component:jN})})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]})},yB=-1,bB=-2,wB=-3,xB=-4,SB=-5,AB=-6,kB=-7,CB=-8,IB=-9,EB=-10,DB=e=>{var r,n,o;let{device:a,Hub3DeviceUUID:i,bleAvailable:s=!1,readOnly:c=!1}=e;const u=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot)[null===(r=a.deviceUUID)||void 0===r?void 0:r.toUpperCase()],d=aj(a.deviceModel),f=Fk&&(JP(a.deviceModel)||qP(a.deviceModel)||d),p=Fk&&["hub_3","hub_3_pro"].includes(a.deviceModel),[h,m]=(0,t.useState)(!1),{gIot:g,gManageDevice:v,setSnackbarValue:y}=(0,t.useContext)(VI),{t:b}=Fv(),[w,x]=(0,t.useState)(!1),[S,A]=(0,t.useState)(null),[k,C]=(0,t.useState)(null),I=(0,t.useRef)(null),E=(0,t.useRef)(!1),D=(0,t.useRef)(null),T=(0,t.useRef)(""),O=(0,t.useRef)(!0),M=(0,t.useRef)(0),P=(0,t.useRef)(0),j=(0,t.useRef)(!1);j.current=!0===(null===u||void 0===u?void 0:u.bleConnected);const R=(0,t.useRef)(null);R.current=null===u||void 0===u||null===(n=u.hub)||void 0===n?void 0:n.otaProgress;const _=(0,t.useRef)(null),N=(0,t.useRef)(0),L=(0,t.useRef)(!1),U=(0,t.useRef)(!1),B=(0,t.useRef)(null),F=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;f&&Yk.notify("firmwareTrace",{transport:D.current||"ble",phase:e,progress:t})},z={[-11]:b("lockSettings.downloading"),[yB]:b("pages.sesameAccessControlDevice.index.DFU_CONNECTING"),[bB]:b("pages.sesameAccessControlDevice.index.DFU_STARTING"),[wB]:b("pages.sesameAccessControlDevice.index.DFU_ENABLING_DFU_MODE"),[xB]:b("pages.sesameAccessControlDevice.index.DFU_VALIDATING"),[SB]:b("pages.sesameAccessControlDevice.index.DFU_DISCONNECTING"),[AB]:b("pages.sesameAccessControlDevice.index.DFU_COMPLETED"),[kB]:b("pages.sesameAccessControlDevice.index.DFU_ABORTED"),[CB]:b("pages.sesameAccessControlDevice.index.DFU_CONNECTED"),[IB]:b("pages.sesameAccessControlDevice.index.DFU_STARTED"),[EB]:b("pages.sesameAccessControlDevice.index.DFU_DISCONNECTED")},W=()=>{I.current&&(clearInterval(I.current),I.current=null)};(0,t.useEffect)((()=>{if(f)return W(),void A(k);if(null===k)return W(),void A(null);if(k<0||k>100)return W(),void A(k);const e=k<100?Math.min(k+10,99):100;W(),A((e=>null===e||e<0?0:e)),I.current=setInterval((()=>{A((t=>{const r=null===t||t<0?0:t;return r+1>=e?(W(),Math.max(r,e)):r+1}))}),300)}),[k,f]);const H=(e,t)=>{e&&t&&Ue.triggerBridge({action:"requestUpdateDeviceFWVersion",deviceUUID:e,currentFwVer:t})};(0,t.useEffect)((()=>{var e,t;if(!p)return;const r=null===u||void 0===u||null===(e=u.hub)||void 0===e?void 0:e.otaProgress;if(C(Number.isFinite(r)?100===r?-6:r:null),100!==r)return;_.current=(null===(t=a.stateInfo)||void 0===t?void 0:t.latestFwVer)||null;const n=setTimeout((()=>{C(null),Yk.notify("hubSettings",{deviceUUID:a.deviceUUID,operation:"firmwareFinish"}),O.current=!0,M.current=0,P.current=Date.now()+3e3,v.getDeviceStatus(a.deviceUUID)}),1e3);return()=>clearTimeout(n)}),[p,null===u||void 0===u||null===(o=u.hub)||void 0===o?void 0:o.otaProgress,a.deviceUUID]),(0,t.useEffect)((()=>{if(!p)return;let e=!0,t=!1;const r=async()=>{if(!(t||!j.current||E.current||R.current>=0&&R.current<=100||!O.current||M.current>=3||Date.now()<P.current)){t=!0,M.current+=1,P.current=Date.now()+1e4;try{const{data:t}=await Yk.request("hubSettings",{deviceUUID:a.deviceUUID,operation:"version"});if(!e||E.current||R.current>=0&&R.current<=100)return;t.version&&(v.updateDeviceState({deviceUUID:a.deviceUUID,stateInfo:{currentFwVer:t.version}}),O.current=!!_.current&&t.version!==_.current)}catch(r){}finally{t=!1}}};r();const n=setInterval(r,1e3);return()=>{e=!1,clearInterval(n)}}),[p,a.deviceUUID]);const Y=(0,t.useCallback)((()=>{if(Fk){var e;if(E.current||R.current>=0&&R.current<100)return;return E.current=!0,_.current=(null===(e=a.stateInfo)||void 0===e?void 0:e.latestFwVer)||null,C(0),void Yk.request("hubSettings",{deviceUUID:a.deviceUUID,operation:"firmware"}).catch((()=>{C(null),y({open:!0,msg:b("lockSettings.failed"),severity:"error"})})).finally((()=>{E.current=!1}))}const t=Date.now().toString();window[`deviceListCallback_${t}`]=e=>{const{deviceUUID:t,percent:r}=e,n=parseInt(r,10);if(100===n)return C(-6),void setTimeout((()=>{var e,r;const n=v.companyDevices.find((e=>e.deviceUUID===t))||v.deviceStatus,o=null!==(e=null===n||void 0===n||null===(r=n.stateInfo)||void 0===r?void 0:r.latestFwVer)&&void 0!==e?e:"";v.updateDeviceState({deviceUUID:t,stateInfo:{currentFwVer:o}}),H(t,o),C(null)}),1e3);C(n)},Ue.triggerBridge({action:"requestDeviceFWUpgrade",requestId:t,callbackName:`deviceListCallback_${t}`})}),[a.deviceUUID]),V=()=>{f&&(D.current="gateway",L.current=!0,U.current=!1,N.current=Date.now(),m(!0),C(-1),F("start"));const e=(e,t)=>{var r;const n=Number(t.progress),o=t.versionTag||"",i=t.UUID||e||"";if(i.toUpperCase()===(null===(r=a.deviceUUID)||void 0===r?void 0:r.toUpperCase())&&(!f||L.current&&(!U.current||o)))if(N.current=Date.now(),o){const e=i||a.deviceUUID;v.updateDeviceState({deviceUUID:e,stateInfo:{currentFwVer:o,latestFwVer:o}}),H(e,o),U.current=!0,F("completed"),D.current=null,m(!1),C(null)}else f&&-6===n?(U.current=!0,F("completed"),D.current=null,m(!1),C(null),O.current=!0,M.current=0,v.getDeviceStatus(a.deviceUUID)):(F("progress",n),C(n),f&&-7===n&&(U.current=!0,F("failed"),D.current=null,m(!1)))};B.current=e,dI(l.cmdCode.ssmOSUpdate,e),g.sendCommandToHub3WithConnectionId({device_id:a.deviceUUID,hub3_id:Dh.isWifiModel(a.deviceModel)?a.deviceUUID:i,cmd:l.cmdCode.ssmOSUpdate,secretKey:a.secretKey}).catch((()=>{f&&(U.current=!0,F("failed"),D.current=null,m(!1),C(-7))}))};(0,t.useEffect)((()=>()=>{W(),B.current&&pI(l.cmdCode.ssmOSUpdate)===B.current&&fI(l.cmdCode.ssmOSUpdate)}),[]),(0,t.useEffect)((()=>{null!==u&&void 0!==u&&u.bleConnected&&(O.current=!0,M.current=0,P.current=0)}),[null===u||void 0===u?void 0:u.bleConnected]),(0,t.useEffect)((()=>{if(!f)return;let e=!0,t=!1;const r=async()=>{if(!t&&!E.current){t=!0;try{var r;if("gateway"===D.current)return void(Date.now()-N.current>18e4&&(U.current=!0,F("failed"),D.current=null,m(!1),C(-7),v.getDeviceStatus(a.deviceUUID)));const{data:t}=await Yk.request("firmwareStatus");if(!e||E.current||"gateway"===D.current)return;const n=t.deviceUUID===(null===(r=a.deviceUUID)||void 0===r?void 0:r.toUpperCase());if(n&&["downloading","updating"].includes(t.state))return D.current="ble",m(!0),C("downloading"===t.state?-11:t.progress),void(T.current=`${t.sessionId}:${t.state}`);const o=`${t.sessionId}:${t.state}`;if(n&&o!==T.current&&(T.current=o,"completed"===t.state?(C(null),O.current=!0,M.current=0):"failed"===t.state&&"ble"===D.current&&C(-7),D.current=null,m(!1)),O.current&&j.current&&M.current<3&&Date.now()>=P.current){M.current+=1,P.current=Date.now()+1e4;const{data:t}=await Yk.request(d?"wm_2"===a.deviceModel?"hubSettings":"peripheralSettings":"lockSettings",{deviceUUID:a.deviceUUID,operation:"version"});if(!e||D.current||E.current)return;t.version&&(v.updateDeviceState({deviceUUID:a.deviceUUID,stateInfo:{currentFwVer:t.version}}),O.current=!1,F("version"))}}catch(n){}finally{t=!1}}};r();const n=setInterval(r,1e3);return()=>{e=!1,clearInterval(n)}}),[f,a.deviceUUID]);const G=(0,t.useMemo)((()=>{var e,t;return null===S&&(null===(e=a.stateInfo)||void 0===e?void 0:e.currentFwVer)===(null===(t=a.stateInfo)||void 0===t?void 0:t.latestFwVer)}),[S,a]),Z=(0,t.useMemo)((()=>{var e,t,r;return null===S?null!==(t=null===(r=a.stateInfo)||void 0===r?void 0:r.currentFwVer)&&void 0!==t?t:"":null!==(e=z[S])&&void 0!==e?e:`${S}%`}),[S,a]);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:()=>{c||(!d||Fk?x(!0):y({open:!0,msg:"Coming soon",severity:"info"}))},children:[(0,qh.jsx)(iD.A,{primary:(0,qh.jsxs)(ym,{sx:{display:"flex"},children:[(0,qh.jsx)(qh.Fragment,{children:b("pages.sesameAccessControlDevice.index.OSUpdate")}),!G&&(0,qh.jsx)(cD,{sx:{minWidth:"auto",color:"error.main"},children:(0,qh.jsx)(lL,{})})]})}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:`${Z}${G?b("pages.sesameAccessControlDevice.index.Latest"):""}`})]}),(0,qh.jsx)(QO,{anchor:"bottom",open:w,onClose:()=>x(!1),PaperProps:{sx:{borderTopLeftRadius:"16px",borderTopRightRadius:"16px",maxHeight:"50vh"}},children:(0,qh.jsx)(ym,{sx:{width:"100%","& .MuiListItem-root":{justifyContent:"center"}},children:(0,qh.jsxs)($T.A,{children:[(0,qh.jsx)(lO,{children:(0,qh.jsx)(Bh.A,{sx:{color:"rgb(204, 204, 204)"},children:b("pages.sesameAccessControlDevice.index.OSUpdate")})}),(0,qh.jsx)(lO,{onClick:()=>{x(!1),f?(async()=>{if(!(c||h||E.current))if(null!==u&&void 0!==u&&u.bleConnected){E.current=!0,D.current="ble",L.current=!1,T.current="",F("start"),m(!0);try{const{data:e}=await Yk.request("firmwareInfo",{deviceUUID:a.deviceUUID}),t=await uT("firmwareZip",e,{deviceUUID:a.deviceUUID});if(!0!==(null===t||void 0===t?void 0:t.ok)||!t.zipUrl)throw new lL("Firmware unavailable");await Yk.request("firmwareStart",{deviceUUID:a.deviceUUID,url:t.zipUrl}),C(-11)}catch(t){F("failed"),D.current=null,m(!1),y({open:!0,msg:b("lockSettings.failed")})}finally{E.current=!1}}else{var e;!0===(null===(e=a.stateInfo)||void 0===e?void 0:e.wm2State)&&i?V():y({open:!0,msg:b("lockSettings.connectBluetooth")})}})():s?Y():V()},children:(0,qh.jsx)(Bh.A,{children:b("deviceMember.opt.ok")})})]})})})]})};var TB=r(60182);const OB=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MIN_SAFE_INTEGER,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.MAX_SAFE_INTEGER;return Math.max(t,Math.min(e,r))};var MB=r(95034);const PB={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",whiteSpace:"nowrap",width:"1px"};const jB=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:(e,t)=>e===t;return e.length===t.length&&e.every(((e,n)=>r(e,t[n])))};function RB(e,t){return e-t}function _B(e,t){const{index:r}=e.reduce(((e,r,n)=>{const o=Math.abs(t-r);return null===e||o<e.distance||o===e.distance?{distance:o,index:n}:e}),null)??{};return r}function NB(e,t){if(void 0!==t.current&&e.changedTouches){const r=e;for(let e=0;e<r.changedTouches.length;e+=1){const n=r.changedTouches[e];if(n.identifier===t.current)return{x:n.clientX,y:n.clientY}}return!1}return{x:e.clientX,y:e.clientY}}function LB(e,t,r){return 100*(e-t)/(r-t)}function UB(e,t,r){const n=Math.round((e-r)/t)*t+r;return Number(n.toFixed(function(e){if(Math.abs(e)<1){const t=e.toExponential().split("e-"),r=t[0].split(".")[1];return(r?r.length:0)+parseInt(t[1],10)}const t=e.toString().split(".")[1];return t?t.length:0}(t)))}function BB(e){let{values:t,newValue:r,index:n}=e;const o=t.slice();return o[n]=r,o.sort(RB)}function FB(e){let{sliderRef:t,activeIndex:r,setActive:n}=e;const o=(0,Qv.A)(t.current);t.current?.contains(o.activeElement)&&Number(o?.activeElement?.getAttribute("data-index"))===r||t.current?.querySelector(`[type="range"][data-index="${r}"]`).focus(),n&&n(r)}function zB(e,t){return"number"===typeof e&&"number"===typeof t?e===t:"object"===typeof e&&"object"===typeof t&&jB(e,t)}const WB={horizontal:{offset:e=>({left:`${e}%`}),leap:e=>({width:`${e}%`})},"horizontal-reverse":{offset:e=>({right:`${e}%`}),leap:e=>({width:`${e}%`})},vertical:{offset:e=>({bottom:`${e}%`}),leap:e=>({height:`${e}%`})}},HB=e=>e;let YB;function VB(){return void 0===YB&&(YB="undefined"===typeof CSS||"function"!==typeof CSS.supports||CSS.supports("touch-action","none")),YB}var GB=r(61960);const ZB=e=>!e||!(0,qT.A)(e);function QB(e){return(0,oy.Ay)("MuiSlider",e)}const KB=(0,mm.A)("MuiSlider",["root","active","colorPrimary","colorSecondary","colorError","colorInfo","colorSuccess","colorWarning","disabled","dragging","focusVisible","mark","markActive","marked","markLabel","markLabelActive","rail","sizeSmall","thumb","thumbColorPrimary","thumbColorSecondary","thumbColorError","thumbColorSuccess","thumbColorInfo","thumbColorWarning","track","trackInverted","trackFalse","thumbSizeSmall","valueLabel","valueLabelOpen","valueLabelCircle","valueLabelLabel","vertical"]);function XB(e){return e}const JB=(0,am.Ay)("span",{name:"MuiSlider",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[`color${(0,ey.A)(r.color)}`],"medium"!==r.size&&t[`size${(0,ey.A)(r.size)}`],r.marked&&t.marked,"vertical"===r.orientation&&t.vertical,"inverted"===r.track&&t.trackInverted,!1===r.track&&t.trackFalse]}})((0,qv.A)((e=>{let{theme:t}=e;return{borderRadius:12,boxSizing:"content-box",display:"inline-block",position:"relative",cursor:"pointer",touchAction:"none",WebkitTapHighlightColor:"transparent","@media print":{colorAdjust:"exact"},[`&.${KB.disabled}`]:{pointerEvents:"none",cursor:"default",color:(t.vars||t).palette.grey[400]},[`&.${KB.dragging}`]:{[`& .${KB.thumb}, & .${KB.track}`]:{transition:"none"}},variants:[...Object.entries(t.palette).filter((0,pE.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{color:(t.vars||t).palette[r].main}}})),{props:{orientation:"horizontal"},style:{height:4,width:"100%",padding:"13px 0","@media (pointer: coarse)":{padding:"20px 0"}}},{props:{orientation:"horizontal",size:"small"},style:{height:2}},{props:{orientation:"horizontal",marked:!0},style:{marginBottom:20}},{props:{orientation:"vertical"},style:{height:"100%",width:4,padding:"0 13px","@media (pointer: coarse)":{padding:"0 20px"}}},{props:{orientation:"vertical",size:"small"},style:{width:2}},{props:{orientation:"vertical",marked:!0},style:{marginRight:44}}]}}))),$B=(0,am.Ay)("span",{name:"MuiSlider",slot:"Rail",overridesResolver:(e,t)=>t.rail})({display:"block",position:"absolute",borderRadius:"inherit",backgroundColor:"currentColor",opacity:.38,variants:[{props:{orientation:"horizontal"},style:{width:"100%",height:"inherit",top:"50%",transform:"translateY(-50%)"}},{props:{orientation:"vertical"},style:{height:"100%",width:"inherit",left:"50%",transform:"translateX(-50%)"}},{props:{track:"inverted"},style:{opacity:1}}]}),qB=(0,am.Ay)("span",{name:"MuiSlider",slot:"Track",overridesResolver:(e,t)=>t.track})((0,qv.A)((e=>{let{theme:t}=e;return{display:"block",position:"absolute",borderRadius:"inherit",border:"1px solid currentColor",backgroundColor:"currentColor",transition:t.transitions.create(["left","width","bottom","height"],{duration:t.transitions.duration.shortest}),variants:[{props:{size:"small"},style:{border:"none"}},{props:{orientation:"horizontal"},style:{height:"inherit",top:"50%",transform:"translateY(-50%)"}},{props:{orientation:"vertical"},style:{width:"inherit",left:"50%",transform:"translateX(-50%)"}},{props:{track:!1},style:{display:"none"}},...Object.entries(t.palette).filter((0,pE.A)()).map((e=>{let[r]=e;return{props:{color:r,track:"inverted"},style:{...t.vars?{backgroundColor:t.vars.palette.Slider[`${r}Track`],borderColor:t.vars.palette.Slider[`${r}Track`]}:{backgroundColor:(0,ry.a)(t.palette[r].main,.62),borderColor:(0,ry.a)(t.palette[r].main,.62),...t.applyStyles("dark",{backgroundColor:(0,ry.e$)(t.palette[r].main,.5)}),...t.applyStyles("dark",{borderColor:(0,ry.e$)(t.palette[r].main,.5)})}}}}))]}}))),eF=(0,am.Ay)("span",{name:"MuiSlider",slot:"Thumb",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.thumb,t[`thumbColor${(0,ey.A)(r.color)}`],"medium"!==r.size&&t[`thumbSize${(0,ey.A)(r.size)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{position:"absolute",width:20,height:20,boxSizing:"border-box",borderRadius:"50%",outline:0,backgroundColor:"currentColor",display:"flex",alignItems:"center",justifyContent:"center",transition:t.transitions.create(["box-shadow","left","bottom"],{duration:t.transitions.duration.shortest}),"&::before":{position:"absolute",content:'""',borderRadius:"inherit",width:"100%",height:"100%",boxShadow:(t.vars||t).shadows[2]},"&::after":{position:"absolute",content:'""',borderRadius:"50%",width:42,height:42,top:"50%",left:"50%",transform:"translate(-50%, -50%)"},[`&.${KB.disabled}`]:{"&:hover":{boxShadow:"none"}},variants:[{props:{size:"small"},style:{width:12,height:12,"&::before":{boxShadow:"none"}}},{props:{orientation:"horizontal"},style:{top:"50%",transform:"translate(-50%, -50%)"}},{props:{orientation:"vertical"},style:{left:"50%",transform:"translate(-50%, 50%)"}},...Object.entries(t.palette).filter((0,pE.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{[`&:hover, &.${KB.focusVisible}`]:{...t.vars?{boxShadow:`0px 0px 0px 8px rgba(${t.vars.palette[r].mainChannel} / 0.16)`}:{boxShadow:`0px 0px 0px 8px ${(0,ry.X4)(t.palette[r].main,.16)}`},"@media (hover: none)":{boxShadow:"none"}},[`&.${KB.active}`]:{...t.vars?{boxShadow:`0px 0px 0px 14px rgba(${t.vars.palette[r].mainChannel} / 0.16)`}:{boxShadow:`0px 0px 0px 14px ${(0,ry.X4)(t.palette[r].main,.16)}`}}}}}))]}}))),tF=(0,am.Ay)((function(e){const{children:r,className:n,value:o}=e,a=(e=>{const{open:t}=e;return{offset:(0,Fh.A)(t&&KB.valueLabelOpen),circle:KB.valueLabelCircle,label:KB.valueLabelLabel}})(e);return r?t.cloneElement(r,{className:(0,Fh.A)(r.props.className)},(0,qh.jsxs)(t.Fragment,{children:[r.props.children,(0,qh.jsx)("span",{className:(0,Fh.A)(a.offset,n),"aria-hidden":!0,children:(0,qh.jsx)("span",{className:a.circle,children:(0,qh.jsx)("span",{className:a.label,children:o})})})]})):null}),{name:"MuiSlider",slot:"ValueLabel",overridesResolver:(e,t)=>t.valueLabel})((0,qv.A)((e=>{let{theme:t}=e;return{zIndex:1,whiteSpace:"nowrap",...t.typography.body2,fontWeight:500,transition:t.transitions.create(["transform"],{duration:t.transitions.duration.shortest}),position:"absolute",backgroundColor:(t.vars||t).palette.grey[600],borderRadius:2,color:(t.vars||t).palette.common.white,display:"flex",alignItems:"center",justifyContent:"center",padding:"0.25rem 0.75rem",variants:[{props:{orientation:"horizontal"},style:{transform:"translateY(-100%) scale(0)",top:"-10px",transformOrigin:"bottom center","&::before":{position:"absolute",content:'""',width:8,height:8,transform:"translate(-50%, 50%) rotate(45deg)",backgroundColor:"inherit",bottom:0,left:"50%"},[`&.${KB.valueLabelOpen}`]:{transform:"translateY(-100%) scale(1)"}}},{props:{orientation:"vertical"},style:{transform:"translateY(-50%) scale(0)",right:"30px",top:"50%",transformOrigin:"right center","&::before":{position:"absolute",content:'""',width:8,height:8,transform:"translate(-50%, -50%) rotate(45deg)",backgroundColor:"inherit",right:-8,top:"50%"},[`&.${KB.valueLabelOpen}`]:{transform:"translateY(-50%) scale(1)"}}},{props:{size:"small"},style:{fontSize:t.typography.pxToRem(12),padding:"0.25rem 0.5rem"}},{props:{orientation:"vertical",size:"small"},style:{right:"20px"}}]}}))),rF=(0,am.Ay)("span",{name:"MuiSlider",slot:"Mark",shouldForwardProp:e=>(0,GB.A)(e)&&"markActive"!==e,overridesResolver:(e,t)=>{const{markActive:r}=e;return[t.mark,r&&t.markActive]}})((0,qv.A)((e=>{let{theme:t}=e;return{position:"absolute",width:2,height:2,borderRadius:1,backgroundColor:"currentColor",variants:[{props:{orientation:"horizontal"},style:{top:"50%",transform:"translate(-1px, -50%)"}},{props:{orientation:"vertical"},style:{left:"50%",transform:"translate(-50%, 1px)"}},{props:{markActive:!0},style:{backgroundColor:(t.vars||t).palette.background.paper,opacity:.8}}]}}))),nF=(0,am.Ay)("span",{name:"MuiSlider",slot:"MarkLabel",shouldForwardProp:e=>(0,GB.A)(e)&&"markLabelActive"!==e,overridesResolver:(e,t)=>t.markLabel})((0,qv.A)((e=>{let{theme:t}=e;return{...t.typography.body2,color:(t.vars||t).palette.text.secondary,position:"absolute",whiteSpace:"nowrap",variants:[{props:{orientation:"horizontal"},style:{top:30,transform:"translateX(-50%)","@media (pointer: coarse)":{top:40}}},{props:{orientation:"vertical"},style:{left:36,transform:"translateY(50%)","@media (pointer: coarse)":{left:44}}},{props:{markLabelActive:!0},style:{color:(t.vars||t).palette.text.primary}}]}}))),oF=e=>{let{children:t}=e;return t},aF=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiSlider"}),o=(0,_O.I)(),{"aria-label":a,"aria-valuetext":i,"aria-labelledby":s,component:l="span",components:c={},componentsProps:u={},color:d="primary",classes:f,className:p,disableSwap:h=!1,disabled:m=!1,getAriaLabel:g,getAriaValueText:v,marks:y=!1,max:b=100,min:w=0,name:x,onChange:S,onChangeCommitted:A,orientation:k="horizontal",shiftStep:C=10,size:I="medium",step:E=1,scale:D=XB,slotProps:T,slots:O,tabIndex:M,track:P="normal",value:j,valueLabelDisplay:R="off",valueLabelFormat:_=XB,...N}=n,L={...n,isRtl:o,max:b,min:w,classes:f,disabled:m,disableSwap:h,orientation:k,marks:y,color:d,size:I,step:E,shiftStep:C,scale:D,track:P,valueLabelDisplay:R,valueLabelFormat:_},{axisProps:U,getRootProps:B,getHiddenInputProps:F,getThumbProps:z,open:W,active:H,axis:Y,focusedThumbIndex:V,range:G,dragging:Z,marks:Q,values:K,trackOffset:X,trackLeap:J,getThumbStyle:$}=function(e){const{"aria-labelledby":r,defaultValue:n,disabled:o=!1,disableSwap:a=!1,isRtl:i=!1,marks:s=!1,max:l=100,min:c=0,name:u,onChange:d,onChangeCommitted:f,orientation:p="horizontal",rootRef:h,scale:m=HB,step:g=1,shiftStep:v=10,tabIndex:y,value:b}=e,w=t.useRef(void 0),[x,S]=t.useState(-1),[A,k]=t.useState(-1),[C,I]=t.useState(!1),E=t.useRef(0),[D,T]=(0,TB.A)({controlled:b,default:n??c,name:"Slider"}),O=d&&((e,t,r)=>{const n=e.nativeEvent||e,o=new n.constructor(n.type,n);Object.defineProperty(o,"target",{writable:!0,value:{value:t,name:u}}),d(o,t,r)}),M=Array.isArray(D);let P=M?D.slice().sort(RB):[D];P=P.map((e=>null==e?c:OB(e,c,l)));const j=!0===s&&null!==g?[...Array(Math.floor((l-c)/g)+1)].map(((e,t)=>({value:c+g*t}))):s||[],R=j.map((e=>e.value)),[_,N]=t.useState(-1),L=t.useRef(null),U=(0,Zv.A)(h,L),B=e=>t=>{const r=Number(t.currentTarget.getAttribute("data-index"));(0,qM.A)(t.target)&&N(r),k(r),e?.onFocus?.(t)},F=e=>t=>{(0,qM.A)(t.target)||N(-1),k(-1),e?.onBlur?.(t)},z=(e,t)=>{const r=Number(e.currentTarget.getAttribute("data-index")),n=P[r],o=R.indexOf(n);let i=t;if(j&&null==g){const e=R[R.length-1];i=i>e?e:i<R[0]?R[0]:i<n?R[o-1]:R[o+1]}if(i=OB(i,c,l),M){a&&(i=OB(i,P[r-1]||-1/0,P[r+1]||1/0));const e=i;i=BB({values:P,newValue:i,index:r});let t=r;a||(t=i.indexOf(e)),FB({sliderRef:L,activeIndex:t})}T(i),N(r),O&&!zB(i,D)&&O(e,i,r),f&&f(e,i)},W=e=>t=>{if(null!==g){const e=Number(t.currentTarget.getAttribute("data-index")),r=P[e];let n=null;("ArrowLeft"===t.key||"ArrowDown"===t.key)&&t.shiftKey||"PageDown"===t.key?n=Math.max(r-v,c):(("ArrowRight"===t.key||"ArrowUp"===t.key)&&t.shiftKey||"PageUp"===t.key)&&(n=Math.min(r+v,l)),null!==n&&(z(t,n),t.preventDefault())}e?.onKeyDown?.(t)};(0,MB.A)((()=>{o&&L.current.contains(document.activeElement)&&document.activeElement?.blur()}),[o]),o&&-1!==x&&S(-1),o&&-1!==_&&N(-1);const H=t.useRef(void 0);let Y=p;i&&"horizontal"===p&&(Y+="-reverse");const V=e=>{let{finger:t,move:r=!1}=e;const{current:n}=L,{width:o,height:i,bottom:s,left:u}=n.getBoundingClientRect();let d,f;if(d=Y.startsWith("vertical")?(s-t.y)/i:(t.x-u)/o,Y.includes("-reverse")&&(d=1-d),f=function(e,t,r){return(r-t)*e+t}(d,c,l),g)f=UB(f,g,c);else{const e=_B(R,f);f=R[e]}f=OB(f,c,l);let p=0;if(M){p=r?H.current:_B(P,f),a&&(f=OB(f,P[p-1]||-1/0,P[p+1]||1/0));const e=f;f=BB({values:P,newValue:f,index:p}),a&&r||(p=f.indexOf(e),H.current=p)}return{newValue:f,activeIndex:p}},G=(0,Yv.A)((e=>{const t=NB(e,w);if(!t)return;if(E.current+=1,"mousemove"===e.type&&0===e.buttons)return void Z(e);const{newValue:r,activeIndex:n}=V({finger:t,move:!0});FB({sliderRef:L,activeIndex:n,setActive:S}),T(r),!C&&E.current>2&&I(!0),O&&!zB(r,D)&&O(e,r,n)})),Z=(0,Yv.A)((e=>{const t=NB(e,w);if(I(!1),!t)return;const{newValue:r}=V({finger:t,move:!0});S(-1),"touchend"===e.type&&k(-1),f&&f(e,r),w.current=void 0,K()})),Q=(0,Yv.A)((e=>{if(o)return;VB()||e.preventDefault();const t=e.changedTouches[0];null!=t&&(w.current=t.identifier);const r=NB(e,w);if(!1!==r){const{newValue:t,activeIndex:n}=V({finger:r});FB({sliderRef:L,activeIndex:n,setActive:S}),T(t),O&&!zB(t,D)&&O(e,t,n)}E.current=0;const n=(0,Qv.A)(L.current);n.addEventListener("touchmove",G,{passive:!0}),n.addEventListener("touchend",Z,{passive:!0})})),K=t.useCallback((()=>{const e=(0,Qv.A)(L.current);e.removeEventListener("mousemove",G),e.removeEventListener("mouseup",Z),e.removeEventListener("touchmove",G),e.removeEventListener("touchend",Z)}),[Z,G]);t.useEffect((()=>{const{current:e}=L;return e.addEventListener("touchstart",Q,{passive:VB()}),()=>{e.removeEventListener("touchstart",Q),K()}}),[K,Q]),t.useEffect((()=>{o&&K()}),[o,K]);const X=LB(M?P[0]:c,c,l),J=LB(P[P.length-1],c,l)-X,$=e=>t=>{e.onMouseLeave?.(t),k(-1)};return{active:x,axis:Y,axisProps:WB,dragging:C,focusedThumbIndex:_,getHiddenInputProps:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const n=(0,Vv.A)(t),a={onChange:(s=n||{},e=>{s.onChange?.(e),z(e,e.target.valueAsNumber)}),onFocus:B(n||{}),onBlur:F(n||{}),onKeyDown:W(n||{})};var s;const d={...n,...a};return{tabIndex:y,"aria-labelledby":r,"aria-orientation":p,"aria-valuemax":m(l),"aria-valuemin":m(c),name:u,type:"range",min:e.min,max:e.max,step:null===e.step&&e.marks?"any":e.step??void 0,disabled:o,...t,...d,style:{...PB,direction:i?"rtl":"ltr",width:"100%",height:"100%"}}},getRootProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=(0,Vv.A)(e),r={onMouseDown:(n=t||{},e=>{if(n.onMouseDown?.(e),o)return;if(e.defaultPrevented)return;if(0!==e.button)return;e.preventDefault();const t=NB(e,w);if(!1!==t){const{newValue:r,activeIndex:n}=V({finger:t});FB({sliderRef:L,activeIndex:n,setActive:S}),T(r),O&&!zB(r,D)&&O(e,r,n)}E.current=0;const r=(0,Qv.A)(L.current);r.addEventListener("mousemove",G,{passive:!0}),r.addEventListener("mouseup",Z)})};var n;const a={...t,...r};return{...e,ref:U,...a}},getThumbProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=(0,Vv.A)(e),r={onMouseOver:(n=t||{},e=>{n.onMouseOver?.(e);const t=Number(e.currentTarget.getAttribute("data-index"));k(t)}),onMouseLeave:$(t||{})};var n;return{...e,...t,...r}},marks:j,open:A,range:M,rootRef:U,trackLeap:J,trackOffset:X,values:P,getThumbStyle:e=>({pointerEvents:-1!==x&&x!==e?"none":void 0})}}({...L,rootRef:r});L.marked=Q.length>0&&Q.some((e=>e.label)),L.dragging=Z,L.focusedThumbIndex=V;const q=(e=>{const{disabled:t,dragging:r,marked:n,orientation:o,track:a,classes:i,color:s,size:l}=e,c={root:["root",t&&"disabled",r&&"dragging",n&&"marked","vertical"===o&&"vertical","inverted"===a&&"trackInverted",!1===a&&"trackFalse",s&&`color${(0,ey.A)(s)}`,l&&`size${(0,ey.A)(l)}`],rail:["rail"],track:["track"],mark:["mark"],markActive:["markActive"],markLabel:["markLabel"],markLabelActive:["markLabelActive"],valueLabel:["valueLabel"],thumb:["thumb",t&&"disabled",l&&`thumbSize${(0,ey.A)(l)}`,s&&`thumbColor${(0,ey.A)(s)}`],active:["active"],disabled:["disabled"],focusVisible:["focusVisible"]};return(0,zv.A)(c,QB,i)})(L),ee=O?.root??c.Root??JB,te=O?.rail??c.Rail??$B,re=O?.track??c.Track??qB,ne=O?.thumb??c.Thumb??eF,oe=O?.valueLabel??c.ValueLabel??tF,ae=O?.mark??c.Mark??rF,ie=O?.markLabel??c.MarkLabel??nF,se=O?.input??c.Input??"input",le=T?.root??u.root,ce=T?.rail??u.rail,ue=T?.track??u.track,de=T?.thumb??u.thumb,fe=T?.valueLabel??u.valueLabel,pe=T?.mark??u.mark,he=T?.markLabel??u.markLabel,me=T?.input??u.input,ge=(0,Wv.A)({elementType:ee,getSlotProps:B,externalSlotProps:le,externalForwardedProps:N,additionalProps:{...ZB(ee)&&{as:l}},ownerState:{...L,...le?.ownerState},className:[q.root,p]}),ve=(0,Wv.A)({elementType:te,externalSlotProps:ce,ownerState:L,className:q.rail}),ye=(0,Wv.A)({elementType:re,externalSlotProps:ue,additionalProps:{style:{...U[Y].offset(X),...U[Y].leap(J)}},ownerState:{...L,...ue?.ownerState},className:q.track}),be=(0,Wv.A)({elementType:ne,getSlotProps:z,externalSlotProps:de,ownerState:{...L,...de?.ownerState},className:q.thumb}),we=(0,Wv.A)({elementType:oe,externalSlotProps:fe,ownerState:{...L,...fe?.ownerState},className:q.valueLabel}),xe=(0,Wv.A)({elementType:ae,externalSlotProps:pe,ownerState:L,className:q.mark}),Se=(0,Wv.A)({elementType:ie,externalSlotProps:he,ownerState:L,className:q.markLabel}),Ae=(0,Wv.A)({elementType:se,getSlotProps:F,externalSlotProps:me,ownerState:L});return(0,qh.jsxs)(ee,{...ge,children:[(0,qh.jsx)(te,{...ve}),(0,qh.jsx)(re,{...ye}),Q.filter((e=>e.value>=w&&e.value<=b)).map(((e,r)=>{const n=LB(e.value,w,b),o=U[Y].offset(n);let a;return a=!1===P?K.includes(e.value):"normal"===P&&(G?e.value>=K[0]&&e.value<=K[K.length-1]:e.value<=K[0])||"inverted"===P&&(G?e.value<=K[0]||e.value>=K[K.length-1]:e.value>=K[0]),(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsx)(ae,{"data-index":r,...xe,...!(0,qT.A)(ae)&&{markActive:a},style:{...o,...xe.style},className:(0,Fh.A)(xe.className,a&&q.markActive)}),null!=e.label?(0,qh.jsx)(ie,{"aria-hidden":!0,"data-index":r,...Se,...!(0,qT.A)(ie)&&{markLabelActive:a},style:{...o,...Se.style},className:(0,Fh.A)(q.markLabel,Se.className,a&&q.markLabelActive),children:e.label}):null]},r)})),K.map(((e,t)=>{const r=LB(e,w,b),n=U[Y].offset(r),o="off"===R?oF:oe;return(0,qh.jsx)(o,{...!(0,qT.A)(o)&&{valueLabelFormat:_,valueLabelDisplay:R,value:"function"===typeof _?_(D(e),t):_,index:t,open:W===t||H===t||"on"===R,disabled:m},...we,children:(0,qh.jsx)(ne,{"data-index":t,...be,className:(0,Fh.A)(q.thumb,be.className,H===t&&q.active,V===t&&q.focusVisible),style:{...n,...$(t),...be.style},children:(0,qh.jsx)(se,{"data-index":t,"aria-label":g?g(t):a,"aria-valuenow":D(e),"aria-labelledby":s,"aria-valuetext":v?v(D(e),t):i,value:K[t],...Ae})})},t)}))]})})),iF=(0,am.Ay)(aF)({"& .MuiSlider-rail":{backgroundColor:"#d3d3d3",opacity:1},"& .MuiSlider-track":{border:0},"& .MuiSlider-thumb":{width:27,height:27,boxShadow:"none"},"& .MuiSlider-valueLabel":{backgroundColor:"currentColor",color:"inherit"},"& .MuiSlider-valueLabelLabel":{color:"#fff"}});function sF(e){var r,n;let{deviceUUID:o,autoUnlock:a=!0,showPreferences:i=!0,settingsAction:s="lockSettings"}=e;const{t:l}=Fv(),{setSnackbarValue:c}=(0,t.useContext)(VI),u=hg(),d=dg(),f=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot)[o.toUpperCase()],[p,h]=(0,t.useState)(-4),[m,g]=(0,t.useState)({}),[v,y]=(0,t.useState)(!1),b=Fk&&Ok&&i,w=()=>c({open:!0,msg:l("lockSettings.failed"),severity:"error"}),x=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Yk.request("devicePreferences",{deviceUUID:o,operation:e,...t}).then((e=>{let{data:t}=e;return g(t)}))};if((0,t.useEffect)((()=>{var e,t;h(null!==(e=null===f||void 0===f||null===(t=f.settings)||void 0===t?void 0:t.bleTxPower)&&void 0!==e?e:-4)}),[o,null===f||void 0===f||null===(r=f.settings)||void 0===r?void 0:r.bleTxPower]),(0,t.useEffect)((()=>{if(!b)return;x("watchNfc").catch(w);const e=Lk((e=>{let{type:t,data:r}=e;"devicePreferences"===t&&g(r),"resume"===t&&x("read").catch(w)}));return()=>{e(),Yk.notify("devicePreferences",{deviceUUID:o,operation:"stopNfc"})}}),[o,b]),!Fk)return null;const S=(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}});return(0,qh.jsxs)(ym,{sx:bj,children:[(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:500}}),Fk&&void 0!==(null===f||void 0===f||null===(n=f.settings)||void 0===n?void 0:n.bleTxPower)&&(0,qh.jsxs)(ym,{sx:{px:2,minHeight:53,display:"flex",alignItems:"center",gap:2},children:[(0,qh.jsx)(Bh.A,{sx:{color:"text.primary",whiteSpace:"nowrap",flexShrink:0},children:l("lockExtras.txPower")}),(0,qh.jsx)(iF,{sx:{flex:1,minWidth:0,mr:1},min:-4,max:20,step:1,value:null!==p&&void 0!==p?p:-4,disabled:!(null!==f&&void 0!==f&&f.bleConnected),"aria-label":l("lockExtras.txPower"),valueLabelDisplay:"auto",valueLabelFormat:e=>`${e} dBm`,onChange:(e,t)=>{t!==p&&Yk.notify("haptic"),h(t)},onChangeCommitted:(e,t)=>Yk.request(s,{deviceUUID:o,operation:"txPower",value:t}).catch(w)})]}),b&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:500}}),(0,qh.jsxs)(lO,{onClick:()=>m.nfc&&y(!0),children:[(0,qh.jsx)(iD.A,{primary:"NFC",sx:{flex:"0 0 auto",mr:2}}),(0,qh.jsx)(Bh.A,{sx:{ml:"auto",color:"title.other",fontSize:14,textAlign:"right",overflowWrap:"anywhere"},children:m.nfc||l("lockExtras.nfcHint")})]}),S,(0,qh.jsxs)(lO,{onClick:()=>Yk.request("notificationSettings").catch(w),children:[(0,qh.jsx)(iD.A,{primary:l("lockExtras.widget"),secondary:!1===m.notificationsEnabled?l("lockExtras.notificationHint"):l("lockExtras.notificationGranted"),secondaryTypographyProps:{sx:{fontSize:11,color:!1===m.notificationsEnabled?"error.main":"text.secondary"}}}),(0,qh.jsx)(rB,{disableRipple:!0,checked:!!m.widget,onClick:e=>e.stopPropagation(),onChange:(e,t)=>x("widget",{value:t}).catch(w)})]}),S,a&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:()=>u({pathname:"/device-setting/auto-unlock",search:d.search}),children:[(0,qh.jsx)(iD.A,{primary:l("lockExtras.autoUnlock")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:m.autoUnlock?l("lockExtras.on"):l("lockSettings.off")}),(0,qh.jsx)(fU.A,{component:jN})]}),S]}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:48}}),(0,qh.jsxs)(QO,{anchor:"bottom",open:v,onClose:()=>y(!1),children:[(0,qh.jsx)(lO,{onClick:()=>x("clearNfc").then((()=>y(!1))).catch(w),sx:{justifyContent:"center",color:"error.main"},children:l("lockExtras.nfcReset")}),(0,qh.jsx)(lO,{onClick:()=>y(!1),sx:{justifyContent:"center"},children:l("deviceMember.opt.cancel")})]})]})]})}const lF=(0,dD.A)((0,qh.jsx)("path",{d:"M12 10c3.03 0 5.78 1.23 7.76 3.22l-2.12 2.12C16.2 13.9 14.2 13 12 13s-4.2.9-5.64 2.35l-2.12-2.12C6.22 11.23 8.97 10 12 10m0 6c-1.38 0-2.63.56-3.53 1.46L12 21l3.53-3.54c-.9-.9-2.15-1.46-3.53-1.46"}),"Wifi2Bar"),cF=(0,dD.A)((0,qh.jsx)("path",{d:"M15.53 17.46 12 21l-3.53-3.54c.9-.9 2.15-1.46 3.53-1.46s2.63.56 3.53 1.46"}),"Wifi1Bar");function uF(e){var r,n,o;let{deviceUUID:a,onClose:i,connectAfterPassword:s=!1}=e;const{t:l}=Fv(),c=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot)[a.toUpperCase()],u=[...(null===c||void 0===c||null===(r=c.hub)||void 0===r?void 0:r.wifiScan)||[]].sort(((e,t)=>t.rssi-e.rssi)),d=!(null===c||void 0===c||null===(n=c.hub)||void 0===n||!n.wifiScanning),[f,p]=(0,t.useState)(!1),[h,m]=(0,t.useState)(null),[g,v]=(0,t.useState)(""),[y,b]=(0,t.useState)(!1),[w,x]=(0,t.useState)(0),S=(0,t.useRef)(null),A=(0,t.useRef)(!1),k=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Yk.request("hubSettings",{deviceUUID:a,operation:e,...t})};return(0,qh.jsxs)(QO,{anchor:"bottom",open:!0,onClose:()=>!f&&i(),PaperProps:{sx:{height:"calc(100dvh - 8px)",borderRadius:"30px 30px 0 0",...bj}},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",minHeight:50,px:1},children:[(0,qh.jsx)(ym,{sx:{width:40}}),(0,qh.jsx)(Bh.A,{sx:{flex:1,textAlign:"center",fontSize:17,fontWeight:600},children:l("hubWifi.title")}),(0,qh.jsx)(cE.A,{disabled:f,onClick:i,"aria-label":l("hubWifi.close"),children:(0,qh.jsx)(tT,{})})]}),(y||(null===c||void 0===c||null===(o=c.hub)||void 0===o?void 0:o.wifiScanFailed))&&(0,qh.jsx)(LL,{severity:"error",children:l("lockSettings.failed")}),!(null!==c&&void 0!==c&&c.bleConnected)&&(0,qh.jsx)(LL,{severity:"info",children:l("bleStatus.noSignal")}),(d||w>0)&&(0,qh.jsx)(ym,{sx:{textAlign:"center",py:1,transform:`translateY(${d?0:w/4}px)`},children:(0,qh.jsx)(AE,{size:24,"aria-label":l("appHome.refreshing"),variant:d?"indeterminate":"determinate",value:Math.min(w/70*100,100)})}),(0,qh.jsx)(ym,{sx:{flex:1,overflowY:"auto",overscrollBehavior:"contain"},onTouchStart:e=>{x(0),S.current=f||d||null===c||void 0===c||!c.bleConnected||0!==e.currentTarget.scrollTop||1!==e.touches.length?null:{x:e.touches[0].clientX,y:e.touches[0].clientY,distance:0}},onTouchMove:e=>{if(!S.current)return;const t=e.touches[0].clientY-S.current.y,r=Math.abs(e.touches[0].clientX-S.current.x);if(1!==e.touches.length||t<0||r>Math.max(12,t)||e.currentTarget.scrollTop>0)return S.current=null,void x(0);S.current.distance=Math.min(t,100),x(S.current.distance)},onTouchCancel:()=>{S.current=null,x(0)},onTouchEnd:()=>{var e;(null===(e=S.current)||void 0===e?void 0:e.distance)>=70&&(async()=>{if(!(f||d||A.current||null===c||void 0===c)&&c.bleConnected){A.current=!0,b(!1);try{await k("scan",{refresh:!0})}catch(e){b(!0)}finally{A.current=!1}}})(),S.current=null,x(0)},children:(0,qh.jsx)($T.A,{disablePadding:!0,children:u.map((e=>{let{ssid:t,rssi:r}=e;const n=r>-50?gN:r>-70?lF:cF;return(0,qh.jsxs)(aD,{sx:{height:60,"&::after":{content:'""',position:"absolute",left:16,right:0,bottom:0,borderBottom:"1px solid",borderColor:"divider"}},disabled:f||!(null!==c&&void 0!==c&&c.bleConnected),onClick:async()=>{p(!0),b(!1);try{await k("ssid",{ssid:t}),m(t),v("")}catch(e){b(!0)}finally{p(!1)}},children:[(0,qh.jsx)(cD,{sx:{minWidth:40},children:(0,qh.jsx)(n,{sx:{color:"primary.main"}})}),(0,qh.jsx)(iD.A,{primary:t,primaryTypographyProps:{noWrap:!0}})]},t)}))})}),(0,qh.jsx)(Bh.A,{sx:{textAlign:"center",p:1,pb:"max(8px, env(safe-area-inset-bottom))"},children:l("hubWifi.refresh")}),(0,qh.jsxs)(aM,{open:null!==h,onClose:()=>!f&&m(null),children:[(0,qh.jsx)(BL,{children:l("hubWifi.password")}),(0,qh.jsxs)(uM,{children:[(0,qh.jsx)(Bh.A,{children:h}),(0,qh.jsx)(GD.A,{autoFocus:!0,fullWidth:!0,margin:"dense",type:"password",value:g,disabled:f,label:l("pages.sesameAccessControlDevice.index.WiFiPWD"),onChange:e=>v(e.target.value)}),y&&(0,qh.jsx)(LL,{severity:"error",children:l("lockSettings.failed")})]}),(0,qh.jsxs)(WL,{children:[(0,qh.jsx)(QI.A,{disabled:f,onClick:()=>m(null),children:l("deviceMember.opt.cancel")}),(0,qh.jsx)(QI.A,{disabled:f||!(null!==c&&void 0!==c&&c.bleConnected),onClick:async()=>{p(!0),b(!1);try{await k("password",{password:g}),s&&await k("connectWifi"),i()}catch(e){b(!0)}finally{p(!1)}},children:l("deviceMember.opt.ok")})]})]})]})}function dF(e){var r,n,o,a,i,s,l,c,u,d,f,p,h,m,g,v;let{showBack:y=!0}=e;const{gManageDevice:b,gStripe:w,setSnackbarValue:x}=(0,t.useContext)(VI),{t:S}=Fv(),[A]=xv(),k=hg(),C=dg(),I=A.get("deviceUUID")||"",E=pB(I,b.deviceStatus,b.companyDevices),D={...E,deviceUUID:I,deviceModel:E.deviceModel||A.get("deviceModel")||"",stateInfo:{...E.stateInfo}},T=D.deviceModel,O="wm_2"===T,{native:M,request:P,ready:j}=QL(I,O);null!=(null===M||void 0===M?void 0:M.batteryPercentage)&&(D.stateInfo.batteryPercentage=M.batteryPercentage);const R=(e=>["remote_nano","open_sensor_1"].includes(e))(T)&&!(null!==M&&void 0!==M&&null!==(r=M.peripheral)&&void 0!==r&&r.setup);(0,t.useEffect)((()=>{var e;if(null==(null===M||void 0===M?void 0:M.batteryPercentage))return;const t=b.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===I.toUpperCase()}));t&&(null===(e=t.stateInfo)||void 0===e?void 0:e.batteryPercentage)!==M.batteryPercentage&&b.updateDeviceState({deviceUUID:t.deviceUUID,stateInfo:{batteryPercentage:M.batteryPercentage}})}),[I,null===M||void 0===M?void 0:M.batteryPercentage]);const _=ij(T),[N,L]=(0,t.useState)(!1),[U,B]=(0,t.useState)(!1),[F,z]=(0,t.useState)(!1),W=(0,t.useRef)(!1),H=(0,t.useRef)(null),Y=(0,t.useRef)(null),[V,G]=(0,t.useState)(0),[Z,Q]=(0,t.useState)(!1),K=(null===M||void 0===M||null===(n=M.peripheral)||void 0===n?void 0:n.bound)||((null===(o=D.stateInfo)||void 0===o?void 0:o.sesameDevices)||[]).map((e=>e.deviceUUID)).filter(Boolean);(0,t.useEffect)((()=>{I&&b.getDeviceStatus(I)}),[I]);const X=()=>x({open:!0,msg:S("lockSettings.failed"),severity:"error"}),J=()=>x({open:!0,msg:"Coming soon",severity:"info"}),$=()=>Fk?!(null===M||void 0===M||!M.bleConnected)||(x({open:!0,msg:S("lockSettings.connectBluetooth")}),!1):(J(),!1),q=async(e,t)=>{if(Z||!$())return!1;Q(!0);try{return await P(e,t),!0}catch(r){return X(),!1}finally{Q(!1)}};(0,t.useEffect)((()=>{var e;const t=null===M||void 0===M||null===(e=M.peripheral)||void 0===e?void 0:e.bindingWarning;t&&Y.current!==t.revision&&(Y.current=t.revision,x({open:!0,msg:S(`peripheral.${t.code}`),severity:"warning"}))}),[null===M||void 0===M||null===(a=M.peripheral)||void 0===a||null===(i=a.bindingWarning)||void 0===i?void 0:i.revision]),(0,t.useEffect)((()=>{var e;const t=null===M||void 0===M||null===(e=M.peripheral)||void 0===e?void 0:e.radar;void 0!==t&&_.includes("face")&&(((e,t)=>t<dj(e))(T,t)?null!==M&&void 0!==M&&M.bleConnected&&H.current!==`${I}:${t}`&&(H.current=`${I}:${t}`,P("radar",{value:dj(T),command:cj(T)}).catch(X)):(H.current=null,W.current||G(function(e,t){if(t>=512)return 0;const r=uj(e),n=r[0][1],o=Math.max(dj(e),Math.min(512,t));if(o>=n){const e=fj(fj(512-o)/(512-n));return Math.max(0,Math.min(30,Math.round(fj(e*fj(30)))))}for(let a=0;a<r.length-1;a++){const[e,t]=r[a],[n,i]=r[a+1];if(o>=i&&o<=t){const r=fj(fj(o-i)/(t-i));return Math.trunc(fj(n+fj(r*(e-n))))}}return 100}(T,t))))}),[I,T,null===M||void 0===M||null===(s=M.peripheral)||void 0===s?void 0:s.radar,null===M||void 0===M?void 0:M.bleConnected]),(0,t.useEffect)((()=>{O&&j&&null!==M&&void 0!==M&&M.bleConnected&&(Yk.request("hubSettings",{deviceUUID:I,operation:"scan"}).catch(X),"1"===A.get("setup")&&L(!0))}),[O,j,null===M||void 0===M?void 0:M.bleConnected,I]);const ee=(e,r,n)=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:n,sx:{cursor:n?"pointer":"default",minHeight:53},children:[(0,qh.jsx)(iD.A,{primary:e,sx:{flex:"UUID"===e?"0 0 auto":1,mr:1}}),(0,qh.jsx)(Bh.A,{component:"div",sx:{color:"text.secondary",textAlign:"right",..."UUID"===e?{ml:"auto",whiteSpace:"nowrap",fontSize:"clamp(10px, 3.3vw, 14px)",letterSpacing:0}:{overflowWrap:"anywhere",maxWidth:"65%"}},children:r})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]},e),te=b.companyDevices.filter((e=>{if(!e.deviceUUID||e.deviceUUID.toUpperCase()===I.toUpperCase()||2===Number(e.keyLevel)||K.some((t=>t.toUpperCase()===e.deviceUUID.toUpperCase())))return!1;if(O)return["sesame_2","sesame_4","sesame_5","sesame_5_pro","sesame_5_us","sesame_6","sesame_6_pro","BLE_Connector_1","sesame_miwa","sesame_6_pro_slidingdoor","ssmbot_1","bike_1"].includes(e.deviceModel);const t=e=>JP(e.deviceModel)||sj(e.deviceModel)||qP(e.deviceModel)||"hub_3_pro"===e.deviceModel;if(!T.startsWith("open_sensor"))return t(e);const r=b.companyDevices.filter((e=>K.some((t=>{var r;return t.toUpperCase()===(null===(r=e.deviceUUID)||void 0===r?void 0:r.toUpperCase())}))));return r.some(t)?t(e):r.some((e=>["hub_3","hub_3_pro"].includes(e.deviceModel)))?["hub_3","hub_3_pro"].includes(e.deviceModel):t(e)||"hub_3"===e.deviceModel})),re=D.deviceName||A.get("deviceName")||T;return(0,qh.jsxs)(ym,{sx:{height:y?"100dvh":"100%",overflowY:"auto",bgcolor:"background.default"},children:[y&&(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(cE.A,{onClick:()=>k(-1),children:(0,qh.jsx)(ZL,{})}),(0,qh.jsx)(Bh.A,{variant:"h3",children:re})]}),Fk&&!R&&(0,qh.jsx)(KL,{deviceUUID:I}),(0,qh.jsxs)($T.A,{children:[!O&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(hB,{}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:10}})]}),ee(S("pages.sesameAccessControlDevice.index.DeviceModel"),T),"remote_nano"===T&&!R&&(0,qh.jsxs)(qh.Fragment,{children:[ee(S("peripheral.triggerDelay"),S("peripheral.delayValue",{value:(.3*((null===M||void 0===M||null===(l=M.peripheral)||void 0===l?void 0:l.triggerDelay)||0)).toFixed(1)}),(()=>{$()&&z((e=>!e))})),F&&(0,qh.jsx)(sU,{values:[0,10],value:(null===M||void 0===M||null===(c=M.peripheral)||void 0===c?void 0:c.triggerDelay)||0,label:e=>S("peripheral.delayValue",{value:(.3*e).toFixed(1)}),title:S("peripheral.triggerDelay"),disabled:Z||!(null!==M&&void 0!==M&&M.bleConnected),onChange:async e=>{await q("triggerDelay",{value:e})&&z(!1)}})]}),O&&(0,qh.jsxs)(qh.Fragment,{children:[ee("SSID",(null===M||void 0===M||null===(u=M.hub)||void 0===u?void 0:u.wifiSsid)||"",(()=>{$()&&L(!0)})),ee(S("peripheral.password"),(null===M||void 0===M||null===(d=M.hub)||void 0===d?void 0:d.wifiPwd)||"",(()=>{$()&&L(!0)})),ee(S("peripheral.network"),(0,qh.jsx)(fB,{status:null!==M&&void 0!==M&&M.bleConnected?null===M||void 0===M||null===(f=M.hub)||void 0===f?void 0:f.network:{isAPWork:!0===(null===(p=D.stateInfo)||void 0===p?void 0:p.wm2State),isNetwork:!0===(null===(h=D.stateInfo)||void 0===h?void 0:h.wm2State),isIoTWork:!0===(null===(m=D.stateInfo)||void 0===m?void 0:m.wm2State)}}))]}),_.map((e=>ee(S(`accessCtl.auth.${hj[e]}`),(0,qh.jsx)(fU.A,{component:jN}),(()=>(e=>{if(!Fk)return J();const t=new URLSearchParams(C.search);t.set("kind",e),t.set("deviceModel",T),k({pathname:"/device-setting/credentials",search:t.toString()})})(e))))),(0,qh.jsx)(DB,{device:D,Hub3DeviceUUID:null===(g=D.stateInfo)||void 0===g?void 0:g.wm2UUID,readOnly:O||R},I),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),!O&&(0,qh.jsx)(vB,{device:D}),ee("UUID",I,(()=>k({pathname:"/device-setting/factory-info",search:C.search}))),_.includes("face")&&(!Fk||void 0!==(null===M||void 0===M||null===(v=M.peripheral)||void 0===v?void 0:v.radar))&&(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:2,px:2,py:2},children:[(0,qh.jsx)(Bh.A,{sx:{flexShrink:0},children:S("accessCtl.auth.radarDetectionDistance")}),(0,qh.jsx)(iF,{min:0,max:100,value:V,valueLabelDisplay:"auto",valueLabelFormat:e=>`${S("peripheral.distance")} ${e}cm`,"aria-label":S("accessCtl.auth.radarDetectionDistance"),disabled:Fk&&!(null!==M&&void 0!==M&&M.bleConnected),onChange:(e,t)=>{W.current=!0,t!==V&&Fk&&Yk.notify("haptic"),G(t)},onChangeCommitted:(e,t)=>{W.current=!1,q("radar",{value:pj(T,t),command:cj(T)})}})]}),(0,qh.jsx)(Bh.A,{sx:{px:2,pb:2,fontSize:13,color:"text.secondary",whiteSpace:"pre-line"},children:S("peripheral.radarDescription")})]}),R&&(0,qh.jsx)(Bh.A,{sx:{p:2,color:"text.secondary",fontSize:13,whiteSpace:"pre-line"},children:S("peripheral.sleeping",{device:S("remote_nano"===T?"peripheral.nanoName":"peripheral.openSensorName")})}),!sj(T)&&!R&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(Bh.A,{sx:{bgcolor:"secondary.main",color:"text.secondary",px:2,pt:4,pb:1,fontSize:13},children:S(O?"peripheral.wifiBindHint":"peripheral.bindHint",{device:re})}),K.map((e=>{var t;return(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:(null===(t=b.companyDevices.find((t=>{var r;return(null===(r=t.deviceUUID)||void 0===r?void 0:r.toUpperCase())===e.toUpperCase()})))||void 0===t?void 0:t.deviceName)||e}),(0,qh.jsx)(cE.A,{disabled:Z,"aria-label":S("peripheral.removeBinding"),onClick:()=>q("unbind",{target:e}),children:(0,qh.jsx)(fD,{})})]},e)})),(0,qh.jsxs)(lO,{onClick:()=>{$()&&B(!0)},sx:{cursor:"pointer",minHeight:53,gap:1},children:[(0,qh.jsx)(Bh.A,{children:S("peripheral.addDevice")}),!K.length&&(0,qh.jsx)(lL,{color:"error",sx:{fontSize:22}})]})]}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:10}}),(0,qh.jsx)(gB,{deviceUUID:I,subUUID:w.customerInfo.subUUID,deviceName:re,named:!0}),!O&&!R&&(0,qh.jsx)(sF,{deviceUUID:I,autoUnlock:!1,showPreferences:sj(T),settingsAction:"peripheralSettings"})]}),N&&(0,qh.jsx)(uF,{connectAfterPassword:!0,deviceUUID:I,onClose:()=>L(!1)}),(0,qh.jsx)(QO,{anchor:"bottom",open:U,onClose:()=>B(!1),children:(0,qh.jsxs)($T.A,{children:[0===te.length&&(0,qh.jsx)(lO,{children:(0,qh.jsx)(iD.A,{primary:S("peripheral.noDevices")})}),te.map((e=>(0,qh.jsx)(lO,{onClick:async()=>{await q("bind",{target:e.deviceUUID})&&B(!1)},children:(0,qh.jsx)(iD.A,{primary:e.deviceName||e.deviceModel})},e.deviceUUID)))]})})]})}const fF=(0,dD.A)((0,qh.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"ClearOutlined"),pF=e=>{let{device:r,editable:n=!0}=e;const{gIot:o,gManageDevice:a,setCustomModalOpen:i,setModalContent:s,gStripe:c,customModalOpen:u}=(0,t.useContext)(VI),[d,f]=(0,t.useState)(!1),[p,h]=(0,t.useState)(null),[m,g]=(0,t.useState)(!1),{t:v}=Fv(),y=hg(),b={overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},w=(0,t.useMemo)((()=>a.companyDevices.length>0?a.companyDevices:a.userDevices),[a.companyDevices,a.userDevices]),x=(0,t.useMemo)((()=>{var e,t;const n=null!==(e=null===r||void 0===r||null===(t=r.stateInfo)||void 0===t?void 0:t.sesameDevices)&&void 0!==e?e:[];return n.length<1?[]:"object"===typeof n[0]?n:a.companyDevices.filter((e=>n.includes(e.deviceUUID)))}),[r,a.companyDevices]),S=(0,t.useMemo)((()=>w.filter((e=>!(!Dh.canWifiModuleControl(e.deviceModel)||parseInt(e.keyLevel)>1)&&(x.length<1||!x.some((t=>t.deviceUUID===e.deviceUUID)))))),[x,w]);(0,t.useEffect)((()=>{!u&&m&&g(!1)}),[u,m]),(0,t.useEffect)((()=>{m&&s((0,qh.jsx)(vL,{loadingAble:!0,title:"\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e",setOpenModal:i,enableFilter:!c.isFromApp,selectableRows:"single",useCustomSelection:!0,handleClose:()=>i(!1),data:S,handleCheck:k,isMobile:c.isFromApp}))}),[m,S]);const A=(e,t,n)=>{o.sendCommandToHub3WithConnectionId({device_id:r.deviceUUID,cmd:e,secretKey:r.secretKey,iotPayload:{sesameId:t.deviceUUID,ssmSecKa:t.secretKey,nickName:t.deviceName,deviceModel:t.deviceModel}}),dI(e,((e,t)=>{setTimeout((()=>{a.getDeviceStatus(r.deviceUUID)}),3e3),n&&n(t)}))},k=(e,t)=>{i(!1),A(l.cmdCode.SSM3_ITEM_ADD_SESAME,e[0],(()=>t&&t()))},C=e=>{f(!1);const t=new URL(window.location.href),r=new URLSearchParams(t.search);r.set("ssmUUID",e.deviceUUID),y(`/biz/wifi-module/ssm-upgrade?${r.toString()}`)};return(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:[!n&&(null===x||void 0===x?void 0:x.length)<1&&(0,qh.jsx)(Bh.A,{color:"info.light",sx:{py:1},children:v("pages.sesameAccessControlDevice.index.NoResult")}),(0,qh.jsxs)($T.A,{disablePadding:!0,children:[x.map(((e,r)=>(0,qh.jsx)(t.Fragment,{children:(0,qh.jsxs)(lO,{sx:{px:0},onClick:()=>{n&&C(e)},children:[(0,qh.jsx)(iD.A,{sx:{minWidth:0},primary:(0,qh.jsx)(Bh.A,{sx:b,children:e.deviceName})}),n&&(0,qh.jsx)(cD,{sx:{minWidth:"auto"},onClick:t=>{t.stopPropagation(),h(e),f(!0)},children:(0,qh.jsx)(LN,{})})]})},`${e.deviceUUID}${r}`))),n&&(0,qh.jsxs)(qh.Fragment,{children:[(null===x||void 0===x?void 0:x.length)>0&&(0,qh.jsx)(mM,{sx:{opacity:.4}}),(0,qh.jsxs)(lO,{onClick:()=>(g(!0),a.userDevices.length<1&&a.getUserDevices(!0),void i(!0)),sx:{px:0},children:[(0,qh.jsx)(iD.A,{sx:{minWidth:0},primary:(0,qh.jsx)(Bh.A,{sx:b,children:v("pages.sesameAccessControlDevice.index.AddSesame")})}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(ZT,{})})]})]})]}),(0,qh.jsx)(QO,{anchor:"bottom",open:d,onClose:()=>f(!1),PaperProps:{sx:{borderTopLeftRadius:"16px",borderTopRightRadius:"16px",maxHeight:"50vh"}},children:(0,qh.jsx)(ym,{sx:{width:"100%","& .MuiListItem-root":{justifyContent:"center"}},children:(0,qh.jsxs)($T.A,{children:[(0,qh.jsx)(lO,{children:(0,qh.jsx)(Bh.A,{sx:{color:"rgb(204, 204, 204)",...b},children:null===p||void 0===p?void 0:p.deviceName})}),(0,qh.jsx)(lO,{onClick:()=>C(p),children:(0,qh.jsx)(Bh.A,{children:v("pages.sesameAccessControlDevice.index.OSUpdate")})}),(0,qh.jsx)(lO,{onClick:()=>{var e;f(!1),e=p,A(l.cmdCode.SSM3_ITEM_REMOVE_SESAME,e)},children:(0,qh.jsx)(Bh.A,{color:"error.main",children:v("pages.ir.remote.delete")})}),(0,qh.jsx)(lO,{onClick:()=>f(!1),children:(0,qh.jsx)(Bh.A,{children:v("deviceMember.opt.cancel")})})]})})})]})};function hF(e){let{text:r,value:n=0,onChangeCommitted:o}=e;const[a,i]=(0,t.useState)(n);return t.useEffect((()=>{i(n)}),[n]),(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:r}),(0,qh.jsx)(aF,{sx:{width:100,mr:1,"@media (pointer: coarse)":{padding:"0 !important"},"& .MuiSlider-thumb":{width:10,height:10,transition:"none !important"},"& .MuiSlider-track":{height:2,transition:"none !important"},"& .MuiSlider-rail":{height:2}},value:a,"aria-label":"Default",valueLabelDisplay:"auto",valueLabelFormat:(e,t)=>(0,qh.jsx)(qh.Fragment,{children:`${e}%`}),onChange:(e,t)=>i(t),onChangeCommitted:(e,t)=>{null===o||void 0===o||o(t)}})]})}const mF=()=>{var e,r,n,o,a,i,s,c;const{gManageDevice:u,setSnackbarValue:d,gIot:f,gMediaType:p,gStripe:h}=(0,t.useContext)(VI),[m]=xv(),g=m.get("deviceUUID")||"",v="app"===m.get("fromType"),y=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot)[g.toUpperCase()],b=!!y,[w,x]=(0,t.useState)(!1),[S,A]=(0,t.useState)("");(0,t.useEffect)((()=>{if(!Fk||!g||!b)return;const e=crypto.randomUUID();let t=!1;const r=setTimeout((()=>{t=!0,Yk.request("hubSettings",{deviceUUID:g,operation:"watch",session:e}).then((()=>{t&&A(g)})).catch((()=>{t&&d({open:!0,msg:F("lockSettings.failed"),severity:"error"})}))}),0);return()=>{clearTimeout(r),t&&Yk.notify("hubSettings",{deviceUUID:g,operation:"unwatch",session:e}),t=!1}}),[g,b]),(0,t.useEffect)((()=>{if(!Fk||S!==g||null===y||void 0===y||!y.bleConnected)return;const e=setTimeout((()=>{Yk.request("hubSettings",{deviceUUID:g,operation:"scan"}).catch((()=>{}))}),0);return()=>clearTimeout(e)}),[g,S,null===y||void 0===y?void 0:y.bleConnected]);const[k,C]=(0,t.useState)({manualCode:"",qrCode:""}),[I,E]=(0,t.useState)(null),[D,T]=(0,t.useState)({isAPWork:!1,isNetwork:!1,isIoTWork:!1,isBindingAPWork:!1,isConnectingNetwork:!1,isConnectingIoT:!1}),[O,M]=(0,t.useState)(0),[P,j]=(0,t.useState)(!1),[R,_]=(0,t.useState)({wifi:!1,lte:!1,ethernet:!1}),[N,L]=(0,t.useState)({enable1:!0,enable2:!0}),[U,B]=(0,t.useState)(m.get("deviceModel")===l.sesameDeviceModel.hub3_pro),{t:F}=Fv(),z=hg(),W=(0,t.useMemo)((()=>pB(g,u.deviceStatus,u.companyDevices)),[g,u.deviceStatus,u.companyDevices]);(0,t.useEffect)((()=>{u.getDeviceStatus(g)}),[g,u.getDeviceStatus]);const H=(0,t.useMemo)((()=>!v||!!W.deviceModel),[v,W.deviceModel]);(0,t.useEffect)((()=>{var e,t,r,n,o,a,i;if(!W.secretKey)return;_({wifi:null!==(e=null===(t=W.stateInfo)||void 0===t?void 0:t.wifiConnected)&&void 0!==e&&e,lte:null!==(r=null===(n=W.stateInfo)||void 0===n?void 0:n.lteConnected)&&void 0!==r&&r,ethernet:null!==(o=null===(a=W.stateInfo)||void 0===a?void 0:a.ethernetConnected)&&void 0!==o&&o});const s=(null===(i=W.stateInfo)||void 0===i?void 0:i.relayInfo)||{};L({enable1:void 0===s.enable1||1===Number(s.enable1),enable2:void 0===s.enable2||1===Number(s.enable2)}),B(W.deviceModel===l.sesameDeviceModel.hub3_pro)}),[W]),(0,t.useEffect)((()=>{var e,t;if(!Fk||null===y||void 0===y||!y.bleConnected||!y.hub)return;const r=y.hub;r.network&&T(r.network),void 0===r.wifiSsid||r.wifiSsid===(null===(e=W.stateInfo)||void 0===e?void 0:e.wifiSsid)&&(r.wifiPwd||"")===((null===(t=W.stateInfo)||void 0===t?void 0:t.wifiPwd)||"")||u.updateDeviceState({deviceUUID:W.deviceUUID||g,stateInfo:{wifiSsid:r.wifiSsid,wifiPwd:r.wifiPwd||""}})}),[y]);const Y=(0,t.useCallback)(((e,t)=>{L((r=>({...r,[`enable${e}`]:t}))),u.updateRelayEnable({deviceUUID:g,[`enable${e}`]:t?1:0})}),[g,u]);(0,t.useEffect)((()=>{var e,t;if(Fk&&null!==y&&void 0!==y&&y.bleConnected&&null!==(e=y.hub)&&void 0!==e&&e.network)return;let r=!0===(null===(t=W.stateInfo)||void 0===t?void 0:t.wm2State);T((e=>({...e,isAPWork:r,isNetwork:r,isIoTWork:r})))}),[null===(e=W.stateInfo)||void 0===e?void 0:e.wm2State,null===y||void 0===y?void 0:y.bleConnected]);const V=(0,t.useCallback)((()=>{j(!0),f.sendCommandToHub3WithConnectionId({device_id:g,cmd:l.cmdCode.HUB3_MATTER_PAIRING_CODE,secretKey:W.secretKey});const e=setTimeout((()=>{j(!1)}),1e4);dI(l.cmdCode.HUB3_MATTER_PAIRING_CODE,((t,r)=>{if(t!==g||!r)return;const{manualCode:n,qrCode:o}=r;f.sendCommandToHub3WithConnectionId({device_id:g,cmd:l.cmdCode.HUB3_MATTER_PAIRING_WINDOW,secretKey:W.secretKey}),dI(l.cmdCode.HUB3_MATTER_PAIRING_WINDOW,((t,r)=>{j(!1),clearTimeout(e),t===g&&(0===r.statusCode?Ue.writeQrcode(o,(e=>{if(e){const t=e.toDataURL(10,0);C({manualCode:n,qrCode:t})}})):d({open:!0,msg:"Hub3\u304c\u3059\u3067\u306b\u591a\u6570\u306eMatter\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002Hub3\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u3066\u304b\u3089\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002"}))}))}))}),[W]),G=(0,t.useCallback)((e=>{const t=new Uint8ClampedArray([255*e/100])[0];f.sendCommandToHub3WithConnectionId({device_id:g,cmd:l.cmdCode.HUB3_ITEM_CODE_LED_DUTY,secretKey:W.secretKey,iotPayload:{op:l.hub3LedDutyOp.set,duty:t}})}),[W]),Z=(0,t.useCallback)((()=>{f.sendCommandToHub3WithConnectionId({device_id:g,cmd:l.cmdCode.HUB3_ITEM_CODE_CLEAR_WIFI_SSID,secretKey:W.secretKey,iotPayload:{}})}),[W,g]);(0,t.useEffect)((()=>{W.secretKey&&(f.sendCommandToHub3WithConnectionId({device_id:g,cmd:l.cmdCode.HUB3_ITEM_CODE_LED_DUTY,secretKey:W.secretKey,iotPayload:{op:l.hub3LedDutyOp.get,duty:100}}),dI(l.cmdCode.HUB3_ITEM_CODE_LED_DUTY,((e,t)=>{if(t.ledDuty){const e=Math.round(t.ledDuty/255*100);M(e)}})))}),[W.secretKey]);const Q=(0,t.useCallback)((e=>{let{deviceUUID:t}=e;const r=Date.now().toString();window[`deviceListCallback_${r}`]=e=>{E(e)},Ue.triggerBridge({action:"requestBLEConnect",requestId:r,callbackName:`deviceListCallback_${r}`,deviceUUID:t})}),[]),K=(0,t.useCallback)((()=>{const e=Date.now().toString();window[`deviceListCallback_${e}`]=e=>{const t=e.op;if("onAPSettingChanged"===t){const{wifiSsid:t,wifiPwd:r}=e;u.updateDeviceState({deviceUUID:g,stateInfo:{wifiSsid:t,wifiPwd:r}})}else if("onMechStatus"===t){const{op:t,...r}=e;T(r)}},Ue.triggerBridge({action:"requestMonitorInternet",requestId:e,callbackName:`deviceListCallback_${e}`})}),[]),X=(0,t.useCallback)((e=>{let{deviceUUID:t}=e;const r=Date.now().toString();Ue.triggerBridge({action:"requestConfigureInternet",requestId:r,deviceUUID:t})}),[]),J=(0,t.useCallback)((()=>{Ue.triggerBridge({action:"requestEnablePullRefresh"})}),[]),$=(0,t.useCallback)((e=>{e.stopPropagation(),Z()}),[Z]),q=(0,t.useMemo)((()=>!!I&&(!Fk&&!!I.bleStatus&&"logined"!==I.bleStatus&&v)),[I,v]);(0,t.useLayoutEffect)((()=>{Fk||(v&&g&&J(),v&&g&&Q({deviceUUID:g}))}),[]);const ee=(0,t.useMemo)((()=>Fk?!(null===y||void 0===y||!y.bleConnected):I&&"logined"===I.bleStatus),[I,null===y||void 0===y?void 0:y.bleConnected]);return(0,t.useEffect)((()=>{!Fk&&ee&&K()}),[ee]),(0,qh.jsxs)(ym,{"data-refresh-disabled":(null===y||void 0===y||null===(r=y.hub)||void 0===r?void 0:r.otaProgress)>=0&&(null===y||void 0===y||null===(n=y.hub)||void 0===n?void 0:n.otaProgress)<100,sx:{height:"100dvh",overflow:"auto","&::-webkit-scrollbar":{display:"none"},msOverflowStyle:"none",scrollbarWidth:"none"},children:[Fk&&(0,qh.jsx)(ym,{sx:{height:48,display:"flex",alignItems:"center",bgcolor:"background.paper"},children:(0,qh.jsx)(cE.A,{onClick:()=>z(-1),disableRipple:!0,"aria-label":F("lockSettings.back"),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})})}),Fk&&(0,qh.jsx)(KL,{deviceUUID:g}),q&&(0,qh.jsx)(ym,{sx:{bgcolor:"error.main",p:1,px:2,display:"flex",alignItems:"center",color:"white",fontWeight:"bold"},children:(0,qh.jsx)(Bh.A,{children:I.bleStatus})}),(0,qh.jsxs)($T.A,{children:[(0,qh.jsx)(lO,{disablePadding:!0,children:(0,qh.jsx)(hB,{})}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:10}}),(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:F("pages.sesameAccessControlDevice.index.DeviceModel")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:W.deviceModel})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{onClick:()=>{if(Fk){if(!ee)return void d({open:!0,msg:F("lockSettings.failed"),severity:"error"});x(!0),Yk.request("hubSettings",{deviceUUID:g,operation:"scan"}).catch((()=>d({open:!0,msg:F("lockSettings.failed"),severity:"error"})))}else X({deviceUUID:g})},children:[(0,qh.jsx)(iD.A,{primary:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[F("pages.sesameAccessControlDevice.index.WiFiSSID"),W.stateInfo&&!(null!==(o=W.stateInfo)&&void 0!==o&&o.wifiSsid)&&(0,qh.jsx)(cD,{sx:{minWidth:"auto",color:"error.main"},children:(0,qh.jsx)(lL,{})})]})}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:null===(a=W.stateInfo)||void 0===a?void 0:a.wifiSsid}),(null===(i=W.stateInfo)||void 0===i?void 0:i.wifiSsid)&&U&&(0,qh.jsx)(cD,{onClick:$,sx:{minWidth:"auto",color:"title.other",mr:-1,p:1,cursor:"pointer",borderRadius:"4px"},children:(0,qh.jsx)(fF,{fontSize:"medium"})})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:F("pages.sesameAccessControlDevice.index.WiFiPWD")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:null===(s=W.stateInfo)||void 0===s?void 0:s.wifiPwd})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:F("pages.sesameAccessControlDevice.index.InternetStatus")}),(0,qh.jsx)(fB,{status:D,resolved:H,hub3Pro:U,connectivity:R})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsx)(DB,{device:W,bleAvailable:ee}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsx)(hF,{text:F("pages.sesameAccessControlDevice.index.LED"),value:O,onChangeCommitted:e=>G(e)}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsx)(vB,{device:W}),(null===W||void 0===W||null===(c=W.stateInfo)||void 0===c?void 0:c.registerTime)&&(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:F("pages.sesameAccessControlDevice.index.RegisterTime")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:new Date(Number(W.stateInfo.registerTime)).toLocaleString()})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{onClick:()=>{const e=new URL(window.location.href),t=new URLSearchParams(e.searchParams);t.set("deviceUUID",g),t.set("deviceName",W.deviceName||""),z({pathname:"/device-setting/factory-info",search:t.toString()})},sx:{cursor:"pointer"},children:[(0,qh.jsx)(iD.A,{primary:F("pages.sesameAccessControlDevice.index.UUID")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:"clamp(0.75rem, 2.5vw, 1rem)",minWidth:0},children:g}),(0,qh.jsx)(fU.A,{component:jN})]}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:10}}),!U&&(0,qh.jsxs)(lO,{onClick:P?null:V,children:[(0,qh.jsx)(iD.A,{primary:F("pages.sesameAccessControlDevice.index.Matter")}),(0,qh.jsxs)(cD,{sx:{minWidth:"auto",justifyContent:"center",display:"flex",alignItems:"center"},children:[P?(0,qh.jsx)(AE,{size:16,sx:{color:"title.other"}}):(0,qh.jsx)(zP,{}),(0,qh.jsx)(fU.A,{component:jN})]})]}),U&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:F("pages.sesameAccessControlDevice.index.EnableRelay1")}),(0,qh.jsx)(rB,{edge:"end",checked:N.enable1,onChange:e=>Y(1,e.target.checked)})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:F("pages.sesameAccessControlDevice.index.EnableRelay2")}),(0,qh.jsx)(rB,{edge:"end",checked:N.enable2,onChange:e=>Y(2,e.target.checked)})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",pl:2,py:.5},children:(0,qh.jsx)(Bh.A,{color:"info.light",sx:{lineHeight:"30px"},children:F("pages.sesameAccessControlDevice.index.BindDeviceToHub3Hint",{deviceName:"Hub3"})})}),(0,qh.jsx)(lO,{sx:{py:0},children:(0,qh.jsx)(pF,{device:W})}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",pl:2,py:.5},children:(0,qh.jsx)(Bh.A,{color:"info.light",sx:{lineHeight:"30px"},children:F("pages.sesameAccessControlDevice.index.BindIRToHub3Hint")})}),(0,qh.jsx)(lO,{sx:{py:0},children:(0,qh.jsx)(iL,{deviceUUID:g})})]}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:10}}),(0,qh.jsx)(gB,{deviceUUID:g,subUUID:h.customerInfo.subUUID,deviceName:null===W||void 0===W?void 0:W.deviceName}),w&&(0,qh.jsx)(uF,{deviceUUID:g,onClose:()=>x(!1)}),(0,qh.jsx)(oB,{onClose:()=>{C({qrCode:"",manualCode:""})},open:k.qrCode,qrCodeUrl:k.qrCode,isMobile:p.isMobile,userName:k.manualCode,title:`${F("pages.sesameAccessControlDevice.index.MatterPairingHint")}`,subtitle:" "})]})},gF=()=>{var e;const{gManageDevice:r}=(0,t.useContext)(VI),[n]=xv(),o=n.get("deviceUUID");return"wm_2"===((null===(e=r.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===(null===o||void 0===o?void 0:o.toUpperCase())})))||void 0===e?void 0:e.deviceModel)||n.get("deviceModel"))?(0,qh.jsx)(dF,{}):(0,qh.jsx)(mF,{})};function vF(e){return(0,oy.Ay)("MuiToggleButtonGroup",e)}const yF=(0,mm.A)("MuiToggleButtonGroup",["root","selected","horizontal","vertical","disabled","grouped","groupedHorizontal","groupedVertical","fullWidth","firstButton","lastButton","middleButton"]);const bF=t.createContext({});const wF=t.createContext(void 0);function xF(e){return(0,oy.Ay)("MuiToggleButton",e)}const SF=(0,mm.A)("MuiToggleButton",["root","disabled","selected","standard","primary","secondary","sizeSmall","sizeMedium","sizeLarge","fullWidth"]),AF=(0,am.Ay)("div",{name:"MuiToggleButtonGroup",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[{[`& .${yF.grouped}`]:t.grouped},{[`& .${yF.grouped}`]:t[`grouped${(0,ey.A)(r.orientation)}`]},{[`& .${yF.firstButton}`]:t.firstButton},{[`& .${yF.lastButton}`]:t.lastButton},{[`& .${yF.middleButton}`]:t.middleButton},t.root,"vertical"===r.orientation&&t.vertical,r.fullWidth&&t.fullWidth]}})((0,qv.A)((e=>{let{theme:t}=e;return{display:"inline-flex",borderRadius:(t.vars||t).shape.borderRadius,variants:[{props:{orientation:"vertical"},style:{flexDirection:"column",[`& .${yF.grouped}`]:{[`&.${yF.selected} + .${yF.grouped}.${yF.selected}`]:{borderTop:0,marginTop:0}},[`& .${yF.firstButton},& .${yF.middleButton}`]:{borderBottomLeftRadius:0,borderBottomRightRadius:0},[`& .${yF.lastButton},& .${yF.middleButton}`]:{marginTop:-1,borderTop:"1px solid transparent",borderTopLeftRadius:0,borderTopRightRadius:0},[`& .${yF.lastButton}.${SF.disabled},& .${yF.middleButton}.${SF.disabled}`]:{borderTop:"1px solid transparent"}}},{props:{fullWidth:!0},style:{width:"100%"}},{props:{orientation:"horizontal"},style:{[`& .${yF.grouped}`]:{[`&.${yF.selected} + .${yF.grouped}.${yF.selected}`]:{borderLeft:0,marginLeft:0}},[`& .${yF.firstButton},& .${yF.middleButton}`]:{borderTopRightRadius:0,borderBottomRightRadius:0},[`& .${yF.lastButton},& .${yF.middleButton}`]:{marginLeft:-1,borderLeft:"1px solid transparent",borderTopLeftRadius:0,borderBottomLeftRadius:0},[`& .${yF.lastButton}.${SF.disabled},& .${yF.middleButton}.${SF.disabled}`]:{borderLeft:"1px solid transparent"}}}]}}))),kF=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiToggleButtonGroup"}),{children:o,className:a,color:i="standard",disabled:s=!1,exclusive:l=!1,fullWidth:c=!1,onChange:u,orientation:d="horizontal",size:f="medium",value:p,...h}=n,m={...n,disabled:s,fullWidth:c,orientation:d,size:f},g=(e=>{const{classes:t,orientation:r,fullWidth:n,disabled:o}=e,a={root:["root",r,n&&"fullWidth"],grouped:["grouped",`grouped${(0,ey.A)(r)}`,o&&"disabled"],firstButton:["firstButton"],lastButton:["lastButton"],middleButton:["middleButton"]};return(0,zv.A)(a,vF,t)})(m),v=t.useCallback(((e,t)=>{if(!u)return;const r=p&&p.indexOf(t);let n;p&&r>=0?(n=p.slice(),n.splice(r,1)):n=p?p.concat(t):[t],u(e,n)}),[u,p]),y=t.useCallback(((e,t)=>{u&&u(e,p===t?null:t)}),[u,p]),b=t.useMemo((()=>({className:g.grouped,onChange:l?y:v,value:p,size:f,fullWidth:c,color:i,disabled:s})),[g.grouped,l,y,v,p,f,c,i,s]),w=function(e){return t.Children.toArray(e).filter((e=>t.isValidElement(e)))}(o),x=w.length,S=e=>{const t=0===e,r=e===x-1;return t&&r?"":t?g.firstButton:r?g.lastButton:g.middleButton};return(0,qh.jsx)(AF,{role:"group",className:(0,Fh.A)(g.root,a),ref:r,ownerState:m,...h,children:(0,qh.jsx)(bF.Provider,{value:b,children:w.map(((e,t)=>(0,qh.jsx)(wF.Provider,{value:S(t),children:e},t)))})})}));var CF=r(33136);function IF(e,t){return void 0!==t&&void 0!==e&&(Array.isArray(t)?t.includes(e):e===t)}const EF=(0,am.Ay)($E.A,{name:"MuiToggleButton",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,t[`size${(0,ey.A)(r.size)}`]]}})((0,qv.A)((e=>{let{theme:t}=e;return{...t.typography.button,borderRadius:(t.vars||t).shape.borderRadius,padding:11,border:`1px solid ${(t.vars||t).palette.divider}`,color:(t.vars||t).palette.action.active,[`&.${SF.disabled}`]:{color:(t.vars||t).palette.action.disabled,border:`1px solid ${(t.vars||t).palette.action.disabledBackground}`},"&:hover":{textDecoration:"none",backgroundColor:t.vars?`rgba(${t.vars.palette.text.primaryChannel} / ${t.vars.palette.action.hoverOpacity})`:(0,ry.X4)(t.palette.text.primary,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},variants:[{props:{color:"standard"},style:{[`&.${SF.selected}`]:{color:(t.vars||t).palette.text.primary,backgroundColor:t.vars?`rgba(${t.vars.palette.text.primaryChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,ry.X4)(t.palette.text.primary,t.palette.action.selectedOpacity),"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette.text.primaryChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:(0,ry.X4)(t.palette.text.primary,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:t.vars?`rgba(${t.vars.palette.text.primaryChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,ry.X4)(t.palette.text.primary,t.palette.action.selectedOpacity)}}}}},...Object.entries(t.palette).filter((0,pE.A)()).map((e=>{let[r]=e;return{props:{color:r},style:{[`&.${SF.selected}`]:{color:(t.vars||t).palette[r].main,backgroundColor:t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,ry.X4)(t.palette[r].main,t.palette.action.selectedOpacity),"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette[r].mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:(0,ry.X4)(t.palette[r].main,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:t.vars?`rgba(${t.vars.palette[r].mainChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,ry.X4)(t.palette[r].main,t.palette.action.selectedOpacity)}}}}}})),{props:{fullWidth:!0},style:{width:"100%"}},{props:{size:"small"},style:{padding:7,fontSize:t.typography.pxToRem(13)}},{props:{size:"large"},style:{padding:15,fontSize:t.typography.pxToRem(15)}}]}}))),DF=t.forwardRef((function(e,r){const{value:n,...o}=t.useContext(bF),a=t.useContext(wF),i=(0,CF.A)({...o,selected:IF(e.value,n)},e),s=(0,im.b)({props:i,name:"MuiToggleButton"}),{children:l,className:c,color:u="standard",disabled:d=!1,disableFocusRipple:f=!1,fullWidth:p=!1,onChange:h,onClick:m,selected:g,size:v="medium",value:y,...b}=s,w={...s,color:u,disabled:d,disableFocusRipple:f,fullWidth:p,size:v},x=(e=>{const{classes:t,fullWidth:r,selected:n,disabled:o,size:a,color:i}=e,s={root:["root",n&&"selected",o&&"disabled",r&&"fullWidth",`size${(0,ey.A)(a)}`,i]};return(0,zv.A)(s,xF,t)})(w),S=a||"";return(0,qh.jsx)(EF,{className:(0,Fh.A)(o.className,x.root,c,S),disabled:d,focusRipple:!f,ref:r,onClick:e=>{m&&(m(e,y),e.defaultPrevented)||h&&h(e,y)},onChange:h,value:y,ownerState:w,"aria-pressed":g,...b,children:l})}));var TF=r(1849),OF=r(76135),MF=r.n(OF),PF=r(74879),jF=r.n(PF);function RF(e){var t=10**(arguments.length>1&&void 0!==arguments[1]?arguments[1]:4),r=Math.round(e*t)/t;return Object.is(r,-0)?0:r}function _F(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return e.reduce(((e,t,n)=>{var o=r[n-1];return"string"===typeof o?e+o+t:void 0!==o?e+RF(o)+t:e+t}),"")}var NF=e=>0===e?0:e>0?1:-1,LF=e=>"number"==typeof e&&e!=+e,UF=e=>"string"===typeof e&&e.indexOf("%")===e.length-1,BF=e=>("number"===typeof e||e instanceof Number)&&!LF(e),FF=e=>BF(e)||"string"===typeof e,zF=0,WF=e=>{var t=++zF;return"".concat(e||"").concat(t)},HF=function(e,t){var r,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!BF(e)&&"string"!==typeof e)return n;if(UF(e)){if(null==t)return n;var a=e.indexOf("%");r=t*parseFloat(e.slice(0,a))/100}else r=+e;return LF(r)&&(r=n),o&&null!=t&&r>t&&(r=t),r},YF=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,r={},n=0;n<t;n++){if(r[String(e[n])])return!0;r[String(e[n])]=!0}return!1};function VF(e,t,r){return BF(e)&&BF(t)?RF(e+r*(t-e)):t}function GF(e,t,r){if(e&&e.length)return e.find((e=>e&&("function"===typeof t?t(e):jF()(e,t))===r))}var ZF=e=>null===e||"undefined"===typeof e,QF=e=>ZF(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function KF(e){return null!=e}function XF(){}var JF=function(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];if("undefined"!==typeof console&&console.warn&&(void 0===t&&console.warn("LogUtils requires an error message argument"),!e))if(void 0===t)console.warn("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var a=0;console.warn(t.replace(/%s/g,(()=>n[a++])))}},$F=(e,t,r)=>{var{width:n="100%",height:o="100%",aspect:a,maxHeight:i}=r,s=UF(n)?e:Number(n),l=UF(o)?t:Number(o);return a&&a>0&&(s?l=s/a:l&&(s=l*a),i&&null!=l&&l>i&&(l=i)),{calculatedWidth:s,calculatedHeight:l}},qF={width:0,height:0,overflow:"visible"},ez={width:0,overflowX:"visible"},tz={height:0,overflowY:"visible"},rz={},nz=e=>{var{width:t,height:r}=e,n=UF(t),o=UF(r);return n&&o?qF:n?ez:o?tz:rz};function oz(e){return Number.isFinite(e)}function az(e){return"number"===typeof e&&e>0&&Number.isFinite(e)}function iz(){return iz=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},iz.apply(null,arguments)}function sz(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function lz(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?sz(Object(r),!0).forEach((function(t){cz(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):sz(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function cz(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var uz=(0,t.createContext)({width:-1,height:-1});function dz(e){var{children:r,width:n,height:o}=e,a=(0,t.useMemo)((()=>({width:n,height:o})),[n,o]);return function(e){return az(e.width)&&az(e.height)}(a)?t.createElement(uz.Provider,{value:a},r):null}var fz=()=>(0,t.useContext)(uz),pz=(0,t.forwardRef)(((e,r)=>{var{aspect:n,initialDimension:o={width:-1,height:-1},width:a,height:i,minWidth:s=0,minHeight:l,maxHeight:c,children:u,debounce:d=0,id:f,className:p,onResize:h,style:m={}}=e,g=(0,t.useRef)(null),v=(0,t.useRef)();v.current=h,(0,t.useImperativeHandle)(r,(()=>g.current));var[y,b]=(0,t.useState)({containerWidth:o.width,containerHeight:o.height}),w=(0,t.useCallback)(((e,t)=>{b((r=>{var n=Math.round(e),o=Math.round(t);return r.containerWidth===n&&r.containerHeight===o?r:{containerWidth:n,containerHeight:o}}))}),[]);(0,t.useEffect)((()=>{if(null==g.current||"undefined"===typeof ResizeObserver)return XF;var e=e=>{var t,{width:r,height:n}=e[0].contentRect;w(r,n),null===(t=v.current)||void 0===t||t.call(v,r,n)};d>0&&(e=MF()(e,d,{trailing:!0,leading:!1}));var t=new ResizeObserver(e),{width:r,height:n}=g.current.getBoundingClientRect();return w(r,n),t.observe(g.current),()=>{t.disconnect()}}),[w,d]);var{containerWidth:x,containerHeight:S}=y;JF(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:A,calculatedHeight:k}=$F(x,S,{width:a,height:i,aspect:n,maxHeight:c});return JF(null!=A&&A>0||null!=k&&k>0,"The width(%s) and height(%s) of chart should be greater than 0,\n       please check the style of container, or the props width(%s) and height(%s),\n       or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\n       height and width.",A,k,a,i,s,l,n),t.createElement("div",{id:f?"".concat(f):void 0,className:(0,Fh.$)("recharts-responsive-container",p),style:lz(lz({},m),{},{width:a,height:i,minWidth:s,minHeight:l,maxHeight:c}),ref:g},t.createElement("div",{style:nz({width:a,height:i})},t.createElement(dz,{width:A,height:k},u)))})),hz=(0,t.forwardRef)(((e,r)=>{var n=fz();if(az(n.width)&&az(n.height))return e.children;var{width:o,height:a}=function(e){var{width:t,height:r,aspect:n}=e,o=t,a=r;return void 0===o&&void 0===a?(o="100%",a="100%"):void 0===o?o=n&&n>0?void 0:"100%":void 0===a&&(a=n&&n>0?void 0:"100%"),{width:o,height:a}}({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:i,calculatedHeight:s}=$F(void 0,void 0,{width:o,height:a,aspect:e.aspect,maxHeight:e.maxHeight});return BF(i)&&BF(s)?t.createElement(dz,{width:i,height:s},e.children):t.createElement(pz,iz({},e,{width:o,height:a,ref:r}))})),mz=Symbol.for("immer-nothing"),gz=Symbol.for("immer-draftable"),vz=Symbol.for("immer-state");function yz(e){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var bz=Object,wz=bz.getPrototypeOf,xz="constructor",Sz="prototype",Az="configurable",kz="enumerable",Cz="writable",Iz="value",Ez=e=>!!e&&!!e[vz];function Dz(e){return!!e&&(Mz(e)||Lz(e)||!!e[gz]||!!e[xz]?.[gz]||Uz(e)||Bz(e))}var Tz=bz[Sz][xz].toString(),Oz=new WeakMap;function Mz(e){if(!e||!Fz(e))return!1;const t=wz(e);if(null===t||t===bz[Sz])return!0;const r=bz.hasOwnProperty.call(t,xz)&&t[xz];if(r===Object)return!0;if(!zz(r))return!1;let n=Oz.get(r);return void 0===n&&(n=Function.toString.call(r),Oz.set(r,n)),n===Tz}function Pz(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(0===jz(e)){(r?Reflect.ownKeys(e):bz.keys(e)).forEach((r=>{t(r,e[r],e)}))}else e.forEach(((r,n)=>t(n,r,e)))}function jz(e){const t=e[vz];return t?t.type_:Lz(e)?1:Uz(e)?2:Bz(e)?3:0}var Rz=function(e,t){return 2===(arguments.length>2&&void 0!==arguments[2]?arguments[2]:jz(e))?e.has(t):bz[Sz].hasOwnProperty.call(e,t)},_z=function(e,t){return 2===(arguments.length>2&&void 0!==arguments[2]?arguments[2]:jz(e))?e.get(t):e[t]},Nz=function(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:jz(e);2===n?e.set(t,r):3===n?e.add(r):e[t]=r};var Lz=Array.isArray,Uz=e=>e instanceof Map,Bz=e=>e instanceof Set,Fz=e=>"object"===typeof e,zz=e=>"function"===typeof e,Wz=e=>"boolean"===typeof e;var Hz=e=>e.copy_||e.base_,Yz=e=>e.modified_?e.copy_:e.base_;function Vz(e,t){if(Uz(e))return new Map(e);if(Bz(e))return new Set(e);if(Lz(e))return Array[Sz].slice.call(e);const r=Mz(e);if(!0===t||"class_only"===t&&!r){const t=bz.getOwnPropertyDescriptors(e);delete t[vz];let r=Reflect.ownKeys(t);for(let n=0;n<r.length;n++){const o=r[n],a=t[o];!1===a[Cz]&&(a[Cz]=!0,a[Az]=!0),(a.get||a.set)&&(t[o]={[Az]:!0,[Cz]:!0,[kz]:a[kz],[Iz]:e[o]})}return bz.create(wz(e),t)}{const t=wz(e);if(null!==t&&r)return{...e};const n=bz.create(t);return bz.assign(n,e)}}function Gz(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return Qz(e)||Ez(e)||!Dz(e)||(jz(e)>1&&bz.defineProperties(e,{set:Zz,add:Zz,clear:Zz,delete:Zz}),bz.freeze(e),t&&Pz(e,((e,t)=>{Gz(t,!0)}),!1)),e}var Zz={[Iz]:function(){yz(2)}};function Qz(e){return null===e||!Fz(e)||bz.isFrozen(e)}var Kz="MapSet",Xz="Patches",Jz="ArrayMethods",$z={};function qz(e){const t=$z[e];return t||yz(0),t}var eW,tW=e=>!!$z[e];var rW=()=>eW;function nW(e,t){t&&(e.patchPlugin_=qz(Xz),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function oW(e){aW(e),e.drafts_.forEach(sW),e.drafts_=null}function aW(e){e===eW&&(eW=e.parent_)}var iW=e=>eW={drafts_:[],parent_:eW,immer_:e,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:tW(Kz)?qz(Kz):void 0,arrayMethodsPlugin_:tW(Jz)?qz(Jz):void 0};function sW(e){const t=e[vz];0===t.type_||1===t.type_?t.revoke_():t.revoked_=!0}function lW(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(void 0!==e&&e!==r){r[vz].modified_&&(oW(t),yz(4)),Dz(e)&&(e=cW(t,e));const{patchPlugin_:n}=t;n&&n.generateReplacementPatches_(r[vz].base_,e,t)}else e=cW(t,r);return function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Gz(t,r)}(t,e,!0),oW(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==mz?e:void 0}function cW(e,t){if(Qz(t))return t;const r=t[vz];if(!r){return gW(t,e.handledSet_,e)}if(!dW(r,e))return t;if(!r.modified_)return r.base_;if(!r.finalized_){const{callbacks_:t}=r;if(t)for(;t.length>0;){t.pop()(e)}hW(r,e)}return r.copy_}function uW(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var dW=(e,t)=>e.scope_===t,fW=[];function pW(e,t,r,n){const o=Hz(e),a=e.type_;if(void 0!==n){if(_z(o,n,a)===t)return void Nz(o,n,r,a)}if(!e.draftLocations_){const t=e.draftLocations_=new Map;Pz(o,((e,r)=>{if(Ez(r)){const n=t.get(r)||[];n.push(e),t.set(r,n)}}))}const i=e.draftLocations_.get(t)??fW;for(const s of i)Nz(o,s,r,a)}function hW(e,t){if(e.modified_&&!e.finalized_&&(3===e.type_||1===e.type_&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:r}=t;if(r){const n=r.getPath(e);n&&r.generatePatches_(e,n,t)}uW(e)}}function mW(e,t,r){const{scope_:n}=e;if(Ez(r)){const o=r[vz];dW(o,n)&&o.callbacks_.push((function(){SW(e);const n=Yz(o);pW(e,r,n,t)}))}else Dz(r)&&e.callbacks_.push((function(){const o=Hz(e);3===e.type_?o.has(r)&&gW(r,n.handledSet_,n):_z(o,t,e.type_)===r&&n.drafts_.length>1&&!0===(e.assigned_.get(t)??!1)&&e.copy_&&gW(_z(e.copy_,t,e.type_),n.handledSet_,n)}))}function gW(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||Ez(e)||t.has(e)||!Dz(e)||Qz(e)||(t.add(e),Pz(e,((n,o)=>{if(Ez(o)){const t=o[vz];if(dW(t,r)){const r=Yz(t);Nz(e,n,r,e.type_),uW(t)}}else Dz(o)&&gW(o,t,r)}))),e}var vW={get(e,t){if(t===vz)return e;let r=e.scope_.arrayMethodsPlugin_;const n=1===e.type_&&"string"===typeof t;if(n&&r?.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const o=Hz(e);if(!Rz(o,t,e.type_))return function(e,t,r){const n=wW(t,r);return n?Iz in n?n[Iz]:n.get?.call(e.draft_):void 0}(e,o,t);const a=o[t];if(e.finalized_||!Dz(a))return a;if(n&&e.operationMethod&&r?.isMutatingArrayMethod(e.operationMethod)&&function(e){const t=+e;return Number.isInteger(t)&&String(t)===e}(t))return a;if(a===bW(e.base_,t)){SW(e);const r=1===e.type_?+t:t,n=AW(e.scope_,a,e,r);return e.copy_[r]=n}return a},has:(e,t)=>t in Hz(e),ownKeys:e=>Reflect.ownKeys(Hz(e)),set(e,t,r){const n=wW(Hz(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const n=bW(Hz(e),t),i=n?.[vz];if(i&&i.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(((o=r)===(a=n)?0!==o||1/o===1/a:o!==o&&a!==a)&&(void 0!==r||Rz(e.base_,t,e.type_)))return!0;SW(e),xW(e)}var o,a;return e.copy_[t]===r&&(void 0!==r||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_.set(t,!0),mW(e,t,r)),!0},deleteProperty:(e,t)=>(SW(e),void 0!==bW(e.base_,t)||t in e.base_?(e.assigned_.set(t,!1),xW(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0),getOwnPropertyDescriptor(e,t){const r=Hz(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{[Cz]:!0,[Az]:1!==e.type_||"length"!==t,[kz]:n[kz],[Iz]:r[t]}:n},defineProperty(){yz(11)},getPrototypeOf:e=>wz(e.base_),setPrototypeOf(){yz(12)}},yW={};for(let r in vW){let e=vW[r];yW[r]=function(){const t=arguments;return t[0]=t[0][0],e.apply(this,t)}}function bW(e,t){const r=e[vz];return(r?Hz(r):e)[t]}function wW(e,t){if(!(t in e))return;let r=wz(e);for(;r;){const e=Object.getOwnPropertyDescriptor(r,t);if(e)return e;r=wz(r)}}function xW(e){e.modified_||(e.modified_=!0,e.parent_&&xW(e.parent_))}function SW(e){e.copy_||(e.assigned_=new Map,e.copy_=Vz(e.base_,e.scope_.immer_.useStrictShallowCopy_))}yW.deleteProperty=function(e,t){return yW.set.call(this,e,t,void 0)},yW.set=function(e,t,r){return vW.set.call(this,e[0],t,r,e[0])};function AW(e,t,r,n){const[o,a]=Uz(t)?qz(Kz).proxyMap_(t,r):Bz(t)?qz(Kz).proxySet_(t,r):function(e,t){const r=Lz(e),n={type_:r?1:0,scope_:t?t.scope_:rW(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let o=n,a=vW;r&&(o=[n],a=yW);const{revoke:i,proxy:s}=Proxy.revocable(o,a);return n.draft_=s,n.revoke_=i,[s,n]}(t,r);return(r?.scope_??rW()).drafts_.push(o),a.callbacks_=r?.callbacks_??[],a.key_=n,r&&void 0!==n?function(e,t,r){e.callbacks_.push((function(n){const o=t;if(!o||!dW(o,n))return;n.mapSetPlugin_?.fixSetContents(o);const a=Yz(o);pW(e,o.draft_??o,a,r),hW(o,n)}))}(r,a,n):a.callbacks_.push((function(e){e.mapSetPlugin_?.fixSetContents(a);const{patchPlugin_:t}=e;a.modified_&&t&&t.generatePatches_(a,[],e)})),o}function kW(e){return Ez(e)||yz(10),CW(e)}function CW(e){if(!Dz(e)||Qz(e))return e;const t=e[vz];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=Vz(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=Vz(e,!0);return Pz(r,((e,t)=>{Nz(r,e,CW(t))}),n),t&&(t.finalized_=!1),r}var IW=new class{constructor(e){var t=this;this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,r)=>{if(zz(e)&&!zz(t)){const r=t;t=e;const n=this;return function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r;for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;i<o;i++)a[i-1]=arguments[i];return n.produce(e,(e=>t.call(this,e,...a)))}}let n;if(zz(t)||yz(6),void 0===r||zz(r)||yz(7),Dz(e)){const o=iW(this),a=AW(o,e,void 0);let i=!0;try{n=t(a),i=!1}finally{i?oW(o):aW(o)}return nW(o,r),lW(n,o)}if(!e||!Fz(e)){if(n=t(e),void 0===n&&(n=e),n===mz&&(n=void 0),this.autoFreeze_&&Gz(n,!0),r){const t=[],o=[];qz(Xz).generateReplacementPatches_(e,n,{patches_:t,inversePatches_:o}),r(t,o)}return n}yz(1)},this.produceWithPatches=(e,r)=>{if(zz(e))return function(r){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a<n;a++)o[a-1]=arguments[a];return t.produceWithPatches(r,(t=>e(t,...o)))};let n,o;return[this.produce(e,r,((e,t)=>{n=e,o=t})),n,o]},Wz(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),Wz(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),Wz(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Dz(e)||yz(8),Ez(e)&&(e=kW(e));const t=iW(this),r=AW(t,e,void 0);return r[vz].isManual_=!0,aW(t),r}finishDraft(e,t){const r=e&&e[vz];r&&r.isManual_||yz(9);const{scope_:n}=r;return nW(n,t),lW(void 0,n)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){const n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));const n=qz(Xz).applyPatches_;return Ez(e)?n(e,t):this.produce(e,(e=>n(e,t)))}},EW=IW.produce;function DW(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var TW=(()=>"function"===typeof Symbol&&Symbol.observable||"@@observable")(),OW=()=>Math.random().toString(36).substring(7).split("").join("."),MW={INIT:`@@redux/INIT${OW()}`,REPLACE:`@@redux/REPLACE${OW()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${OW()}`};function PW(e){if("object"!==typeof e||null===e)return!1;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||null===Object.getPrototypeOf(e)}function jW(e,t,r){if("function"!==typeof e)throw new Error(DW(2));if("function"===typeof t&&"function"===typeof r||"function"===typeof r&&"function"===typeof arguments[3])throw new Error(DW(0));if("function"===typeof t&&"undefined"===typeof r&&(r=t,t=void 0),"undefined"!==typeof r){if("function"!==typeof r)throw new Error(DW(1));return r(jW)(e,t)}let n=e,o=t,a=new Map,i=a,s=0,l=!1;function c(){i===a&&(i=new Map,a.forEach(((e,t)=>{i.set(t,e)})))}function u(){if(l)throw new Error(DW(3));return o}function d(e){if("function"!==typeof e)throw new Error(DW(4));if(l)throw new Error(DW(5));let t=!0;c();const r=s++;return i.set(r,e),function(){if(t){if(l)throw new Error(DW(6));t=!1,c(),i.delete(r),a=null}}}function f(e){if(!PW(e))throw new Error(DW(7));if("undefined"===typeof e.type)throw new Error(DW(8));if("string"!==typeof e.type)throw new Error(DW(17));if(l)throw new Error(DW(9));try{l=!0,o=n(o,e)}finally{l=!1}return(a=i).forEach((e=>{e()})),e}f({type:MW.INIT});return{dispatch:f,subscribe:d,getState:u,replaceReducer:function(e){if("function"!==typeof e)throw new Error(DW(10));n=e,f({type:MW.REPLACE})},[TW]:function(){const e=d;return{subscribe(t){if("object"!==typeof t||null===t)throw new Error(DW(11));function r(){const e=t;e.next&&e.next(u())}r();return{unsubscribe:e(r)}},[TW](){return this}}}}}function RW(e){const t=Object.keys(e),r={};for(let a=0;a<t.length;a++){const n=t[a];0,"function"===typeof e[n]&&(r[n]=e[n])}const n=Object.keys(r);let o;try{!function(e){Object.keys(e).forEach((t=>{const r=e[t];if("undefined"===typeof r(void 0,{type:MW.INIT}))throw new Error(DW(12));if("undefined"===typeof r(void 0,{type:MW.PROBE_UNKNOWN_ACTION()}))throw new Error(DW(13))}))}(r)}catch(o6){o=o6}return function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;if(o)throw o;let a=!1;const i={};for(let o=0;o<n.length;o++){const s=n[o],l=r[s],c=e[s],u=l(c,t);if("undefined"===typeof u){t&&t.type;throw new Error(DW(14))}i[s]=u,a=a||u!==c}return a=a||n.length!==Object.keys(e).length,a?i:e}}function _W(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return 0===t.length?e=>e:1===t.length?t[0]:t.reduce(((e,t)=>function(){return e(t(...arguments))}))}function NW(e){return PW(e)&&"type"in e&&"string"===typeof e.type}function LW(e){return t=>{let{dispatch:r,getState:n}=t;return t=>o=>"function"===typeof o?o(r,n,e):t(o)}}var UW=LW(),BW=LW,FW="undefined"!==typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"===typeof arguments[0]?_W:_W.apply(null,arguments)};"undefined"!==typeof window&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__;function zW(e,t){function r(){if(t){let r=t(...arguments);if(!r)throw new Error(_H(0));return{type:e,payload:r.payload,..."meta"in r&&{meta:r.meta},..."error"in r&&{error:r.error}}}return{type:e,payload:arguments.length<=0?void 0:arguments[0]}}return r.toString=()=>`${e}`,r.type=e,r.match=t=>NW(t)&&t.type===e,r}var WW=class e extends Array{constructor(){super(...arguments),Object.setPrototypeOf(this,e.prototype)}static get[Symbol.species](){return e}concat(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return super.concat.apply(this,t)}prepend(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return 1===r.length&&Array.isArray(r[0])?new e(...r[0].concat(this)):new e(...r.concat(this))}};function HW(e){return Dz(e)?EW(e,(()=>{})):e}function YW(e,t,r){return e.has(t)?e.get(t):e.set(t,r(t)).get(t)}var VW="RTK_autoBatch",GW=()=>e=>({payload:e,meta:{[VW]:!0}}),ZW=e=>t=>{setTimeout(t,e)},QW=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{type:"raf"};return t=>function(){const r=t(...arguments);let n=!0,o=!1,a=!1;const i=new Set,s="tick"===e.type?queueMicrotask:"raf"===e.type?"undefined"!==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame:ZW(10):"callback"===e.type?e.queueNotification:ZW(e.timeout),l=()=>{a=!1,o&&(o=!1,i.forEach((e=>e())))};return Object.assign({},r,{subscribe(e){const t=r.subscribe((()=>n&&e()));return i.add(e),()=>{t(),i.delete(e)}},dispatch(e){try{return n=!e?.meta?.[VW],o=!n,o&&(a||(a=!0,s(l))),r.dispatch(e)}finally{n=!0}}})}};function KW(e){const t=function(e){const{thunk:t=!0,immutableCheck:r=!0,serializableCheck:n=!0,actionCreatorCheck:o=!0}=e??{};let a=new WW;return t&&("boolean"===typeof t?a.push(UW):a.push(BW(t.extraArgument))),a},{reducer:r,middleware:n,devTools:o=!0,duplicateMiddlewareCheck:a=!0,preloadedState:i,enhancers:s}=e||{};let l,c;if("function"===typeof r)l=r;else{if(!PW(r))throw new Error(_H(1));l=RW(r)}c="function"===typeof n?n(t):t();let u=_W;o&&(u=FW({trace:!1,..."object"===typeof o&&o}));const d=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return e=>(r,n)=>{const o=e(r,n);let a=()=>{throw new Error(DW(15))};const i={getState:o.getState,dispatch:function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return a(e,...r)}},s=t.map((e=>e(i)));return a=_W(...s)(o.dispatch),{...o,dispatch:a}}}(...c),f=(e=>function(t){const{autoBatch:r=!0}=t??{};let n=new WW(e);return r&&n.push(QW("object"===typeof r?r:void 0)),n})(d);return jW(l,i,u(..."function"===typeof s?s(f):f()))}function XW(e){const t={},r=[];let n;const o={addCase(e,r){const n="string"===typeof e?e:e.type;if(!n)throw new Error(_H(28));if(n in t)throw new Error(_H(29));return t[n]=r,o},addAsyncThunk:(e,n)=>(n.pending&&(t[e.pending.type]=n.pending),n.rejected&&(t[e.rejected.type]=n.rejected),n.fulfilled&&(t[e.fulfilled.type]=n.fulfilled),n.settled&&r.push({matcher:e.settled,reducer:n.settled}),o),addMatcher:(e,t)=>(r.push({matcher:e,reducer:t}),o),addDefaultCase:e=>(n=e,o)};return e(o),[t,r,n]}var JW=function(){let e="",t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:21;for(;t--;)e+="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW"[64*Math.random()|0];return e};var $W=Symbol.for("rtk-slice-createasyncthunk");function qW(e,t){return`${e}/${t}`}function eH(){let{creators:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=e?.asyncThunk?.[$W];return function(e){const{name:r,reducerPath:n=r}=e;if(!r)throw new Error(_H(11));const o=("function"===typeof e.reducers?e.reducers(function(){function e(e,t){return{_reducerDefinitionType:"asyncThunk",payloadCreator:e,...t}}return e.withTypes=()=>e,{reducer:e=>Object.assign({[e.name](){return e(...arguments)}}[e.name],{_reducerDefinitionType:"reducer"}),preparedReducer:(e,t)=>({_reducerDefinitionType:"reducerWithPrepare",prepare:e,reducer:t}),asyncThunk:e}}()):e.reducers)||{},a=Object.keys(o),i={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},s={addCase(e,t){const r="string"===typeof e?e:e.type;if(!r)throw new Error(_H(12));if(r in i.sliceCaseReducersByType)throw new Error(_H(13));return i.sliceCaseReducersByType[r]=t,s},addMatcher:(e,t)=>(i.sliceMatchers.push({matcher:e,reducer:t}),s),exposeAction:(e,t)=>(i.actionCreators[e]=t,s),exposeCaseReducer:(e,t)=>(i.sliceCaseReducersByName[e]=t,s)};function l(){const[t={},r=[],n]="function"===typeof e.extraReducers?XW(e.extraReducers):[e.extraReducers],o={...t,...i.sliceCaseReducersByType};return function(e,t){let r,[n,o,a]=XW(t);if("function"===typeof e)r=()=>HW(e());else{const t=HW(e);r=()=>t}function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r(),t=arguments.length>1?arguments[1]:void 0,i=[n[t.type],...o.filter((e=>{let{matcher:r}=e;return r(t)})).map((e=>{let{reducer:t}=e;return t}))];return 0===i.filter((e=>!!e)).length&&(i=[a]),i.reduce(((e,r)=>{if(r){if(Ez(e)){const n=r(e,t);return void 0===n?e:n}if(Dz(e))return EW(e,(e=>r(e,t)));{const n=r(e,t);if(void 0===n){if(null===e)return e;throw Error("A case reducer on a non-draftable value must not return undefined")}return n}}return e}),e)}return i.getInitialState=r,i}(e.initialState,(e=>{for(let t in o)e.addCase(t,o[t]);for(let t of i.sliceMatchers)e.addMatcher(t.matcher,t.reducer);for(let t of r)e.addMatcher(t.matcher,t.reducer);n&&e.addDefaultCase(n)}))}a.forEach((n=>{const a=o[n],i={reducerName:n,type:qW(r,n),createNotation:"function"===typeof e.reducers};!function(e){return"asyncThunk"===e._reducerDefinitionType}(a)?function(e,t,r){let n,o,{type:a,reducerName:i,createNotation:s}=e;if("reducer"in t){if(s&&!function(e){return"reducerWithPrepare"===e._reducerDefinitionType}(t))throw new Error(_H(17));n=t.reducer,o=t.prepare}else n=t;r.addCase(a,n).exposeCaseReducer(i,n).exposeAction(i,o?zW(a,o):zW(a))}(i,a,s):function(e,t,r,n){let{type:o,reducerName:a}=e;if(!n)throw new Error(_H(18));const{payloadCreator:i,fulfilled:s,pending:l,rejected:c,settled:u,options:d}=t,f=n(o,i,d);r.exposeAction(a,f),s&&r.addCase(f.fulfilled,s);l&&r.addCase(f.pending,l);c&&r.addCase(f.rejected,c);u&&r.addMatcher(f.settled,u);r.exposeCaseReducer(a,{fulfilled:s||nH,pending:l||nH,rejected:c||nH,settled:u||nH})}(i,a,s,t)}));const c=e=>e,u=new Map,d=new WeakMap;let f;function p(e,t){return f||(f=l()),f(e,t)}function h(){return f||(f=l()),f.getInitialState()}function m(t){let r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];function n(e){let o=e[t];return"undefined"===typeof o&&r&&(o=YW(d,n,h)),o}function o(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:c;const n=YW(u,r,(()=>new WeakMap));return YW(n,t,(()=>{const n={};for(const[o,a]of Object.entries(e.selectors??{}))n[o]=tH(a,t,(()=>YW(d,t,h)),r);return n}))}return{reducerPath:t,getSelectors:o,get selectors(){return o(n)},selectSlice:n}}const g={name:r,reducer:p,actions:i.actionCreators,caseReducers:i.sliceCaseReducersByName,getInitialState:h,...m(n),injectInto(e){let{reducerPath:t,...r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=t??n;return e.inject({reducerPath:o,reducer:p},r),{...g,...m(o,!0)}}};return g}}function tH(e,t,r,n){function o(o){let a=t(o);"undefined"===typeof a&&n&&(a=r());for(var i=arguments.length,s=new Array(i>1?i-1:0),l=1;l<i;l++)s[l-1]=arguments[l];return e(a,...s)}return o.unwrapped=e,o}var rH=eH();function nH(){}var oH="listener",aH="completed",iH="cancelled",sH=`task-${iH}`,lH=`task-${aH}`,cH=`${oH}-${iH}`,uH=`${oH}-${aH}`,dH=class{constructor(e){this.code=e,this.message=`task ${iH} (reason: ${e})`}name="TaskAbortError";message},fH=(e,t)=>{if("function"!==typeof e)throw new TypeError(_H(32))},pH=()=>{},hH=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:pH;return e.catch(t),e},mH=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),gH=e=>{if(e.aborted)throw new dH(e.reason)};function vH(e,t){let r=pH;return new Promise(((n,o)=>{const a=()=>o(new dH(e.reason));e.aborted?a():(r=mH(e,a),t.finally((()=>r())).then(n,o))})).finally((()=>{r=pH}))}var yH=e=>t=>hH(vH(e,t).then((t=>(gH(e),t)))),bH=e=>{const t=yH(e);return e=>t(new Promise((t=>setTimeout(t,e))))},{assign:wH}=Object,xH={},SH="listenerMiddleware",AH=(e,t)=>(r,n)=>{fH(r);const o=new AbortController;var a;a=o,mH(e,(()=>a.abort(e.reason)));const i=(async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(r){return{status:r instanceof dH?"cancelled":"rejected",error:r}}finally{t?.()}})((async()=>{gH(e),gH(o.signal);const t=await r({pause:yH(o.signal),delay:bH(o.signal),signal:o.signal});return gH(o.signal),t}),(()=>o.abort(lH)));return n?.autoJoin&&t.push(i.catch(pH)),{result:yH(e)(i),cancel(){o.abort(sH)}}},kH=(e,t)=>(r,n)=>hH((async(r,n)=>{gH(t);let o=()=>{};const a=[new Promise(((t,n)=>{let a=e({predicate:r,effect:(e,r)=>{r.unsubscribe(),t([e,r.getState(),r.getOriginalState()])}});o=()=>{a(),n()}}))];null!=n&&a.push(new Promise((e=>setTimeout(e,n,null))));try{const e=await vH(t,Promise.race(a));return gH(t),e}finally{o()}})(r,n)),CH=e=>{let{type:t,actionCreator:r,matcher:n,predicate:o,effect:a}=e;if(t)o=zW(t).match;else if(r)t=r.type,o=r.match;else if(n)o=n;else if(!o)throw new Error(_H(21));return fH(a),{predicate:o,type:t,effect:a}},IH=wH((e=>{const{type:t,predicate:r,effect:n}=CH(e);return{id:JW(),effect:n,type:t,predicate:r,pending:new Set,unsubscribe:()=>{throw new Error(_H(22))}}}),{withTypes:()=>IH}),EH=(e,t)=>{const{type:r,effect:n,predicate:o}=CH(t);return Array.from(e.values()).find((e=>("string"===typeof r?e.type===r:e.predicate===o)&&e.effect===n))},DH=e=>{e.pending.forEach((e=>{e.abort(cH)}))},TH=(e,t,r)=>{try{e(t,r)}catch(n){setTimeout((()=>{throw n}),0)}},OH=wH(zW(`${SH}/add`),{withTypes:()=>OH}),MH=zW(`${SH}/removeAll`),PH=wH(zW(`${SH}/remove`),{withTypes:()=>PH}),jH=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];console.error(`${SH}/error`,...t)},RH=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=new Map,r=new Map,{extra:n,onError:o=jH}=e;fH(o);const a=e=>(e=>(e.unsubscribe=()=>t.delete(e.id),t.set(e.id,e),t=>{e.unsubscribe(),t?.cancelActive&&DH(e)}))(EH(t,e)??IH(e));wH(a,{withTypes:()=>a});const i=e=>{const r=EH(t,e);return r&&(r.unsubscribe(),e.cancelActive&&DH(r)),!!r};wH(i,{withTypes:()=>i});const s=async(e,i,s,l)=>{const c=new AbortController,u=kH(a,c.signal),d=[];try{e.pending.add(c),(e=>{const t=r.get(e)??0;r.set(e,t+1)})(e),await Promise.resolve(e.effect(i,wH({},s,{getOriginalState:l,condition:(e,t)=>u(e,t).then(Boolean),take:u,delay:bH(c.signal),pause:yH(c.signal),extra:n,signal:c.signal,fork:AH(c.signal,d),unsubscribe:e.unsubscribe,subscribe:()=>{t.set(e.id,e)},cancelActiveListeners:()=>{e.pending.forEach(((e,t,r)=>{e!==c&&(e.abort(cH),r.delete(e))}))},cancel:()=>{c.abort(cH),e.pending.delete(c)},throwIfCancelled:()=>{gH(c.signal)}})))}catch(f){f instanceof dH||TH(o,f,{raisedBy:"effect"})}finally{await Promise.all(d),c.abort(uH),(e=>{const t=r.get(e)??1;1===t?r.delete(e):r.set(e,t-1)})(e),e.pending.delete(c)}},l=((e,t)=>()=>{for(const e of t.keys())DH(e);e.clear()})(t,r);return{middleware:e=>r=>n=>{if(!NW(n))return r(n);if(OH.match(n))return a(n.payload);if(MH.match(n))return void l();if(PH.match(n))return i(n.payload);let c=e.getState();const u=()=>{if(c===xH)throw new Error(_H(23));return c};let d;try{if(d=r(n),t.size>0){const r=e.getState(),a=Array.from(t.values());for(const t of a){let a=!1;try{a=t.predicate(n,r,c)}catch(f){a=!1,TH(o,f,{raisedBy:"predicate"})}a&&s(t,n,e,u)}}}finally{c=xH}return d},startListening:a,stopListening:i,clearListeners:l}};Symbol.for("rtk-state-proxy-original");function _H(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}function NH(e,t){if(t){var r=Number.parseInt(t,10);if(!LF(r))return null===e||void 0===e?void 0:e[r]}}var LH=rH({name:"options",initialState:{chartName:"",tooltipPayloadSearcher:void 0,eventEmitter:void 0,defaultTooltipEventType:"axis"},reducers:{createEventEmitter:e=>{null==e.eventEmitter&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),UH=LH.reducer,{createEventEmitter:BH}=LH.actions;r(67256);function FH(e){e()}var zH={notify(){},get:()=>[]};function WH(e,t){let r,n=zH,o=0,a=!1;function i(){c.onStateChange&&c.onStateChange()}function s(){o++,r||(r=t?t.addNestedSub(i):e.subscribe(i),n=function(){let e=null,t=null;return{clear(){e=null,t=null},notify(){FH((()=>{let t=e;for(;t;)t.callback(),t=t.next}))},get(){const t=[];let r=e;for(;r;)t.push(r),r=r.next;return t},subscribe(r){let n=!0;const o=t={callback:r,next:null,prev:t};return o.prev?o.prev.next=o:e=o,function(){n&&null!==e&&(n=!1,o.next?o.next.prev=o.prev:t=o.prev,o.prev?o.prev.next=o.next:e=o.next)}}}}())}function l(){o--,r&&0===o&&(r(),r=void 0,n.clear(),n=zH)}const c={addNestedSub:function(e){s();const t=n.subscribe(e);let r=!1;return()=>{r||(r=!0,t(),l())}},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:i,isSubscribed:function(){return a},trySubscribe:function(){a||(a=!0,s())},tryUnsubscribe:function(){a&&(a=!1,l())},getListeners:()=>n};return c}var HH=(()=>!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement))(),YH=(()=>"undefined"!==typeof navigator&&"ReactNative"===navigator.product)(),VH=(()=>HH||YH?t.useLayoutEffect:t.useEffect)();function GH(e,t){return e===t?0!==e||0!==t||1/e===1/t:e!==e&&t!==t}function ZH(e,t){if(GH(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(let o=0;o<r.length;o++)if(!Object.prototype.hasOwnProperty.call(t,r[o])||!GH(e[r[o]],t[r[o]]))return!1;return!0}Object.defineProperty,Object.getOwnPropertyNames,Object.getOwnPropertySymbols,Object.getOwnPropertyDescriptor,Object.getPrototypeOf,Object.prototype;var QH=Symbol.for("react-redux-context"),KH="undefined"!==typeof globalThis?globalThis:{};function XH(){if(!t.createContext)return{};const e=KH[QH]??=new Map;let r=e.get(t.createContext);return r||(r=t.createContext(null),e.set(t.createContext,r)),r}var JH=XH();var $H=function(e){const{children:r,context:n,serverState:o,store:a}=e,i=t.useMemo((()=>{const e=WH(a);return{store:a,subscription:e,getServerState:o?()=>o:void 0}}),[a,o]),s=t.useMemo((()=>a.getState()),[a]);VH((()=>{const{subscription:e}=i;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),s!==a.getState()&&e.notifyNestedSubs(),()=>{e.tryUnsubscribe(),e.onStateChange=void 0}}),[i,s]);const l=n||JH;return t.createElement(l.Provider,{value:i},r)};var qH=Symbol.for("immer-nothing"),eY=Symbol.for("immer-draftable"),tY=Symbol.for("immer-state");function rY(e){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var nY=Object.getPrototypeOf;function oY(e){return!!e&&!!e[tY]}function aY(e){return!!e&&(lY(e)||Array.isArray(e)||!!e[eY]||!!e.constructor?.[eY]||pY(e)||hY(e))}var iY=Object.prototype.constructor.toString(),sY=new WeakMap;function lY(e){if(!e||"object"!==typeof e)return!1;const t=Object.getPrototypeOf(e);if(null===t||t===Object.prototype)return!0;const r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(r===Object)return!0;if("function"!==typeof r)return!1;let n=sY.get(r);return void 0===n&&(n=Function.toString.call(r),sY.set(r,n)),n===iY}function cY(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(0===uY(e)){(r?Reflect.ownKeys(e):Object.keys(e)).forEach((r=>{t(r,e[r],e)}))}else e.forEach(((r,n)=>t(n,r,e)))}function uY(e){const t=e[tY];return t?t.type_:Array.isArray(e)?1:pY(e)?2:hY(e)?3:0}function dY(e,t){return 2===uY(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function fY(e,t,r){const n=uY(e);2===n?e.set(t,r):3===n?e.add(r):e[t]=r}function pY(e){return e instanceof Map}function hY(e){return e instanceof Set}function mY(e){return e.copy_||e.base_}function gY(e,t){if(pY(e))return new Map(e);if(hY(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const r=lY(e);if(!0===t||"class_only"===t&&!r){const t=Object.getOwnPropertyDescriptors(e);delete t[tY];let r=Reflect.ownKeys(t);for(let n=0;n<r.length;n++){const o=r[n],a=t[o];!1===a.writable&&(a.writable=!0,a.configurable=!0),(a.get||a.set)&&(t[o]={configurable:!0,writable:!0,enumerable:a.enumerable,value:e[o]})}return Object.create(nY(e),t)}{const t=nY(e);if(null!==t&&r)return{...e};const n=Object.create(t);return Object.assign(n,e)}}function vY(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return bY(e)||oY(e)||!aY(e)||(uY(e)>1&&Object.defineProperties(e,{set:yY,add:yY,clear:yY,delete:yY}),Object.freeze(e),t&&Object.values(e).forEach((e=>vY(e,!0)))),e}var yY={value:function(){rY(2)}};function bY(e){return null===e||"object"!==typeof e||Object.isFrozen(e)}var wY,xY={};function SY(e){const t=xY[e];return t||rY(0),t}function AY(){return wY}function kY(e,t){t&&(SY("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function CY(e){IY(e),e.drafts_.forEach(DY),e.drafts_=null}function IY(e){e===wY&&(wY=e.parent_)}function EY(e){return wY={drafts_:[],parent_:wY,immer_:e,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function DY(e){const t=e[tY];0===t.type_||1===t.type_?t.revoke_():t.revoked_=!0}function TY(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];return void 0!==e&&e!==r?(r[tY].modified_&&(CY(t),rY(4)),aY(e)&&(e=OY(t,e),t.parent_||PY(t,e)),t.patches_&&SY("Patches").generateReplacementPatches_(r[tY].base_,e,t.patches_,t.inversePatches_)):e=OY(t,r,[]),CY(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==qH?e:void 0}function OY(e,t,r){if(bY(t))return t;const n=e.immer_.shouldUseStrictIteration(),o=t[tY];if(!o)return cY(t,((n,a)=>MY(e,o,t,n,a,r)),n),t;if(o.scope_!==e)return t;if(!o.modified_)return PY(e,o.base_,!0),o.base_;if(!o.finalized_){o.finalized_=!0,o.scope_.unfinalizedDrafts_--;const t=o.copy_;let a=t,i=!1;3===o.type_&&(a=new Set(t),t.clear(),i=!0),cY(a,((n,a)=>MY(e,o,t,n,a,r,i)),n),PY(e,t,!1),r&&e.patches_&&SY("Patches").generatePatches_(o,r,e.patches_,e.inversePatches_)}return o.copy_}function MY(e,t,r,n,o,a,i){if(null==o)return;if("object"!==typeof o&&!i)return;const s=bY(o);if(!s||i){if(oY(o)){const i=OY(e,o,a&&t&&3!==t.type_&&!dY(t.assigned_,n)?a.concat(n):void 0);if(fY(r,n,i),!oY(i))return;e.canAutoFreeze_=!1}else i&&r.add(o);if(aY(o)&&!s){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1)return;if(t&&t.base_&&t.base_[n]===o&&s)return;OY(e,o),t&&t.scope_.parent_||"symbol"===typeof n||!(pY(r)?r.has(n):Object.prototype.propertyIsEnumerable.call(r,n))||PY(e,o)}}}function PY(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&vY(t,r)}var jY={get(e,t){if(t===tY)return e;const r=mY(e);if(!dY(r,t))return function(e,t,r){const n=NY(t,r);return n?"value"in n?n.value:n.get?.call(e.draft_):void 0}(e,r,t);const n=r[t];return e.finalized_||!aY(n)?n:n===_Y(e.base_,t)?(UY(e),e.copy_[t]=BY(n,e)):n},has:(e,t)=>t in mY(e),ownKeys:e=>Reflect.ownKeys(mY(e)),set(e,t,r){const n=NY(mY(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const n=_Y(mY(e),t),i=n?.[tY];if(i&&i.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(((o=r)===(a=n)?0!==o||1/o===1/a:o!==o&&a!==a)&&(void 0!==r||dY(e.base_,t)))return!0;UY(e),LY(e)}var o,a;return e.copy_[t]===r&&(void 0!==r||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_[t]=!0),!0},deleteProperty:(e,t)=>(void 0!==_Y(e.base_,t)||t in e.base_?(e.assigned_[t]=!1,UY(e),LY(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0),getOwnPropertyDescriptor(e,t){const r=mY(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{writable:!0,configurable:1!==e.type_||"length"!==t,enumerable:n.enumerable,value:r[t]}:n},defineProperty(){rY(11)},getPrototypeOf:e=>nY(e.base_),setPrototypeOf(){rY(12)}},RY={};function _Y(e,t){const r=e[tY];return(r?mY(r):e)[t]}function NY(e,t){if(!(t in e))return;let r=nY(e);for(;r;){const e=Object.getOwnPropertyDescriptor(r,t);if(e)return e;r=nY(r)}}function LY(e){e.modified_||(e.modified_=!0,e.parent_&&LY(e.parent_))}function UY(e){e.copy_||(e.copy_=gY(e.base_,e.scope_.immer_.useStrictShallowCopy_))}cY(jY,((e,t)=>{RY[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),RY.deleteProperty=function(e,t){return RY.set.call(this,e,t,void 0)},RY.set=function(e,t,r){return jY.set.call(this,e[0],t,r,e[0])};function BY(e,t){const r=pY(e)?SY("MapSet").proxyMap_(e,t):hY(e)?SY("MapSet").proxySet_(e,t):function(e,t){const r=Array.isArray(e),n={type_:r?1:0,scope_:t?t.scope_:AY(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let o=n,a=jY;r&&(o=[n],a=RY);const{revoke:i,proxy:s}=Proxy.revocable(o,a);return n.draft_=s,n.revoke_=i,s}(e,t);return(t?t.scope_:AY()).drafts_.push(r),r}function FY(e){if(!aY(e)||bY(e))return e;const t=e[tY];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=gY(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=gY(e,!0);return cY(r,((e,t)=>{fY(r,e,FY(t))}),n),t&&(t.finalized_=!1),r}var zY=new class{constructor(e){var t=this;this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(e,t,r)=>{if("function"===typeof e&&"function"!==typeof t){const r=t;t=e;const n=this;return function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r;for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;i<o;i++)a[i-1]=arguments[i];return n.produce(e,(e=>t.call(this,e,...a)))}}let n;if("function"!==typeof t&&rY(6),void 0!==r&&"function"!==typeof r&&rY(7),aY(e)){const o=EY(this),a=BY(e,void 0);let i=!0;try{n=t(a),i=!1}finally{i?CY(o):IY(o)}return kY(o,r),TY(n,o)}if(!e||"object"!==typeof e){if(n=t(e),void 0===n&&(n=e),n===qH&&(n=void 0),this.autoFreeze_&&vY(n,!0),r){const t=[],o=[];SY("Patches").generateReplacementPatches_(e,n,t,o),r(t,o)}return n}rY(1)},this.produceWithPatches=(e,r)=>{if("function"===typeof e)return function(r){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a<n;a++)o[a-1]=arguments[a];return t.produceWithPatches(r,(t=>e(t,...o)))};let n,o;return[this.produce(e,r,((e,t)=>{n=e,o=t})),n,o]},"boolean"===typeof e?.autoFreeze&&this.setAutoFreeze(e.autoFreeze),"boolean"===typeof e?.useStrictShallowCopy&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),"boolean"===typeof e?.useStrictIteration&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){aY(e)||rY(8),oY(e)&&(e=function(e){oY(e)||rY(10);return FY(e)}(e));const t=EY(this),r=BY(e,void 0);return r[tY].isManual_=!0,IY(t),r}finishDraft(e,t){const r=e&&e[tY];r&&r.isManual_||rY(9);const{scope_:n}=r;return kY(n,t),TY(void 0,n)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){const n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));const n=SY("Patches").applyPatches_;return oY(e)?n(e,t):this.produce(e,(e=>n(e,t)))}};zY.produce;var WY={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},HY=rH({name:"tooltip",initialState:{itemInteraction:{click:WY,hover:WY},axisInteraction:{click:WY,hover:WY},keyboardInteraction:WY,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:GW()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:r,next:n}=t.payload,o=kW(e).tooltipItemPayloads.indexOf(r);o>-1&&(e.tooltipItemPayloads[o]=n)},prepare:GW()},removeTooltipEntrySettings:{reducer(e,t){var r=kW(e).tooltipItemPayloads.indexOf(t.payload);r>-1&&e.tooltipItemPayloads.splice(r,1)},prepare:GW()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),{addTooltipEntrySettings:YY,replaceTooltipEntrySettings:VY,removeTooltipEntrySettings:GY,setTooltipSettingsState:ZY,setActiveMouseOverItemIndex:QY,mouseLeaveItem:KY,mouseLeaveChart:XY,setActiveClickItemIndex:JY,setMouseOverAxisIndex:$Y,setMouseClickAxisIndex:qY,setSyncInteraction:eV,setKeyboardInteraction:tV}=HY.actions,rV=HY.reducer,nV=rH({name:"chartData",initialState:{chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},reducers:{setChartData(e,t){if(e.chartData=t.payload,null==t.payload)return e.dataStartIndex=0,void(e.dataEndIndex=0);t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var{startIndex:r,endIndex:n}=t.payload;null!=r&&(e.dataStartIndex=r),null!=n&&(e.dataEndIndex=n)}}}),{setChartData:oV,setDataStartEndIndexes:aV,setComputedData:iV}=nV.actions,sV=nV.reducer,lV=rH({name:"chartLayout",initialState:{layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var r,n,o,a;e.margin.top=null!==(r=t.payload.top)&&void 0!==r?r:0,e.margin.right=null!==(n=t.payload.right)&&void 0!==n?n:0,e.margin.bottom=null!==(o=t.payload.bottom)&&void 0!==o?o:0,e.margin.left=null!==(a=t.payload.left)&&void 0!==a?a:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:cV,setLayout:uV,setChartSize:dV,setScale:fV}=lV.actions,pV=lV.reducer;function hV(e){if("function"!==typeof e)throw new TypeError(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"expected a function, instead received "+typeof e)}var mV=e=>Array.isArray(e)?e:[e];function gV(e){const t=Array.isArray(e[0])?e[0]:e;return function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"expected all items to be functions, instead received the following types: ";if(!e.every((e=>"function"===typeof e))){const r=e.map((e=>"function"===typeof e?`function ${e.name||"unnamed"}()`:typeof e)).join(", ");throw new TypeError(`${t}[${r}]`)}}(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}Symbol(),Object.getPrototypeOf({});var vV="undefined"!==typeof WeakRef?WeakRef:class{constructor(e){this.value=e}deref(){return this.value}};function yV(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r={s:0,v:void 0,o:null,p:null};const{resultEqualityCheck:n}=t;let o,a=0;function i(){let t=r;const{length:i}=arguments;for(let e=0,r=i;e<r;e++){const r=arguments[e];if("function"===typeof r||"object"===typeof r&&null!==r){let e=t.o;null===e&&(t.o=e=new WeakMap);const n=e.get(r);void 0===n?(t={s:0,v:void 0,o:null,p:null},e.set(r,t)):t=n}else{let e=t.p;null===e&&(t.p=e=new Map);const n=e.get(r);void 0===n?(t={s:0,v:void 0,o:null,p:null},e.set(r,t)):t=n}}const s=t;let l;if(1===t.s)l=t.v;else if(l=e.apply(null,arguments),a++,n){const e=o?.deref?.()??o;null!=e&&n(e,l)&&(l=e,0!==a&&a--);o="object"===typeof l&&null!==l||"function"===typeof l?new vV(l):l}return s.s=1,s.v=l,l}return i.clearCache=()=>{r={s:0,v:void 0,o:null,p:null},i.resetResultsCount()},i.resultsCount=()=>a,i.resetResultsCount=()=>{a=0},i}function bV(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];const o="function"===typeof e?{memoize:e,memoizeOptions:r}:e,a=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];let n,a=0,i=0,s={},l=t.pop();"object"===typeof l&&(s=l,l=t.pop()),hV(l,`createSelector expects an output function after the inputs, but received: [${typeof l}]`);const c={...o,...s},{memoize:u,memoizeOptions:d=[],argsMemoize:f=yV,argsMemoizeOptions:p=[],devModeChecks:h={}}=c,m=mV(d),g=mV(p),v=gV(t),y=u((function(){return a++,l.apply(null,arguments)}),...m);const b=f((function(){i++;const e=function(e,t){const r=[],{length:n}=e;for(let o=0;o<n;o++)r.push(e[o].apply(null,t));return r}(v,arguments);return n=y.apply(null,e),n}),...g);return Object.assign(b,{resultFunc:l,memoizedResultFunc:y,dependencies:v,dependencyRecomputations:()=>i,resetDependencyRecomputations:()=>{i=0},lastResult:()=>n,recomputations:()=>a,resetRecomputations:()=>{a=0},memoize:u,argsMemoize:f})};return Object.assign(a,{withTypes:()=>a}),a}var wV=bV(yV),xV=Object.assign((function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:wV;!function(e){if("object"!==typeof e)throw new TypeError(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"expected an object, instead received "+typeof e)}(e,"createStructuredSelector expects first argument to be an object where each property is a selector, instead received a "+typeof e);const r=Object.keys(e),n=t(r.map((t=>e[t])),(function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce(((e,t,n)=>(e[r[n]]=t,e)),{})}));return n}),{withTypes:()=>xV}),SV=r(53044),AV=(0,t.createContext)(null),kV=e=>e,CV=()=>{var e=(0,t.useContext)(AV);return e?e.store.dispatch:kV},IV=()=>{},EV=()=>IV,DV=(e,t)=>e===t;function TV(e){var r=(0,t.useContext)(AV);return(0,SV.useSyncExternalStoreWithSelector)(r?r.subscription.addNestedSub:EV,r?r.store.getState:IV,r?r.store.getState:IV,r?e:IV,DV)}var OV=r(30830),MV=r.n(OV),PV=e=>e.legend.settings;wV([e=>e.legend.payload,PV],((e,t)=>{var{itemSorter:r}=t,n=e.flat(1);return r?MV()(n,r):n}));function jV(e,t){if((o=e.length)>1)for(var r,n,o,a=1,i=e[t[0]],s=i.length;a<o;++a)for(n=i,i=e[t[a]],r=0;r<s;++r)i[r][1]+=i[r][0]=isNaN(n[r][1])?n[r][0]:n[r][1]}Array.prototype.slice;function RV(e){return"object"===typeof e&&"length"in e?e:Array.from(e)}function _V(e){return function(){return e}}function NV(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function LV(e,t){return e[t]}function UV(e){const t=[];return t.key=e,t}function BV(e,t,r){return Array.isArray(e)&&e&&t+r!==0?e.slice(t,r+1):e}function FV(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function zV(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?FV(Object(r),!0).forEach((function(t){WV(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):FV(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function WV(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function HV(e,t,r){return ZF(e)||ZF(t)?r:FF(t)?jF()(e,t,r):"function"===typeof t?t(e):r}var YV=(e,t)=>"horizontal"===e&&"xAxis"===t||"vertical"===e&&"yAxis"===t||"centric"===e&&"angleAxis"===t||"radial"===e&&"radiusAxis"===t,VV=(e,t,r,n)=>{if(n)return e.map((e=>e.coordinate));var o,a,i=e.map((e=>(e.coordinate===t&&(o=!0),e.coordinate===r&&(a=!0),e.coordinate)));return o||i.push(t),a||i.push(r),i},GV=(e,t,r)=>{if(!e)return null;var{duplicateDomain:n,type:o,range:a,scale:i,realScaleType:s,isCategorical:l,categoricalDomain:c,tickCount:u,ticks:d,niceTicks:f,axisType:p}=e;if(!i)return null;var h="scaleBand"===s&&i.bandwidth?i.bandwidth()/2:2,m=(t||r)&&"category"===o&&i.bandwidth?i.bandwidth()/h:0;return m="angleAxis"===p&&a&&a.length>=2?2*NF(a[0]-a[1])*m:m,t&&(d||f)?(d||f||[]).map(((e,t)=>{var r=n?n.indexOf(e):e;return{coordinate:i(r)+m,value:e,offset:m,index:t}})).filter((e=>!LF(e.coordinate))):l&&c?c.map(((e,t)=>({coordinate:i(e)+m,value:e,index:t,offset:m}))):i.ticks&&!r&&null!=u?i.ticks(u).map(((e,t)=>({coordinate:i(e)+m,value:e,offset:m,index:t}))):i.domain().map(((e,t)=>({coordinate:i(e)+m,value:n?n[e]:e,index:t,offset:m})))},ZV=1e-4,QV={sign:e=>{var t,r=e.length;if(!(r<=0)){var n=null===(t=e[0])||void 0===t?void 0:t.length;if(!(null==n||n<=0))for(var o=0;o<n;++o)for(var a=0,i=0,s=0;s<r;++s){var l=e[s],c=null===l||void 0===l?void 0:l[o];if(null!=c){var u=c[1],d=c[0],f=LF(u)?d:u;f>=0?(c[0]=a,c[1]=a+f,a=u):(c[0]=i,c[1]=i+f,i=u)}}}},expand:function(e,t){if((n=e.length)>0){for(var r,n,o,a=0,i=e[0].length;a<i;++a){for(o=r=0;r<n;++r)o+=e[r][a][1]||0;if(o)for(r=0;r<n;++r)e[r][a][1]/=o}jV(e,t)}},none:jV,silhouette:function(e,t){if((r=e.length)>0){for(var r,n=0,o=e[t[0]],a=o.length;n<a;++n){for(var i=0,s=0;i<r;++i)s+=e[i][n][1]||0;o[n][1]+=o[n][0]=-s/2}jV(e,t)}},wiggle:function(e,t){if((o=e.length)>0&&(n=(r=e[t[0]]).length)>0){for(var r,n,o,a=0,i=1;i<n;++i){for(var s=0,l=0,c=0;s<o;++s){for(var u=e[t[s]],d=u[i][1]||0,f=(d-(u[i-1][1]||0))/2,p=0;p<s;++p){var h=e[t[p]];f+=(h[i][1]||0)-(h[i-1][1]||0)}l+=d,c+=f*d}r[i-1][1]+=r[i-1][0]=a,l&&(a-=c/l)}r[i-1][1]+=r[i-1][0]=a,jV(e,t)}},positive:e=>{var t,r=e.length;if(!(r<=0)){var n=null===(t=e[0])||void 0===t?void 0:t.length;if(!(null==n||n<=0))for(var o=0;o<n;++o)for(var a=0,i=0;i<r;++i){var s=e[i],l=null===s||void 0===s?void 0:s[o];if(null!=l){var c=LF(l[1])?l[0]:l[1];c>=0?(l[0]=a,l[1]=a+c,a=l[1]):(l[0]=0,l[1]=0)}}}}},KV=(e,t,r)=>{var n,o=null!==(n=QV[r])&&void 0!==n?n:jV,a=function(){var e=_V([]),t=NV,r=jV,n=LV;function o(o){var a,i,s=Array.from(e.apply(this,arguments),UV),l=s.length,c=-1;for(const e of o)for(a=0,++c;a<l;++a)(s[a][c]=[0,+n(e,s[a].key,c,o)]).data=e;for(a=0,i=RV(t(s));a<l;++a)s[i[a]].index=a;return r(s,i),s}return o.keys=function(t){return arguments.length?(e="function"===typeof t?t:_V(Array.from(t)),o):e},o.value=function(e){return arguments.length?(n="function"===typeof e?e:_V(+e),o):n},o.order=function(e){return arguments.length?(t=null==e?NV:"function"===typeof e?e:_V(Array.from(e)),o):t},o.offset=function(e){return arguments.length?(r=null==e?jV:e,o):r},o}().keys(t).value(((e,t)=>Number(HV(e,t,0)))).order(NV).offset(o),i=a(e);return i.forEach(((r,n)=>{r.forEach(((r,o)=>{var a=HV(e[o],t[n],0);Array.isArray(a)&&2===a.length&&BF(a[0])&&BF(a[1])&&(r[0]=a[0],r[1]=a[1])}))})),i};function XV(e){var{axis:t,ticks:r,bandSize:n,entry:o,index:a,dataKey:i}=e;if("category"===t.type){if(!t.allowDuplicatedCategory&&t.dataKey&&!ZF(o[t.dataKey])){var s=GF(r,"value",o[t.dataKey]);if(s)return s.coordinate+n/2}return r[a]?r[a].coordinate+n/2:null}var l=HV(o,ZF(i)?t.dataKey:i);return ZF(l)?null:t.scale(l)}var JV=(e,t,r)=>{var n;if(null!=e)return[(n=Object.keys(e).reduce(((n,o)=>{var a=e[o];if(!a)return n;var{stackedData:i}=a,s=i.reduce(((e,n)=>{var o=(e=>{var t=e.flat(2).filter(BF);return[Math.min(...t),Math.max(...t)]})(BV(n,t,r));return oz(o[0])&&oz(o[1])?[Math.min(e[0],o[0]),Math.max(e[1],o[1])]:e}),[1/0,-1/0]);return[Math.min(s[0],n[0]),Math.max(s[1],n[1])]}),[1/0,-1/0]))[0]===1/0?0:n[0],n[1]===-1/0?0:n[1]]},$V=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,qV=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,eG=(e,t,r)=>{if(e&&e.scale&&e.scale.bandwidth){var n=e.scale.bandwidth();if(!r||n>0)return n}if(e&&t&&t.length>=2){for(var o=MV()(t,(e=>e.coordinate)),a=1/0,i=1,s=o.length;i<s;i++){var l=o[i],c=o[i-1];a=Math.min(((null===l||void 0===l?void 0:l.coordinate)||0)-((null===c||void 0===c?void 0:c.coordinate)||0),a)}return a===1/0?0:a}return r?void 0:0};function tG(e){var{tooltipEntrySettings:t,dataKey:r,payload:n,value:o,name:a}=e;return zV(zV({},t),{},{dataKey:r,payload:n,value:o,name:a})}function rG(e,t){return e?String(e):"string"===typeof t?t:void 0}var nG=e=>e.layout.width,oG=e=>e.layout.height,aG=e=>e.layout.scale,iG=e=>e.layout.margin,sG=wV((e=>e.cartesianAxis.xAxis),(e=>Object.values(e))),lG=wV((e=>e.cartesianAxis.yAxis),(e=>Object.values(e)));function cG(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function uG(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?cG(Object(r),!0).forEach((function(t){dG(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):cG(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function dG(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var fG=wV([nG,oG,iG,e=>e.brush.height,function(e){return lG(e).reduce(((e,t)=>"left"!==t.orientation||t.mirror||t.hide?e:e+("number"===typeof t.width?t.width:60)),0)},function(e){return lG(e).reduce(((e,t)=>"right"!==t.orientation||t.mirror||t.hide?e:e+("number"===typeof t.width?t.width:60)),0)},function(e){return sG(e).reduce(((e,t)=>"top"!==t.orientation||t.mirror||t.hide?e:e+t.height),0)},function(e){return sG(e).reduce(((e,t)=>"bottom"!==t.orientation||t.mirror||t.hide?e:e+t.height),0)},PV,e=>e.legend.size],((e,t,r,n,o,a,i,s,l,c)=>{var u={left:(r.left||0)+o,right:(r.right||0)+a},d=uG(uG({},{top:(r.top||0)+i,bottom:(r.bottom||0)+s}),u),f=d.bottom;d.bottom+=n,d=((e,t,r)=>{if(t&&r){var{width:n,height:o}=r,{align:a,verticalAlign:i,layout:s}=t;if(("vertical"===s||"horizontal"===s&&"middle"===i)&&"center"!==a&&BF(e[a]))return zV(zV({},e),{},{[a]:e[a]+(n||0)});if(("horizontal"===s||"vertical"===s&&"center"===a)&&"middle"!==i&&BF(e[i]))return zV(zV({},e),{},{[i]:e[i]+(o||0)})}return e})(d,l,c);var p=e-d.left-d.right,h=t-d.top-d.bottom;return uG(uG({brushBottom:f},d),{},{width:Math.max(p,0),height:Math.max(h,0)})})),pG=wV(fG,(e=>({x:e.left,y:e.top,width:e.width,height:e.height}))),hG=wV(nG,oG,((e,t)=>({x:0,y:0,width:e,height:t}))),mG=(0,t.createContext)(null),gG=()=>null!=(0,t.useContext)(mG),vG=e=>{var{children:r}=e;return t.createElement(mG.Provider,{value:!0},r)},yG=e=>e.brush,bG=wV([yG,fG,iG],((e,t,r)=>({height:e.height,x:BF(e.x)?e.x:t.left,y:BF(e.y)?e.y:t.top+t.height+t.brushBottom-((null===r||void 0===r?void 0:r.bottom)||0),width:BF(e.width)?e.width:t.width})));function wG(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}var xG=()=>{var e,t=gG(),r=TV(pG),n=TV(bG),o=null===(e=TV(yG))||void 0===e?void 0:e.padding;return t&&n&&o?{width:n.width-o.left-o.right,height:n.height-o.top-o.bottom,x:o.left,y:o.top}:r},SG={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},AG=()=>{var e;return null!==(e=TV(fG))&&void 0!==e?e:SG},kG=()=>TV(nG),CG=()=>TV(oG),IG=e=>e.layout.layoutType,EG=()=>TV(IG),DG=e=>{var r=CV(),n=gG(),{width:o,height:a}=e,i=fz(),s=o,l=a;return i&&(s=i.width>0?i.width:o,l=i.height>0?i.height:a),(0,t.useEffect)((()=>{!n&&az(s)&&az(l)&&r(dV({width:s,height:l}))}),[r,n,s,l]),null},TG=r(98354),OG=r.n(TG);function MG(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}function PG(e,t){switch(arguments.length){case 0:break;case 1:"function"===typeof e?this.interpolator(e):this.range(e);break;default:this.domain(e),"function"===typeof t?this.interpolator(t):this.range(t)}return this}class jG extends Map{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:LG;if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const[r,n]of e)this.set(r,n)}get(e){return super.get(RG(this,e))}has(e){return super.has(RG(this,e))}set(e,t){return super.set(_G(this,e),t)}delete(e){return super.delete(NG(this,e))}}Set;function RG(e,t){let{_intern:r,_key:n}=e;const o=n(t);return r.has(o)?r.get(o):t}function _G(e,t){let{_intern:r,_key:n}=e;const o=n(t);return r.has(o)?r.get(o):(r.set(o,t),t)}function NG(e,t){let{_intern:r,_key:n}=e;const o=n(t);return r.has(o)&&(t=r.get(o),r.delete(o)),t}function LG(e){return null!==e&&"object"===typeof e?e.valueOf():e}const UG=Symbol("implicit");function BG(){var e=new jG,t=[],r=[],n=UG;function o(o){let a=e.get(o);if(void 0===a){if(n!==UG)return n;e.set(o,a=t.push(o)-1)}return r[a%r.length]}return o.domain=function(r){if(!arguments.length)return t.slice();t=[],e=new jG;for(const n of r)e.has(n)||e.set(n,t.push(n)-1);return o},o.range=function(e){return arguments.length?(r=Array.from(e),o):r.slice()},o.unknown=function(e){return arguments.length?(n=e,o):n},o.copy=function(){return BG(t,r).unknown(n)},MG.apply(o,arguments),o}function FG(){var e,t,r=BG().unknown(void 0),n=r.domain,o=r.range,a=0,i=1,s=!1,l=0,c=0,u=.5;function d(){var r=n().length,d=i<a,f=d?i:a,p=d?a:i;e=(p-f)/Math.max(1,r-l+2*c),s&&(e=Math.floor(e)),f+=(p-f-e*(r-l))*u,t=e*(1-l),s&&(f=Math.round(f),t=Math.round(t));var h=function(e,t,r){e=+e,t=+t,r=(o=arguments.length)<2?(t=e,e=0,1):o<3?1:+r;for(var n=-1,o=0|Math.max(0,Math.ceil((t-e)/r)),a=new Array(o);++n<o;)a[n]=e+n*r;return a}(r).map((function(t){return f+e*t}));return o(d?h.reverse():h)}return delete r.unknown,r.domain=function(e){return arguments.length?(n(e),d()):n()},r.range=function(e){return arguments.length?([a,i]=e,a=+a,i=+i,d()):[a,i]},r.rangeRound=function(e){return[a,i]=e,a=+a,i=+i,s=!0,d()},r.bandwidth=function(){return t},r.step=function(){return e},r.round=function(e){return arguments.length?(s=!!e,d()):s},r.padding=function(e){return arguments.length?(l=Math.min(1,c=+e),d()):l},r.paddingInner=function(e){return arguments.length?(l=Math.min(1,e),d()):l},r.paddingOuter=function(e){return arguments.length?(c=+e,d()):c},r.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},r.copy=function(){return FG(n(),[a,i]).round(s).paddingInner(l).paddingOuter(c).align(u)},MG.apply(d(),arguments)}function zG(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return zG(t())},e}function WG(){return zG(FG.apply(null,arguments).paddingInner(1))}const HG=Math.sqrt(50),YG=Math.sqrt(10),VG=Math.sqrt(2);function GG(e,t,r){const n=(t-e)/Math.max(0,r),o=Math.floor(Math.log10(n)),a=n/Math.pow(10,o),i=a>=HG?10:a>=YG?5:a>=VG?2:1;let s,l,c;return o<0?(c=Math.pow(10,-o)/i,s=Math.round(e*c),l=Math.round(t*c),s/c<e&&++s,l/c>t&&--l,c=-c):(c=Math.pow(10,o)*i,s=Math.round(e/c),l=Math.round(t/c),s*c<e&&++s,l*c>t&&--l),l<s&&.5<=r&&r<2?GG(e,t,2*r):[s,l,c]}function ZG(e,t,r){if(!((r=+r)>0))return[];if((e=+e)===(t=+t))return[e];const n=t<e,[o,a,i]=n?GG(t,e,r):GG(e,t,r);if(!(a>=o))return[];const s=a-o+1,l=new Array(s);if(n)if(i<0)for(let c=0;c<s;++c)l[c]=(a-c)/-i;else for(let c=0;c<s;++c)l[c]=(a-c)*i;else if(i<0)for(let c=0;c<s;++c)l[c]=(o+c)/-i;else for(let c=0;c<s;++c)l[c]=(o+c)*i;return l}function QG(e,t,r){return GG(e=+e,t=+t,r=+r)[2]}function KG(e,t,r){r=+r;const n=(t=+t)<(e=+e),o=n?QG(t,e,r):QG(e,t,r);return(n?-1:1)*(o<0?1/-o:o)}function XG(e,t){return null==e||null==t?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function JG(e,t){return null==e||null==t?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function $G(e){let t,r,n;function o(e,n){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:e.length;if(o<a){if(0!==t(n,n))return a;do{const t=o+a>>>1;r(e[t],n)<0?o=t+1:a=t}while(o<a)}return o}return 2!==e.length?(t=XG,r=(t,r)=>XG(e(t),r),n=(t,r)=>e(t)-r):(t=e===XG||e===JG?e:qG,r=e,n=e),{left:o,center:function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;const a=o(e,t,r,(arguments.length>3&&void 0!==arguments[3]?arguments[3]:e.length)-1);return a>r&&n(e[a-1],t)>-n(e[a],t)?a-1:a},right:function(e,n){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:e.length;if(o<a){if(0!==t(n,n))return a;do{const t=o+a>>>1;r(e[t],n)<=0?o=t+1:a=t}while(o<a)}return o}}}function qG(){return 0}function eZ(e){return null===e?NaN:+e}const tZ=$G(XG),rZ=tZ.right,nZ=(tZ.left,$G(eZ).center,rZ);function oZ(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function aZ(e,t){var r=Object.create(e.prototype);for(var n in t)r[n]=t[n];return r}function iZ(){}var sZ=.7,lZ=1/sZ,cZ="\\s*([+-]?\\d+)\\s*",uZ="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",dZ="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",fZ=/^#([0-9a-f]{3,8})$/,pZ=new RegExp(`^rgb\\(${cZ},${cZ},${cZ}\\)$`),hZ=new RegExp(`^rgb\\(${dZ},${dZ},${dZ}\\)$`),mZ=new RegExp(`^rgba\\(${cZ},${cZ},${cZ},${uZ}\\)$`),gZ=new RegExp(`^rgba\\(${dZ},${dZ},${dZ},${uZ}\\)$`),vZ=new RegExp(`^hsl\\(${uZ},${dZ},${dZ}\\)$`),yZ=new RegExp(`^hsla\\(${uZ},${dZ},${dZ},${uZ}\\)$`),bZ={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function wZ(){return this.rgb().formatHex()}function xZ(){return this.rgb().formatRgb()}function SZ(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=fZ.exec(e))?(r=t[1].length,t=parseInt(t[1],16),6===r?AZ(t):3===r?new IZ(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===r?kZ(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===r?kZ(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=pZ.exec(e))?new IZ(t[1],t[2],t[3],1):(t=hZ.exec(e))?new IZ(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=mZ.exec(e))?kZ(t[1],t[2],t[3],t[4]):(t=gZ.exec(e))?kZ(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=vZ.exec(e))?PZ(t[1],t[2]/100,t[3]/100,1):(t=yZ.exec(e))?PZ(t[1],t[2]/100,t[3]/100,t[4]):bZ.hasOwnProperty(e)?AZ(bZ[e]):"transparent"===e?new IZ(NaN,NaN,NaN,0):null}function AZ(e){return new IZ(e>>16&255,e>>8&255,255&e,1)}function kZ(e,t,r,n){return n<=0&&(e=t=r=NaN),new IZ(e,t,r,n)}function CZ(e,t,r,n){return 1===arguments.length?((o=e)instanceof iZ||(o=SZ(o)),o?new IZ((o=o.rgb()).r,o.g,o.b,o.opacity):new IZ):new IZ(e,t,r,null==n?1:n);var o}function IZ(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function EZ(){return`#${MZ(this.r)}${MZ(this.g)}${MZ(this.b)}`}function DZ(){const e=TZ(this.opacity);return`${1===e?"rgb(":"rgba("}${OZ(this.r)}, ${OZ(this.g)}, ${OZ(this.b)}${1===e?")":`, ${e})`}`}function TZ(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function OZ(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function MZ(e){return((e=OZ(e))<16?"0":"")+e.toString(16)}function PZ(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new RZ(e,t,r,n)}function jZ(e){if(e instanceof RZ)return new RZ(e.h,e.s,e.l,e.opacity);if(e instanceof iZ||(e=SZ(e)),!e)return new RZ;if(e instanceof RZ)return e;var t=(e=e.rgb()).r/255,r=e.g/255,n=e.b/255,o=Math.min(t,r,n),a=Math.max(t,r,n),i=NaN,s=a-o,l=(a+o)/2;return s?(i=t===a?(r-n)/s+6*(r<n):r===a?(n-t)/s+2:(t-r)/s+4,s/=l<.5?a+o:2-a-o,i*=60):s=l>0&&l<1?0:i,new RZ(i,s,l,e.opacity)}function RZ(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function _Z(e){return(e=(e||0)%360)<0?e+360:e}function NZ(e){return Math.max(0,Math.min(1,e||0))}function LZ(e,t,r){return 255*(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)}function UZ(e,t,r,n,o){var a=e*e,i=a*e;return((1-3*e+3*a-i)*t+(4-6*a+3*i)*r+(1+3*e+3*a-3*i)*n+i*o)/6}oZ(iZ,SZ,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:wZ,formatHex:wZ,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return jZ(this).formatHsl()},formatRgb:xZ,toString:xZ}),oZ(IZ,CZ,aZ(iZ,{brighter(e){return e=null==e?lZ:Math.pow(lZ,e),new IZ(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?sZ:Math.pow(sZ,e),new IZ(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new IZ(OZ(this.r),OZ(this.g),OZ(this.b),TZ(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:EZ,formatHex:EZ,formatHex8:function(){return`#${MZ(this.r)}${MZ(this.g)}${MZ(this.b)}${MZ(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:DZ,toString:DZ})),oZ(RZ,(function(e,t,r,n){return 1===arguments.length?jZ(e):new RZ(e,t,r,null==n?1:n)}),aZ(iZ,{brighter(e){return e=null==e?lZ:Math.pow(lZ,e),new RZ(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?sZ:Math.pow(sZ,e),new RZ(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,o=2*r-n;return new IZ(LZ(e>=240?e-240:e+120,o,n),LZ(e,o,n),LZ(e<120?e+240:e-120,o,n),this.opacity)},clamp(){return new RZ(_Z(this.h),NZ(this.s),NZ(this.l),TZ(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=TZ(this.opacity);return`${1===e?"hsl(":"hsla("}${_Z(this.h)}, ${100*NZ(this.s)}%, ${100*NZ(this.l)}%${1===e?")":`, ${e})`}`}}));const BZ=e=>()=>e;function FZ(e,t){return function(r){return e+r*t}}function zZ(e){return 1===(e=+e)?WZ:function(t,r){return r-t?function(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}(t,r,e):BZ(isNaN(t)?r:t)}}function WZ(e,t){var r=t-e;return r?FZ(e,r):BZ(isNaN(e)?t:e)}const HZ=function e(t){var r=zZ(t);function n(e,t){var n=r((e=CZ(e)).r,(t=CZ(t)).r),o=r(e.g,t.g),a=r(e.b,t.b),i=WZ(e.opacity,t.opacity);return function(t){return e.r=n(t),e.g=o(t),e.b=a(t),e.opacity=i(t),e+""}}return n.gamma=e,n}(1);function YZ(e){return function(t){var r,n,o=t.length,a=new Array(o),i=new Array(o),s=new Array(o);for(r=0;r<o;++r)n=CZ(t[r]),a[r]=n.r||0,i[r]=n.g||0,s[r]=n.b||0;return a=e(a),i=e(i),s=e(s),n.opacity=1,function(e){return n.r=a(e),n.g=i(e),n.b=s(e),n+""}}}YZ((function(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),o=e[n],a=e[n+1],i=n>0?e[n-1]:2*o-a,s=n<t-1?e[n+2]:2*a-o;return UZ((r-n/t)*t,i,o,a,s)}})),YZ((function(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),o=e[(n+t-1)%t],a=e[n%t],i=e[(n+1)%t],s=e[(n+2)%t];return UZ((r-n/t)*t,o,a,i,s)}}));function VZ(e,t){var r,n=t?t.length:0,o=e?Math.min(n,e.length):0,a=new Array(o),i=new Array(n);for(r=0;r<o;++r)a[r]=qZ(e[r],t[r]);for(;r<n;++r)i[r]=t[r];return function(e){for(r=0;r<o;++r)i[r]=a[r](e);return i}}function GZ(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}function ZZ(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}function QZ(e,t){var r,n={},o={};for(r in null!==e&&"object"===typeof e||(e={}),null!==t&&"object"===typeof t||(t={}),t)r in e?n[r]=qZ(e[r],t[r]):o[r]=t[r];return function(e){for(r in n)o[r]=n[r](e);return o}}var KZ=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,XZ=new RegExp(KZ.source,"g");function JZ(e,t){var r,n,o,a=KZ.lastIndex=XZ.lastIndex=0,i=-1,s=[],l=[];for(e+="",t+="";(r=KZ.exec(e))&&(n=XZ.exec(t));)(o=n.index)>a&&(o=t.slice(a,o),s[i]?s[i]+=o:s[++i]=o),(r=r[0])===(n=n[0])?s[i]?s[i]+=n:s[++i]=n:(s[++i]=null,l.push({i:i,x:ZZ(r,n)})),a=XZ.lastIndex;return a<t.length&&(o=t.slice(a),s[i]?s[i]+=o:s[++i]=o),s.length<2?l[0]?function(e){return function(t){return e(t)+""}}(l[0].x):function(e){return function(){return e}}(t):(t=l.length,function(e){for(var r,n=0;n<t;++n)s[(r=l[n]).i]=r.x(e);return s.join("")})}function $Z(e,t){t||(t=[]);var r,n=e?Math.min(t.length,e.length):0,o=t.slice();return function(a){for(r=0;r<n;++r)o[r]=e[r]*(1-a)+t[r]*a;return o}}function qZ(e,t){var r,n,o=typeof t;return null==t||"boolean"===o?BZ(t):("number"===o?ZZ:"string"===o?(r=SZ(t))?(t=r,HZ):JZ:t instanceof SZ?HZ:t instanceof Date?GZ:(n=t,!ArrayBuffer.isView(n)||n instanceof DataView?Array.isArray(t)?VZ:"function"!==typeof t.valueOf&&"function"!==typeof t.toString||isNaN(t)?QZ:ZZ:$Z))(e,t)}function eQ(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}function tQ(e){return+e}var rQ=[0,1];function nQ(e){return e}function oQ(e,t){return(t-=e=+e)?function(r){return(r-e)/t}:(r=isNaN(t)?NaN:.5,function(){return r});var r}function aQ(e,t,r){var n=e[0],o=e[1],a=t[0],i=t[1];return o<n?(n=oQ(o,n),a=r(i,a)):(n=oQ(n,o),a=r(a,i)),function(e){return a(n(e))}}function iQ(e,t,r){var n=Math.min(e.length,t.length)-1,o=new Array(n),a=new Array(n),i=-1;for(e[n]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++i<n;)o[i]=oQ(e[i],e[i+1]),a[i]=r(t[i],t[i+1]);return function(t){var r=nZ(e,t,1,n)-1;return a[r](o[r](t))}}function sQ(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function lQ(){var e,t,r,n,o,a,i=rQ,s=rQ,l=qZ,c=nQ;function u(){var e=Math.min(i.length,s.length);return c!==nQ&&(c=function(e,t){var r;return e>t&&(r=e,e=t,t=r),function(r){return Math.max(e,Math.min(t,r))}}(i[0],i[e-1])),n=e>2?iQ:aQ,o=a=null,d}function d(t){return null==t||isNaN(t=+t)?r:(o||(o=n(i.map(e),s,l)))(e(c(t)))}return d.invert=function(r){return c(t((a||(a=n(s,i.map(e),ZZ)))(r)))},d.domain=function(e){return arguments.length?(i=Array.from(e,tQ),u()):i.slice()},d.range=function(e){return arguments.length?(s=Array.from(e),u()):s.slice()},d.rangeRound=function(e){return s=Array.from(e),l=eQ,u()},d.clamp=function(e){return arguments.length?(c=!!e||nQ,u()):c!==nQ},d.interpolate=function(e){return arguments.length?(l=e,u()):l},d.unknown=function(e){return arguments.length?(r=e,d):r},function(r,n){return e=r,t=n,u()}}function cQ(){return lQ()(nQ,nQ)}var uQ,dQ=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function fQ(e){if(!(t=dQ.exec(e)))throw new Error("invalid format: "+e);var t;return new pQ({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function pQ(e){this.fill=void 0===e.fill?" ":e.fill+"",this.align=void 0===e.align?">":e.align+"",this.sign=void 0===e.sign?"-":e.sign+"",this.symbol=void 0===e.symbol?"":e.symbol+"",this.zero=!!e.zero,this.width=void 0===e.width?void 0:+e.width,this.comma=!!e.comma,this.precision=void 0===e.precision?void 0:+e.precision,this.trim=!!e.trim,this.type=void 0===e.type?"":e.type+""}function hQ(e,t){if((r=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"))<0)return null;var r,n=e.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+e.slice(r+1)]}function mQ(e){return(e=hQ(Math.abs(e)))?e[1]:NaN}function gQ(e,t){var r=hQ(e,t);if(!r)return e+"";var n=r[0],o=r[1];return o<0?"0."+new Array(-o).join("0")+n:n.length>o+1?n.slice(0,o+1)+"."+n.slice(o+1):n+new Array(o-n.length+2).join("0")}fQ.prototype=pQ.prototype,pQ.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const vQ={"%":(e,t)=>(100*e).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:function(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)},e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>gQ(100*e,t),r:gQ,s:function(e,t){var r=hQ(e,t);if(!r)return e+"";var n=r[0],o=r[1],a=o-(uQ=3*Math.max(-8,Math.min(8,Math.floor(o/3))))+1,i=n.length;return a===i?n:a>i?n+new Array(a-i+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+hQ(e,Math.max(0,t+a-1))[0]},X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function yQ(e){return e}var bQ,wQ,xQ,SQ=Array.prototype.map,AQ=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function kQ(e){var t,r,n=void 0===e.grouping||void 0===e.thousands?yQ:(t=SQ.call(e.grouping,Number),r=e.thousands+"",function(e,n){for(var o=e.length,a=[],i=0,s=t[0],l=0;o>0&&s>0&&(l+s+1>n&&(s=Math.max(1,n-l)),a.push(e.substring(o-=s,o+s)),!((l+=s+1)>n));)s=t[i=(i+1)%t.length];return a.reverse().join(r)}),o=void 0===e.currency?"":e.currency[0]+"",a=void 0===e.currency?"":e.currency[1]+"",i=void 0===e.decimal?".":e.decimal+"",s=void 0===e.numerals?yQ:function(e){return function(t){return t.replace(/[0-9]/g,(function(t){return e[+t]}))}}(SQ.call(e.numerals,String)),l=void 0===e.percent?"%":e.percent+"",c=void 0===e.minus?"\u2212":e.minus+"",u=void 0===e.nan?"NaN":e.nan+"";function d(e){var t=(e=fQ(e)).fill,r=e.align,d=e.sign,f=e.symbol,p=e.zero,h=e.width,m=e.comma,g=e.precision,v=e.trim,y=e.type;"n"===y?(m=!0,y="g"):vQ[y]||(void 0===g&&(g=12),v=!0,y="g"),(p||"0"===t&&"="===r)&&(p=!0,t="0",r="=");var b="$"===f?o:"#"===f&&/[boxX]/.test(y)?"0"+y.toLowerCase():"",w="$"===f?a:/[%p]/.test(y)?l:"",x=vQ[y],S=/[defgprs%]/.test(y);function A(e){var o,a,l,f=b,A=w;if("c"===y)A=x(e)+A,e="";else{var k=(e=+e)<0||1/e<0;if(e=isNaN(e)?u:x(Math.abs(e),g),v&&(e=function(e){e:for(var t,r=e.length,n=1,o=-1;n<r;++n)switch(e[n]){case".":o=t=n;break;case"0":0===o&&(o=n),t=n;break;default:if(!+e[n])break e;o>0&&(o=0)}return o>0?e.slice(0,o)+e.slice(t+1):e}(e)),k&&0===+e&&"+"!==d&&(k=!1),f=(k?"("===d?d:c:"-"===d||"("===d?"":d)+f,A=("s"===y?AQ[8+uQ/3]:"")+A+(k&&"("===d?")":""),S)for(o=-1,a=e.length;++o<a;)if(48>(l=e.charCodeAt(o))||l>57){A=(46===l?i+e.slice(o+1):e.slice(o))+A,e=e.slice(0,o);break}}m&&!p&&(e=n(e,1/0));var C=f.length+e.length+A.length,I=C<h?new Array(h-C+1).join(t):"";switch(m&&p&&(e=n(I+e,I.length?h-A.length:1/0),I=""),r){case"<":e=f+e+A+I;break;case"=":e=f+I+e+A;break;case"^":e=I.slice(0,C=I.length>>1)+f+e+A+I.slice(C);break;default:e=I+f+e+A}return s(e)}return g=void 0===g?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,g)):Math.max(0,Math.min(20,g)),A.toString=function(){return e+""},A}return{format:d,formatPrefix:function(e,t){var r=d(((e=fQ(e)).type="f",e)),n=3*Math.max(-8,Math.min(8,Math.floor(mQ(t)/3))),o=Math.pow(10,-n),a=AQ[8+n/3];return function(e){return r(o*e)+a}}}}function CQ(e,t,r,n){var o,a=KG(e,t,r);switch((n=fQ(null==n?",f":n)).type){case"s":var i=Math.max(Math.abs(e),Math.abs(t));return null!=n.precision||isNaN(o=function(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(mQ(t)/3)))-mQ(Math.abs(e)))}(a,i))||(n.precision=o),xQ(n,i);case"":case"e":case"g":case"p":case"r":null!=n.precision||isNaN(o=function(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,mQ(t)-mQ(e))+1}(a,Math.max(Math.abs(e),Math.abs(t))))||(n.precision=o-("e"===n.type));break;case"f":case"%":null!=n.precision||isNaN(o=function(e){return Math.max(0,-mQ(Math.abs(e)))}(a))||(n.precision=o-2*("%"===n.type))}return wQ(n)}function IQ(e){var t=e.domain;return e.ticks=function(e){var r=t();return ZG(r[0],r[r.length-1],null==e?10:e)},e.tickFormat=function(e,r){var n=t();return CQ(n[0],n[n.length-1],null==e?10:e,r)},e.nice=function(r){null==r&&(r=10);var n,o,a=t(),i=0,s=a.length-1,l=a[i],c=a[s],u=10;for(c<l&&(o=l,l=c,c=o,o=i,i=s,s=o);u-- >0;){if((o=QG(l,c,r))===n)return a[i]=l,a[s]=c,t(a);if(o>0)l=Math.floor(l/o)*o,c=Math.ceil(c/o)*o;else{if(!(o<0))break;l=Math.ceil(l*o)/o,c=Math.floor(c*o)/o}n=o}return e},e}function EQ(){var e=cQ();return e.copy=function(){return sQ(e,EQ())},MG.apply(e,arguments),IQ(e)}function DQ(e){var t;function r(e){return null==e||isNaN(e=+e)?t:e}return r.invert=r,r.domain=r.range=function(t){return arguments.length?(e=Array.from(t,tQ),r):e.slice()},r.unknown=function(e){return arguments.length?(t=e,r):t},r.copy=function(){return DQ(e).unknown(t)},e=arguments.length?Array.from(e,tQ):[0,1],IQ(r)}function TQ(e,t){var r,n=0,o=(e=e.slice()).length-1,a=e[n],i=e[o];return i<a&&(r=n,n=o,o=r,r=a,a=i,i=r),e[n]=t.floor(a),e[o]=t.ceil(i),e}function OQ(e){return Math.log(e)}function MQ(e){return Math.exp(e)}function PQ(e){return-Math.log(-e)}function jQ(e){return-Math.exp(-e)}function RQ(e){return isFinite(e)?+("1e"+e):e<0?0:e}function _Q(e){return(t,r)=>-e(-t,r)}function NQ(e){const t=e(OQ,MQ),r=t.domain;let n,o,a=10;function i(){return n=function(e){return e===Math.E?Math.log:10===e&&Math.log10||2===e&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}(a),o=function(e){return 10===e?RQ:e===Math.E?Math.exp:t=>Math.pow(e,t)}(a),r()[0]<0?(n=_Q(n),o=_Q(o),e(PQ,jQ)):e(OQ,MQ),t}return t.base=function(e){return arguments.length?(a=+e,i()):a},t.domain=function(e){return arguments.length?(r(e),i()):r()},t.ticks=e=>{const t=r();let i=t[0],s=t[t.length-1];const l=s<i;l&&([i,s]=[s,i]);let c,u,d=n(i),f=n(s);const p=null==e?10:+e;let h=[];if(!(a%1)&&f-d<p){if(d=Math.floor(d),f=Math.ceil(f),i>0){for(;d<=f;++d)for(c=1;c<a;++c)if(u=d<0?c/o(-d):c*o(d),!(u<i)){if(u>s)break;h.push(u)}}else for(;d<=f;++d)for(c=a-1;c>=1;--c)if(u=d>0?c/o(-d):c*o(d),!(u<i)){if(u>s)break;h.push(u)}2*h.length<p&&(h=ZG(i,s,p))}else h=ZG(d,f,Math.min(f-d,p)).map(o);return l?h.reverse():h},t.tickFormat=(e,r)=>{if(null==e&&(e=10),null==r&&(r=10===a?"s":","),"function"!==typeof r&&(a%1||null!=(r=fQ(r)).precision||(r.trim=!0),r=wQ(r)),e===1/0)return r;const i=Math.max(1,a*e/t.ticks().length);return e=>{let t=e/o(Math.round(n(e)));return t*a<a-.5&&(t*=a),t<=i?r(e):""}},t.nice=()=>r(TQ(r(),{floor:e=>o(Math.floor(n(e))),ceil:e=>o(Math.ceil(n(e)))})),t}function LQ(){const e=NQ(lQ()).domain([1,10]);return e.copy=()=>sQ(e,LQ()).base(e.base()),MG.apply(e,arguments),e}function UQ(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function BQ(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function FQ(e){var t=1,r=e(UQ(t),BQ(t));return r.constant=function(r){return arguments.length?e(UQ(t=+r),BQ(t)):t},IQ(r)}function zQ(){var e=FQ(lQ());return e.copy=function(){return sQ(e,zQ()).constant(e.constant())},MG.apply(e,arguments)}function WQ(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function HQ(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function YQ(e){return e<0?-e*e:e*e}function VQ(e){var t=e(nQ,nQ),r=1;return t.exponent=function(t){return arguments.length?1===(r=+t)?e(nQ,nQ):.5===r?e(HQ,YQ):e(WQ(r),WQ(1/r)):r},IQ(t)}function GQ(){var e=VQ(lQ());return e.copy=function(){return sQ(e,GQ()).exponent(e.exponent())},MG.apply(e,arguments),e}function ZQ(){return GQ.apply(null,arguments).exponent(.5)}function QQ(e){return Math.sign(e)*e*e}function KQ(){var e,t=cQ(),r=[0,1],n=!1;function o(r){var o=function(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}(t(r));return isNaN(o)?e:n?Math.round(o):o}return o.invert=function(e){return t.invert(QQ(e))},o.domain=function(e){return arguments.length?(t.domain(e),o):t.domain()},o.range=function(e){return arguments.length?(t.range((r=Array.from(e,tQ)).map(QQ)),o):r.slice()},o.rangeRound=function(e){return o.range(e).round(!0)},o.round=function(e){return arguments.length?(n=!!e,o):n},o.clamp=function(e){return arguments.length?(t.clamp(e),o):t.clamp()},o.unknown=function(t){return arguments.length?(e=t,o):e},o.copy=function(){return KQ(t.domain(),r).round(n).clamp(t.clamp()).unknown(e)},MG.apply(o,arguments),IQ(o)}function XQ(e,t){let r;if(void 0===t)for(const n of e)null!=n&&(r<n||void 0===r&&n>=n)&&(r=n);else{let n=-1;for(let o of e)null!=(o=t(o,++n,e))&&(r<o||void 0===r&&o>=o)&&(r=o)}return r}function JQ(e,t){let r;if(void 0===t)for(const n of e)null!=n&&(r>n||void 0===r&&n>=n)&&(r=n);else{let n=-1;for(let o of e)null!=(o=t(o,++n,e))&&(r>o||void 0===r&&o>=o)&&(r=o)}return r}function $Q(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:XG;if(e===XG)return qQ;if("function"!==typeof e)throw new TypeError("compare is not a function");return(t,r)=>{const n=e(t,r);return n||0===n?n:(0===e(r,r))-(0===e(t,t))}}function qQ(e,t){return(null==e||!(e>=e))-(null==t||!(t>=t))||(e<t?-1:e>t?1:0)}function eK(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1/0,o=arguments.length>4?arguments[4]:void 0;if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),n=Math.floor(Math.min(e.length-1,n)),!(r<=t&&t<=n))return e;for(o=void 0===o?qQ:$Q(o);n>r;){if(n-r>600){const a=n-r+1,i=t-r+1,s=Math.log(a),l=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*l*(a-l)/a)*(i-a/2<0?-1:1);eK(e,t,Math.max(r,Math.floor(t-i*l/a+c)),Math.min(n,Math.floor(t+(a-i)*l/a+c)),o)}const a=e[t];let i=r,s=n;for(tK(e,r,t),o(e[n],a)>0&&tK(e,r,n);i<s;){for(tK(e,i,s),++i,--s;o(e[i],a)<0;)++i;for(;o(e[s],a)>0;)--s}0===o(e[r],a)?tK(e,r,s):(++s,tK(e,s,n)),s<=t&&(r=s+1),t<=s&&(n=s-1)}return e}function tK(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function rK(e,t,r){if(e=Float64Array.from(function*(e,t){if(void 0===t)for(let r of e)null!=r&&(r=+r)>=r&&(yield r);else{let r=-1;for(let n of e)null!=(n=t(n,++r,e))&&(n=+n)>=n&&(yield n)}}(e,r)),(n=e.length)&&!isNaN(t=+t)){if(t<=0||n<2)return JQ(e);if(t>=1)return XQ(e);var n,o=(n-1)*t,a=Math.floor(o),i=XQ(eK(e,a).subarray(0,a+1));return i+(JQ(e.subarray(a+1))-i)*(o-a)}}function nK(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:eZ;if((n=e.length)&&!isNaN(t=+t)){if(t<=0||n<2)return+r(e[0],0,e);if(t>=1)return+r(e[n-1],n-1,e);var n,o=(n-1)*t,a=Math.floor(o),i=+r(e[a],a,e);return i+(+r(e[a+1],a+1,e)-i)*(o-a)}}function oK(){var e,t=[],r=[],n=[];function o(){var e=0,o=Math.max(1,r.length);for(n=new Array(o-1);++e<o;)n[e-1]=nK(t,e/o);return a}function a(t){return null==t||isNaN(t=+t)?e:r[nZ(n,t)]}return a.invertExtent=function(e){var o=r.indexOf(e);return o<0?[NaN,NaN]:[o>0?n[o-1]:t[0],o<n.length?n[o]:t[t.length-1]]},a.domain=function(e){if(!arguments.length)return t.slice();t=[];for(let r of e)null==r||isNaN(r=+r)||t.push(r);return t.sort(XG),o()},a.range=function(e){return arguments.length?(r=Array.from(e),o()):r.slice()},a.unknown=function(t){return arguments.length?(e=t,a):e},a.quantiles=function(){return n.slice()},a.copy=function(){return oK().domain(t).range(r).unknown(e)},MG.apply(a,arguments)}function aK(){var e,t=0,r=1,n=1,o=[.5],a=[0,1];function i(t){return null!=t&&t<=t?a[nZ(o,t,0,n)]:e}function s(){var e=-1;for(o=new Array(n);++e<n;)o[e]=((e+1)*r-(e-n)*t)/(n+1);return i}return i.domain=function(e){return arguments.length?([t,r]=e,t=+t,r=+r,s()):[t,r]},i.range=function(e){return arguments.length?(n=(a=Array.from(e)).length-1,s()):a.slice()},i.invertExtent=function(e){var i=a.indexOf(e);return i<0?[NaN,NaN]:i<1?[t,o[0]]:i>=n?[o[n-1],r]:[o[i-1],o[i]]},i.unknown=function(t){return arguments.length?(e=t,i):i},i.thresholds=function(){return o.slice()},i.copy=function(){return aK().domain([t,r]).range(a).unknown(e)},MG.apply(IQ(i),arguments)}function iK(){var e,t=[.5],r=[0,1],n=1;function o(o){return null!=o&&o<=o?r[nZ(t,o,0,n)]:e}return o.domain=function(e){return arguments.length?(t=Array.from(e),n=Math.min(t.length,r.length-1),o):t.slice()},o.range=function(e){return arguments.length?(r=Array.from(e),n=Math.min(t.length,r.length-1),o):r.slice()},o.invertExtent=function(e){var n=r.indexOf(e);return[t[n-1],t[n]]},o.unknown=function(t){return arguments.length?(e=t,o):e},o.copy=function(){return iK().domain(t).range(r).unknown(e)},MG.apply(o,arguments)}bQ=kQ({thousands:",",grouping:[3],currency:["$",""]}),wQ=bQ.format,xQ=bQ.formatPrefix;const sK=1e3,lK=6e4,cK=36e5,uK=864e5,dK=6048e5,fK=2592e6,pK=31536e6,hK=new Date,mK=new Date;function gK(e,t,r,n){function o(t){return e(t=0===arguments.length?new Date:new Date(+t)),t}return o.floor=t=>(e(t=new Date(+t)),t),o.ceil=r=>(e(r=new Date(r-1)),t(r,1),e(r),r),o.round=e=>{const t=o(e),r=o.ceil(e);return e-t<r-e?t:r},o.offset=(e,r)=>(t(e=new Date(+e),null==r?1:Math.floor(r)),e),o.range=(r,n,a)=>{const i=[];if(r=o.ceil(r),a=null==a?1:Math.floor(a),!(r<n)||!(a>0))return i;let s;do{i.push(s=new Date(+r)),t(r,a),e(r)}while(s<r&&r<n);return i},o.filter=r=>gK((t=>{if(t>=t)for(;e(t),!r(t);)t.setTime(t-1)}),((e,n)=>{if(e>=e)if(n<0)for(;++n<=0;)for(;t(e,-1),!r(e););else for(;--n>=0;)for(;t(e,1),!r(e););})),r&&(o.count=(t,n)=>(hK.setTime(+t),mK.setTime(+n),e(hK),e(mK),Math.floor(r(hK,mK))),o.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?o.filter(n?t=>n(t)%e===0:t=>o.count(0,t)%e===0):o:null)),o}const vK=gK((()=>{}),((e,t)=>{e.setTime(+e+t)}),((e,t)=>t-e));vK.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?gK((t=>{t.setTime(Math.floor(t/e)*e)}),((t,r)=>{t.setTime(+t+r*e)}),((t,r)=>(r-t)/e)):vK:null);vK.range;const yK=gK((e=>{e.setTime(e-e.getMilliseconds())}),((e,t)=>{e.setTime(+e+t*sK)}),((e,t)=>(t-e)/sK),(e=>e.getUTCSeconds())),bK=(yK.range,gK((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*sK)}),((e,t)=>{e.setTime(+e+t*lK)}),((e,t)=>(t-e)/lK),(e=>e.getMinutes()))),wK=(bK.range,gK((e=>{e.setUTCSeconds(0,0)}),((e,t)=>{e.setTime(+e+t*lK)}),((e,t)=>(t-e)/lK),(e=>e.getUTCMinutes()))),xK=(wK.range,gK((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*sK-e.getMinutes()*lK)}),((e,t)=>{e.setTime(+e+t*cK)}),((e,t)=>(t-e)/cK),(e=>e.getHours()))),SK=(xK.range,gK((e=>{e.setUTCMinutes(0,0,0)}),((e,t)=>{e.setTime(+e+t*cK)}),((e,t)=>(t-e)/cK),(e=>e.getUTCHours()))),AK=(SK.range,gK((e=>e.setHours(0,0,0,0)),((e,t)=>e.setDate(e.getDate()+t)),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*lK)/uK),(e=>e.getDate()-1))),kK=(AK.range,gK((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/uK),(e=>e.getUTCDate()-1))),CK=(kK.range,gK((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/uK),(e=>Math.floor(e/uK))));CK.range;function IK(e){return gK((t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)}),((e,t)=>{e.setDate(e.getDate()+7*t)}),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*lK)/dK))}const EK=IK(0),DK=IK(1),TK=IK(2),OK=IK(3),MK=IK(4),PK=IK(5),jK=IK(6);EK.range,DK.range,TK.range,OK.range,MK.range,PK.range,jK.range;function RK(e){return gK((t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+7*t)}),((e,t)=>(t-e)/dK))}const _K=RK(0),NK=RK(1),LK=RK(2),UK=RK(3),BK=RK(4),FK=RK(5),zK=RK(6),WK=(_K.range,NK.range,LK.range,UK.range,BK.range,FK.range,zK.range,gK((e=>{e.setDate(1),e.setHours(0,0,0,0)}),((e,t)=>{e.setMonth(e.getMonth()+t)}),((e,t)=>t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())),(e=>e.getMonth()))),HK=(WK.range,gK((e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)}),((e,t)=>t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())),(e=>e.getUTCMonth()))),YK=(HK.range,gK((e=>{e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,t)=>{e.setFullYear(e.getFullYear()+t)}),((e,t)=>t.getFullYear()-e.getFullYear()),(e=>e.getFullYear())));YK.every=e=>isFinite(e=Math.floor(e))&&e>0?gK((t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,r)=>{t.setFullYear(t.getFullYear()+r*e)})):null;YK.range;const VK=gK((e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)}),((e,t)=>t.getUTCFullYear()-e.getUTCFullYear()),(e=>e.getUTCFullYear()));VK.every=e=>isFinite(e=Math.floor(e))&&e>0?gK((t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)})):null;VK.range;function GK(e,t,r,n,o,a){const i=[[yK,1,sK],[yK,5,5e3],[yK,15,15e3],[yK,30,3e4],[a,1,lK],[a,5,3e5],[a,15,9e5],[a,30,18e5],[o,1,cK],[o,3,108e5],[o,6,216e5],[o,12,432e5],[n,1,uK],[n,2,1728e5],[r,1,dK],[t,1,fK],[t,3,7776e6],[e,1,pK]];function s(t,r,n){const o=Math.abs(r-t)/n,a=$G((e=>{let[,,t]=e;return t})).right(i,o);if(a===i.length)return e.every(KG(t/pK,r/pK,n));if(0===a)return vK.every(Math.max(KG(t,r,n),1));const[s,l]=i[o/i[a-1][2]<i[a][2]/o?a-1:a];return s.every(l)}return[function(e,t,r){const n=t<e;n&&([e,t]=[t,e]);const o=r&&"function"===typeof r.range?r:s(e,t,r),a=o?o.range(e,+t+1):[];return n?a.reverse():a},s]}const[ZK,QK]=GK(VK,HK,_K,CK,SK,wK),[KK,XK]=GK(YK,WK,EK,AK,xK,bK);function JK(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function $K(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function qK(e,t,r){return{y:e,m:t,d:r,H:0,M:0,S:0,L:0}}var eX,tX,rX,nX={"-":"",_:" ",0:"0"},oX=/^\s*\d+/,aX=/^%/,iX=/[\\^$*+?|[\]().{}]/g;function sX(e,t,r){var n=e<0?"-":"",o=(n?-e:e)+"",a=o.length;return n+(a<r?new Array(r-a+1).join(t)+o:o)}function lX(e){return e.replace(iX,"\\$&")}function cX(e){return new RegExp("^(?:"+e.map(lX).join("|")+")","i")}function uX(e){return new Map(e.map(((e,t)=>[e.toLowerCase(),t])))}function dX(e,t,r){var n=oX.exec(t.slice(r,r+1));return n?(e.w=+n[0],r+n[0].length):-1}function fX(e,t,r){var n=oX.exec(t.slice(r,r+1));return n?(e.u=+n[0],r+n[0].length):-1}function pX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.U=+n[0],r+n[0].length):-1}function hX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.V=+n[0],r+n[0].length):-1}function mX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.W=+n[0],r+n[0].length):-1}function gX(e,t,r){var n=oX.exec(t.slice(r,r+4));return n?(e.y=+n[0],r+n[0].length):-1}function vX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function yX(e,t,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return n?(e.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function bX(e,t,r){var n=oX.exec(t.slice(r,r+1));return n?(e.q=3*n[0]-3,r+n[0].length):-1}function wX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.m=n[0]-1,r+n[0].length):-1}function xX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function SX(e,t,r){var n=oX.exec(t.slice(r,r+3));return n?(e.m=0,e.d=+n[0],r+n[0].length):-1}function AX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function kX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function CX(e,t,r){var n=oX.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function IX(e,t,r){var n=oX.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function EX(e,t,r){var n=oX.exec(t.slice(r,r+6));return n?(e.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function DX(e,t,r){var n=aX.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function TX(e,t,r){var n=oX.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function OX(e,t,r){var n=oX.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function MX(e,t){return sX(e.getDate(),t,2)}function PX(e,t){return sX(e.getHours(),t,2)}function jX(e,t){return sX(e.getHours()%12||12,t,2)}function RX(e,t){return sX(1+AK.count(YK(e),e),t,3)}function _X(e,t){return sX(e.getMilliseconds(),t,3)}function NX(e,t){return _X(e,t)+"000"}function LX(e,t){return sX(e.getMonth()+1,t,2)}function UX(e,t){return sX(e.getMinutes(),t,2)}function BX(e,t){return sX(e.getSeconds(),t,2)}function FX(e){var t=e.getDay();return 0===t?7:t}function zX(e,t){return sX(EK.count(YK(e)-1,e),t,2)}function WX(e){var t=e.getDay();return t>=4||0===t?MK(e):MK.ceil(e)}function HX(e,t){return e=WX(e),sX(MK.count(YK(e),e)+(4===YK(e).getDay()),t,2)}function YX(e){return e.getDay()}function VX(e,t){return sX(DK.count(YK(e)-1,e),t,2)}function GX(e,t){return sX(e.getFullYear()%100,t,2)}function ZX(e,t){return sX((e=WX(e)).getFullYear()%100,t,2)}function QX(e,t){return sX(e.getFullYear()%1e4,t,4)}function KX(e,t){var r=e.getDay();return sX((e=r>=4||0===r?MK(e):MK.ceil(e)).getFullYear()%1e4,t,4)}function XX(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+sX(t/60|0,"0",2)+sX(t%60,"0",2)}function JX(e,t){return sX(e.getUTCDate(),t,2)}function $X(e,t){return sX(e.getUTCHours(),t,2)}function qX(e,t){return sX(e.getUTCHours()%12||12,t,2)}function eJ(e,t){return sX(1+kK.count(VK(e),e),t,3)}function tJ(e,t){return sX(e.getUTCMilliseconds(),t,3)}function rJ(e,t){return tJ(e,t)+"000"}function nJ(e,t){return sX(e.getUTCMonth()+1,t,2)}function oJ(e,t){return sX(e.getUTCMinutes(),t,2)}function aJ(e,t){return sX(e.getUTCSeconds(),t,2)}function iJ(e){var t=e.getUTCDay();return 0===t?7:t}function sJ(e,t){return sX(_K.count(VK(e)-1,e),t,2)}function lJ(e){var t=e.getUTCDay();return t>=4||0===t?BK(e):BK.ceil(e)}function cJ(e,t){return e=lJ(e),sX(BK.count(VK(e),e)+(4===VK(e).getUTCDay()),t,2)}function uJ(e){return e.getUTCDay()}function dJ(e,t){return sX(NK.count(VK(e)-1,e),t,2)}function fJ(e,t){return sX(e.getUTCFullYear()%100,t,2)}function pJ(e,t){return sX((e=lJ(e)).getUTCFullYear()%100,t,2)}function hJ(e,t){return sX(e.getUTCFullYear()%1e4,t,4)}function mJ(e,t){var r=e.getUTCDay();return sX((e=r>=4||0===r?BK(e):BK.ceil(e)).getUTCFullYear()%1e4,t,4)}function gJ(){return"+0000"}function vJ(){return"%"}function yJ(e){return+e}function bJ(e){return Math.floor(+e/1e3)}function wJ(e){return new Date(e)}function xJ(e){return e instanceof Date?+e:+new Date(+e)}function SJ(e,t,r,n,o,a,i,s,l,c){var u=cQ(),d=u.invert,f=u.domain,p=c(".%L"),h=c(":%S"),m=c("%I:%M"),g=c("%I %p"),v=c("%a %d"),y=c("%b %d"),b=c("%B"),w=c("%Y");function x(e){return(l(e)<e?p:s(e)<e?h:i(e)<e?m:a(e)<e?g:n(e)<e?o(e)<e?v:y:r(e)<e?b:w)(e)}return u.invert=function(e){return new Date(d(e))},u.domain=function(e){return arguments.length?f(Array.from(e,xJ)):f().map(wJ)},u.ticks=function(t){var r=f();return e(r[0],r[r.length-1],null==t?10:t)},u.tickFormat=function(e,t){return null==t?x:c(t)},u.nice=function(e){var r=f();return e&&"function"===typeof e.range||(e=t(r[0],r[r.length-1],null==e?10:e)),e?f(TQ(r,e)):u},u.copy=function(){return sQ(u,SJ(e,t,r,n,o,a,i,s,l,c))},u}function AJ(){return MG.apply(SJ(KK,XK,YK,WK,EK,AK,xK,bK,yK,tX).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function kJ(){return MG.apply(SJ(ZK,QK,VK,HK,_K,kK,SK,wK,yK,rX).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function CJ(){var e,t,r,n,o,a=0,i=1,s=nQ,l=!1;function c(t){return null==t||isNaN(t=+t)?o:s(0===r?.5:(t=(n(t)-e)*r,l?Math.max(0,Math.min(1,t)):t))}function u(e){return function(t){var r,n;return arguments.length?([r,n]=t,s=e(r,n),c):[s(0),s(1)]}}return c.domain=function(o){return arguments.length?([a,i]=o,e=n(a=+a),t=n(i=+i),r=e===t?0:1/(t-e),c):[a,i]},c.clamp=function(e){return arguments.length?(l=!!e,c):l},c.interpolator=function(e){return arguments.length?(s=e,c):s},c.range=u(qZ),c.rangeRound=u(eQ),c.unknown=function(e){return arguments.length?(o=e,c):o},function(o){return n=o,e=o(a),t=o(i),r=e===t?0:1/(t-e),c}}function IJ(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function EJ(){var e=IQ(CJ()(nQ));return e.copy=function(){return IJ(e,EJ())},PG.apply(e,arguments)}function DJ(){var e=NQ(CJ()).domain([1,10]);return e.copy=function(){return IJ(e,DJ()).base(e.base())},PG.apply(e,arguments)}function TJ(){var e=FQ(CJ());return e.copy=function(){return IJ(e,TJ()).constant(e.constant())},PG.apply(e,arguments)}function OJ(){var e=VQ(CJ());return e.copy=function(){return IJ(e,OJ()).exponent(e.exponent())},PG.apply(e,arguments)}function MJ(){return OJ.apply(null,arguments).exponent(.5)}function PJ(){var e=[],t=nQ;function r(r){if(null!=r&&!isNaN(r=+r))return t((nZ(e,r,1)-1)/(e.length-1))}return r.domain=function(t){if(!arguments.length)return e.slice();e=[];for(let r of t)null==r||isNaN(r=+r)||e.push(r);return e.sort(XG),r},r.interpolator=function(e){return arguments.length?(t=e,r):t},r.range=function(){return e.map(((r,n)=>t(n/(e.length-1))))},r.quantiles=function(t){return Array.from({length:t+1},((r,n)=>rK(e,n/t)))},r.copy=function(){return PJ(t).domain(e)},PG.apply(r,arguments)}function jJ(){var e,t,r,n,o,a,i,s=0,l=.5,c=1,u=1,d=nQ,f=!1;function p(e){return isNaN(e=+e)?i:(e=.5+((e=+a(e))-t)*(u*e<u*t?n:o),d(f?Math.max(0,Math.min(1,e)):e))}function h(e){return function(t){var r,n,o;return arguments.length?([r,n,o]=t,d=function(e,t){void 0===t&&(t=e,e=qZ);for(var r=0,n=t.length-1,o=t[0],a=new Array(n<0?0:n);r<n;)a[r]=e(o,o=t[++r]);return function(e){var t=Math.max(0,Math.min(n-1,Math.floor(e*=n)));return a[t](e-t)}}(e,[r,n,o]),p):[d(0),d(.5),d(1)]}}return p.domain=function(i){return arguments.length?([s,l,c]=i,e=a(s=+s),t=a(l=+l),r=a(c=+c),n=e===t?0:.5/(t-e),o=t===r?0:.5/(r-t),u=t<e?-1:1,p):[s,l,c]},p.clamp=function(e){return arguments.length?(f=!!e,p):f},p.interpolator=function(e){return arguments.length?(d=e,p):d},p.range=h(qZ),p.rangeRound=h(eQ),p.unknown=function(e){return arguments.length?(i=e,p):i},function(i){return a=i,e=i(s),t=i(l),r=i(c),n=e===t?0:.5/(t-e),o=t===r?0:.5/(r-t),u=t<e?-1:1,p}}function RJ(){var e=IQ(jJ()(nQ));return e.copy=function(){return IJ(e,RJ())},PG.apply(e,arguments)}function _J(){var e=NQ(jJ()).domain([.1,1,10]);return e.copy=function(){return IJ(e,_J()).base(e.base())},PG.apply(e,arguments)}function NJ(){var e=FQ(jJ());return e.copy=function(){return IJ(e,NJ()).constant(e.constant())},PG.apply(e,arguments)}function LJ(){var e=VQ(jJ());return e.copy=function(){return IJ(e,LJ()).exponent(e.exponent())},PG.apply(e,arguments)}function UJ(){return LJ.apply(null,arguments).exponent(.5)}!function(e){eX=function(e){var t=e.dateTime,r=e.date,n=e.time,o=e.periods,a=e.days,i=e.shortDays,s=e.months,l=e.shortMonths,c=cX(o),u=uX(o),d=cX(a),f=uX(a),p=cX(i),h=uX(i),m=cX(s),g=uX(s),v=cX(l),y=uX(l),b={a:function(e){return i[e.getDay()]},A:function(e){return a[e.getDay()]},b:function(e){return l[e.getMonth()]},B:function(e){return s[e.getMonth()]},c:null,d:MX,e:MX,f:NX,g:ZX,G:KX,H:PX,I:jX,j:RX,L:_X,m:LX,M:UX,p:function(e){return o[+(e.getHours()>=12)]},q:function(e){return 1+~~(e.getMonth()/3)},Q:yJ,s:bJ,S:BX,u:FX,U:zX,V:HX,w:YX,W:VX,x:null,X:null,y:GX,Y:QX,Z:XX,"%":vJ},w={a:function(e){return i[e.getUTCDay()]},A:function(e){return a[e.getUTCDay()]},b:function(e){return l[e.getUTCMonth()]},B:function(e){return s[e.getUTCMonth()]},c:null,d:JX,e:JX,f:rJ,g:pJ,G:mJ,H:$X,I:qX,j:eJ,L:tJ,m:nJ,M:oJ,p:function(e){return o[+(e.getUTCHours()>=12)]},q:function(e){return 1+~~(e.getUTCMonth()/3)},Q:yJ,s:bJ,S:aJ,u:iJ,U:sJ,V:cJ,w:uJ,W:dJ,x:null,X:null,y:fJ,Y:hJ,Z:gJ,"%":vJ},x={a:function(e,t,r){var n=p.exec(t.slice(r));return n?(e.w=h.get(n[0].toLowerCase()),r+n[0].length):-1},A:function(e,t,r){var n=d.exec(t.slice(r));return n?(e.w=f.get(n[0].toLowerCase()),r+n[0].length):-1},b:function(e,t,r){var n=v.exec(t.slice(r));return n?(e.m=y.get(n[0].toLowerCase()),r+n[0].length):-1},B:function(e,t,r){var n=m.exec(t.slice(r));return n?(e.m=g.get(n[0].toLowerCase()),r+n[0].length):-1},c:function(e,r,n){return k(e,t,r,n)},d:xX,e:xX,f:EX,g:vX,G:gX,H:AX,I:AX,j:SX,L:IX,m:wX,M:kX,p:function(e,t,r){var n=c.exec(t.slice(r));return n?(e.p=u.get(n[0].toLowerCase()),r+n[0].length):-1},q:bX,Q:TX,s:OX,S:CX,u:fX,U:pX,V:hX,w:dX,W:mX,x:function(e,t,n){return k(e,r,t,n)},X:function(e,t,r){return k(e,n,t,r)},y:vX,Y:gX,Z:yX,"%":DX};function S(e,t){return function(r){var n,o,a,i=[],s=-1,l=0,c=e.length;for(r instanceof Date||(r=new Date(+r));++s<c;)37===e.charCodeAt(s)&&(i.push(e.slice(l,s)),null!=(o=nX[n=e.charAt(++s)])?n=e.charAt(++s):o="e"===n?" ":"0",(a=t[n])&&(n=a(r,o)),i.push(n),l=s+1);return i.push(e.slice(l,s)),i.join("")}}function A(e,t){return function(r){var n,o,a=qK(1900,void 0,1);if(k(a,e,r+="",0)!=r.length)return null;if("Q"in a)return new Date(a.Q);if("s"in a)return new Date(1e3*a.s+("L"in a?a.L:0));if(t&&!("Z"in a)&&(a.Z=0),"p"in a&&(a.H=a.H%12+12*a.p),void 0===a.m&&(a.m="q"in a?a.q:0),"V"in a){if(a.V<1||a.V>53)return null;"w"in a||(a.w=1),"Z"in a?(o=(n=$K(qK(a.y,0,1))).getUTCDay(),n=o>4||0===o?NK.ceil(n):NK(n),n=kK.offset(n,7*(a.V-1)),a.y=n.getUTCFullYear(),a.m=n.getUTCMonth(),a.d=n.getUTCDate()+(a.w+6)%7):(o=(n=JK(qK(a.y,0,1))).getDay(),n=o>4||0===o?DK.ceil(n):DK(n),n=AK.offset(n,7*(a.V-1)),a.y=n.getFullYear(),a.m=n.getMonth(),a.d=n.getDate()+(a.w+6)%7)}else("W"in a||"U"in a)&&("w"in a||(a.w="u"in a?a.u%7:"W"in a?1:0),o="Z"in a?$K(qK(a.y,0,1)).getUTCDay():JK(qK(a.y,0,1)).getDay(),a.m=0,a.d="W"in a?(a.w+6)%7+7*a.W-(o+5)%7:a.w+7*a.U-(o+6)%7);return"Z"in a?(a.H+=a.Z/100|0,a.M+=a.Z%100,$K(a)):JK(a)}}function k(e,t,r,n){for(var o,a,i=0,s=t.length,l=r.length;i<s;){if(n>=l)return-1;if(37===(o=t.charCodeAt(i++))){if(o=t.charAt(i++),!(a=x[o in nX?t.charAt(i++):o])||(n=a(e,r,n))<0)return-1}else if(o!=r.charCodeAt(n++))return-1}return n}return b.x=S(r,b),b.X=S(n,b),b.c=S(t,b),w.x=S(r,w),w.X=S(n,w),w.c=S(t,w),{format:function(e){var t=S(e+="",b);return t.toString=function(){return e},t},parse:function(e){var t=A(e+="",!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+="",w);return t.toString=function(){return e},t},utcParse:function(e){var t=A(e+="",!0);return t.toString=function(){return e},t}}}(e),tX=eX.format,eX.parse,rX=eX.utcFormat,eX.utcParse}({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var BJ=e=>e.chartData,FJ=wV([BJ],(e=>{var t=null!=e.chartData?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}})),zJ=(e,t,r,n)=>n?FJ(e):BJ(e);function WJ(e){if(Array.isArray(e)&&2===e.length){var[t,r]=e;if(oz(t)&&oz(r))return!0}return!1}function HJ(e,t,r){return r?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function YJ(e,t){if(t&&"function"!==typeof e&&Array.isArray(e)&&2===e.length){var r,n,[o,a]=e;if(oz(o))r=o;else if("function"===typeof o)return;if(oz(a))n=a;else if("function"===typeof a)return;var i=[r,n];if(WJ(i))return i}}var VJ,GJ=r(44441),ZJ=r.n(GJ),QJ=e=>e,KJ={"@@functional/placeholder":!0},XJ=e=>e===KJ,JJ=e=>function t(){return 0===arguments.length||1===arguments.length&&XJ(arguments.length<=0?void 0:arguments[0])?t:e(...arguments)},$J=(e,t)=>1===e?t:JJ((function(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];var a=n.filter((e=>e!==KJ)).length;return a>=e?t(...n):$J(e-a,JJ((function(){for(var e=arguments.length,r=new Array(e),o=0;o<e;o++)r[o]=arguments[o];var a=n.map((e=>XJ(e)?r.shift():e));return t(...a,...r)})))})),qJ=(e,t)=>{for(var r=[],n=e;n<t;++n)r[n-e]=n;return r},e$=$J((VJ=(e,t)=>Array.isArray(t)?t.map(e):Object.keys(t).map((e=>t[e])).map(e)).length,VJ);function t$(e){return 0===e?1:Math.floor(new(ZJ())(e).abs().log(10).toNumber())+1}function r$(e,t,r){for(var n=new(ZJ())(e),o=0,a=[];n.lt(t)&&o<1e5;)a.push(n.toNumber()),n=n.add(r),o++;return a}var n$=e=>{var[t,r]=e,[n,o]=[t,r];return t>r&&([n,o]=[r,t]),[n,o]},o$=(e,t,r)=>{if(e.lte(0))return new(ZJ())(0);var n=t$(e.toNumber()),o=new(ZJ())(10).pow(n),a=e.div(o),i=1!==n?.05:.1,s=new(ZJ())(Math.ceil(a.div(i).toNumber())).add(r).mul(i).mul(o);return t?new(ZJ())(s.toNumber()):new(ZJ())(Math.ceil(s.toNumber()))},a$=(e,t,r)=>{var n=new(ZJ())(1),o=new(ZJ())(e);if(!o.isint()&&r){var a=Math.abs(e);a<1?(n=new(ZJ())(10).pow(t$(e)-1),o=new(ZJ())(Math.floor(o.div(n).toNumber())).mul(n)):a>1&&(o=new(ZJ())(Math.floor(e)))}else 0===e?o=new(ZJ())(Math.floor((t-1)/2)):r||(o=new(ZJ())(Math.floor(e)));var i=Math.floor((t-1)/2);return function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];if(!t.length)return QJ;var n=t.reverse(),o=n[0],a=n.slice(1);return function(){return a.reduce(((e,t)=>t(e)),o(...arguments))}}(e$((e=>o.add(new(ZJ())(e-i).mul(n)).toNumber())),qJ)(0,t)},i$=function(e,t,r,n){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0;if(!Number.isFinite((t-e)/(r-1)))return{step:new(ZJ())(0),tickMin:new(ZJ())(0),tickMax:new(ZJ())(0)};var a,i=o$(new(ZJ())(t).sub(e).div(r-1),n,o);a=e<=0&&t>=0?new(ZJ())(0):(a=new(ZJ())(e).add(t).div(2)).sub(new(ZJ())(a).mod(i));var s=Math.ceil(a.sub(e).div(i).toNumber()),l=Math.ceil(new(ZJ())(t).sub(a).div(i).toNumber()),c=s+l+1;return c>r?i$(e,t,r,n,o+1):(c<r&&(l=t>0?l+(r-c):l,s=t>0?s:s+(r-c)),{step:i,tickMin:a.sub(new(ZJ())(s).mul(i)),tickMax:a.add(new(ZJ())(l).mul(i))})},s$=e=>e.rootProps.stackOffset,l$=e=>e.rootProps.reverseStackOrder,c$=e=>e.options.chartName,u$=e=>e.rootProps.syncId,d$=e=>e.rootProps.syncMethod,f$=e=>e.options.eventEmitter;function p$(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h$(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?p$(Object(r),!0).forEach((function(t){m$(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):p$(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function m$(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var g$=Math.PI/180,v$=e=>180*e/Math.PI,y$=(e,t,r,n)=>({x:e+Math.cos(-g$*n)*r,y:t+Math.sin(-g$*n)*r}),b$=(e,t)=>{var{x:r,y:n}=e,{cx:o,cy:a}=t,i=((e,t)=>{var{x:r,y:n}=e,{x:o,y:a}=t;return Math.sqrt((r-o)**2+(n-a)**2)})({x:r,y:n},{x:o,y:a});if(i<=0)return{radius:i,angle:0};var s=(r-o)/i,l=Math.acos(s);return n>a&&(l=2*Math.PI-l),{radius:i,angle:v$(l),angleInRadian:l}},w$=(e,t)=>{var{startAngle:r,endAngle:n}=t,o=Math.floor(r/360),a=Math.floor(n/360);return e+360*Math.min(o,a)},x$=(e,t)=>{var{chartX:r,chartY:n}=e,{radius:o,angle:a}=b$({x:r,y:n},t),{innerRadius:i,outerRadius:s}=t;if(o<i||o>s)return null;if(0===o)return null;var l,{startAngle:c,endAngle:u}=(e=>{var{startAngle:t,endAngle:r}=e,n=Math.floor(t/360),o=Math.floor(r/360),a=Math.min(n,o);return{startAngle:t-360*a,endAngle:r-360*a}})(t),d=a;if(c<=u){for(;d>u;)d-=360;for(;d<c;)d+=360;l=d>=c&&d<=u}else{for(;d>c;)d-=360;for(;d<u;)d+=360;l=d>=u&&d<=c}return l?h$(h$({},t),{},{radius:o,angle:w$(d,t)}):null},S$={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},A$=!0,k$=0,C$=!1,I$="auto",E$=!0,D$="category",T$=(S$.axis,!1),O$=!0,M$=0,P$="auto",j$=!0,R$=5,_$="number",N$=(S$.axis,(e,t)=>{if(e&&t)return null!==e&&void 0!==e&&e.reversed?[t[1],t[0]]:t}),L$={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!1,dataKey:void 0,domain:void 0,id:k$,includeHidden:!1,name:void 0,reversed:C$,scale:I$,tick:E$,tickCount:void 0,ticks:void 0,type:D$,unit:void 0},U$={allowDataOverflow:T$,allowDecimals:!1,allowDuplicatedCategory:O$,dataKey:void 0,domain:void 0,id:M$,includeHidden:!1,name:void 0,reversed:!1,scale:P$,tick:j$,tickCount:R$,ticks:void 0,type:_$,unit:void 0},B$={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:A$,dataKey:void 0,domain:void 0,id:k$,includeHidden:!1,name:void 0,reversed:!1,scale:I$,tick:E$,tickCount:void 0,ticks:void 0,type:"number",unit:void 0},F$={allowDataOverflow:T$,allowDecimals:!1,allowDuplicatedCategory:O$,dataKey:void 0,domain:void 0,id:M$,includeHidden:!1,name:void 0,reversed:!1,scale:P$,tick:j$,tickCount:R$,ticks:void 0,type:"category",unit:void 0},z$=(e,t)=>null!=e.polarAxis.angleAxis[t]?e.polarAxis.angleAxis[t]:"radial"===e.layout.layoutType?B$:L$,W$=(e,t)=>null!=e.polarAxis.radiusAxis[t]?e.polarAxis.radiusAxis[t]:"radial"===e.layout.layoutType?F$:U$,H$=e=>e.polarOptions,Y$=wV([nG,oG,fG],(function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{top:0,right:0,bottom:0,left:0,width:0,height:0,brushBottom:0};return Math.min(Math.abs(e-(r.left||0)-(r.right||0)),Math.abs(t-(r.top||0)-(r.bottom||0)))/2})),V$=wV([H$,Y$],((e,t)=>{if(null!=e)return HF(e.innerRadius,t,0)})),G$=wV([H$,Y$],((e,t)=>{if(null!=e)return HF(e.outerRadius,t,.8*t)})),Z$=wV([H$],(e=>{if(null==e)return[0,0];var{startAngle:t,endAngle:r}=e;return[t,r]})),Q$=(wV([z$,Z$],N$),wV([Y$,V$,G$],((e,t,r)=>{if(null!=e&&null!=t&&null!=r)return[t,r]}))),K$=(wV([W$,Q$],N$),wV([IG,H$,V$,G$,nG,oG],((e,t,r,n,o,a)=>{if(("centric"===e||"radial"===e)&&null!=t&&null!=r&&null!=n){var{cx:i,cy:s,startAngle:l,endAngle:c}=t;return{cx:HF(i,o,o/2),cy:HF(s,a,a/2),innerRadius:r,outerRadius:n,startAngle:l,endAngle:c,clockWise:!1}}}))),X$=(e,t)=>t,J$=(e,t,r)=>r;function $$(e){return null===e||void 0===e?void 0:e.id}function q$(e,t,r){var{chartData:n=[]}=t,{allowDuplicatedCategory:o,dataKey:a}=r,i=new Map;return e.forEach((e=>{var t,r=null!==(t=e.data)&&void 0!==t?t:n;if(null!=r&&0!==r.length){var s=$$(e);r.forEach(((t,r)=>{var n,l=null==a||o?r:String(HV(t,a,null)),c=HV(t,e.dataKey,0);n=i.has(l)?i.get(l):{},Object.assign(n,{[s]:c}),i.set(l,n)}))}})),Array.from(i.values())}function eq(e){return"stackId"in e&&null!=e.stackId&&null!=e.dataKey}var tq=(e,t)=>e===t||null!=e&&null!=t&&(e[0]===t[0]&&e[1]===t[1]);function rq(e,t){return!(!Array.isArray(e)||!Array.isArray(t)||0!==e.length||0!==t.length)||e===t}var nq=e=>{var t=IG(e);return"horizontal"===t?"xAxis":"vertical"===t?"yAxis":"centric"===t?"angleAxis":"radiusAxis"},oq=e=>e.tooltip.settings.axisId;function aq(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function iq(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?aq(Object(r),!0).forEach((function(t){sq(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):aq(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function sq(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var lq=[0,"auto"],cq={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:void 0,height:30,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"bottom",padding:{left:0,right:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"category",unit:void 0},uq=(e,t)=>e.cartesianAxis.xAxis[t],dq=(e,t)=>{var r=uq(e,t);return null==r?cq:r},fq={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:lq,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,width:60},pq=(e,t)=>e.cartesianAxis.yAxis[t],hq=(e,t)=>{var r=pq(e,t);return null==r?fq:r},mq={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},gq=(e,t)=>{var r=e.cartesianAxis.zAxis[t];return null==r?mq:r},vq=(e,t,r)=>{switch(t){case"xAxis":return dq(e,r);case"yAxis":return hq(e,r);case"zAxis":return gq(e,r);case"angleAxis":return z$(e,r);case"radiusAxis":return W$(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},yq=(e,t,r)=>{switch(t){case"xAxis":return dq(e,r);case"yAxis":return hq(e,r);case"angleAxis":return z$(e,r);case"radiusAxis":return W$(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},bq=e=>e.graphicalItems.cartesianItems.some((e=>"bar"===e.type))||e.graphicalItems.polarItems.some((e=>"radialBar"===e.type));function wq(e,t){return r=>{switch(e){case"xAxis":return"xAxisId"in r&&r.xAxisId===t;case"yAxis":return"yAxisId"in r&&r.yAxisId===t;case"zAxis":return"zAxisId"in r&&r.zAxisId===t;case"angleAxis":return"angleAxisId"in r&&r.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in r&&r.radiusAxisId===t;default:return!1}}}var xq=e=>e.graphicalItems.cartesianItems,Sq=wV([X$,J$],wq),Aq=(e,t,r)=>e.filter(r).filter((e=>!0===(null===t||void 0===t?void 0:t.includeHidden)||!e.hide)),kq=wV([xq,vq,Sq],Aq,{memoizeOptions:{resultEqualityCheck:rq}}),Cq=wV([kq],(e=>e.filter((e=>"area"===e.type||"bar"===e.type)).filter(eq))),Iq=e=>e.filter((e=>!("stackId"in e)||void 0===e.stackId)),Eq=wV([kq],Iq),Dq=e=>e.map((e=>e.data)).filter(Boolean).flat(1),Tq=wV([kq],Dq,{memoizeOptions:{resultEqualityCheck:rq}}),Oq=(e,t)=>{var{chartData:r=[],dataStartIndex:n,dataEndIndex:o}=t;return e.length>0?e:r.slice(n,o+1)},Mq=wV([Tq,zJ],Oq),Pq=(e,t,r)=>null!=(null===t||void 0===t?void 0:t.dataKey)?e.map((e=>({value:HV(e,t.dataKey)}))):r.length>0?r.map((e=>e.dataKey)).flatMap((t=>e.map((e=>({value:HV(e,t)}))))):e.map((e=>({value:e}))),jq=wV([Mq,vq,kq],Pq);function Rq(e,t){switch(e){case"xAxis":return"x"===t.direction;case"yAxis":return"y"===t.direction;default:return!1}}function _q(e){if(FF(e)||e instanceof Date){var t=Number(e);if(oz(t))return t}}function Nq(e){if(Array.isArray(e)){var t=[_q(e[0]),_q(e[1])];return WJ(t)?t:void 0}var r=_q(e);if(null!=r)return[r,r]}function Lq(e){return e.map(_q).filter(KF)}var Uq=e=>{var t=nq(e),r=oq(e);return yq(e,t,r)},Bq=wV([Uq],(e=>null===e||void 0===e?void 0:e.dataKey)),Fq=wV([Cq,zJ,Uq],q$),zq=(e,t,r,n)=>{var o=t.reduce(((e,t)=>{if(null==t.stackId)return e;var r=e[t.stackId];return null==r&&(r=[]),r.push(t),e[t.stackId]=r,e}),{});return Object.fromEntries(Object.entries(o).map((t=>{var[o,a]=t,i=n?[...a].reverse():a,s=i.map($$);return[o,{stackedData:KV(e,s,r),graphicalItems:i}]})))},Wq=wV([Fq,Cq,s$,l$],zq),Hq=(e,t,r,n)=>{var{dataStartIndex:o,dataEndIndex:a}=t;if(null==n&&"zAxis"!==r){var i=JV(e,o,a);if(null==i||0!==i[0]||0!==i[1])return i}},Yq=wV([vq],(e=>e.allowDataOverflow)),Vq=e=>{var t;if(null==e||!("domain"in e))return lq;if(null!=e.domain)return e.domain;if("ticks"in e&&null!=e.ticks){if("number"===e.type){var r=Lq(e.ticks);return[Math.min(...r),Math.max(...r)]}if("category"===e.type)return e.ticks.map(String)}return null!==(t=null===e||void 0===e?void 0:e.domain)&&void 0!==t?t:lq},Gq=wV([vq],Vq),Zq=wV([Gq,Yq],YJ),Qq=wV([Wq,BJ,X$,Zq],Hq,{memoizeOptions:{resultEqualityCheck:tq}}),Kq=e=>e.errorBars,Xq=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=t.filter(Boolean);if(0!==n.length){var o=n.flat();return[Math.min(...o),Math.max(...o)]}},Jq=(e,t,r,n,o)=>{var a,i;if(r.length>0&&e.forEach((e=>{r.forEach((r=>{var s,l,c=null===(s=n[r.id])||void 0===s?void 0:s.filter((e=>Rq(o,e))),u=HV(e,null!==(l=t.dataKey)&&void 0!==l?l:r.dataKey),d=function(e,t,r){return!r||"number"!==typeof t||LF(t)?[]:r.length?Lq(r.flatMap((r=>{var n,o,a=HV(e,r.dataKey);if(Array.isArray(a)?[n,o]=a:n=o=a,oz(n)&&oz(o))return[t-n,t+o]}))):[]}(e,u,c);if(d.length>=2){var f=Math.min(...d),p=Math.max(...d);(null==a||f<a)&&(a=f),(null==i||p>i)&&(i=p)}var h=Nq(u);null!=h&&(a=null==a?h[0]:Math.min(a,h[0]),i=null==i?h[1]:Math.max(i,h[1]))}))})),null!=(null===t||void 0===t?void 0:t.dataKey)&&e.forEach((e=>{var r=Nq(HV(e,t.dataKey));null!=r&&(a=null==a?r[0]:Math.min(a,r[0]),i=null==i?r[1]:Math.max(i,r[1]))})),oz(a)&&oz(i))return[a,i]},$q=wV([Mq,vq,Eq,Kq,X$],Jq,{memoizeOptions:{resultEqualityCheck:tq}});function qq(e){var{value:t}=e;if(FF(t)||t instanceof Date)return t}var e0=e=>e.referenceElements.dots,t0=(e,t,r)=>e.filter((e=>"extendDomain"===e.ifOverflow)).filter((e=>"xAxis"===t?e.xAxisId===r:e.yAxisId===r)),r0=wV([e0,X$,J$],t0),n0=e=>e.referenceElements.areas,o0=wV([n0,X$,J$],t0),a0=e=>e.referenceElements.lines,i0=wV([a0,X$,J$],t0),s0=(e,t)=>{if(null!=e){var r=Lq(e.map((e=>"xAxis"===t?e.x:e.y)));if(0!==r.length)return[Math.min(...r),Math.max(...r)]}},l0=wV(r0,X$,s0),c0=(e,t)=>{if(null!=e){var r=Lq(e.flatMap((e=>["xAxis"===t?e.x1:e.y1,"xAxis"===t?e.x2:e.y2])));if(0!==r.length)return[Math.min(...r),Math.max(...r)]}},u0=wV([o0,X$],c0);var d0=(e,t)=>{if(null!=e){var r=e.flatMap((e=>"xAxis"===t?function(e){var t;if(null!=e.x)return Lq([e.x]);var r=null===(t=e.segment)||void 0===t?void 0:t.map((e=>e.x));return null==r||0===r.length?[]:Lq(r)}(e):function(e){var t;if(null!=e.y)return Lq([e.y]);var r=null===(t=e.segment)||void 0===t?void 0:t.map((e=>e.y));return null==r||0===r.length?[]:Lq(r)}(e)));if(0!==r.length)return[Math.min(...r),Math.max(...r)]}},f0=wV([i0,X$],d0),p0=wV(l0,f0,u0,((e,t,r)=>Xq(e,r,t))),h0=(e,t,r,n,o,a,i,s)=>null!=r?r:function(e,t,r){if(r||null!=t){if("function"===typeof e&&null!=t)try{var n=e(t,r);if(WJ(n))return HJ(n,t,r)}catch(p){}if(Array.isArray(e)&&2===e.length){var o,a,[i,s]=e;if("auto"===i)null!=t&&(o=Math.min(...t));else if(BF(i))o=i;else if("function"===typeof i)try{null!=t&&(o=i(null===t||void 0===t?void 0:t[0]))}catch(h){}else if("string"===typeof i&&$V.test(i)){var l=$V.exec(i);if(null==l||null==l[1]||null==t)o=void 0;else{var c=+l[1];o=t[0]-c}}else o=null===t||void 0===t?void 0:t[0];if("auto"===s)null!=t&&(a=Math.max(...t));else if(BF(s))a=s;else if("function"===typeof s)try{null!=t&&(a=s(null===t||void 0===t?void 0:t[1]))}catch(m){}else if("string"===typeof s&&qV.test(s)){var u=qV.exec(s);if(null==u||null==u[1]||null==t)a=void 0;else{var d=+u[1];a=t[1]+d}}else a=null===t||void 0===t?void 0:t[1];var f=[o,a];if(WJ(f))return null==t?f:HJ(f,t,r)}}}(t,"vertical"===i&&"xAxis"===s||"horizontal"===i&&"yAxis"===s?Xq(n,a,o):Xq(a,o),e.allowDataOverflow),m0=wV([vq,Gq,Zq,Qq,$q,p0,IG,X$],h0,{memoizeOptions:{resultEqualityCheck:tq}}),g0=[0,1],v0=(e,t,r,n,o,a,i)=>{if(null!=e&&null!=r&&0!==r.length||void 0!==i){var s,{dataKey:l,type:c}=e,u=YV(t,a);return u&&null==l?OG()(0,null!==(s=null===r||void 0===r?void 0:r.length)&&void 0!==s?s:0):"category"===c?((e,t,r)=>{var n=e.map(qq).filter((e=>null!=e));return r&&(null==t.dataKey||t.allowDuplicatedCategory&&YF(n))?OG()(0,e.length):t.allowDuplicatedCategory?n:Array.from(new Set(n))})(n,e,u):"expand"===o?g0:i}},y0=wV([vq,IG,Mq,jq,s$,X$,m0],v0),b0=(t,r,n,o,a)=>{if(null!=t){var{scale:i,type:s}=t;if("auto"===i)return"radial"===r&&"radiusAxis"===a?"band":"radial"===r&&"angleAxis"===a?"linear":"category"===s&&o&&(o.indexOf("LineChart")>=0||o.indexOf("AreaChart")>=0||o.indexOf("ComposedChart")>=0&&!n)?"point":"category"===s?"band":"linear";if("string"===typeof i){var l="scale".concat(QF(i));return l in e?l:"point"}}},w0=wV([vq,IG,bq,c$,X$],b0);function x0(t,r,n,o){if(null!=n&&null!=o){if("function"===typeof t.scale)return t.scale.copy().domain(n).range(o);var a=function(t){if(null!=t){if(t in e)return e[t]();var r="scale".concat(QF(t));return r in e?e[r]():void 0}}(r);if(null!=a){var i=a.domain(n).range(o);return(e=>{var t=e.domain();if(t&&!(t.length<=2)){var r=t.length,n=e.range(),o=Math.min(n[0],n[1])-ZV,a=Math.max(n[0],n[1])+ZV,i=e(t[0]),s=e(t[r-1]);(i<o||i>a||s<o||s>a)&&e.domain([t[0],t[r-1]])}})(i),i}}}var S0=(e,t,r)=>{var n=Vq(t);if("auto"===r||"linear"===r)return null!=t&&t.tickCount&&Array.isArray(n)&&("auto"===n[0]||"auto"===n[1])&&WJ(e)?function(e){var[t,r]=e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:6,o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=Math.max(n,2),[i,s]=n$([t,r]);if(i===-1/0||s===1/0){var l=s===1/0?[i,...qJ(0,n-1).map((()=>1/0))]:[...qJ(0,n-1).map((()=>-1/0)),s];return t>r?l.reverse():l}if(i===s)return a$(i,n,o);var{step:c,tickMin:u,tickMax:d}=i$(i,s,a,o,0),f=r$(u,d.add(new(ZJ())(.1).mul(c)),c);return t>r?f.reverse():f}(e,t.tickCount,t.allowDecimals):null!=t&&t.tickCount&&"number"===t.type&&WJ(e)?function(e,t){var[r,n]=e,o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],[a,i]=n$([r,n]);if(a===-1/0||i===1/0)return[r,n];if(a===i)return[a];var s=Math.max(t,2),l=o$(new(ZJ())(i).sub(a).div(s-1),o,0),c=[...r$(new(ZJ())(a),new(ZJ())(i),l),i];return!1===o&&(c=c.map((e=>Math.round(e)))),r>n?c.reverse():c}(e,t.tickCount,t.allowDecimals):void 0},A0=wV([y0,yq,w0],S0),k0=(e,t,r,n)=>{if("angleAxis"!==n&&"number"===(null===e||void 0===e?void 0:e.type)&&WJ(t)&&Array.isArray(r)&&r.length>0){var o=t[0],a=r[0],i=t[1],s=r[r.length-1];return[Math.min(o,a),Math.max(i,s)]}return t},C0=wV([vq,y0,A0,X$],k0),I0=wV(jq,vq,((e,t)=>{if(t&&"number"===t.type){var r=1/0,n=Array.from(Lq(e.map((e=>e.value)))).sort(((e,t)=>e-t)),o=n[0],a=n[n.length-1];if(null==o||null==a)return 1/0;var i=a-o;if(0===i)return 1/0;for(var s=0;s<n.length-1;s++){var l=n[s],c=n[s+1];if(null!=l&&null!=c){var u=c-l;r=Math.min(r,u)}}return r/i}})),E0=wV(I0,IG,(e=>e.rootProps.barCategoryGap),fG,((e,t,r,n,o)=>o),((e,t,r,n,o)=>{if(!oz(e))return 0;var a="vertical"===t?n.height:n.width;if("gap"===o)return e*a/2;if("no-gap"===o){var i=HF(r,e*a),s=e*a/2;return s-i-(s-i)/a*i}return 0})),D0=wV(dq,((e,t,r)=>{var n=dq(e,t);return null==n||"string"!==typeof n.padding?0:E0(e,"xAxis",t,r,n.padding)}),((e,t)=>{var r,n;if(null==e)return{left:0,right:0};var{padding:o}=e;return"string"===typeof o?{left:t,right:t}:{left:(null!==(r=o.left)&&void 0!==r?r:0)+t,right:(null!==(n=o.right)&&void 0!==n?n:0)+t}})),T0=wV(hq,((e,t,r)=>{var n=hq(e,t);return null==n||"string"!==typeof n.padding?0:E0(e,"yAxis",t,r,n.padding)}),((e,t)=>{var r,n;if(null==e)return{top:0,bottom:0};var{padding:o}=e;return"string"===typeof o?{top:t,bottom:t}:{top:(null!==(r=o.top)&&void 0!==r?r:0)+t,bottom:(null!==(n=o.bottom)&&void 0!==n?n:0)+t}})),O0=wV([fG,D0,bG,yG,(e,t,r)=>r],((e,t,r,n,o)=>{var{padding:a}=n;return o?[a.left,r.width-a.right]:[e.left+t.left,e.left+e.width-t.right]})),M0=wV([fG,IG,T0,bG,yG,(e,t,r)=>r],((e,t,r,n,o,a)=>{var{padding:i}=o;return a?[n.height-i.bottom,i.top]:"horizontal"===t?[e.top+e.height-r.bottom,e.top+r.top]:[e.top+r.top,e.top+e.height-r.bottom]})),P0=(e,t,r,n)=>{var o;switch(t){case"xAxis":return O0(e,r,n);case"yAxis":return M0(e,r,n);case"zAxis":return null===(o=gq(e,r))||void 0===o?void 0:o.range;case"angleAxis":return Z$(e);case"radiusAxis":return Q$(e,r);default:return}},j0=wV([vq,P0],N$),R0=wV([vq,w0,C0,j0],x0);wV([kq,Kq,X$],((e,t,r)=>e.flatMap((e=>t[e.id])).filter(Boolean).filter((e=>Rq(r,e)))));function _0(e,t){return e.id<t.id?-1:e.id>t.id?1:0}var N0=(e,t)=>t,L0=(e,t,r)=>r,U0=wV(sG,N0,L0,((e,t,r)=>e.filter((e=>e.orientation===t)).filter((e=>e.mirror===r)).sort(_0))),B0=wV(lG,N0,L0,((e,t,r)=>e.filter((e=>e.orientation===t)).filter((e=>e.mirror===r)).sort(_0))),F0=(e,t)=>({width:e.width,height:t.height}),z0=wV(fG,dq,F0),W0=wV(oG,fG,U0,N0,L0,((e,t,r,n,o)=>{var a,i={};return r.forEach((r=>{var s=F0(t,r);null==a&&(a=((e,t,r)=>{switch(t){case"top":return e.top;case"bottom":return r-e.bottom;default:return 0}})(t,n,e));var l="top"===n&&!o||"bottom"===n&&o;i[r.id]=a-Number(l)*s.height,a+=(l?-1:1)*s.height})),i})),H0=wV(nG,fG,B0,N0,L0,((e,t,r,n,o)=>{var a,i={};return r.forEach((r=>{var s=((e,t)=>({width:"number"===typeof t.width?t.width:60,height:e.height}))(t,r);null==a&&(a=((e,t,r)=>{switch(t){case"left":return e.left;case"right":return r-e.right;default:return 0}})(t,n,e));var l="left"===n&&!o||"right"===n&&o;i[r.id]=a-Number(l)*s.width,a+=(l?-1:1)*s.width})),i})),Y0=wV([fG,dq,(e,t)=>{var r=dq(e,t);if(null!=r)return W0(e,r.orientation,r.mirror)},(e,t)=>t],((e,t,r,n)=>{if(null!=t){var o=null===r||void 0===r?void 0:r[n];return null==o?{x:e.left,y:0}:{x:e.left,y:o}}})),V0=wV([fG,hq,(e,t)=>{var r=hq(e,t);if(null!=r)return H0(e,r.orientation,r.mirror)},(e,t)=>t],((e,t,r,n)=>{if(null!=t){var o=null===r||void 0===r?void 0:r[n];return null==o?{x:0,y:e.top}:{x:o,y:e.top}}})),G0=wV(fG,hq,((e,t)=>({width:"number"===typeof t.width?t.width:60,height:e.height}))),Z0=(e,t,r,n)=>{if(null!=r){var{allowDuplicatedCategory:o,type:a,dataKey:i}=r,s=YV(e,n),l=t.map((e=>e.value));return i&&s&&"category"===a&&o&&YF(l)?l:void 0}},Q0=wV([IG,jq,vq,X$],Z0),K0=(e,t,r,n)=>{if(null!=r&&null!=r.dataKey){var{type:o,scale:a}=r;return!YV(e,n)||"number"!==o&&"auto"===a?void 0:t.map((e=>e.value))}},X0=wV([IG,jq,yq,X$],K0),J0=wV([IG,(e,t,r)=>{switch(t){case"xAxis":return dq(e,r);case"yAxis":return hq(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},w0,R0,Q0,X0,P0,A0,X$],((e,t,r,n,o,a,i,s,l)=>{if(null!=t){var c=YV(e,l);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:l,categoricalDomain:a,duplicateDomain:o,isCategorical:c,niceTicks:s,range:i,realScaleType:r,scale:n}}})),$0=wV([IG,yq,w0,R0,A0,P0,Q0,X0,X$],((e,t,r,n,o,a,i,s,l)=>{if(null!=t&&null!=n){var c=YV(e,l),{type:u,ticks:d,tickCount:f}=t,p="scaleBand"===r&&"function"===typeof n.bandwidth?n.bandwidth()/2:2,h="category"===u&&n.bandwidth?n.bandwidth()/p:0;h="angleAxis"===l&&null!=a&&a.length>=2?2*NF(a[0]-a[1])*h:h;var m=d||o;return m?m.map(((e,t)=>{var r=i?i.indexOf(e):e;return{index:t,coordinate:n(r)+h,value:e,offset:h}})).filter((e=>oz(e.coordinate))):c&&s?s.map(((e,t)=>({coordinate:n(e)+h,value:e,index:t,offset:h}))).filter((e=>oz(e.coordinate))):n.ticks?n.ticks(f).map((e=>({coordinate:n(e)+h,value:e,offset:h}))):n.domain().map(((e,t)=>({coordinate:n(e)+h,value:i?i[e]:e,index:t,offset:h})))}})),q0=wV([IG,yq,R0,P0,Q0,X0,X$],((e,t,r,n,o,a,i)=>{if(null!=t&&null!=r&&null!=n&&n[0]!==n[1]){var s=YV(e,i),{tickCount:l}=t,c=0;return c="angleAxis"===i&&(null===n||void 0===n?void 0:n.length)>=2?2*NF(n[0]-n[1])*c:c,s&&a?a.map(((e,t)=>({coordinate:r(e)+c,value:e,index:t,offset:c}))):r.ticks?r.ticks(l).map((e=>({coordinate:r(e)+c,value:e,offset:c}))):r.domain().map(((e,t)=>({coordinate:r(e)+c,value:o?o[e]:e,index:t,offset:c})))}})),e1=wV(vq,R0,((e,t)=>{if(null!=e&&null!=t)return iq(iq({},e),{},{scale:t})})),t1=wV([vq,w0,y0,j0],x0),r1=(wV(((e,t,r)=>gq(e,r)),t1,((e,t)=>{if(null!=e&&null!=t)return iq(iq({},e),{},{scale:t})})),wV([IG,sG,lG],((e,t,r)=>{switch(e){case"horizontal":return t.some((e=>e.reversed))?"right-to-left":"left-to-right";case"vertical":return r.some((e=>e.reversed))?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}))),n1=e=>e.options.defaultTooltipEventType,o1=e=>e.options.validateTooltipEventTypes;function a1(e,t,r){if(null==e)return t;var n=e?"axis":"item";return null==r?t:r.includes(n)?n:t}function i1(e,t){return a1(t,n1(e),o1(e))}var s1=(e,t)=>{var r,n=Number(t);if(!LF(n)&&null!=t)return n>=0?null===e||void 0===e||null===(r=e[n])||void 0===r?void 0:r.value:void 0};function l1(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c1(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?l1(Object(r),!0).forEach((function(t){u1(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):l1(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function u1(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var d1=(e,t,r,n)=>{if(null==t)return WY;var o=function(e,t,r){return"axis"===t?"click"===r?e.axisInteraction.click:e.axisInteraction.hover:"click"===r?e.itemInteraction.click:e.itemInteraction.hover}(e,t,r);if(null==o)return WY;if(o.active)return o;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&null!=e.syncInteraction.index)return e.syncInteraction;var a=!0===e.settings.active;if(null!=o.index){if(a)return c1(c1({},o),{},{active:!0})}else if(null!=n)return{active:!0,coordinate:void 0,dataKey:void 0,index:n,graphicalItemId:void 0};return c1(c1({},WY),{},{coordinate:o.coordinate})};function f1(e,t){var r=function(e){if("number"===typeof e)return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var r=Number(e);return Number.isFinite(r)?r:void 0}(e),n=t[0],o=t[1];if(void 0===r)return!1;var a=Math.min(n,o),i=Math.max(n,o);return r>=a&&r<=i}var p1=(e,t,r,n)=>{var o=null===e||void 0===e?void 0:e.index;if(null==o)return null;var a=Number(o);if(!oz(a))return o;var i=1/0;t.length>0&&(i=t.length-1);var s=Math.max(0,Math.min(a,i)),l=t[s];return null==l||function(e,t,r){if(null==r||null==t)return!0;var n=HV(e,t);return null==n||!WJ(r)||f1(n,r)}(l,r,n)?String(s):null},h1=(e,t,r,n,o,a,i,s)=>{if(null!=a&&null!=s){var l=i[0],c=null==l?void 0:s(l.positions,a);if(null!=c)return c;var u=null===o||void 0===o?void 0:o[Number(a)];if(u)return"horizontal"===r?{x:u.coordinate,y:(n.top+t)/2}:{x:(n.left+e)/2,y:u.coordinate}}},m1=(e,t,r,n)=>{if("axis"===t)return e.tooltipItemPayloads;if(0===e.tooltipItemPayloads.length)return[];var o;if(null==(o="hover"===r?e.itemInteraction.hover.graphicalItemId:e.itemInteraction.click.graphicalItemId)&&null!=n){var a=e.tooltipItemPayloads[0];return null!=a?[a]:[]}return e.tooltipItemPayloads.filter((e=>{var t;return(null===(t=e.settings)||void 0===t?void 0:t.graphicalItemId)===o}))},g1=e=>e.options.tooltipPayloadSearcher,v1=e=>e.tooltip;function y1(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function b1(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y1(Object(r),!0).forEach((function(t){w1(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y1(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function w1(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var x1=(e,t,r,n,o,a,i)=>{if(null!=t&&null!=a){var{chartData:s,computedData:l,dataStartIndex:c,dataEndIndex:u}=r;return e.reduce(((e,r)=>{var d,f,p,{dataDefinedOnItem:h,settings:m}=r,g=function(e,t){return null!=e?e:t}(h,s),v=Array.isArray(g)?BV(g,c,u):g,y=null!==(d=null===m||void 0===m?void 0:m.dataKey)&&void 0!==d?d:n,b=null===m||void 0===m?void 0:m.nameKey;(f=n&&Array.isArray(v)&&!Array.isArray(v[0])&&"axis"===i?GF(v,n,o):a(v,t,l,b),Array.isArray(f))?f.forEach((t=>{var r=b1(b1({},m),{},{name:t.name,unit:t.unit,color:void 0,fill:void 0});e.push(tG({tooltipEntrySettings:r,dataKey:t.dataKey,payload:t.payload,value:HV(t.payload,t.dataKey),name:t.name}))})):e.push(tG({tooltipEntrySettings:m,dataKey:y,payload:f,value:HV(f,y),name:null!==(p=HV(f,b))&&void 0!==p?p:null===m||void 0===m?void 0:m.name}));return e}),[])}},S1=wV([Uq,IG,bq,c$,nq],b0),A1=wV([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],((e,t)=>[...e,...t])),k1=wV([nq,oq],wq),C1=wV([A1,Uq,k1],Aq,{memoizeOptions:{resultEqualityCheck:rq}}),I1=wV([C1],(e=>e.filter(eq))),E1=wV([C1],Dq,{memoizeOptions:{resultEqualityCheck:rq}}),D1=wV([E1,BJ],Oq),T1=wV([I1,BJ,Uq],q$),O1=wV([D1,Uq,C1],Pq),M1=wV([Uq],Vq),P1=wV([Uq],(e=>e.allowDataOverflow)),j1=wV([M1,P1],YJ),R1=wV([C1],(e=>e.filter(eq))),_1=wV([T1,R1,s$,l$],zq),N1=wV([_1,BJ,nq,j1],Hq),L1=wV([C1],Iq),U1=wV([D1,Uq,L1,Kq,nq],Jq,{memoizeOptions:{resultEqualityCheck:tq}}),B1=wV([e0,nq,oq],t0),F1=wV([B1,nq],s0),z1=wV([n0,nq,oq],t0),W1=wV([z1,nq],c0),H1=wV([a0,nq,oq],t0),Y1=wV([H1,nq],d0),V1=wV([F1,Y1,W1],Xq),G1=wV([Uq,M1,j1,N1,U1,V1,IG,nq],h0),Z1=wV([Uq,IG,D1,O1,s$,nq,G1],v0),Q1=wV([Z1,Uq,S1],S0),K1=wV([Uq,Z1,Q1,nq],k0),X1=e=>{var t=nq(e),r=oq(e);return P0(e,t,r,!1)},J1=wV([Uq,X1],N$),$1=wV([Uq,S1,K1,J1],x0),q1=wV([IG,O1,Uq,nq],Z0),e2=wV([IG,O1,Uq,nq],K0),t2=wV([IG,Uq,S1,$1,X1,q1,e2,nq],((e,t,r,n,o,a,i,s)=>{if(t){var{type:l}=t,c=YV(e,s);if(n){var u="scaleBand"===r&&n.bandwidth?n.bandwidth()/2:2,d="category"===l&&n.bandwidth?n.bandwidth()/u:0;return d="angleAxis"===s&&null!=o&&(null===o||void 0===o?void 0:o.length)>=2?2*NF(o[0]-o[1])*d:d,c&&i?i.map(((e,t)=>({coordinate:n(e)+d,value:e,index:t,offset:d}))):n.domain().map(((e,t)=>({coordinate:n(e)+d,value:a?a[e]:e,index:t,offset:d})))}}})),r2=wV([n1,o1,e=>e.tooltip.settings],((e,t,r)=>a1(r.shared,e,t))),n2=e=>e.tooltip.settings.trigger,o2=e=>e.tooltip.settings.defaultIndex,a2=wV([v1,r2,n2,o2],d1),i2=wV([a2,D1,Bq,Z1],p1),s2=wV([t2,i2],s1),l2=wV([a2],(e=>{if(e)return e.dataKey})),c2=(wV([a2],(e=>{if(e)return e.graphicalItemId})),wV([v1,r2,n2,o2],m1)),u2=wV([nG,oG,IG,fG,t2,o2,c2,g1],h1),d2=wV([a2,u2],((e,t)=>null!==e&&void 0!==e&&e.coordinate?e.coordinate:t)),f2=wV([a2],(e=>{var t;return null!==(t=null===e||void 0===e?void 0:e.active)&&void 0!==t&&t})),p2=wV([c2,i2,BJ,Bq,s2,g1,r2],x1),h2=wV([p2],(e=>{if(null!=e){var t=e.map((e=>e.payload)).filter((e=>null!=e));return Array.from(new Set(t))}}));function m2(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function g2(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?m2(Object(r),!0).forEach((function(t){v2(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):m2(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v2(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var y2=(e,t,r,n,o)=>{var a,i=null!==(a=null===t||void 0===t?void 0:t.length)&&void 0!==a?a:0;if(i<=1||null==e)return 0;if("angleAxis"===n&&null!=o&&Math.abs(Math.abs(o[1]-o[0])-360)<=1e-6)for(var s=0;s<i;s++){var l,c,u,d,f,p=s>0?null===(l=r[s-1])||void 0===l?void 0:l.coordinate:null===(c=r[i-1])||void 0===c?void 0:c.coordinate,h=null===(u=r[s])||void 0===u?void 0:u.coordinate,m=s>=i-1?null===(d=r[0])||void 0===d?void 0:d.coordinate:null===(f=r[s+1])||void 0===f?void 0:f.coordinate,g=void 0;if(null!=p&&null!=h&&null!=m)if(NF(h-p)!==NF(m-h)){var v=[];if(NF(m-h)===NF(o[1]-o[0])){g=m;var y=h+o[1]-o[0];v[0]=Math.min(y,(y+p)/2),v[1]=Math.max(y,(y+p)/2)}else{g=p;var b=m+o[1]-o[0];v[0]=Math.min(h,(b+h)/2),v[1]=Math.max(h,(b+h)/2)}var w,x=[Math.min(h,(g+h)/2),Math.max(h,(g+h)/2)];if(e>x[0]&&e<=x[1]||e>=v[0]&&e<=v[1])return null===(w=r[s])||void 0===w?void 0:w.index}else{var S,A=Math.min(p,m),k=Math.max(p,m);if(e>(A+h)/2&&e<=(k+h)/2)return null===(S=r[s])||void 0===S?void 0:S.index}}else if(t)for(var C=0;C<i;C++){var I=t[C];if(null!=I){var E=t[C+1],D=t[C-1];if(0===C&&null!=E&&e<=(I.coordinate+E.coordinate)/2)return I.index;if(C===i-1&&null!=D&&e>(I.coordinate+D.coordinate)/2)return I.index;if(C>0&&C<i-1&&null!=D&&null!=E&&e>(I.coordinate+D.coordinate)/2&&e<=(I.coordinate+E.coordinate)/2)return I.index}}return-1},b2=(e,t)=>t,w2=(e,t,r)=>r,x2=(e,t,r,n)=>n,S2=wV(t2,(e=>MV()(e,(e=>e.coordinate)))),A2=wV([v1,b2,w2,x2],d1),k2=wV([A2,D1,Bq,Z1],p1),C2=wV([v1,b2,w2,x2],m1),I2=wV([nG,oG,IG,fG,t2,x2,C2,g1],h1),E2=wV([A2,I2],((e,t)=>{var r;return null!==(r=e.coordinate)&&void 0!==r?r:t})),D2=wV([t2,k2],s1),T2=wV([C2,k2,BJ,Bq,D2,g1,b2],x1),O2=wV([A2,k2],((e,t)=>({isActive:e.active&&null!=t,activeIndex:t}))),M2=(e,t,r,n,o,a,i)=>{if(e&&n&&o&&a&&r){var s=x$(e,r);if(s){var l=((e,t)=>"centric"===t?e.angle:e.radius)(s,t),c=y2(l,i,a,n,o),u=((e,t,r,n)=>{var o=t.find((e=>e&&e.index===r));if(o){if("centric"===e){var a=o.coordinate,{radius:i}=n;return g2(g2(g2({},n),y$(n.cx,n.cy,i,a)),{},{angle:a,radius:i})}var s=o.coordinate,{angle:l}=n;return g2(g2(g2({},n),y$(n.cx,n.cy,s,l)),{},{angle:l,radius:s})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}})(t,a,c,s);return{activeIndex:String(c),activeCoordinate:u}}}},P2=wV([(e,t)=>t,IG,K$,nq,J1,t2,S2,fG],((e,t,r,n,o,a,i,s)=>{if(e&&t&&n&&o&&a)return"horizontal"===t||"vertical"===t?((e,t,r,n,o,a,i)=>{if(e&&r&&n&&o&&function(e,t){var{chartX:r,chartY:n}=e;return r>=t.left&&r<=t.left+t.width&&n>=t.top&&n<=t.top+t.height}(e,i)){var s=((e,t)=>"horizontal"===t?e.chartX:"vertical"===t?e.chartY:void 0)(e,t),l=y2(s,a,o,r,n),c=((e,t,r,n)=>{var o=t.find((e=>e&&e.index===r));if(o){if("horizontal"===e)return{x:o.coordinate,y:n.chartY};if("vertical"===e)return{x:n.chartX,y:o.coordinate}}return{x:0,y:0}})(t,o,l,e);return{activeIndex:String(l),activeCoordinate:c}}})(e,t,n,o,a,i,s):M2(e,t,r,n,o,a,i)})),j2=e=>{var t=e.currentTarget.getBoundingClientRect(),r=t.width/e.currentTarget.offsetWidth,n=t.height/e.currentTarget.offsetHeight;return{chartX:Math.round((e.clientX-t.left)/r),chartY:Math.round((e.clientY-t.top)/n)}},R2=zW("mouseClick"),_2=RH();_2.startListening({actionCreator:R2,effect:(e,t)=>{var r=e.payload,n=P2(t.getState(),j2(r));null!=(null===n||void 0===n?void 0:n.activeIndex)&&t.dispatch(qY({activeIndex:n.activeIndex,activeDataKey:void 0,activeCoordinate:n.activeCoordinate}))}});var N2=zW("mouseMove"),L2=RH(),U2=null;function B2(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":"children"===e&&"object"===typeof t&&null!==t?"<<CHILDREN>>":t}function F2(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function z2(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?F2(Object(r),!0).forEach((function(t){W2(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):F2(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function W2(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}L2.startListening({actionCreator:N2,effect:(e,t)=>{var r=e.payload;null!==U2&&cancelAnimationFrame(U2);var n=j2(r);U2=requestAnimationFrame((()=>{var e=t.getState();if("axis"===i1(e,e.tooltip.settings.shared)){var r=P2(e,n);null!=(null===r||void 0===r?void 0:r.activeIndex)?t.dispatch($Y({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate})):t.dispatch(XY())}U2=null}))}});var H2=rH({name:"cartesianAxis",initialState:{xAxis:{},yAxis:{},zAxis:{}},reducers:{addXAxis:{reducer(e,t){e.xAxis[t.payload.id]=t.payload},prepare:GW()},replaceXAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;void 0!==e.xAxis[r.id]&&(r.id!==n.id&&delete e.xAxis[r.id],e.xAxis[n.id]=n)},prepare:GW()},removeXAxis:{reducer(e,t){delete e.xAxis[t.payload.id]},prepare:GW()},addYAxis:{reducer(e,t){e.yAxis[t.payload.id]=t.payload},prepare:GW()},replaceYAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;void 0!==e.yAxis[r.id]&&(r.id!==n.id&&delete e.yAxis[r.id],e.yAxis[n.id]=n)},prepare:GW()},removeYAxis:{reducer(e,t){delete e.yAxis[t.payload.id]},prepare:GW()},addZAxis:{reducer(e,t){e.zAxis[t.payload.id]=t.payload},prepare:GW()},replaceZAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;void 0!==e.zAxis[r.id]&&(r.id!==n.id&&delete e.zAxis[r.id],e.zAxis[n.id]=n)},prepare:GW()},removeZAxis:{reducer(e,t){delete e.zAxis[t.payload.id]},prepare:GW()},updateYAxisWidth(e,t){var{id:r,width:n}=t.payload,o=e.yAxis[r];if(o){var a=o.widthHistory||[];if(3===a.length&&a[0]===a[2]&&n===a[1]&&n!==o.width&&Math.abs(n-a[0])<=1)return;var i=[...a,n].slice(-3);e.yAxis[r]=z2(z2({},e.yAxis[r]),{},{width:n,widthHistory:i})}}}}),{addXAxis:Y2,replaceXAxis:V2,removeXAxis:G2,addYAxis:Z2,replaceYAxis:Q2,removeYAxis:K2,addZAxis:X2,replaceZAxis:J2,removeZAxis:$2,updateYAxisWidth:q2}=H2.actions,e4=H2.reducer,t4=rH({name:"graphicalItems",initialState:{cartesianItems:[],polarItems:[]},reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:GW()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:r,next:n}=t.payload,o=kW(e).cartesianItems.indexOf(r);o>-1&&(e.cartesianItems[o]=n)},prepare:GW()},removeCartesianGraphicalItem:{reducer(e,t){var r=kW(e).cartesianItems.indexOf(t.payload);r>-1&&e.cartesianItems.splice(r,1)},prepare:GW()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:GW()},removePolarGraphicalItem:{reducer(e,t){var r=kW(e).polarItems.indexOf(t.payload);r>-1&&e.polarItems.splice(r,1)},prepare:GW()}}}),{addCartesianGraphicalItem:r4,replaceCartesianGraphicalItem:n4,removeCartesianGraphicalItem:o4,addPolarGraphicalItem:a4,removePolarGraphicalItem:i4}=t4.actions,s4=t4.reducer,l4=rH({name:"referenceElements",initialState:{dots:[],areas:[],lines:[]},reducers:{addDot:(e,t)=>{e.dots.push(t.payload)},removeDot:(e,t)=>{var r=kW(e).dots.findIndex((e=>e===t.payload));-1!==r&&e.dots.splice(r,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var r=kW(e).areas.findIndex((e=>e===t.payload));-1!==r&&e.areas.splice(r,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var r=kW(e).lines.findIndex((e=>e===t.payload));-1!==r&&e.lines.splice(r,1)}}}),{addDot:c4,removeDot:u4,addArea:d4,removeArea:f4,addLine:p4,removeLine:h4}=l4.actions,m4=l4.reducer,g4={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},v4=rH({name:"brush",initialState:g4,reducers:{setBrushSettings:(e,t)=>null==t.payload?g4:t.payload}}),{setBrushSettings:y4}=v4.actions,b4=v4.reducer,w4=rH({name:"legend",initialState:{settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:GW()},replaceLegendPayload:{reducer(e,t){var{prev:r,next:n}=t.payload,o=kW(e).payload.indexOf(r);o>-1&&(e.payload[o]=n)},prepare:GW()},removeLegendPayload:{reducer(e,t){var r=kW(e).payload.indexOf(t.payload);r>-1&&e.payload.splice(r,1)},prepare:GW()}}}),{setLegendSize:x4,setLegendSettings:S4,addLegendPayload:A4,replaceLegendPayload:k4,removeLegendPayload:C4}=w4.actions,I4=w4.reducer,E4={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},D4=rH({name:"rootProps",initialState:E4,reducers:{updateOptions:(e,t)=>{var r;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=null!==(r=t.payload.barGap)&&void 0!==r?r:E4.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),T4=D4.reducer,{updateOptions:O4}=D4.actions,M4=rH({name:"polarAxis",initialState:{radiusAxis:{},angleAxis:{}},reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:P4,removeRadiusAxis:j4,addAngleAxis:R4,removeAngleAxis:_4}=M4.actions,N4=M4.reducer,L4=rH({name:"polarOptions",initialState:null,reducers:{updatePolarOptions:(e,t)=>t.payload}}),{updatePolarOptions:U4}=L4.actions,B4=L4.reducer,F4=zW("keyDown"),z4=zW("focus"),W4=RH();W4.startListening({actionCreator:F4,effect:(e,t)=>{var r=t.getState();if(!1!==r.rootProps.accessibilityLayer){var{keyboardInteraction:n}=r.tooltip,o=e.payload;if("ArrowRight"===o||"ArrowLeft"===o||"Enter"===o){var a=p1(n,D1(r),Bq(r),Z1(r)),i=null==a?-1:Number(a);if(Number.isFinite(i)&&!(i<0)){var s=t2(r);if("Enter"!==o){var l=i+("ArrowRight"===o?1:-1)*("left-to-right"===r1(r)?1:-1);if(!(null==s||l>=s.length||l<0)){var c=I2(r,"axis","hover",String(l));t.dispatch(tV({active:!0,activeIndex:l.toString(),activeCoordinate:c}))}}else{var u=I2(r,"axis","hover",String(n.index));t.dispatch(tV({active:!n.active,activeIndex:n.index,activeCoordinate:u}))}}}}}}),W4.startListening({actionCreator:z4,effect:(e,t)=>{var r=t.getState();if(!1!==r.rootProps.accessibilityLayer){var{keyboardInteraction:n}=r.tooltip;if(!n.active&&null==n.index){var o=I2(r,"axis","hover",String("0"));t.dispatch(tV({active:!0,activeIndex:"0",activeCoordinate:o}))}}}});var H4=zW("externalEvent"),Y4=RH(),V4=new Map;Y4.startListening({actionCreator:H4,effect:(e,t)=>{var{handler:r,reactEvent:n}=e.payload;if(null!=r){n.persist();var o=n.type,a=V4.get(o);void 0!==a&&cancelAnimationFrame(a);var i=requestAnimationFrame((()=>{try{var e=t.getState(),a={activeCoordinate:d2(e),activeDataKey:l2(e),activeIndex:i2(e),activeLabel:s2(e),activeTooltipIndex:i2(e),isTooltipActive:f2(e)};r(a,n)}finally{V4.delete(o)}}));V4.set(o,i)}}});var G4=wV([v1],(e=>e.tooltipItemPayloads)),Z4=wV([G4,g1,(e,t)=>t,(e,t,r)=>r],((e,t,r,n)=>{var o=e.find((e=>e.settings.graphicalItemId===n));if(null!=o){var{positions:a}=o;if(null!=a)return t(a,r)}})),Q4=zW("touchMove"),K4=RH();K4.startListening({actionCreator:Q4,effect:(e,t)=>{var r=e.payload;if(null!=r.touches&&0!==r.touches.length){var n=t.getState(),o=i1(n,n.tooltip.settings.shared);if("axis"===o){var a=r.touches[0];if(null==a)return;var i=P2(n,j2({clientX:a.clientX,clientY:a.clientY,currentTarget:r.currentTarget}));null!=(null===i||void 0===i?void 0:i.activeIndex)&&t.dispatch($Y({activeIndex:i.activeIndex,activeDataKey:void 0,activeCoordinate:i.activeCoordinate}))}else if("item"===o){var s,l=r.touches[0];if(null==document.elementFromPoint||null==l)return;var c=document.elementFromPoint(l.clientX,l.clientY);if(!c||!c.getAttribute)return;var u=c.getAttribute("data-recharts-item-index"),d=null!==(s=c.getAttribute("data-recharts-item-id"))&&void 0!==s?s:void 0,f=C1(n).find((e=>e.id===d));if(null==u||null==f||null==d)return;var{dataKey:p}=f,h=Z4(n,u,d);t.dispatch(QY({activeDataKey:p,activeIndex:u,activeCoordinate:h,activeGraphicalItemId:d}))}}}});var X4=rH({name:"errorBars",initialState:{},reducers:{addErrorBar:(e,t)=>{var{itemId:r,errorBar:n}=t.payload;e[r]||(e[r]=[]),e[r].push(n)},replaceErrorBar:(e,t)=>{var{itemId:r,prev:n,next:o}=t.payload;e[r]&&(e[r]=e[r].map((e=>e.dataKey===n.dataKey&&e.direction===n.direction?o:e)))},removeErrorBar:(e,t)=>{var{itemId:r,errorBar:n}=t.payload;e[r]&&(e[r]=e[r].filter((e=>e.dataKey!==n.dataKey||e.direction!==n.direction)))}}}),{addErrorBar:J4,replaceErrorBar:$4,removeErrorBar:q4}=X4.actions,e3=X4.reducer,t3=!0,r3=!("undefined"!==typeof window&&window.document&&Boolean(window.document.createElement)&&window.setTimeout);function n3(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o3(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n3(Object(r),!0).forEach((function(t){a3(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n3(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a3(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var i3={zIndexMap:Object.values(S$).reduce(((e,t)=>o3(o3({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}})),{})},s3=new Set(Object.values(S$));var l3=rH({name:"zIndex",initialState:i3,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]?e.zIndexMap[r].consumers+=1:e.zIndexMap[r]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:GW()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]&&(e.zIndexMap[r].consumers-=1,e.zIndexMap[r].consumers<=0&&!function(e){return s3.has(e)}(r)&&delete e.zIndexMap[r])},prepare:GW()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:r,element:n,isPanorama:o}=t.payload;e.zIndexMap[r]?o?e.zIndexMap[r].panoramaElement=n:e.zIndexMap[r].element=n:e.zIndexMap[r]={consumers:0,element:o?void 0:n,panoramaElement:o?n:void 0}},prepare:GW()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]&&(t.payload.isPanorama?e.zIndexMap[r].panoramaElement=void 0:e.zIndexMap[r].element=void 0)},prepare:GW()}}}),{registerZIndexPortal:c3,unregisterZIndexPortal:u3,registerZIndexPortalElement:d3,unregisterZIndexPortalElement:f3}=l3.actions,p3=RW({brush:b4,cartesianAxis:e4,chartData:sV,errorBars:e3,graphicalItems:s4,layout:pV,legend:I4,options:UH,polarAxis:N4,polarOptions:B4,referenceElements:m4,rootProps:T4,tooltip:rV,zIndex:l3.reducer});function h3(e){var{preloadedState:r,children:n,reduxStoreName:o}=e,a=gG(),i=(0,t.useRef)(null);if(a)return n;null==i.current&&(i.current=function(e){return KW({reducer:p3,preloadedState:e,middleware:e=>e({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes("es6")}).concat([_2.middleware,L2.middleware,W4.middleware,Y4.middleware,K4.middleware]),enhancers:e=>{var t=e;return"function"===typeof e&&(t=e()),t.concat(QW({type:"raf"}))},devTools:t3&&{serialize:{replacer:B2},name:"recharts-".concat(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Chart")}})}(r,o));var s=AV;return t.createElement($H,{context:s,store:i.current},n)}var m3=e=>{var{chartData:r}=e,n=CV(),o=gG();return(0,t.useEffect)((()=>o?()=>{}:(n(oV(r)),()=>{n(oV(void 0))})),[r,n,o]),null},g3=e=>e.chartData.chartData,v3=e=>{var{dataStartIndex:t,dataEndIndex:r}=e.chartData;return{startIndex:t,endIndex:r}},y3=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius"]);function b3(e,t){var r,n,o=new Set([...Object.keys(e),...Object.keys(t)]);for(var a of o)if(y3.has(a)){if(null==e[a]&&null==t[a])continue;if(!ZH(e[a],t[a]))return!1}else if(r=e[a],n=t[a],!(null==r&&null==n||("number"===typeof r&&"number"===typeof n?r===n||r!==r&&n!==n:r===n)))return!1;return!0}function w3(e){var{layout:r,margin:n}=e,o=CV(),a=gG();return(0,t.useEffect)((()=>{a||(o(uV(r)),o(cV(n)))}),[o,a,r,n]),null}var x3=(0,t.memo)(w3,b3);function S3(e){var r=CV();return(0,t.useEffect)((()=>{r(O4(e))}),[r,e]),null}var A3=()=>{var e;return null===(e=TV((e=>e.rootProps.accessibilityLayer)))||void 0===e||e},k3=["dangerouslySetInnerHTML","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onCompositionEnd","onCompositionEndCapture","onCompositionStart","onCompositionStartCapture","onCompositionUpdate","onCompositionUpdateCapture","onFocus","onFocusCapture","onBlur","onBlurCapture","onChange","onChangeCapture","onBeforeInput","onBeforeInputCapture","onInput","onInputCapture","onReset","onResetCapture","onSubmit","onSubmitCapture","onInvalid","onInvalidCapture","onLoad","onLoadCapture","onError","onErrorCapture","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","onAbort","onAbortCapture","onCanPlay","onCanPlayCapture","onCanPlayThrough","onCanPlayThroughCapture","onDurationChange","onDurationChangeCapture","onEmptied","onEmptiedCapture","onEncrypted","onEncryptedCapture","onEnded","onEndedCapture","onLoadedData","onLoadedDataCapture","onLoadedMetadata","onLoadedMetadataCapture","onLoadStart","onLoadStartCapture","onPause","onPauseCapture","onPlay","onPlayCapture","onPlaying","onPlayingCapture","onProgress","onProgressCapture","onRateChange","onRateChangeCapture","onSeeked","onSeekedCapture","onSeeking","onSeekingCapture","onStalled","onStalledCapture","onSuspend","onSuspendCapture","onTimeUpdate","onTimeUpdateCapture","onVolumeChange","onVolumeChangeCapture","onWaiting","onWaitingCapture","onAuxClick","onAuxClickCapture","onClick","onClickCapture","onContextMenu","onContextMenuCapture","onDoubleClick","onDoubleClickCapture","onDrag","onDragCapture","onDragEnd","onDragEndCapture","onDragEnter","onDragEnterCapture","onDragExit","onDragExitCapture","onDragLeave","onDragLeaveCapture","onDragOver","onDragOverCapture","onDragStart","onDragStartCapture","onDrop","onDropCapture","onMouseDown","onMouseDownCapture","onMouseEnter","onMouseLeave","onMouseMove","onMouseMoveCapture","onMouseOut","onMouseOutCapture","onMouseOver","onMouseOverCapture","onMouseUp","onMouseUpCapture","onSelect","onSelectCapture","onTouchCancel","onTouchCancelCapture","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchMoveCapture","onTouchStart","onTouchStartCapture","onPointerDown","onPointerDownCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onPointerCancel","onPointerCancelCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerOver","onPointerOverCapture","onPointerOut","onPointerOutCapture","onGotPointerCapture","onGotPointerCaptureCapture","onLostPointerCapture","onLostPointerCaptureCapture","onScroll","onScrollCapture","onWheel","onWheelCapture","onAnimationStart","onAnimationStartCapture","onAnimationEnd","onAnimationEndCapture","onAnimationIteration","onAnimationIterationCapture","onTransitionEnd","onTransitionEndCapture"];function C3(e){return"string"===typeof e&&k3.includes(e)}var I3=new Set(["aria-activedescendant","aria-atomic","aria-autocomplete","aria-busy","aria-checked","aria-colcount","aria-colindex","aria-colspan","aria-controls","aria-current","aria-describedby","aria-details","aria-disabled","aria-errormessage","aria-expanded","aria-flowto","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-level","aria-live","aria-modal","aria-multiline","aria-multiselectable","aria-orientation","aria-owns","aria-placeholder","aria-posinset","aria-pressed","aria-readonly","aria-relevant","aria-required","aria-roledescription","aria-rowcount","aria-rowindex","aria-rowspan","aria-selected","aria-setsize","aria-sort","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","className","color","height","id","lang","max","media","method","min","name","style","target","width","role","tabIndex","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baselineShift","baseProfile","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipPathUnits","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","href","ideographic","imageRendering","in2","in","intercept","k1","k2","k3","k4","k","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerHeight","markerMid","markerStart","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textLength","textRendering","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","vHanging","vIdeographic","viewTarget","visibility","vMathematical","widths","wordSpacing","writingMode","x1","x2","x","xChannelSelector","xHeight","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlLang","xmlns","xmlnsXlink","xmlSpace","y1","y2","y","yChannelSelector","z","zoomAndPan","ref","key","angle"]);function E3(e){return"string"===typeof e&&I3.has(e)}function D3(e){return"string"===typeof e&&e.startsWith("data-")}function T3(e){if("object"!==typeof e||null===e)return{};var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(E3(r)||D3(r))&&(t[r]=e[r]);return t}function O3(e){return null==e?null:(0,t.isValidElement)(e)&&"object"===typeof e.props&&null!==e.props?T3(e.props):"object"!==typeof e||Array.isArray(e)?null:T3(e)}function M3(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(E3(r)||D3(r)||C3(r))&&(t[r]=e[r]);return t}var P3=["children","width","height","viewBox","className","style","title","desc"];function j3(){return j3=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},j3.apply(null,arguments)}var R3=(0,t.forwardRef)(((e,r)=>{var{children:n,width:o,height:a,viewBox:i,className:s,style:l,title:c,desc:u}=e,d=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,P3),f=i||{width:o,height:a,x:0,y:0},p=(0,Fh.$)("recharts-surface",s);return t.createElement("svg",j3({},M3(d),{className:p,width:o,height:a,style:l,viewBox:"".concat(f.x," ").concat(f.y," ").concat(f.width," ").concat(f.height),ref:r}),t.createElement("title",null,c),t.createElement("desc",null,u),n)})),_3=wV((e=>e.zIndex.zIndexMap),((e,t)=>t),((e,t,r)=>r),((e,t,r)=>{if(null!=t){var n=e[t];if(null!=n)return r?n.panoramaElement:n.element}})),N3=wV((e=>e.zIndex.zIndexMap),(e=>{var t=Object.keys(e).map((e=>parseInt(e,10))).concat(Object.values(S$));return Array.from(new Set(t)).sort(((e,t)=>e-t))}),{memoizeOptions:{resultEqualityCheck:function(e,t){if(e.length===t.length){for(var r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}return!1}}});function L3(e){var{zIndex:r,isPanorama:n}=e,o=(0,t.useRef)(null),a=CV();return(0,t.useLayoutEffect)((()=>(o.current&&a(d3({zIndex:r,element:o.current,isPanorama:n})),()=>{a(f3({zIndex:r,isPanorama:n}))})),[a,r,n]),t.createElement("g",{tabIndex:-1,ref:o})}function U3(e){var{children:r,isPanorama:n}=e,o=TV(N3);if(!o||0===o.length)return r;var a=o.filter((e=>e<0)),i=o.filter((e=>e>0));return t.createElement(t.Fragment,null,a.map((e=>t.createElement(L3,{key:e,zIndex:e,isPanorama:n}))),r,i.map((e=>t.createElement(L3,{key:e,zIndex:e,isPanorama:n}))))}var B3=["children"];function F3(){return F3=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},F3.apply(null,arguments)}var z3={width:"100%",height:"100%",display:"block"},W3=(0,t.forwardRef)(((e,r)=>{var n=kG(),o=CG(),a=A3();if(!az(n)||!az(o))return null;var i,s,{children:l,otherAttributes:c,title:u,desc:d}=e;return null!=c&&(i="number"===typeof c.tabIndex?c.tabIndex:a?0:void 0,s="string"===typeof c.role?c.role:a?"application":void 0),t.createElement(R3,F3({},c,{title:u,desc:d,role:s,tabIndex:i,width:n,height:o,style:z3,ref:r}),l)})),H3=e=>{var{children:r}=e,n=TV(bG);if(!n)return null;var{width:o,height:a,y:i,x:s}=n;return t.createElement(R3,{width:o,height:a,x:s,y:i},r)},Y3=(0,t.forwardRef)(((e,r)=>{var{children:n}=e,o=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,B3);return gG()?t.createElement(H3,null,t.createElement(U3,{isPanorama:!0},n)):t.createElement(W3,F3({ref:r},o),t.createElement(U3,{isPanorama:!1},n))}));var V3=new(r(75438)),G3="recharts.syncEvent.tooltip",Z3="recharts.syncEvent.brush";function Q3(e){return e.tooltip.syncInteraction}var K3=["x","y"];function X3(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function J3(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?X3(Object(r),!0).forEach((function(t){$3(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):X3(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function $3(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function q3(){var e=TV(u$),r=TV(f$),n=CV(),o=TV(d$),a=TV(t2),i=EG(),s=xG(),l=TV((e=>e.rootProps.className));(0,t.useEffect)((()=>{if(null==e)return XF;var t=(t,l,c)=>{var u;if(r!==c&&e===t)if("index"!==o){if(null!=a){var d;if("function"===typeof o){var f={activeTooltipIndex:null==l.payload.index?void 0:Number(l.payload.index),isTooltipActive:l.payload.active,activeIndex:null==l.payload.index?void 0:Number(l.payload.index),activeLabel:l.payload.label,activeDataKey:l.payload.dataKey,activeCoordinate:l.payload.coordinate},p=o(a,f);d=a[p]}else"value"===o&&(d=a.find((e=>String(e.value)===l.payload.label)));var{coordinate:h}=l.payload;if(null!=d&&!1!==l.payload.active&&null!=h&&null!=s){var{x:m,y:g}=h,v=Math.min(m,s.x+s.width),y=Math.min(g,s.y+s.height),b={x:"horizontal"===i?d.coordinate:v,y:"horizontal"===i?y:d.coordinate},w=eV({active:l.payload.active,coordinate:b,dataKey:l.payload.dataKey,index:String(d.index),label:l.payload.label,sourceViewBox:l.payload.sourceViewBox,graphicalItemId:l.payload.graphicalItemId});n(w)}else n(eV({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}))}}else if(s&&null!==l&&void 0!==l&&null!==(u=l.payload)&&void 0!==u&&u.coordinate&&l.payload.sourceViewBox){var x=l.payload.coordinate,{x:S,y:A}=x,k=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(x,K3),{x:C,y:I,width:E,height:D}=l.payload.sourceViewBox,T=J3(J3({},k),{},{x:s.x+(E?(S-C)/E:0)*s.width,y:s.y+(D?(A-I)/D:0)*s.height});n(J3(J3({},l),{},{payload:J3(J3({},l.payload),{},{coordinate:T})}))}else n(l)};return V3.on(G3,t),()=>{V3.off(G3,t)}}),[l,n,r,e,o,a,i,s])}function e5(){var e=CV();(0,t.useEffect)((()=>{e(BH())}),[e]),q3(),function(){var e=TV(u$),r=TV(f$),n=CV();(0,t.useEffect)((()=>{if(null==e)return XF;var t=(t,o,a)=>{r!==a&&e===t&&n(aV(o))};return V3.on(Z3,t),()=>{V3.off(Z3,t)}}),[n,r,e])}()}function t5(e,r,n,o,a,i){var s=TV((t=>((e,t,r)=>{if(null!=t){var n=v1(e);return"axis"===t?"hover"===r?n.axisInteraction.hover.dataKey:n.axisInteraction.click.dataKey:"hover"===r?n.itemInteraction.hover.dataKey:n.itemInteraction.click.dataKey}})(t,e,r))),l=TV(f$),c=TV(u$),u=TV(d$),d=TV(Q3),f=null===d||void 0===d?void 0:d.active,p=xG();(0,t.useEffect)((()=>{if(!f&&null!=c&&null!=l){var e=eV({active:i,coordinate:n,dataKey:s,index:a,label:"number"===typeof o?String(o):o,sourceViewBox:p,graphicalItemId:void 0});V3.emit(G3,c,e,l)}}),[f,n,s,a,o,l,c,u,i,p])}var r5=(0,t.createContext)(null),n5=(0,t.createContext)(null);function o5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a5(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o5(Object(r),!0).forEach((function(t){i5(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o5(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function i5(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s5(){return s5=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},s5.apply(null,arguments)}var l5=()=>(e5(),null);function c5(e){if("number"===typeof e)return e;if("string"===typeof e){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var u5=(0,t.forwardRef)(((e,r)=>{var n,o,a=(0,t.useRef)(null),[i,s]=(0,t.useState)({containerWidth:c5(null===(n=e.style)||void 0===n?void 0:n.width),containerHeight:c5(null===(o=e.style)||void 0===o?void 0:o.height)}),l=(0,t.useCallback)(((e,t)=>{s((r=>{var n=Math.round(e),o=Math.round(t);return r.containerWidth===n&&r.containerHeight===o?r:{containerWidth:n,containerHeight:o}}))}),[]),c=(0,t.useCallback)((e=>{if("function"===typeof r&&r(e),null!=e&&"undefined"!==typeof ResizeObserver){var{width:t,height:n}=e.getBoundingClientRect();l(t,n);var o=new ResizeObserver((e=>{var{width:t,height:r}=e[0].contentRect;l(t,r)}));o.observe(e),a.current=o}}),[r,l]);return(0,t.useEffect)((()=>()=>{var e=a.current;null!=e&&e.disconnect()}),[l]),t.createElement(t.Fragment,null,t.createElement(DG,{width:i.containerWidth,height:i.containerHeight}),t.createElement("div",s5({ref:c},e)))})),d5=(0,t.forwardRef)(((e,r)=>{var{width:n,height:o}=e,[a,i]=(0,t.useState)({containerWidth:c5(n),containerHeight:c5(o)}),s=(0,t.useCallback)(((e,t)=>{i((r=>{var n=Math.round(e),o=Math.round(t);return r.containerWidth===n&&r.containerHeight===o?r:{containerWidth:n,containerHeight:o}}))}),[]),l=(0,t.useCallback)((e=>{if("function"===typeof r&&r(e),null!=e){var{width:t,height:n}=e.getBoundingClientRect();s(t,n)}}),[r,s]);return t.createElement(t.Fragment,null,t.createElement(DG,{width:a.containerWidth,height:a.containerHeight}),t.createElement("div",s5({ref:l},e)))})),f5=(0,t.forwardRef)(((e,r)=>{var{width:n,height:o}=e;return t.createElement(t.Fragment,null,t.createElement(DG,{width:n,height:o}),t.createElement("div",s5({ref:r},e)))})),p5=(0,t.forwardRef)(((e,r)=>{var{width:n,height:o}=e;return UF(n)||UF(o)?t.createElement(d5,s5({},e,{ref:r})):t.createElement(f5,s5({},e,{ref:r}))}));var h5=(0,t.forwardRef)(((e,r)=>{var{children:n,className:o,height:a,onClick:i,onContextMenu:s,onDoubleClick:l,onMouseDown:c,onMouseEnter:u,onMouseLeave:d,onMouseMove:f,onMouseUp:p,onTouchEnd:h,onTouchMove:m,onTouchStart:g,style:v,width:y,responsive:b,dispatchTouchEvents:w=!0}=e,x=(0,t.useRef)(null),S=CV(),[A,k]=(0,t.useState)(null),[C,I]=(0,t.useState)(null),E=function(){var e=CV(),[r,n]=(0,t.useState)(null),o=TV(aG);return(0,t.useEffect)((()=>{if(null!=r){var t=r.getBoundingClientRect().width/r.offsetWidth;oz(t)&&t!==o&&e(fV(t))}}),[r,e,o]),n}(),D=fz(),T=(null===D||void 0===D?void 0:D.width)>0?D.width:y,O=(null===D||void 0===D?void 0:D.height)>0?D.height:a,M=(0,t.useCallback)((e=>{E(e),"function"===typeof r&&r(e),k(e),I(e),null!=e&&(x.current=e)}),[E,r,k,I]),P=(0,t.useCallback)((e=>{S(R2(e)),S(H4({handler:i,reactEvent:e}))}),[S,i]),j=(0,t.useCallback)((e=>{S(N2(e)),S(H4({handler:u,reactEvent:e}))}),[S,u]),R=(0,t.useCallback)((e=>{S(XY()),S(H4({handler:d,reactEvent:e}))}),[S,d]),_=(0,t.useCallback)((e=>{S(N2(e)),S(H4({handler:f,reactEvent:e}))}),[S,f]),N=(0,t.useCallback)((()=>{S(z4())}),[S]),L=(0,t.useCallback)((e=>{S(F4(e.key))}),[S]),U=(0,t.useCallback)((e=>{S(H4({handler:s,reactEvent:e}))}),[S,s]),B=(0,t.useCallback)((e=>{S(H4({handler:l,reactEvent:e}))}),[S,l]),F=(0,t.useCallback)((e=>{S(H4({handler:c,reactEvent:e}))}),[S,c]),z=(0,t.useCallback)((e=>{S(H4({handler:p,reactEvent:e}))}),[S,p]),W=(0,t.useCallback)((e=>{S(H4({handler:g,reactEvent:e}))}),[S,g]),H=(0,t.useCallback)((e=>{w&&S(Q4(e)),S(H4({handler:m,reactEvent:e}))}),[S,w,m]),Y=(0,t.useCallback)((e=>{S(H4({handler:h,reactEvent:e}))}),[S,h]),V=function(e){return!0===e?u5:p5}(b);return t.createElement(r5.Provider,{value:A},t.createElement(n5.Provider,{value:C},t.createElement(V,{width:null!==T&&void 0!==T?T:null===v||void 0===v?void 0:v.width,height:null!==O&&void 0!==O?O:null===v||void 0===v?void 0:v.height,className:(0,Fh.$)("recharts-wrapper",o),style:a5({position:"relative",cursor:"default",width:T,height:O},v),onClick:P,onContextMenu:U,onDoubleClick:B,onFocus:N,onKeyDown:L,onMouseDown:F,onMouseEnter:j,onMouseLeave:R,onMouseMove:_,onMouseUp:z,onTouchEnd:Y,onTouchMove:H,onTouchStart:W,ref:M},t.createElement(l5,null),n)))})),m5=wV([fG],(e=>({top:e.top,bottom:e.bottom,left:e.left,right:e.right}))),g5=wV([m5,nG,oG],((e,t,r)=>{if(e&&null!=t&&null!=r)return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,r-e.top-e.bottom)}})),v5=()=>TV(g5),y5=(0,t.createContext)(void 0),b5=e=>{var{children:r}=e,[n]=(0,t.useState)("".concat(WF("recharts"),"-clip")),o=v5();if(null==o)return null;var{x:a,y:i,width:s,height:l}=o;return t.createElement(y5.Provider,{value:n},t.createElement("defs",null,t.createElement("clipPath",{id:n},t.createElement("rect",{x:a,y:i,height:l,width:s}))),r)},w5=["width","height","responsive","children","className","style","compact","title","desc"];var x5=(0,t.forwardRef)(((e,r)=>{var{width:n,height:o,responsive:a,children:i,className:s,style:l,compact:c,title:u,desc:d}=e,f=T3(function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,w5));return c?t.createElement(t.Fragment,null,t.createElement(DG,{width:n,height:o}),t.createElement(Y3,{otherAttributes:f,title:u,desc:d},i)):t.createElement(h5,{className:s,style:l,width:n,height:o,responsive:null!==a&&void 0!==a&&a,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},t.createElement(Y3,{otherAttributes:f,title:u,desc:d,ref:r},t.createElement(b5,null,i)))}));function S5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function A5(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function k5(e,t){var r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?S5(Object(r),!0).forEach((function(t){A5(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):S5(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},e),n=t;return Object.keys(t).reduce(((e,t)=>(void 0===e[t]&&void 0!==n[t]&&(e[t]=n[t]),e)),r)}function C5(){return C5=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},C5.apply(null,arguments)}var I5={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,layout:"horizontal",margin:{top:5,right:5,bottom:5,left:5},responsive:!1,reverseStackOrder:!1,stackOffset:"none",syncMethod:"index"},E5=(0,t.forwardRef)((function(e,r){var n,o=k5(e.categoricalChartProps,I5),{chartName:a,defaultTooltipEventType:i,validateTooltipEventTypes:s,tooltipPayloadSearcher:l,categoricalChartProps:c}=e,u={chartName:a,defaultTooltipEventType:i,validateTooltipEventTypes:s,tooltipPayloadSearcher:l,eventEmitter:void 0};return t.createElement(h3,{preloadedState:{options:u},reduxStoreName:null!==(n=c.id)&&void 0!==n?n:a},t.createElement(m3,{chartData:c.data}),t.createElement(x3,{layout:o.layout,margin:o.margin}),t.createElement(S3,{baseValue:o.baseValue,accessibilityLayer:o.accessibilityLayer,barCategoryGap:o.barCategoryGap,maxBarSize:o.maxBarSize,stackOffset:o.stackOffset,barGap:o.barGap,barSize:o.barSize,syncId:o.syncId,syncMethod:o.syncMethod,className:o.className,reverseStackOrder:o.reverseStackOrder}),t.createElement(x5,C5({},o,{ref:r})))})),D5=["axis"],T5=(0,t.forwardRef)(((e,r)=>t.createElement(E5,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:D5,tooltipPayloadSearcher:NH,categoricalChartProps:e,ref:r})));function O5(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function M5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function P5(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?M5(Object(r),!0).forEach((function(t){j5(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):M5(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function j5(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var R5=P5({},{cacheSize:2e3,enableCache:!0}),_5=new class{constructor(e){O5(this,"cache",new Map),this.maxSize=e}get(e){var t=this.cache.get(e);return void 0!==t&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;null!=r&&this.cache.delete(r)}this.cache.set(e,t)}clear(){this.cache.clear()}size(){return this.cache.size}}(R5.cacheSize),N5={position:"absolute",top:"-20000px",left:0,padding:0,margin:0,border:"none",whiteSpace:"pre"},L5="recharts_measurement_span";var U5=(e,t)=>{try{var r=document.getElementById(L5);r||((r=document.createElement("span")).setAttribute("id",L5),r.setAttribute("aria-hidden","true"),document.body.appendChild(r)),Object.assign(r.style,N5,t),r.textContent="".concat(e);var n=r.getBoundingClientRect();return{width:n.width,height:n.height}}catch(o){return{width:0,height:0}}},B5=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(void 0===e||null===e||r3)return{width:0,height:0};if(!R5.enableCache)return U5(e,t);var r=function(e,t){var r=t.fontSize||"",n=t.fontFamily||"",o=t.fontWeight||"",a=t.fontStyle||"",i=t.letterSpacing||"",s=t.textTransform||"";return"".concat(e,"|").concat(r,"|").concat(n,"|").concat(o,"|").concat(a,"|").concat(i,"|").concat(s)}(e,t),n=_5.get(r);if(n)return n;var o=U5(e,t);return _5.set(r,o),o};function F5(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class z5{static create(e){return new z5(e)}constructor(e){this.scale=e}get domain(){return this.scale.domain}get range(){return this.scale.range}get rangeMin(){return this.range()[0]}get rangeMax(){return this.range()[1]}get bandwidth(){return this.scale.bandwidth}apply(e){var{bandAware:t,position:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(void 0!==e){if(r)switch(r){case"start":default:return this.scale(e);case"middle":var n=this.bandwidth?this.bandwidth()/2:0;return this.scale(e)+n;case"end":var o=this.bandwidth?this.bandwidth():0;return this.scale(e)+o}if(t){var a=this.bandwidth?this.bandwidth()/2:0;return this.scale(e)+a}return this.scale(e)}}isInRange(e){var t=this.range(),r=t[0],n=t[t.length-1];return r<=n?e>=r&&e<=n:e>=n&&e<=r}}F5(z5,"EPS",1e-4);function W5(e,t){if(t<1)return[];if(1===t)return e;for(var r=[],n=0;n<e.length;n+=t){var o=e[n];void 0!==o&&r.push(o)}return r}function H5(e,t,r){return function(e){var{width:t,height:r}=e,n=function(e){return(e%180+180)%180}(arguments.length>1&&void 0!==arguments[1]?arguments[1]:0),o=n*Math.PI/180,a=Math.atan(r/t),i=o>a&&o<Math.PI-a?r/Math.sin(o):t/Math.cos(o);return Math.abs(i)}({width:e.width+t.width,height:e.height+t.height},r)}function Y5(e,t,r,n,o){if(e*t<e*n||e*t>e*o)return!1;var a=r();return e*(t-e*a/2-n)>=0&&e*(t+e*a/2-o)<=0}function V5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function G5(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?V5(Object(r),!0).forEach((function(t){Z5(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):V5(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Z5(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Q5(e,t,r){var n,{tick:o,ticks:a,viewBox:i,minTickGap:s,orientation:l,interval:c,tickFormatter:u,unit:d,angle:f}=e;if(!a||!a.length||!o)return[];if(BF(c)||r3)return null!==(n=function(e,t){return W5(e,t+1)}(a,BF(c)?c:0))&&void 0!==n?n:[];var p=[],h="top"===l||"bottom"===l?"width":"height",m=d&&"width"===h?B5(d,{fontSize:t,letterSpacing:r}):{width:0,height:0},g=(e,n)=>{var o="function"===typeof u?u(e.value,n):e.value;return"width"===h?H5(B5(o,{fontSize:t,letterSpacing:r}),m,f):B5(o,{fontSize:t,letterSpacing:r})[h]},v=a.length>=2?NF(a[1].coordinate-a[0].coordinate):1,y=function(e,t,r){var n="width"===r,{x:o,y:a,width:i,height:s}=e;return 1===t?{start:n?o:a,end:n?o+i:a+s}:{start:n?o+i:a+s,end:n?o:a}}(i,v,h);return"equidistantPreserveStart"===c?function(e,t,r,n,o){for(var a,i=(n||[]).slice(),{start:s,end:l}=t,c=0,u=1,d=s,f=function(){var t=null===n||void 0===n?void 0:n[c];if(void 0===t)return{v:W5(n,u)};var a,i=c,f=()=>(void 0===a&&(a=r(t,i)),a),p=t.coordinate,h=0===c||Y5(e,p,f,d,l);h||(c=0,d=s,u+=1),h&&(d=p+e*(f()/2+o),c+=u)};u<=i.length;)if(a=f())return a.v;return[]}(v,y,g,a,s):"equidistantPreserveEnd"===c?function(e,t,r,n,o){var a=(n||[]).slice().length;if(0===a)return[];for(var{start:i,end:s}=t,l=1;l<=a;l++){for(var c=(a-1)%l,u=i,d=!0,f=function(){var t,a=n[p],i=p,l=()=>(void 0===t&&(t=r(a,i)),t),f=a.coordinate,h=p===c||Y5(e,f,l,u,s);if(!h)return d=!1,1;h&&(u=f+e*(l()/2+o))},p=c;p<a&&!f();p+=l);if(d){for(var h=[],m=c;m<a;m+=l)h.push(n[m]);return h}}return[]}(v,y,g,a,s):(p="preserveStart"===c||"preserveStartEnd"===c?function(e,t,r,n,o,a){var i=(n||[]).slice(),s=i.length,{start:l,end:c}=t;if(a){var u=n[s-1],d=r(u,s-1),f=e*(u.coordinate+e*d/2-c);i[s-1]=u=G5(G5({},u),{},{tickCoord:f>0?u.coordinate-f*e:u.coordinate}),null!=u.tickCoord&&Y5(e,u.tickCoord,(()=>d),l,c)&&(c=u.tickCoord-e*(d/2+o),i[s-1]=G5(G5({},u),{},{isShow:!0}))}for(var p=a?s-1:s,h=function(t){var n,a=i[t],s=()=>(void 0===n&&(n=r(a,t)),n);if(0===t){var u=e*(a.coordinate-e*s()/2-l);i[t]=a=G5(G5({},a),{},{tickCoord:u<0?a.coordinate-u*e:a.coordinate})}else i[t]=a=G5(G5({},a),{},{tickCoord:a.coordinate});null!=a.tickCoord&&Y5(e,a.tickCoord,s,l,c)&&(l=a.tickCoord+e*(s()/2+o),i[t]=G5(G5({},a),{},{isShow:!0}))},m=0;m<p;m++)h(m);return i}(v,y,g,a,s,"preserveStartEnd"===c):function(e,t,r,n,o){for(var a=(n||[]).slice(),i=a.length,{start:s}=t,{end:l}=t,c=function(t){var n,c=a[t],u=()=>(void 0===n&&(n=r(c,t)),n);if(t===i-1){var d=e*(c.coordinate+e*u()/2-l);a[t]=c=G5(G5({},c),{},{tickCoord:d>0?c.coordinate-d*e:c.coordinate})}else a[t]=c=G5(G5({},c),{},{tickCoord:c.coordinate});null!=c.tickCoord&&Y5(e,c.tickCoord,u,s,l)&&(l=c.tickCoord-e*(u()/2+o),a[t]=G5(G5({},c),{},{isShow:!0}))},u=i-1;u>=0;u--)c(u);return a}(v,y,g,a,s),p.filter((e=>e.isShow)))}var K5=["children","className"];function X5(){return X5=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},X5.apply(null,arguments)}var J5=t.forwardRef(((e,r)=>{var{children:n,className:o}=e,a=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,K5),i=(0,Fh.$)("recharts-layer",o);return t.createElement("g",X5({className:i},M3(a),{ref:r}),n)}));var $5=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,q5=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,e6=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,t6=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,r6={cm:96/2.54,mm:96/25.4,pt:96/72,pc:16,in:96,Q:96/101.6,px:1},n6=["cm","mm","pt","pc","in","Q","px"];var o6,a6,i6,s6="NaN";class l6{static parse(e){var t,[,r,n]=null!==(t=t6.exec(e))&&void 0!==t?t:[];return null==r?l6.NaN:new l6(parseFloat(r),null!==n&&void 0!==n?n:"")}constructor(e,t){this.num=e,this.unit=t,this.num=e,this.unit=t,LF(e)&&(this.unit=""),""===t||e6.test(t)||(this.num=NaN,this.unit=""),function(e){return n6.includes(e)}(t)&&(this.num=function(e,t){return e*r6[t]}(e,t),this.unit="px")}add(e){return this.unit!==e.unit?new l6(NaN,""):new l6(this.num+e.num,this.unit)}subtract(e){return this.unit!==e.unit?new l6(NaN,""):new l6(this.num-e.num,this.unit)}multiply(e){return""!==this.unit&&""!==e.unit&&this.unit!==e.unit?new l6(NaN,""):new l6(this.num*e.num,this.unit||e.unit)}divide(e){return""!==this.unit&&""!==e.unit&&this.unit!==e.unit?new l6(NaN,""):new l6(this.num/e.num,this.unit||e.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return LF(this.num)}}function c6(e){if(null==e||e.includes(s6))return s6;for(var t=e;t.includes("*")||t.includes("/");){var r,[,n,o,a]=null!==(r=$5.exec(t))&&void 0!==r?r:[],i=l6.parse(null!==n&&void 0!==n?n:""),s=l6.parse(null!==a&&void 0!==a?a:""),l="*"===o?i.multiply(s):i.divide(s);if(l.isNaN())return s6;t=t.replace($5,l.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var c,[,u,d,f]=null!==(c=q5.exec(t))&&void 0!==c?c:[],p=l6.parse(null!==u&&void 0!==u?u:""),h=l6.parse(null!==f&&void 0!==f?f:""),m="+"===d?p.add(h):p.subtract(h);if(m.isNaN())return s6;t=t.replace(q5,m.toString())}return t}o6=l6,a6="NaN",i6=new l6(NaN,""),(a6=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(a6))in o6?Object.defineProperty(o6,a6,{value:i6,enumerable:!0,configurable:!0,writable:!0}):o6[a6]=i6;var u6=/\(([^()]*)\)/;function d6(e){var t=e.replace(/\s+/g,"");return t=function(e){for(var t,r=e;null!=(t=u6.exec(r));){var[,n]=t;r=r.replace(u6,c6(n))}return r}(t),t=c6(t)}function f6(e){var t=function(e){try{return d6(e)}catch(t){return s6}}(e.slice(5,-1));return t===s6?"":t}var p6=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],h6=["dx","dy","angle","className","breakAll"];function m6(){return m6=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},m6.apply(null,arguments)}function g6(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var v6=/[ \f\n\r\t\v\u2028\u2029]+/,y6=e=>{var{children:t,breakAll:r,style:n}=e;try{var o=[];return ZF(t)||(o=r?t.toString().split(""):t.toString().split(v6)),{wordsWithComputedWidth:o.map((e=>({word:e,width:B5(e,n).width}))),spaceWidth:r?0:B5("\xa0",n).width}}catch(a){return null}};function b6(e){return"start"===e||"middle"===e||"end"===e||"inherit"===e}var w6=(e,t,r,n)=>e.reduce(((e,o)=>{var{word:a,width:i}=o,s=e[e.length-1];if(s&&null!=i&&(null==t||n||s.width+i+r<Number(t)))s.words.push(a),s.width+=i+r;else{var l={words:[a],width:i};e.push(l)}return e}),[]),x6=e=>e.reduce(((e,t)=>e.width>t.width?e:t)),S6=(e,t,r,n,o,a,i,s)=>{var l=e.slice(0,t),c=y6({breakAll:r,style:n,children:l+"\u2026"});if(!c)return[!1,[]];var u=w6(c.wordsWithComputedWidth,a,i,s);return[u.length>o||x6(u).width>Number(a),u]},A6=e=>[{words:ZF(e)?[]:e.toString().split(v6),width:void 0}],k6=e=>{var{width:t,scaleToFit:r,children:n,style:o,breakAll:a,maxLines:i}=e;if((t||r)&&!r3){var s=y6({breakAll:a,children:n,style:o});if(!s)return A6(n);var{wordsWithComputedWidth:l,spaceWidth:c}=s;return((e,t,r,n,o)=>{var{maxLines:a,children:i,style:s,breakAll:l}=e,c=BF(a),u=String(i),d=w6(t,n,r,o);if(!c||o)return d;if(!(d.length>a||x6(d).width>Number(n)))return d;for(var f,p=0,h=u.length-1,m=0;p<=h&&m<=u.length-1;){var g=Math.floor((p+h)/2),v=g-1,[y,b]=S6(u,v,l,s,a,n,r,o),[w]=S6(u,g,l,s,a,n,r,o);if(y||w||(p=g+1),y&&w&&(h=g-1),!y&&w){f=b;break}m++}return f||d})({breakAll:a,children:n,maxLines:i,style:o},l,c,t,Boolean(r))}return A6(n)},C6="#808080",I6={angle:0,breakAll:!1,capHeight:"0.71em",fill:C6,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},E6=(0,t.forwardRef)(((e,r)=>{var n=k5(e,I6),{x:o,y:a,lineHeight:i,capHeight:s,fill:l,scaleToFit:c,textAnchor:u,verticalAnchor:d}=n,f=g6(n,p6),p=(0,t.useMemo)((()=>k6({breakAll:f.breakAll,children:f.children,maxLines:f.maxLines,scaleToFit:c,style:f.style,width:f.width})),[f.breakAll,f.children,f.maxLines,c,f.style,f.width]),{dx:h,dy:m,angle:g,className:v,breakAll:y}=f,b=g6(f,h6);if(!FF(o)||!FF(a)||0===p.length)return null;var w,x=Number(o)+(BF(h)?h:0),S=Number(a)+(BF(m)?m:0);if(!oz(x)||!oz(S))return null;switch(d){case"start":w=f6("calc(".concat(s,")"));break;case"middle":w=f6("calc(".concat((p.length-1)/2," * -").concat(i," + (").concat(s," / 2))"));break;default:w=f6("calc(".concat(p.length-1," * -").concat(i,")"))}var A=[];if(c){var k=p[0].width,{width:C}=f;A.push("scale(".concat(BF(C)&&BF(k)?C/k:1,")"))}return g&&A.push("rotate(".concat(g,", ").concat(x,", ").concat(S,")")),A.length&&(b.transform=A.join(" ")),t.createElement("text",m6({},M3(b),{ref:r,x:x,y:S,className:(0,Fh.$)("recharts-text",v),textAnchor:u,fill:l.includes("url")?C6:l}),p.map(((e,r)=>{var n=e.words.join(y?"":" ");return t.createElement("tspan",{x:x,dy:0===r?w:i,key:"".concat(n,"-").concat(r)},n)})))}));function D6(e){var{zIndex:r,children:n}=e,o=void 0!==EG()&&void 0!==r&&0!==r,a=gG(),i=CV();(0,t.useLayoutEffect)((()=>o?(i(c3({zIndex:r})),()=>{i(u3({zIndex:r}))}):XF),[i,r,o]);var s=TV((e=>_3(e,r,a)));return o?s?(0,xj.createPortal)(n,s):null:n}E6.displayName="Text";var T6=["labelRef"],O6=["content"];function M6(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function P6(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j6(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?P6(Object(r),!0).forEach((function(t){R6(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):P6(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function R6(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _6(){return _6=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},_6.apply(null,arguments)}var N6=(0,t.createContext)(null),L6=e=>{var{x:r,y:n,upperWidth:o,lowerWidth:a,width:i,height:s,children:l}=e,c=(0,t.useMemo)((()=>({x:r,y:n,upperWidth:o,lowerWidth:a,width:i,height:s})),[r,n,o,a,i,s]);return t.createElement(N6.Provider,{value:c},l)},U6=()=>{var e=(0,t.useContext)(N6),r=xG();return e||wG(r)},B6=(0,t.createContext)(null),F6=()=>{var e=(0,t.useContext)(B6),r=TV(K$);return e||r},z6=e=>null!=e&&"function"===typeof e,W6=(e,r,n,o,a)=>{var i,s,{offset:l,className:c}=e,{cx:u,cy:d,innerRadius:f,outerRadius:p,startAngle:h,endAngle:m,clockWise:g}=a,v=(f+p)/2,y=((e,t)=>NF(t-e)*Math.min(Math.abs(t-e),360))(h,m),b=y>=0?1:-1;switch(r){case"insideStart":i=h+b*l,s=g;break;case"insideEnd":i=m-b*l,s=!g;break;case"end":i=m+b*l,s=g;break;default:throw new Error("Unsupported position ".concat(r))}s=y<=0?s:!s;var w=y$(u,d,v,i),x=y$(u,d,v,i+359*(s?1:-1)),S="M".concat(w.x,",").concat(w.y,"\n    A").concat(v,",").concat(v,",0,1,").concat(s?0:1,",\n    ").concat(x.x,",").concat(x.y),A=ZF(e.id)?WF("recharts-radial-line-"):e.id;return t.createElement("text",_6({},o,{dominantBaseline:"central",className:(0,Fh.$)("recharts-radial-bar-label",c)}),t.createElement("defs",null,t.createElement("path",{id:A,d:S})),t.createElement("textPath",{xlinkHref:"#".concat(A)},n))},H6=e=>"cx"in e&&BF(e.cx),Y6={angle:0,offset:5,zIndex:S$.label,position:"middle",textBreakAll:!1};function V6(e){var r,n,o,a=k5(e,Y6),{viewBox:i,position:s,value:l,children:c,content:u,className:d="",textBreakAll:f,labelRef:p}=a,h=F6(),m=U6();if(!(r=null==i?"center"===s?m:null!==h&&void 0!==h?h:m:H6(i)?i:wG(i))||ZF(l)&&ZF(c)&&!(0,t.isValidElement)(u)&&"function"!==typeof u)return null;var g=j6(j6({},a),{},{viewBox:r});if((0,t.isValidElement)(u)){var{labelRef:v}=g,y=M6(g,T6);return(0,t.cloneElement)(u,y)}if("function"===typeof u){var{content:b}=g,w=M6(g,O6);if(n=(0,t.createElement)(u,w),(0,t.isValidElement)(n))return n}else n=(e=>{var{value:t,formatter:r}=e,n=ZF(e.children)?t:e.children;return"function"===typeof r?r(n):n})(a);var x=M3(a);if(H6(r)){if("insideStart"===s||"insideEnd"===s||"end"===s)return W6(a,s,n,x,r);o=((e,t,r)=>{var{cx:n,cy:o,innerRadius:a,outerRadius:i,startAngle:s,endAngle:l}=e,c=(s+l)/2;if("outside"===r){var{x:u,y:d}=y$(n,o,i+t,c);return{x:u,y:d,textAnchor:u>=n?"start":"end",verticalAnchor:"middle"}}if("center"===r)return{x:n,y:o,textAnchor:"middle",verticalAnchor:"middle"};if("centerTop"===r)return{x:n,y:o,textAnchor:"middle",verticalAnchor:"start"};if("centerBottom"===r)return{x:n,y:o,textAnchor:"middle",verticalAnchor:"end"};var f=(a+i)/2,{x:p,y:h}=y$(n,o,f,c);return{x:p,y:h,textAnchor:"middle",verticalAnchor:"middle"}})(r,a.offset,a.position)}else o=((e,t)=>{var r,{parentViewBox:n,offset:o,position:a}=e;null==n||H6(n)||(r=n);var{x:i,y:s,upperWidth:l,lowerWidth:c,height:u}=t,d=i,f=i+(l-c)/2,p=(d+f)/2,h=(l+c)/2,m=d+l/2,g=u>=0?1:-1,v=g*o,y=g>0?"end":"start",b=g>0?"start":"end",w=l>=0?1:-1,x=w*o,S=w>0?"end":"start",A=w>0?"start":"end";if("top"===a)return j6(j6({},{x:d+l/2,y:s-v,textAnchor:"middle",verticalAnchor:y}),r?{height:Math.max(s-r.y,0),width:l}:{});if("bottom"===a)return j6(j6({},{x:f+c/2,y:s+u+v,textAnchor:"middle",verticalAnchor:b}),r?{height:Math.max(r.y+r.height-(s+u),0),width:c}:{});if("left"===a){var k={x:p-x,y:s+u/2,textAnchor:S,verticalAnchor:"middle"};return j6(j6({},k),r?{width:Math.max(k.x-r.x,0),height:u}:{})}if("right"===a){var C={x:p+h+x,y:s+u/2,textAnchor:A,verticalAnchor:"middle"};return j6(j6({},C),r?{width:Math.max(r.x+r.width-C.x,0),height:u}:{})}var I=r?{width:h,height:u}:{};return"insideLeft"===a?j6({x:p+x,y:s+u/2,textAnchor:A,verticalAnchor:"middle"},I):"insideRight"===a?j6({x:p+h-x,y:s+u/2,textAnchor:S,verticalAnchor:"middle"},I):"insideTop"===a?j6({x:d+l/2,y:s+v,textAnchor:"middle",verticalAnchor:b},I):"insideBottom"===a?j6({x:f+c/2,y:s+u-v,textAnchor:"middle",verticalAnchor:y},I):"insideTopLeft"===a?j6({x:d+x,y:s+v,textAnchor:A,verticalAnchor:b},I):"insideTopRight"===a?j6({x:d+l-x,y:s+v,textAnchor:S,verticalAnchor:b},I):"insideBottomLeft"===a?j6({x:f+x,y:s+u-v,textAnchor:A,verticalAnchor:y},I):"insideBottomRight"===a?j6({x:f+c-x,y:s+u-v,textAnchor:S,verticalAnchor:y},I):a&&"object"===typeof a&&(BF(a.x)||UF(a.x))&&(BF(a.y)||UF(a.y))?j6({x:i+HF(a.x,h),y:s+HF(a.y,u),textAnchor:"end",verticalAnchor:"end"},I):j6({x:m,y:s+u/2,textAnchor:"middle",verticalAnchor:"middle"},I)})(a,r);return t.createElement(D6,{zIndex:a.zIndex},t.createElement(E6,_6({ref:p,className:(0,Fh.$)("recharts-label",d)},x,o,{textAnchor:b6(x.textAnchor)?x.textAnchor:o.textAnchor,breakAll:f}),n))}V6.displayName="Label";var G6=(e,r,n)=>{if(!e)return null;var o={viewBox:r,labelRef:n};return!0===e?t.createElement(V6,_6({key:"label-implicit"},o)):FF(e)?t.createElement(V6,_6({key:"label-implicit",value:e},o)):(0,t.isValidElement)(e)?e.type===V6?(0,t.cloneElement)(e,j6({key:"label-implicit"},o)):t.createElement(V6,_6({key:"label-implicit",content:e},o)):z6(e)?t.createElement(V6,_6({key:"label-implicit",content:e},o)):e&&"object"===typeof e?t.createElement(V6,_6({},e,{key:"label-implicit"},o)):null};function Z6(e){var{label:t,labelRef:r}=e,n=U6();return G6(t,n,r)||null}var Q6=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,K6=(e,r)=>{if(!e||"function"===typeof e||"boolean"===typeof e)return null;var n=e;if((0,t.isValidElement)(e)&&(n=e.props),"object"!==typeof n&&"function"!==typeof n)return null;var o={};return Object.keys(n).forEach((e=>{C3(e)&&(o[e]=r||(t=>n[e](n,t)))})),o},X6=["axisLine","width","height","className","hide","ticks","axisType"];function J6(){return J6=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},J6.apply(null,arguments)}function $6(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function q6(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?$6(Object(r),!0).forEach((function(t){e8(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$6(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function e8(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var t8={x:0,y:0,width:0,height:0,viewBox:{x:0,y:0,width:0,height:0},orientation:"bottom",ticks:[],stroke:"#666",tickLine:!0,axisLine:!0,tick:!0,mirror:!1,minTickGap:5,tickSize:6,tickMargin:2,interval:"preserveEnd",zIndex:S$.axis};function r8(e){var{x:r,y:n,width:o,height:a,orientation:i,mirror:s,axisLine:l,otherSvgProps:c}=e;if(!l)return null;var u=q6(q6(q6({},c),T3(l)),{},{fill:"none"});if("top"===i||"bottom"===i){var d=+("top"===i&&!s||"bottom"===i&&s);u=q6(q6({},u),{},{x1:r,y1:n+d*a,x2:r+o,y2:n+d*a})}else{var f=+("left"===i&&!s||"right"===i&&s);u=q6(q6({},u),{},{x1:r+f*o,y1:n,x2:r+f*o,y2:n+a})}return t.createElement("line",J6({},u,{className:(0,Fh.$)("recharts-cartesian-axis-line",jF()(l,"className"))}))}function n8(e){var r,{option:n,tickProps:o,value:a}=e,i=(0,Fh.$)(o.className,"recharts-cartesian-axis-tick-value");if(t.isValidElement(n))r=t.cloneElement(n,q6(q6({},o),{},{className:i}));else if("function"===typeof n)r=n(q6(q6({},o),{},{className:i}));else{var s="recharts-cartesian-axis-tick-value";"boolean"!==typeof n&&(s=(0,Fh.$)(s,null===n||void 0===n?void 0:n.className)),r=t.createElement(E6,J6({},o,{className:s}),a)}return r}var o8=(0,t.forwardRef)(((e,r)=>{var{ticks:n=[],tick:o,tickLine:a,stroke:i,tickFormatter:s,unit:l,padding:c,tickTextProps:u,orientation:d,mirror:f,x:p,y:h,width:m,height:g,tickSize:v,tickMargin:y,fontSize:b,letterSpacing:w,getTicksConfig:x,events:S,axisType:A}=e,k=Q5(q6(q6({},x),{},{ticks:n}),b,w),C=function(e,t){switch(e){case"left":return t?"start":"end";case"right":return t?"end":"start";default:return"middle"}}(d,f),I=function(e,t){switch(e){case"left":case"right":return"middle";case"top":return t?"start":"end";default:return t?"end":"start"}}(d,f),E=T3(x),D=O3(o),T={};"object"===typeof a&&(T=a);var O=q6(q6({},E),{},{fill:"none"},T),M=k.map((e=>q6({entry:e},function(e,t,r,n,o,a,i,s,l){var c,u,d,f,p,h,m=s?-1:1,g=e.tickSize||i,v=BF(e.tickCoord)?e.tickCoord:e.coordinate;switch(a){case"top":c=u=e.coordinate,h=(d=(f=r+ +!s*o)-m*g)-m*l,p=v;break;case"left":d=f=e.coordinate,p=(c=(u=t+ +!s*n)-m*g)-m*l,h=v;break;case"right":d=f=e.coordinate,p=(c=(u=t+ +s*n)+m*g)+m*l,h=v;break;default:c=u=e.coordinate,h=(d=(f=r+ +s*o)+m*g)+m*l,p=v}return{line:{x1:c,y1:d,x2:u,y2:f},tick:{x:p,y:h}}}(e,p,h,m,g,d,v,f,y)))),P=M.map((e=>{var{entry:r,line:n}=e;return t.createElement(J5,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(r.value,"-").concat(r.coordinate,"-").concat(r.tickCoord)},a&&t.createElement("line",J6({},O,n,{className:(0,Fh.$)("recharts-cartesian-axis-tick-line",jF()(a,"className"))})))})),j=M.map(((e,r)=>{var{entry:n,tick:a}=e,d=q6(q6(q6(q6({textAnchor:C,verticalAnchor:I},E),{},{stroke:"none",fill:i},D),a),{},{index:r,payload:n,visibleTicksCount:k.length,tickFormatter:s,padding:c},u);return t.createElement(J5,J6({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(n.value,"-").concat(n.coordinate,"-").concat(n.tickCoord)},((e,t,r)=>{if(null===e||"object"!==typeof e&&"function"!==typeof e)return null;var n=null;return Object.keys(e).forEach((o=>{var a=e[o];C3(o)&&"function"===typeof a&&(n||(n={}),n[o]=((e,t,r)=>n=>(e(t,r,n),null))(a,t,r))})),n})(S,n,r)),o&&t.createElement(n8,{option:o,tickProps:d,value:"".concat("function"===typeof s?s(n.value,r):n.value).concat(l||"")}))}));return t.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(A,"-ticks")},j.length>0&&t.createElement(D6,{zIndex:S$.label},t.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(A,"-tick-labels"),ref:r},j)),P.length>0&&t.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(A,"-tick-lines")},P))})),a8=(0,t.forwardRef)(((e,r)=>{var{axisLine:n,width:o,height:a,className:i,hide:s,ticks:l,axisType:c}=e,u=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,X6),[d,f]=(0,t.useState)(""),[p,h]=(0,t.useState)(""),m=(0,t.useRef)(null);(0,t.useImperativeHandle)(r,(()=>({getCalculatedWidth:()=>{var t;return(e=>{var{ticks:t,label:r,labelGapWithTick:n=5,tickSize:o=0,tickMargin:a=0}=e,i=0;if(t){Array.from(t).forEach((e=>{if(e){var t=e.getBoundingClientRect();t.width>i&&(i=t.width)}}));var s=r?r.getBoundingClientRect().width:0,l=i+(o+a)+s+(r?n:0);return Math.round(l)}return 0})({ticks:m.current,label:null===(t=e.labelRef)||void 0===t?void 0:t.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}})));var g=(0,t.useCallback)((e=>{if(e){var t=e.getElementsByClassName("recharts-cartesian-axis-tick-value");m.current=t;var r=t[0];if(r){var n=window.getComputedStyle(r),o=n.fontSize,a=n.letterSpacing;o===d&&a===p||(f(o),h(a))}}}),[d,p]);return s||null!=o&&o<=0||null!=a&&a<=0?null:t.createElement(D6,{zIndex:e.zIndex},t.createElement(J5,{className:(0,Fh.$)("recharts-cartesian-axis",i)},t.createElement(r8,{x:e.x,y:e.y,width:o,height:a,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:T3(e)}),t.createElement(o8,{ref:g,axisType:c,events:u,fontSize:d,getTicksConfig:e,height:e.height,letterSpacing:p,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:l,unit:e.unit,width:e.width,x:e.x,y:e.y}),t.createElement(L6,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},t.createElement(Z6,{label:e.label,labelRef:e.labelRef}),e.children)))})),i8=t.forwardRef(((e,r)=>{var n=k5(e,t8);return t.createElement(a8,J6({},n,{ref:r}))}));i8.displayName="CartesianAxis";var s8=["x1","y1","x2","y2","key"],l8=["offset"],c8=["xAxisId","yAxisId"],u8=["xAxisId","yAxisId"];function d8(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function f8(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?d8(Object(r),!0).forEach((function(t){p8(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):d8(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function p8(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function h8(){return h8=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},h8.apply(null,arguments)}function m8(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var g8=e=>{var{fill:r}=e;if(!r||"none"===r)return null;var{fillOpacity:n,x:o,y:a,width:i,height:s,ry:l}=e;return t.createElement("rect",{x:o,y:a,ry:l,width:i,height:s,stroke:"none",fill:r,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function v8(e){var r,{option:n,lineItemProps:o}=e;if(t.isValidElement(n))r=t.cloneElement(n,o);else if("function"===typeof n)r=n(o);else{var a,{x1:i,y1:s,x2:l,y2:c,key:u}=o,d=null!==(a=T3(m8(o,s8)))&&void 0!==a?a:{},{offset:f}=d,p=m8(d,l8);r=t.createElement("line",h8({},p,{x1:i,y1:s,x2:l,y2:c,fill:"none",key:u}))}return r}function y8(e){var{x:r,width:n,horizontal:o=!0,horizontalPoints:a}=e;if(!o||!a||!a.length)return null;var{xAxisId:i,yAxisId:s}=e,l=m8(e,c8),c=a.map(((e,a)=>{var i=f8(f8({},l),{},{x1:r,y1:e,x2:r+n,y2:e,key:"line-".concat(a),index:a});return t.createElement(v8,{key:"line-".concat(a),option:o,lineItemProps:i})}));return t.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function b8(e){var{y:r,height:n,vertical:o=!0,verticalPoints:a}=e;if(!o||!a||!a.length)return null;var{xAxisId:i,yAxisId:s}=e,l=m8(e,u8),c=a.map(((e,a)=>{var i=f8(f8({},l),{},{x1:e,y1:r,x2:e,y2:r+n,key:"line-".concat(a),index:a});return t.createElement(v8,{option:o,lineItemProps:i,key:"line-".concat(a)})}));return t.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function w8(e){var{horizontalFill:r,fillOpacity:n,x:o,y:a,width:i,height:s,horizontalPoints:l,horizontal:c=!0}=e;if(!c||!r||!r.length||null==l)return null;var u=l.map((e=>Math.round(e+a-a))).sort(((e,t)=>e-t));a!==u[0]&&u.unshift(0);var d=u.map(((e,l)=>{var c=!u[l+1]?a+s-e:u[l+1]-e;if(c<=0)return null;var d=l%r.length;return t.createElement("rect",{key:"react-".concat(l),y:e,x:o,height:c,width:i,stroke:"none",fill:r[d],fillOpacity:n,className:"recharts-cartesian-grid-bg"})}));return t.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},d)}function x8(e){var{vertical:r=!0,verticalFill:n,fillOpacity:o,x:a,y:i,width:s,height:l,verticalPoints:c}=e;if(!r||!n||!n.length)return null;var u=c.map((e=>Math.round(e+a-a))).sort(((e,t)=>e-t));a!==u[0]&&u.unshift(0);var d=u.map(((e,r)=>{var c=!u[r+1]?a+s-e:u[r+1]-e;if(c<=0)return null;var d=r%n.length;return t.createElement("rect",{key:"react-".concat(r),x:e,y:i,width:c,height:l,stroke:"none",fill:n[d],fillOpacity:o,className:"recharts-cartesian-grid-bg"})}));return t.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},d)}var S8=(e,t)=>{var{xAxis:r,width:n,height:o,offset:a}=e;return VV(Q5(f8(f8(f8({},t8),r),{},{ticks:GV(r,!0),viewBox:{x:0,y:0,width:n,height:o}})),a.left,a.left+a.width,t)},A8=(e,t)=>{var{yAxis:r,width:n,height:o,offset:a}=e;return VV(Q5(f8(f8(f8({},t8),r),{},{ticks:GV(r,!0),viewBox:{x:0,y:0,width:n,height:o}})),a.top,a.top+a.height,t)},k8={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:S$.grid};function C8(e){var r=kG(),n=CG(),o=AG(),a=f8(f8({},k5(e,k8)),{},{x:BF(e.x)?e.x:o.left,y:BF(e.y)?e.y:o.top,width:BF(e.width)?e.width:o.width,height:BF(e.height)?e.height:o.height}),{xAxisId:i,yAxisId:s,x:l,y:c,width:u,height:d,syncWithTicks:f,horizontalValues:p,verticalValues:h}=a,m=gG(),g=TV((e=>J0(e,"xAxis",i,m))),v=TV((e=>J0(e,"yAxis",s,m)));if(!az(u)||!az(d)||!BF(l)||!BF(c))return null;var y=a.verticalCoordinatesGenerator||S8,b=a.horizontalCoordinatesGenerator||A8,{horizontalPoints:w,verticalPoints:x}=a;if((!w||!w.length)&&"function"===typeof b){var S=p&&p.length,A=b({yAxis:v?f8(f8({},v),{},{ticks:S?p:v.ticks}):void 0,width:null!==r&&void 0!==r?r:u,height:null!==n&&void 0!==n?n:d,offset:o},!!S||f);JF(Array.isArray(A),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof A,"]")),Array.isArray(A)&&(w=A)}if((!x||!x.length)&&"function"===typeof y){var k=h&&h.length,C=y({xAxis:g?f8(f8({},g),{},{ticks:k?h:g.ticks}):void 0,width:null!==r&&void 0!==r?r:u,height:null!==n&&void 0!==n?n:d,offset:o},!!k||f);JF(Array.isArray(C),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof C,"]")),Array.isArray(C)&&(x=C)}return t.createElement(D6,{zIndex:a.zIndex},t.createElement("g",{className:"recharts-cartesian-grid"},t.createElement(g8,{fill:a.fill,fillOpacity:a.fillOpacity,x:a.x,y:a.y,width:a.width,height:a.height,ry:a.ry}),t.createElement(w8,h8({},a,{horizontalPoints:w})),t.createElement(x8,h8({},a,{verticalPoints:x})),t.createElement(y8,h8({},a,{offset:o,horizontalPoints:w,xAxis:g,yAxis:v})),t.createElement(b8,h8({},a,{offset:o,verticalPoints:x,xAxis:g,yAxis:v}))))}C8.displayName="CartesianGrid";var I8=["domain","range"],E8=["domain","range"];function D8(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function T8(e,t){return e===t||!(!Array.isArray(e)||2!==e.length||!Array.isArray(t)||2!==t.length)&&(e[0]===t[0]&&e[1]===t[1])}function O8(e,t){if(e===t)return!0;var{domain:r,range:n}=e,o=D8(e,I8),{domain:a,range:i}=t,s=D8(t,E8);return!!T8(r,a)&&(!!T8(n,i)&&b3(o,s))}var M8=["dangerouslySetInnerHTML","ticks","scale"],P8=["id","scale"];function j8(){return j8=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},j8.apply(null,arguments)}function R8(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function _8(e){var r=CV(),n=(0,t.useRef)(null);return(0,t.useLayoutEffect)((()=>{null===n.current?r(Y2(e)):n.current!==e&&r(V2({prev:n.current,next:e})),n.current=e}),[e,r]),(0,t.useLayoutEffect)((()=>()=>{n.current&&(r(G2(n.current)),n.current=null)}),[r]),null}var N8=e=>{var{xAxisId:r,className:n}=e,o=TV(hG),a=gG(),i="xAxis",s=TV((e=>$0(e,i,r,a))),l=TV((e=>z0(e,r))),c=TV((e=>Y0(e,r))),u=TV((e=>uq(e,r)));if(null==l||null==c||null==u)return null;var{dangerouslySetInnerHTML:d,ticks:f,scale:p}=e,h=R8(e,M8),{id:m,scale:g}=u,v=R8(u,P8);return t.createElement(i8,j8({},h,v,{x:c.x,y:c.y,width:l.width,height:l.height,className:(0,Fh.$)("recharts-".concat(i," ").concat(i),n),viewBox:o,ticks:s,axisType:i}))},L8={allowDataOverflow:cq.allowDataOverflow,allowDecimals:cq.allowDecimals,allowDuplicatedCategory:cq.allowDuplicatedCategory,angle:cq.angle,axisLine:t8.axisLine,height:cq.height,hide:!1,includeHidden:cq.includeHidden,interval:cq.interval,minTickGap:cq.minTickGap,mirror:cq.mirror,orientation:cq.orientation,padding:cq.padding,reversed:cq.reversed,scale:cq.scale,tick:cq.tick,tickCount:cq.tickCount,tickLine:t8.tickLine,tickSize:t8.tickSize,type:cq.type,xAxisId:0},U8=e=>{var r=k5(e,L8);return t.createElement(t.Fragment,null,t.createElement(_8,{allowDataOverflow:r.allowDataOverflow,allowDecimals:r.allowDecimals,allowDuplicatedCategory:r.allowDuplicatedCategory,angle:r.angle,dataKey:r.dataKey,domain:r.domain,height:r.height,hide:r.hide,id:r.xAxisId,includeHidden:r.includeHidden,interval:r.interval,minTickGap:r.minTickGap,mirror:r.mirror,name:r.name,orientation:r.orientation,padding:r.padding,reversed:r.reversed,scale:r.scale,tick:r.tick,tickCount:r.tickCount,tickFormatter:r.tickFormatter,ticks:r.ticks,type:r.type,unit:r.unit}),t.createElement(N8,r))},B8=t.memo(U8,O8);B8.displayName="XAxis";var F8=["dangerouslySetInnerHTML","ticks","scale"],z8=["id","scale"];function W8(){return W8=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},W8.apply(null,arguments)}function H8(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Y8(e){var r=CV(),n=(0,t.useRef)(null);return(0,t.useLayoutEffect)((()=>{null===n.current?r(Z2(e)):n.current!==e&&r(Q2({prev:n.current,next:e})),n.current=e}),[e,r]),(0,t.useLayoutEffect)((()=>()=>{n.current&&(r(K2(n.current)),n.current=null)}),[r]),null}var V8=e=>{var{yAxisId:r,className:n,width:o,label:a}=e,i=(0,t.useRef)(null),s=(0,t.useRef)(null),l=TV(hG),c=gG(),u=CV(),d="yAxis",f=TV((e=>G0(e,r))),p=TV((e=>V0(e,r))),h=TV((e=>$0(e,d,r,c))),m=TV((e=>pq(e,r)));if((0,t.useLayoutEffect)((()=>{if("auto"===o&&f&&!z6(a)&&!(0,t.isValidElement)(a)&&null!=m){var e=i.current;if(e){var n=e.getCalculatedWidth();Math.round(f.width)!==Math.round(n)&&u(q2({id:r,width:n}))}}}),[h,f,u,a,r,o,m]),null==f||null==p||null==m)return null;var{dangerouslySetInnerHTML:g,ticks:v,scale:y}=e,b=H8(e,F8),{id:w,scale:x}=m,S=H8(m,z8);return t.createElement(i8,W8({},b,S,{ref:i,labelRef:s,x:p.x,y:p.y,tickTextProps:"auto"===o?{width:void 0}:{width:o},width:f.width,height:f.height,className:(0,Fh.$)("recharts-".concat(d," ").concat(d),n),viewBox:l,ticks:h,axisType:d}))},G8={allowDataOverflow:fq.allowDataOverflow,allowDecimals:fq.allowDecimals,allowDuplicatedCategory:fq.allowDuplicatedCategory,angle:fq.angle,axisLine:t8.axisLine,hide:!1,includeHidden:fq.includeHidden,interval:fq.interval,minTickGap:fq.minTickGap,mirror:fq.mirror,orientation:fq.orientation,padding:fq.padding,reversed:fq.reversed,scale:fq.scale,tick:fq.tick,tickCount:fq.tickCount,tickLine:t8.tickLine,tickSize:t8.tickSize,type:fq.type,width:fq.width,yAxisId:0},Z8=e=>{var r=k5(e,G8);return t.createElement(t.Fragment,null,t.createElement(Y8,{interval:r.interval,id:r.yAxisId,scale:r.scale,type:r.type,domain:r.domain,allowDataOverflow:r.allowDataOverflow,dataKey:r.dataKey,allowDuplicatedCategory:r.allowDuplicatedCategory,allowDecimals:r.allowDecimals,tickCount:r.tickCount,padding:r.padding,includeHidden:r.includeHidden,reversed:r.reversed,ticks:r.ticks,width:r.width,orientation:r.orientation,mirror:r.mirror,hide:r.hide,unit:r.unit,name:r.name,angle:r.angle,minTickGap:r.minTickGap,tick:r.tick,tickFormatter:r.tickFormatter}),t.createElement(V8,r))},Q8=t.memo(Z8,O8);function K8(){return K8=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},K8.apply(null,arguments)}function X8(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function J8(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?X8(Object(r),!0).forEach((function(t){$8(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):X8(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function $8(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function q8(e){return Array.isArray(e)&&FF(e[0])&&FF(e[1])?e.join(" ~ "):e}Q8.displayName="YAxis";var e9=e=>{var{separator:r=" : ",contentStyle:n={},itemStyle:o={},labelStyle:a={},payload:i,formatter:s,itemSorter:l,wrapperClassName:c,labelClassName:u,label:d,labelFormatter:f,accessibilityLayer:p=!1}=e,h=J8({margin:0,padding:10,backgroundColor:"#fff",border:"1px solid #ccc",whiteSpace:"nowrap"},n),m=J8({margin:0},a),g=!ZF(d),v=g?d:"",y=(0,Fh.$)("recharts-default-tooltip",c),b=(0,Fh.$)("recharts-tooltip-label",u);g&&f&&void 0!==i&&null!==i&&(v=f(d,i));var w=p?{role:"status","aria-live":"assertive"}:{};return t.createElement("div",K8({className:y,style:h},w),t.createElement("p",{className:b,style:m},t.isValidElement(v)?v:"".concat(v)),(()=>{if(i&&i.length){var e=(l?MV()(i,l):i).map(((e,n)=>{if("none"===e.type)return null;var a=e.formatter||s||q8,{value:l,name:c}=e,u=l,d=c;if(a){var f=a(l,c,e,n,i);if(Array.isArray(f))[u,d]=f;else{if(null==f)return null;u=f}}var p=J8({display:"block",paddingTop:4,paddingBottom:4,color:e.color||"#000"},o);return t.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(n),style:p},FF(d)?t.createElement("span",{className:"recharts-tooltip-item-name"},d):null,FF(d)?t.createElement("span",{className:"recharts-tooltip-item-separator"},r):null,t.createElement("span",{className:"recharts-tooltip-item-value"},u),t.createElement("span",{className:"recharts-tooltip-item-unit"},e.unit||""))}));return t.createElement("ul",{className:"recharts-tooltip-item-list",style:{padding:0,margin:0}},e)}return null})())},t9="recharts-tooltip-wrapper",r9={visibility:"hidden"};function n9(e){var{coordinate:t,translateX:r,translateY:n}=e;return(0,Fh.$)(t9,{["".concat(t9,"-right")]:BF(r)&&t&&BF(t.x)&&r>=t.x,["".concat(t9,"-left")]:BF(r)&&t&&BF(t.x)&&r<t.x,["".concat(t9,"-bottom")]:BF(n)&&t&&BF(t.y)&&n>=t.y,["".concat(t9,"-top")]:BF(n)&&t&&BF(t.y)&&n<t.y})}function o9(e){var{allowEscapeViewBox:t,coordinate:r,key:n,offsetTopLeft:o,position:a,reverseDirection:i,tooltipDimension:s,viewBox:l,viewBoxDimension:c}=e;if(a&&BF(a[n]))return a[n];var u=r[n]-s-(o>0?o:0),d=r[n]+o;if(t[n])return i[n]?u:d;var f=l[n];return null==f?0:i[n]?u<f?Math.max(d,f):Math.max(u,f):null==c?0:d+s>f+c?Math.max(u,f):Math.max(d,f)}function a9(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i9(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a9(Object(r),!0).forEach((function(t){s9(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a9(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s9(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class l9 extends t.PureComponent{constructor(){super(...arguments),s9(this,"state",{dismissed:!1,dismissedAtCoordinate:{x:0,y:0}}),s9(this,"handleKeyDown",(e=>{var t,r,n,o;"Escape"===e.key&&this.setState({dismissed:!0,dismissedAtCoordinate:{x:null!==(t=null===(r=this.props.coordinate)||void 0===r?void 0:r.x)&&void 0!==t?t:0,y:null!==(n=null===(o=this.props.coordinate)||void 0===o?void 0:o.y)&&void 0!==n?n:0}})}))}componentDidMount(){document.addEventListener("keydown",this.handleKeyDown)}componentWillUnmount(){document.removeEventListener("keydown",this.handleKeyDown)}componentDidUpdate(){var e,t;this.state.dismissed&&((null===(e=this.props.coordinate)||void 0===e?void 0:e.x)===this.state.dismissedAtCoordinate.x&&(null===(t=this.props.coordinate)||void 0===t?void 0:t.y)===this.state.dismissedAtCoordinate.y||(this.state.dismissed=!1))}render(){var{active:e,allowEscapeViewBox:r,animationDuration:n,animationEasing:o,children:a,coordinate:i,hasPayload:s,isAnimationActive:l,offset:c,position:u,reverseDirection:d,useTranslate3d:f,viewBox:p,wrapperStyle:h,lastBoundingBox:m,innerRef:g,hasPortalFromProps:v}=this.props,{cssClasses:y,cssProperties:b}=function(e){var t,r,n,{allowEscapeViewBox:o,coordinate:a,offsetTopLeft:i,position:s,reverseDirection:l,tooltipBox:c,useTranslate3d:u,viewBox:d}=e;return t=c.height>0&&c.width>0&&a?function(e){var{translateX:t,translateY:r,useTranslate3d:n}=e;return{transform:n?"translate3d(".concat(t,"px, ").concat(r,"px, 0)"):"translate(".concat(t,"px, ").concat(r,"px)")}}({translateX:r=o9({allowEscapeViewBox:o,coordinate:a,key:"x",offsetTopLeft:i,position:s,reverseDirection:l,tooltipDimension:c.width,viewBox:d,viewBoxDimension:d.width}),translateY:n=o9({allowEscapeViewBox:o,coordinate:a,key:"y",offsetTopLeft:i,position:s,reverseDirection:l,tooltipDimension:c.height,viewBox:d,viewBoxDimension:d.height}),useTranslate3d:u}):r9,{cssProperties:t,cssClasses:n9({translateX:r,translateY:n,coordinate:a})}}({allowEscapeViewBox:r,coordinate:i,offsetTopLeft:c,position:u,reverseDirection:d,tooltipBox:{height:m.height,width:m.width},useTranslate3d:f,viewBox:p}),w=v?{}:i9(i9({transition:l&&e?"transform ".concat(n,"ms ").concat(o):void 0},b),{},{pointerEvents:"none",visibility:!this.state.dismissed&&e&&s?"visible":"hidden",position:"absolute",top:0,left:0}),x=i9(i9({},w),{},{visibility:!this.state.dismissed&&e&&s?"visible":"hidden"},h);return t.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:y,style:x,ref:g},a)}}var c9=r(52239),u9=r.n(c9);function d9(){}function f9(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function p9(e){this._context=e}function h9(e){this._context=e}function m9(e){this._context=e}p9.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:f9(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:f9(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},h9.prototype={areaStart:d9,areaEnd:d9,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:f9(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},m9.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,n=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:f9(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};class g9{constructor(e,t){this._context=e,this._x=t}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,t,e,t):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+t)/2,e,this._y0,e,t)}this._x0=e,this._y0=t}}function v9(e){this._context=e}function y9(e){this._context=e}function b9(e){return new y9(e)}function w9(e){return e<0?-1:1}function x9(e,t,r){var n=e._x1-e._x0,o=t-e._x1,a=(e._y1-e._y0)/(n||o<0&&-0),i=(r-e._y1)/(o||n<0&&-0),s=(a*o+i*n)/(n+o);return(w9(a)+w9(i))*Math.min(Math.abs(a),Math.abs(i),.5*Math.abs(s))||0}function S9(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function A9(e,t,r){var n=e._x0,o=e._y0,a=e._x1,i=e._y1,s=(a-n)/3;e._context.bezierCurveTo(n+s,o+s*t,a-s,i-s*r,a,i)}function k9(e){this._context=e}function C9(e){this._context=new I9(e)}function I9(e){this._context=e}function E9(e){this._context=e}function D9(e){var t,r,n=e.length-1,o=new Array(n),a=new Array(n),i=new Array(n);for(o[0]=0,a[0]=2,i[0]=e[0]+2*e[1],t=1;t<n-1;++t)o[t]=1,a[t]=4,i[t]=4*e[t]+2*e[t+1];for(o[n-1]=2,a[n-1]=7,i[n-1]=8*e[n-1]+e[n],t=1;t<n;++t)r=o[t]/a[t-1],a[t]-=r,i[t]-=r*i[t-1];for(o[n-1]=i[n-1]/a[n-1],t=n-2;t>=0;--t)o[t]=(i[t]-o[t+1])/a[t];for(a[n-1]=(e[n]+o[n-1])/2,t=0;t<n-1;++t)a[t]=2*e[t+1]-o[t+1];return[o,a]}function T9(e,t){this._context=e,this._t=t}v9.prototype={areaStart:d9,areaEnd:d9,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}},y9.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}},k9.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:A9(this,this._t0,S9(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var r=NaN;if(t=+t,(e=+e)!==this._x1||t!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,A9(this,S9(this,r=x9(this,e,t)),r);break;default:A9(this,this._t0,r=x9(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}},(C9.prototype=Object.create(k9.prototype)).point=function(e,t){k9.prototype.point.call(this,t,e)},I9.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,r,n,o,a){this._context.bezierCurveTo(t,e,n,r,a,o)}},E9.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),2===r)this._context.lineTo(e[1],t[1]);else for(var n=D9(e),o=D9(t),a=0,i=1;i<r;++a,++i)this._context.bezierCurveTo(n[0][a],o[0][a],n[1][a],o[1][a],e[i],t[i]);(this._line||0!==this._line&&1===r)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}},T9.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}}this._x=e,this._y=t}};const O9=Math.PI,M9=2*O9,P9=1e-6,j9=M9-P9;function R9(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=arguments[t]+e[t]}class _9{constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=null==e?R9:function(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return R9;const r=10**t;return function(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=Math.round(arguments[t]*r)/r+e[t]}}(e)}moveTo(e,t){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,t){this._append`L${this._x1=+e},${this._y1=+t}`}quadraticCurveTo(e,t,r,n){this._append`Q${+e},${+t},${this._x1=+r},${this._y1=+n}`}bezierCurveTo(e,t,r,n,o,a){this._append`C${+e},${+t},${+r},${+n},${this._x1=+o},${this._y1=+a}`}arcTo(e,t,r,n,o){if(e=+e,t=+t,r=+r,n=+n,(o=+o)<0)throw new Error(`negative radius: ${o}`);let a=this._x1,i=this._y1,s=r-e,l=n-t,c=a-e,u=i-t,d=c*c+u*u;if(null===this._x1)this._append`M${this._x1=e},${this._y1=t}`;else if(d>P9)if(Math.abs(u*s-l*c)>P9&&o){let f=r-a,p=n-i,h=s*s+l*l,m=f*f+p*p,g=Math.sqrt(h),v=Math.sqrt(d),y=o*Math.tan((O9-Math.acos((h+d-m)/(2*g*v)))/2),b=y/v,w=y/g;Math.abs(b-1)>P9&&this._append`L${e+b*c},${t+b*u}`,this._append`A${o},${o},0,0,${+(u*f>c*p)},${this._x1=e+w*s},${this._y1=t+w*l}`}else this._append`L${this._x1=e},${this._y1=t}`;else;}arc(e,t,r,n,o,a){if(e=+e,t=+t,a=!!a,(r=+r)<0)throw new Error(`negative radius: ${r}`);let i=r*Math.cos(n),s=r*Math.sin(n),l=e+i,c=t+s,u=1^a,d=a?n-o:o-n;null===this._x1?this._append`M${l},${c}`:(Math.abs(this._x1-l)>P9||Math.abs(this._y1-c)>P9)&&this._append`L${l},${c}`,r&&(d<0&&(d=d%M9+M9),d>j9?this._append`A${r},${r},0,1,${u},${e-i},${t-s}A${r},${r},0,1,${u},${this._x1=l},${this._y1=c}`:d>P9&&this._append`A${r},${r},0,${+(d>=O9)},${u},${this._x1=e+r*Math.cos(o)},${this._y1=t+r*Math.sin(o)}`)}rect(e,t,r,n){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${r=+r}v${+n}h${-r}Z`}toString(){return this._}}function N9(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(null==r)t=null;else{const e=Math.floor(r);if(!(e>=0))throw new RangeError(`invalid digits: ${r}`);t=e}return e},()=>new _9(t)}function L9(e){return e[0]}function U9(e){return e[1]}function B9(e,t){var r=_V(!0),n=null,o=b9,a=null,i=N9(s);function s(s){var l,c,u,d=(s=RV(s)).length,f=!1;for(null==n&&(a=o(u=i())),l=0;l<=d;++l)!(l<d&&r(c=s[l],l,s))===f&&((f=!f)?a.lineStart():a.lineEnd()),f&&a.point(+e(c,l,s),+t(c,l,s));if(u)return a=null,u+""||null}return e="function"===typeof e?e:void 0===e?L9:_V(e),t="function"===typeof t?t:void 0===t?U9:_V(t),s.x=function(t){return arguments.length?(e="function"===typeof t?t:_V(+t),s):e},s.y=function(e){return arguments.length?(t="function"===typeof e?e:_V(+e),s):t},s.defined=function(e){return arguments.length?(r="function"===typeof e?e:_V(!!e),s):r},s.curve=function(e){return arguments.length?(o=e,null!=n&&(a=o(n)),s):o},s.context=function(e){return arguments.length?(null==e?n=a=null:a=o(n=e),s):n},s}function F9(e,t,r){var n=null,o=_V(!0),a=null,i=b9,s=null,l=N9(c);function c(c){var u,d,f,p,h,m=(c=RV(c)).length,g=!1,v=new Array(m),y=new Array(m);for(null==a&&(s=i(h=l())),u=0;u<=m;++u){if(!(u<m&&o(p=c[u],u,c))===g)if(g=!g)d=u,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),f=u-1;f>=d;--f)s.point(v[f],y[f]);s.lineEnd(),s.areaEnd()}g&&(v[u]=+e(p,u,c),y[u]=+t(p,u,c),s.point(n?+n(p,u,c):v[u],r?+r(p,u,c):y[u]))}if(h)return s=null,h+""||null}function u(){return B9().defined(o).curve(i).context(a)}return e="function"===typeof e?e:void 0===e?L9:_V(+e),t="function"===typeof t?t:_V(void 0===t?0:+t),r="function"===typeof r?r:void 0===r?U9:_V(+r),c.x=function(t){return arguments.length?(e="function"===typeof t?t:_V(+t),n=null,c):e},c.x0=function(t){return arguments.length?(e="function"===typeof t?t:_V(+t),c):e},c.x1=function(e){return arguments.length?(n=null==e?null:"function"===typeof e?e:_V(+e),c):n},c.y=function(e){return arguments.length?(t="function"===typeof e?e:_V(+e),r=null,c):t},c.y0=function(e){return arguments.length?(t="function"===typeof e?e:_V(+e),c):t},c.y1=function(e){return arguments.length?(r=null==e?null:"function"===typeof e?e:_V(+e),c):r},c.lineX0=c.lineY0=function(){return u().x(e).y(t)},c.lineY1=function(){return u().x(e).y(r)},c.lineX1=function(){return u().x(n).y(t)},c.defined=function(e){return arguments.length?(o="function"===typeof e?e:_V(!!e),c):o},c.curve=function(e){return arguments.length?(i=e,null!=a&&(s=i(a)),c):i},c.context=function(e){return arguments.length?(null==e?a=s=null:s=i(a=e),c):a},c}function z9(){return z9=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},z9.apply(null,arguments)}function W9(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function H9(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?W9(Object(r),!0).forEach((function(t){Y9(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):W9(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Y9(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var V9={curveBasisClosed:function(e){return new h9(e)},curveBasisOpen:function(e){return new m9(e)},curveBasis:function(e){return new p9(e)},curveBumpX:function(e){return new g9(e,!0)},curveBumpY:function(e){return new g9(e,!1)},curveLinearClosed:function(e){return new v9(e)},curveLinear:b9,curveMonotoneX:function(e){return new k9(e)},curveMonotoneY:function(e){return new C9(e)},curveNatural:function(e){return new E9(e)},curveStep:function(e){return new T9(e,.5)},curveStepAfter:function(e){return new T9(e,1)},curveStepBefore:function(e){return new T9(e,0)}},G9=e=>oz(e.x)&&oz(e.y),Z9=e=>null!=e.base&&G9(e.base)&&G9(e),Q9=e=>e.x,K9=e=>e.y,X9=e=>{var{type:t="linear",points:r=[],baseLine:n,layout:o,connectNulls:a=!1}=e,i=((e,t)=>{if("function"===typeof e)return e;var r="curve".concat(QF(e));return"curveMonotone"!==r&&"curveBump"!==r||!t?V9[r]||b9:V9["".concat(r).concat("vertical"===t?"Y":"X")]})(t,o),s=a?r.filter(G9):r;if(Array.isArray(n)){var l=r.map(((e,t)=>H9(H9({},e),{},{base:n[t]})));return("vertical"===o?F9().y(K9).x1(Q9).x0((e=>e.base.x)):F9().x(Q9).y1(K9).y0((e=>e.base.y))).defined(Z9).curve(i)(a?l.filter(Z9):l)}return("vertical"===o&&BF(n)?F9().y(K9).x1(Q9).x0(n):BF(n)?F9().x(Q9).y1(K9).y0(n):B9().x(Q9).y(K9)).defined(G9).curve(i)(s)},J9=e=>{var{className:r,points:n,path:o,pathRef:a}=e,i=EG();if((!n||!n.length)&&!o)return null;var s={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||i,connectNulls:e.connectNulls},l=n&&n.length?X9(s):o;return t.createElement("path",z9({},T3(e),K6(e),{className:(0,Fh.$)("recharts-curve",r),d:null===l?void 0:l,ref:a}))},$9=["x","y","top","left","width","height","className"];function q9(){return q9=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},q9.apply(null,arguments)}function e7(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function t7(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var r7=(e,t,r,n,o,a)=>"M".concat(e,",").concat(o,"v").concat(n,"M").concat(a,",").concat(t,"h").concat(r),n7=e=>{var{x:r=0,y:n=0,top:o=0,left:a=0,width:i=0,height:s=0,className:l}=e,c=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,$9),u=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?e7(Object(r),!0).forEach((function(t){t7(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):e7(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({x:r,y:n,top:o,left:a,width:i,height:s},c);return BF(r)&&BF(n)&&BF(i)&&BF(s)&&BF(o)&&BF(a)?t.createElement("path",q9({},M3(u),{className:(0,Fh.$)("recharts-cross",l),d:r7(r,n,i,s,o,a)})):null};function o7(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a7(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o7(Object(r),!0).forEach((function(t){i7(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o7(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function i7(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var s7=(e,t,r)=>e.map((e=>{return"".concat((n=e,n.replace(/([A-Z])/g,(e=>"-".concat(e.toLowerCase()))))," ").concat(t,"ms ").concat(r);var n})).join(","),l7=(e,t)=>Object.keys(t).reduce(((r,n)=>a7(a7({},r),{},{[n]:e(n,t[n])})),{});function c7(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u7(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c7(Object(r),!0).forEach((function(t){d7(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c7(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function d7(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var f7=(e,t,r)=>e+(t-e)*r,p7=e=>{var{from:t,to:r}=e;return t!==r},h7=(e,t,r)=>{var n=l7(((t,r)=>{if(p7(r)){var[n,o]=e(r.from,r.to,r.velocity);return u7(u7({},r),{},{from:n,velocity:o})}return r}),t);return r<1?l7(((e,t)=>p7(t)&&null!=n[e]?u7(u7({},t),{},{velocity:f7(t.velocity,n[e].velocity,r),from:f7(t.from,n[e].from,r)}):t),t):h7(e,n,r-1)};function m7(e,t,r,n,o,a){var i,s=n.reduce(((r,n)=>u7(u7({},r),{},{[n]:{from:e[n],velocity:0,to:t[n]}})),{}),l=null,c=n=>{i||(i=n);var u=(n-i)/r.dt;s=h7(r,s,u),o(u7(u7(u7({},e),t),l7(((e,t)=>t.from),s))),i=n,Object.values(s).filter(p7).length&&(l=a.setTimeout(c))};return()=>(l=a.setTimeout(c),()=>{var e;null===(e=l)||void 0===e||e()})}const g7=(e,t,r,n,o,a)=>{var i,s,l=(i=e,s=t,[Object.keys(i),Object.keys(s)].reduce(((e,t)=>e.filter((e=>t.includes(e))))));return null==r?()=>(o(u7(u7({},e),t)),()=>{}):!0===r.isStepper?m7(e,t,r,l,o,a):function(e,t,r,n,o,a,i){var s,l=null,c=o.reduce(((r,n)=>{var o=e[n],a=t[n];return null==o||null==a?r:u7(u7({},r),{},{[n]:[o,a]})}),{}),u=o=>{s||(s=o);var d=(o-s)/n,f=l7(((e,t)=>f7(...t,r(d))),c);if(a(u7(u7(u7({},e),t),f)),d<1)l=i.setTimeout(u);else{var p=l7(((e,t)=>f7(...t,r(1))),c);a(u7(u7(u7({},e),t),p))}};return()=>(l=i.setTimeout(u),()=>{var e;null===(e=l)||void 0===e||e()})}(e,t,r,n,l,o,a)};var v7=1e-4,y7=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],b7=(e,t)=>e.map(((e,r)=>e*t**r)).reduce(((e,t)=>e+t)),w7=(e,t)=>r=>{var n=y7(e,t);return b7(n,r)},x7=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];if(1===t.length)switch(t[0]){case"linear":return[0,0,1,1];case"ease":return[.25,.1,.25,1];case"ease-in":return[.42,0,1,1];case"ease-out":return[.42,0,.58,1];case"ease-in-out":return[0,0,.58,1];default:var n=(e=>{var t,r=e.split("(");if(2!==r.length||"cubic-bezier"!==r[0])return null;var n=null===(t=r[1])||void 0===t||null===(t=t.split(")")[0])||void 0===t?void 0:t.split(",");if(null==n||4!==n.length)return null;var o=n.map((e=>parseFloat(e)));return[o[0],o[1],o[2],o[3]]})(t[0]);if(n)return n}return 4===t.length?t:[0,0,1,1]},S7=(e,t,r,n)=>{var o,a,i=w7(e,r),s=w7(t,n),l=(o=e,a=r,e=>{var t=[...y7(o,a).map(((e,t)=>e*t)).slice(1),0];return b7(t,e)}),c=e=>{for(var t,r=e>1?1:e,n=r,o=0;o<8;++o){var a=i(n)-r,c=l(n);if(Math.abs(a-r)<v7||c<v7)return s(n);n=(t=n-a/c)>1?1:t<0?0:t}return s(n)};return c.isStepper=!1,c},A7=function(){return S7(...x7(...arguments))},k7=e=>{if("string"===typeof e)switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return A7(e);case"spring":return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{stiff:t=100,damping:r=8,dt:n=17}=e,o=(e,o,a)=>{var i=a+(-(e-o)*t-a*r)*n/1e3,s=a*n/1e3+e;return Math.abs(s-o)<v7&&Math.abs(i)<v7?[o,0]:[s,i]};return o.isStepper=!0,o.dt=n,o}();default:if("cubic-bezier"===e.split("(")[0])return A7(e)}return"function"===typeof e?e:null};class C7{setTimeout(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=performance.now(),n=null,o=a=>{a-r>=t?e(a):"function"===typeof requestAnimationFrame&&(n=requestAnimationFrame(o))};return n=requestAnimationFrame(o),()=>{null!=n&&cancelAnimationFrame(n)}}}function I7(){return function(e){var t=()=>null,r=!1,n=null,o=a=>{if(!r){if(Array.isArray(a)){if(!a.length)return;var i=a,[s,...l]=i;return"number"===typeof s?void(n=e.setTimeout(o.bind(null,l),s)):(o(s),void(n=e.setTimeout(o.bind(null,l))))}"string"===typeof a&&t(a),"object"===typeof a&&t(a),"function"===typeof a&&a()}};return{stop:()=>{r=!0},start:e=>{r=!1,n&&(n(),n=null),o(e)},subscribe:e=>(t=e,()=>{t=()=>null}),getTimeoutController:()=>e}}(new C7)}var E7=(0,t.createContext)(I7);var D7={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},T7={t:0},O7={t:1};function M7(e){var r=k5(e,D7),{isActive:n,canBegin:o,duration:a,easing:i,begin:s,onAnimationEnd:l,onAnimationStart:c,children:u}=r,d="auto"===n?!r3:n,f=function(e,r){var n=(0,t.useContext)(E7);return(0,t.useMemo)((()=>null!==r&&void 0!==r?r:n(e)),[e,r,n])}(r.animationId,r.animationManager),[p,h]=(0,t.useState)(d?T7:O7),m=(0,t.useRef)(null);return(0,t.useEffect)((()=>{d||h(O7)}),[d]),(0,t.useEffect)((()=>{if(!d||!o)return XF;var e=g7(T7,O7,k7(i),a,h,f.getTimeoutController());return f.start([c,s,()=>{m.current=e()},a,l]),()=>{f.stop(),m.current&&m.current(),l()}}),[d,o,a,i,s,c,l,f]),u(p.t)}function P7(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"animation-",n=(0,t.useRef)(WF(r)),o=(0,t.useRef)(e);return o.current!==e&&(n.current=WF(r),o.current=e),n.current}var j7,R7,_7,N7,L7,U7,B7,F7,z7,W7,H7=["radius"],Y7=["radius"];function V7(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function G7(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?V7(Object(r),!0).forEach((function(t){Z7(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):V7(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Z7(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Q7(){return Q7=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Q7.apply(null,arguments)}function K7(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function X7(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var J7,$7,q7,eee,tee,ree,nee,oee=(e,t,r,n,o)=>{var a,i=RF(r),s=RF(n),l=Math.min(Math.abs(i)/2,Math.abs(s)/2),c=s>=0?1:-1,u=i>=0?1:-1,d=s>=0&&i>=0||s<0&&i<0?1:0;if(l>0&&o instanceof Array){for(var f=[0,0,0,0],p=0;p<4;p++)f[p]=o[p]>l?l:o[p];a=_F(j7||(j7=X7(["M",",",""])),e,t+c*f[0]),f[0]>0&&(a+=_F(R7||(R7=X7(["A ",",",",0,0,",",",",",""])),f[0],f[0],d,e+u*f[0],t)),a+=_F(_7||(_7=X7(["L ",",",""])),e+r-u*f[1],t),f[1]>0&&(a+=_F(N7||(N7=X7(["A ",",",",0,0,",",\n        ",",",""])),f[1],f[1],d,e+r,t+c*f[1])),a+=_F(L7||(L7=X7(["L ",",",""])),e+r,t+n-c*f[2]),f[2]>0&&(a+=_F(U7||(U7=X7(["A ",",",",0,0,",",\n        ",",",""])),f[2],f[2],d,e+r-u*f[2],t+n)),a+=_F(B7||(B7=X7(["L ",",",""])),e+u*f[3],t+n),f[3]>0&&(a+=_F(F7||(F7=X7(["A ",",",",0,0,",",\n        ",",",""])),f[3],f[3],d,e,t+n-c*f[3])),a+="Z"}else if(l>0&&o===+o&&o>0){var h=Math.min(l,o);a=_F(z7||(z7=X7(["M ",",","\n            A ",",",",0,0,",",",",","\n            L ",",","\n            A ",",",",0,0,",",",",","\n            L ",",","\n            A ",",",",0,0,",",",",","\n            L ",",","\n            A ",",",",0,0,",",",","," Z"])),e,t+c*h,h,h,d,e+u*h,t,e+r-u*h,t,h,h,d,e+r,t+c*h,e+r,t+n-c*h,h,h,d,e+r-u*h,t+n,e+u*h,t+n,h,h,d,e,t+n-c*h)}else a=_F(W7||(W7=X7(["M ",","," h "," v "," h "," Z"])),e,t,r,n,-r);return a},aee={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},iee=e=>{var r=k5(e,aee),n=(0,t.useRef)(null),[o,a]=(0,t.useState)(-1);(0,t.useEffect)((()=>{if(n.current&&n.current.getTotalLength)try{var e=n.current.getTotalLength();e&&a(e)}catch(t){}}),[]);var{x:i,y:s,width:l,height:c,radius:u,className:d}=r,{animationEasing:f,animationDuration:p,animationBegin:h,isAnimationActive:m,isUpdateAnimationActive:g}=r,v=(0,t.useRef)(l),y=(0,t.useRef)(c),b=(0,t.useRef)(i),w=(0,t.useRef)(s),x=P7((0,t.useMemo)((()=>({x:i,y:s,width:l,height:c,radius:u})),[i,s,l,c,u]),"rectangle-");if(i!==+i||s!==+s||l!==+l||c!==+c||0===l||0===c)return null;var S=(0,Fh.$)("recharts-rectangle",d);if(!g){var A=M3(r),{radius:k}=A,C=K7(A,H7);return t.createElement("path",Q7({},C,{x:RF(i),y:RF(s),width:RF(l),height:RF(c),radius:"number"===typeof u?u:void 0,className:S,d:oee(i,s,l,c,u)}))}var I=v.current,E=y.current,D=b.current,T=w.current,O="0px ".concat(-1===o?1:o,"px"),M="".concat(o,"px 0px"),P=s7(["strokeDasharray"],p,"string"===typeof f?f:aee.animationEasing);return t.createElement(M7,{animationId:x,key:x,canBegin:o>0,duration:p,easing:f,isActive:g,begin:h},(e=>{var o,a=VF(I,l,e),d=VF(E,c,e),f=VF(D,i,e),p=VF(T,s,e);n.current&&(v.current=a,y.current=d,b.current=f,w.current=p),o=m?e>0?{transition:P,strokeDasharray:M}:{strokeDasharray:O}:{strokeDasharray:M};var h=M3(r),{radius:g}=h,x=K7(h,Y7);return t.createElement("path",Q7({},x,{radius:"number"===typeof u?u:void 0,className:S,d:oee(f,p,a,d,u),ref:n,style:G7(G7({},o),r.style)}))}))};function see(e){var{cx:t,cy:r,radius:n,startAngle:o,endAngle:a}=e;return{points:[y$(t,r,n,o),y$(t,r,n,a)],cx:t,cy:r,radius:n,startAngle:o,endAngle:a}}function lee(){return lee=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},lee.apply(null,arguments)}function cee(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var uee=e=>{var{cx:t,cy:r,radius:n,angle:o,sign:a,isExternal:i,cornerRadius:s,cornerIsExternal:l}=e,c=s*(i?1:-1)+n,u=Math.asin(s/c)/g$,d=l?o:o+a*u,f=l?o-a*u:o;return{center:y$(t,r,c,d),circleTangency:y$(t,r,n,d),lineTangency:y$(t,r,c*Math.cos(u*g$),f),theta:u}},dee=e=>{var{cx:t,cy:r,innerRadius:n,outerRadius:o,startAngle:a,endAngle:i}=e,s=((e,t)=>NF(t-e)*Math.min(Math.abs(t-e),359.999))(a,i),l=a+s,c=y$(t,r,o,a),u=y$(t,r,o,l),d=_F(J7||(J7=cee(["M ",",","\n    A ",",",",0,\n    ",",",",\n    ",",","\n  "])),c.x,c.y,o,o,+(Math.abs(s)>180),+(a>l),u.x,u.y);if(n>0){var f=y$(t,r,n,a),p=y$(t,r,n,l);d+=_F($7||($7=cee(["L ",",","\n            A ",",",",0,\n            ",",",",\n            ",","," Z"])),p.x,p.y,n,n,+(Math.abs(s)>180),+(a<=l),f.x,f.y)}else d+=_F(q7||(q7=cee(["L ",","," Z"])),t,r);return d},fee={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},pee=e=>{var r=k5(e,fee),{cx:n,cy:o,innerRadius:a,outerRadius:i,cornerRadius:s,forceCornerRadius:l,cornerIsExternal:c,startAngle:u,endAngle:d,className:f}=r;if(i<a||u===d)return null;var p,h=(0,Fh.$)("recharts-sector",f),m=i-a,g=HF(s,m,0,!0);return p=g>0&&Math.abs(u-d)<360?(e=>{var{cx:t,cy:r,innerRadius:n,outerRadius:o,cornerRadius:a,forceCornerRadius:i,cornerIsExternal:s,startAngle:l,endAngle:c}=e,u=NF(c-l),{circleTangency:d,lineTangency:f,theta:p}=uee({cx:t,cy:r,radius:o,angle:l,sign:u,cornerRadius:a,cornerIsExternal:s}),{circleTangency:h,lineTangency:m,theta:g}=uee({cx:t,cy:r,radius:o,angle:c,sign:-u,cornerRadius:a,cornerIsExternal:s}),v=s?Math.abs(l-c):Math.abs(l-c)-p-g;if(v<0)return i?_F(eee||(eee=cee(["M ",",","\n        a",",",",0,0,1,",",0\n        a",",",",0,0,1,",",0\n      "])),f.x,f.y,a,a,2*a,a,a,2*-a):dee({cx:t,cy:r,innerRadius:n,outerRadius:o,startAngle:l,endAngle:c});var y=_F(tee||(tee=cee(["M ",",","\n    A",",",",0,0,",",",",","\n    A",",",",0,",",",",",",","\n    A",",",",0,0,",",",",","\n  "])),f.x,f.y,a,a,+(u<0),d.x,d.y,o,o,+(v>180),+(u<0),h.x,h.y,a,a,+(u<0),m.x,m.y);if(n>0){var{circleTangency:b,lineTangency:w,theta:x}=uee({cx:t,cy:r,radius:n,angle:l,sign:u,isExternal:!0,cornerRadius:a,cornerIsExternal:s}),{circleTangency:S,lineTangency:A,theta:k}=uee({cx:t,cy:r,radius:n,angle:c,sign:-u,isExternal:!0,cornerRadius:a,cornerIsExternal:s}),C=s?Math.abs(l-c):Math.abs(l-c)-x-k;if(C<0&&0===a)return"".concat(y,"L").concat(t,",").concat(r,"Z");y+=_F(ree||(ree=cee(["L",",","\n      A",",",",0,0,",",",",","\n      A",",",",0,",",",",",",","\n      A",",",",0,0,",",",",","Z"])),A.x,A.y,a,a,+(u<0),S.x,S.y,n,n,+(C>180),+(u>0),b.x,b.y,a,a,+(u<0),w.x,w.y)}else y+=_F(nee||(nee=cee(["L",",","Z"])),t,r);return y})({cx:n,cy:o,innerRadius:a,outerRadius:i,cornerRadius:Math.min(g,m/2),forceCornerRadius:l,cornerIsExternal:c,startAngle:u,endAngle:d}):dee({cx:n,cy:o,innerRadius:a,outerRadius:i,startAngle:u,endAngle:d}),t.createElement("path",lee({},M3(r),{className:h,d:p}))};function hee(e,t,r){if("horizontal"===e)return[{x:t.x,y:r.top},{x:t.x,y:r.top+r.height}];if("vertical"===e)return[{x:r.left,y:t.y},{x:r.left+r.width,y:t.y}];if(Q6(t)){if("centric"===e){var{cx:n,cy:o,innerRadius:a,outerRadius:i,angle:s}=t,l=y$(n,o,a,s),c=y$(n,o,i,s);return[{x:l.x,y:l.y},{x:c.x,y:c.y}]}return see(t)}}function mee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function gee(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?mee(Object(r),!0).forEach((function(t){vee(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):mee(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function vee(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var yee=()=>{var e=TV(Uq),t=TV(t2),r=TV($1);return eG(e&&r?gee(gee({},e),{},{scale:r}):void 0,t)};function bee(){return bee=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},bee.apply(null,arguments)}function wee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function xee(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?wee(Object(r),!0).forEach((function(t){See(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wee(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function See(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Aee(e){var{cursor:r,cursorComp:n,cursorProps:o}=e;return(0,t.isValidElement)(r)?(0,t.cloneElement)(r,o):(0,t.createElement)(n,o)}function kee(e){var r,n,o,a,{coordinate:i,payload:s,index:l,offset:c,tooltipAxisBandSize:u,layout:d,cursor:f,tooltipEventType:p,chartName:h}=e,m=i,g=s,v=l;if(!f||!m||"ScatterChart"!==h&&"axis"!==p)return null;if("ScatterChart"===h)n=m,o=n7,a=S$.cursorLine;else if("BarChart"===h)n=function(e,t,r,n){var o=n/2;return{stroke:"none",fill:"#ccc",x:"horizontal"===e?t.x-o:r.left+.5,y:"horizontal"===e?r.top+.5:t.y-o,width:"horizontal"===e?n:r.width-1,height:"horizontal"===e?r.height-1:n}}(d,m,c,u),o=iee,a=S$.cursorRectangle;else if("radial"===d&&Q6(m)){var{cx:y,cy:b,radius:w,startAngle:x,endAngle:S}=see(m);n={cx:y,cy:b,startAngle:x,endAngle:S,innerRadius:w,outerRadius:w},o=pee,a=S$.cursorLine}else n={points:hee(d,m,c)},o=J9,a=S$.cursorLine;var A="object"===typeof f&&"className"in f?f.className:void 0,k=xee(xee(xee(xee({stroke:"#ccc",pointerEvents:"none"},c),n),O3(f)),{},{payload:g,payloadIndex:v,className:(0,Fh.$)("recharts-tooltip-cursor",A)});return t.createElement(D6,{zIndex:null!==(r=e.zIndex)&&void 0!==r?r:a},t.createElement(Aee,{cursor:f,cursorComp:o,cursorProps:k}))}function Cee(e){var r=yee(),n=AG(),o=EG(),a=TV(c$);return null==r||null==n||null==o||null==a?null:t.createElement(kee,bee({},e,{offset:n,layout:o,tooltipAxisBandSize:r,chartName:a}))}function Iee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Eee(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Iee(Object(r),!0).forEach((function(t){Dee(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Iee(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Dee(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Tee(e){return e.dataKey}var Oee=[],Mee={allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",axisId:0,contentStyle:{},cursor:!0,filterNull:!0,includeHidden:!1,isAnimationActive:"auto",itemSorter:"name",itemStyle:{},labelStyle:{},offset:10,reverseDirection:{x:!1,y:!1},separator:" : ",trigger:"hover",useTranslate3d:!1,wrapperStyle:{}};function Pee(e){var r,n,o=k5(e,Mee),{active:a,allowEscapeViewBox:i,animationDuration:s,animationEasing:l,content:c,filterNull:u,isAnimationActive:d,offset:f,payloadUniqBy:p,position:h,reverseDirection:m,useTranslate3d:g,wrapperStyle:v,cursor:y,shared:b,trigger:w,defaultIndex:x,portal:S,axisId:A}=o,k=CV(),C="number"===typeof x?String(x):x;(0,t.useEffect)((()=>{k(ZY({shared:b,trigger:w,axisId:A,active:a,defaultIndex:C}))}),[k,b,w,A,a,C]);var I=xG(),E=A3(),D=function(e){return TV((t=>i1(t,e)))}(b),{activeIndex:T,isActive:O}=null!==(r=TV((e=>O2(e,D,w,C))))&&void 0!==r?r:{},M=TV((e=>T2(e,D,w,C))),P=TV((e=>D2(e,D,w,C))),j=TV((e=>E2(e,D,w,C))),R=M,_=(0,t.useContext)(r5),N=null!==(n=null!==a&&void 0!==a?a:O)&&void 0!==n&&n,[L,U]=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],[r,n]=(0,t.useState)({height:0,left:0,top:0,width:0}),o=(0,t.useCallback)((e=>{if(null!=e){var t=e.getBoundingClientRect(),o={height:t.height,left:t.left,top:t.top,width:t.width};(Math.abs(o.height-r.height)>1||Math.abs(o.left-r.left)>1||Math.abs(o.top-r.top)>1||Math.abs(o.width-r.width)>1)&&n({height:o.height,left:o.left,top:o.top,width:o.width})}}),[r.width,r.height,r.top,r.left,...e]);return[r,o]}([R,N]),B="axis"===D?P:void 0;t5(D,w,j,B,T,N);var F=null!==S&&void 0!==S?S:_;if(null==F||null==I||null==D)return null;var z=null!==R&&void 0!==R?R:Oee;N||(z=Oee),u&&z.length&&(z=function(e,t,r){return!0===t?u9()(e,r):"function"===typeof t?u9()(e,t):e}(z.filter((e=>null!=e.value&&(!0!==e.hide||o.includeHidden))),p,Tee));var W=z.length>0,H=t.createElement(l9,{allowEscapeViewBox:i,animationDuration:s,animationEasing:l,isAnimationActive:d,active:N,coordinate:j,hasPayload:W,offset:f,position:h,reverseDirection:m,useTranslate3d:g,viewBox:I,wrapperStyle:v,lastBoundingBox:L,innerRef:U,hasPortalFromProps:Boolean(S)},function(e,r){return t.isValidElement(e)?t.cloneElement(e,r):"function"===typeof e?t.createElement(e,r):t.createElement(e9,r)}(c,Eee(Eee({},o),{},{payload:z,label:B,active:N,activeIndex:T,coordinate:j,accessibilityLayer:E})));return t.createElement(t.Fragment,null,(0,xj.createPortal)(H,F),N&&t.createElement(Cee,{cursor:y,tooltipEventType:D,coordinate:j,payload:z,index:T}))}var jee=r(76667),Ree=r.n(jee),_ee=["valueAccessor"],Nee=["dataKey","clockWise","id","textBreakAll","zIndex"];function Lee(){return Lee=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Lee.apply(null,arguments)}function Uee(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var Bee=e=>Array.isArray(e.value)?Ree()(e.value):e.value,Fee=(0,t.createContext)(void 0),zee=Fee.Provider,Wee=(0,t.createContext)(void 0);Wee.Provider;function Hee(e){var{valueAccessor:r=Bee}=e,n=Uee(e,_ee),{dataKey:o,clockWise:a,id:i,textBreakAll:s,zIndex:l}=n,c=Uee(n,Nee),u=(0,t.useContext)(Fee),d=(0,t.useContext)(Wee),f=u||d;return f&&f.length?t.createElement(D6,{zIndex:null!==l&&void 0!==l?l:S$.label},t.createElement(J5,{className:"recharts-label-list"},f.map(((e,a)=>{var l,u=ZF(o)?r(e,a):HV(e&&e.payload,o),d=ZF(i)?{}:{id:"".concat(i,"-").concat(a)};return t.createElement(V6,Lee({key:"label-".concat(a)},M3(e),c,d,{fill:null!==(l=n.fill)&&void 0!==l?l:e.fill,parentViewBox:e.parentViewBox,value:u,textBreakAll:s,viewBox:e.viewBox,index:a,zIndex:0}))})))):null}function Yee(e){var{label:r}=e;return r?!0===r?t.createElement(Hee,{key:"labelList-implicit"}):t.isValidElement(r)||z6(r)?t.createElement(Hee,{key:"labelList-implicit",content:r}):"object"===typeof r?t.createElement(Hee,Lee({key:"labelList-implicit"},r,{type:String(r.type)})):null:null}function Vee(){return Vee=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Vee.apply(null,arguments)}Hee.displayName="LabelList";var Gee=e=>{var{cx:r,cy:n,r:o,className:a}=e,i=(0,Fh.$)("recharts-dot",a);return BF(r)&&BF(n)&&BF(o)?t.createElement("circle",Vee({},T3(e),K6(e),{className:i,cx:r,cy:n,r:o})):null};var Zee=e=>!e||"object"!==typeof e||!("clipDot"in e)||Boolean(e.clipDot),Qee=["points"];function Kee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Xee(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Kee(Object(r),!0).forEach((function(t){Jee(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Kee(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Jee(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $ee(){return $ee=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},$ee.apply(null,arguments)}function qee(e){var{option:r,dotProps:n,className:o}=e;if((0,t.isValidElement)(r))return(0,t.cloneElement)(r,n);if("function"===typeof r)return r(n);var a=(0,Fh.$)(o,"boolean"!==typeof r?r.className:""),i=null!==n&&void 0!==n?n:{},{points:s}=i,l=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(i,Qee);return t.createElement(Gee,$ee({},l,{className:a}))}function ete(e){var{points:r,dot:n,className:o,dotClassName:a,dataKey:i,baseProps:s,needClip:l,clipPathId:c,zIndex:u=S$.scatter}=e;if(!function(e,t){return null!=e&&(!!t||1===e.length)}(r,n))return null;var d,f=Zee(n),p=null==(d=n)?null:(0,t.isValidElement)(d)?M3(d.props):"object"!==typeof d||Array.isArray(d)?null:M3(d),h=r.map(((e,o)=>{var l,c,u=Xee(Xee(Xee({r:3},s),p),{},{index:o,cx:null!==(l=e.x)&&void 0!==l?l:void 0,cy:null!==(c=e.y)&&void 0!==c?c:void 0,dataKey:i,value:e.value,payload:e.payload,points:r});return t.createElement(qee,{key:"dot-".concat(o),option:n,dotProps:u,className:a})})),m={};return l&&null!=c&&(m.clipPath="url(#clipPath-".concat(f?"":"dots-").concat(c,")")),t.createElement(D6,{zIndex:u},t.createElement(J5,$ee({className:o},m),h))}function tte(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function rte(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?tte(Object(r),!0).forEach((function(t){nte(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):tte(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function nte(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var ote=e=>{var{point:r,childIndex:n,mainColor:o,activeDot:a,dataKey:i,clipPath:s}=e;if(!1===a||null==r.x||null==r.y)return null;var l,c=rte(rte(rte({},{index:n,dataKey:i,cx:r.x,cy:r.y,r:4,fill:null!==o&&void 0!==o?o:"none",strokeWidth:2,stroke:"#fff",payload:r.payload,value:r.value}),O3(a)),K6(a));return l=(0,t.isValidElement)(a)?(0,t.cloneElement)(a,c):"function"===typeof a?a(c):t.createElement(Gee,c),t.createElement(J5,{className:"recharts-active-dot",clipPath:s},l)};function ate(e){var{points:r,mainColor:n,activeDot:o,itemDataKey:a,clipPath:i,zIndex:s=S$.activeDot}=e,l=TV(i2),c=TV(h2);if(null==r||null==c)return null;var u=r.find((e=>c.includes(e.payload)));return ZF(u)?null:t.createElement(D6,{zIndex:s},t.createElement(ote,{point:u,childIndex:Number(l),mainColor:n,dataKey:a,activeDot:o,clipPath:i}))}function ite(e){var{tooltipEntrySettings:r}=e,n=CV(),o=gG(),a=(0,t.useRef)(null);return(0,t.useLayoutEffect)((()=>{o||(null===a.current?n(YY(r)):a.current!==r&&n(VY({prev:a.current,next:r})),a.current=r)}),[r,n,o]),(0,t.useLayoutEffect)((()=>()=>{a.current&&(n(GY(a.current)),a.current=null)}),[n]),null}var ste=["children"];var lte={data:[],xAxisId:"xAxis-0",yAxisId:"yAxis-0",dataPointFormatter:()=>({x:0,y:0,value:0}),errorBarOffset:0},cte=(0,t.createContext)(lte);function ute(e){var{children:r}=e,n=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,ste);return t.createElement(cte.Provider,{value:n},r)}function dte(e,t){var r,n,o=TV((t=>dq(t,e))),a=TV((e=>hq(e,t))),i=null!==(r=null===o||void 0===o?void 0:o.allowDataOverflow)&&void 0!==r?r:cq.allowDataOverflow,s=null!==(n=null===a||void 0===a?void 0:a.allowDataOverflow)&&void 0!==n?n:fq.allowDataOverflow;return{needClip:i||s,needClipX:i,needClipY:s}}function fte(e){var{xAxisId:r,yAxisId:n,clipPathId:o}=e,a=v5(),{needClipX:i,needClipY:s,needClip:l}=dte(r,n);if(!l||!a)return null;var{x:c,y:u,width:d,height:f}=a;return t.createElement("clipPath",{id:"clipPath-".concat(o)},t.createElement("rect",{x:i?c:c-d/2,y:s?u:u-f/2,width:i?d:2*d,height:s?f:2*f}))}var pte=(e,t,r,n)=>e1(e,"xAxis",t,n),hte=(e,t,r,n)=>q0(e,"xAxis",t,n),mte=(e,t,r,n)=>e1(e,"yAxis",r,n),gte=(e,t,r,n)=>q0(e,"yAxis",r,n),vte=wV([IG,pte,mte,hte,gte],((e,t,r,n,o)=>YV(e,"xAxis")?eG(t,n,!1):eG(r,o,!1)));function yte(e){return"line"===e.type}var bte,wte=wV([xq,(e,t,r,n,o)=>o],((e,t)=>e.filter(yte).find((e=>e.id===t)))),xte=wV([IG,pte,mte,hte,gte,wte,vte,zJ],((e,t,r,n,o,a,i,s)=>{var{chartData:l,dataStartIndex:c,dataEndIndex:u}=s;if(null!=a&&null!=t&&null!=r&&null!=n&&null!=o&&0!==n.length&&0!==o.length&&null!=i&&("horizontal"===e||"vertical"===e)){var d,{dataKey:f,data:p}=a;if(null!=(d=null!=p&&p.length>0?p:null===l||void 0===l?void 0:l.slice(c,u+1)))return function(e){var{layout:t,xAxis:r,yAxis:n,xAxisTicks:o,yAxisTicks:a,dataKey:i,bandSize:s,displayedData:l}=e;return l.map(((e,l)=>{var c=HV(e,i);if("horizontal"===t)return{x:XV({axis:r,ticks:o,bandSize:s,entry:e,index:l}),y:ZF(c)?null:n.scale(c),value:c,payload:e};var u=ZF(c)?null:r.scale(c),d=XV({axis:n,ticks:a,bandSize:s,entry:e,index:l});return null==u||null==d?null:{x:u,y:d,value:c,payload:e}})).filter(Boolean)}({layout:e,xAxis:t,yAxis:r,xAxisTicks:n,yAxisTicks:o,dataKey:f,bandSize:i,displayedData:d})}}));function Ste(e){var{legendPayload:r}=e,n=CV(),o=gG(),a=(0,t.useRef)(null);return(0,t.useLayoutEffect)((()=>{o||(null===a.current?n(A4(r)):a.current!==r&&n(k4({prev:a.current,next:r})),a.current=r)}),[n,o,r]),(0,t.useLayoutEffect)((()=>()=>{a.current&&(n(C4(a.current)),a.current=null)}),[n]),null}var Ate=null!==(bte=n["useId".toString()])&&void 0!==bte?bte:()=>{var[e]=t.useState((()=>WF("uid-")));return e};var kte=(0,t.createContext)(void 0),Cte=e=>{var{id:r,type:n,children:o}=e,a=function(e,t){var r=Ate();return t||(e?"".concat(e,"-").concat(r):r)}("recharts-".concat(n),r);return t.createElement(kte.Provider,{value:a},o(a))};var Ite=e=>{var r=CV(),n=(0,t.useRef)(null);return(0,t.useLayoutEffect)((()=>{null===n.current?r(r4(e)):n.current!==e&&r(n4({prev:n.current,next:e})),n.current=e}),[r,e]),(0,t.useLayoutEffect)((()=>()=>{n.current&&(r(o4(n.current)),n.current=null)}),[r]),null},Ete=(0,t.memo)(Ite);var Dte,Tte,Ote,Mte,Pte,jte=r(52540),Rte=r.n(jte);function _te(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Nte(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?_te(Object(r),!0).forEach((function(t){Lte(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_te(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Lte(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ute(){return Ute=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Ute.apply(null,arguments)}function Bte(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var Fte=(e,t,r,n,o)=>{var a,i=r-n;return a=_F(Dte||(Dte=Bte(["M ",",",""])),e,t),a+=_F(Tte||(Tte=Bte(["L ",",",""])),e+r,t),a+=_F(Ote||(Ote=Bte(["L ",",",""])),e+r-i/2,t+o),a+=_F(Mte||(Mte=Bte(["L ",",",""])),e+r-i/2-n,t+o),a+=_F(Pte||(Pte=Bte(["L ",","," Z"])),e,t)},zte={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},Wte=e=>{var r=k5(e,zte),{x:n,y:o,upperWidth:a,lowerWidth:i,height:s,className:l}=r,{animationEasing:c,animationDuration:u,animationBegin:d,isUpdateAnimationActive:f}=r,p=(0,t.useRef)(null),[h,m]=(0,t.useState)(-1),g=(0,t.useRef)(a),v=(0,t.useRef)(i),y=(0,t.useRef)(s),b=(0,t.useRef)(n),w=(0,t.useRef)(o),x=P7(e,"trapezoid-");if((0,t.useEffect)((()=>{if(p.current&&p.current.getTotalLength)try{var e=p.current.getTotalLength();e&&m(e)}catch(t){}}),[]),n!==+n||o!==+o||a!==+a||i!==+i||s!==+s||0===a&&0===i||0===s)return null;var S=(0,Fh.$)("recharts-trapezoid",l);if(!f)return t.createElement("g",null,t.createElement("path",Ute({},M3(r),{className:S,d:Fte(n,o,a,i,s)})));var A=g.current,k=v.current,C=y.current,I=b.current,E=w.current,D="0px ".concat(-1===h?1:h,"px"),T="".concat(h,"px 0px"),O=s7(["strokeDasharray"],u,c);return t.createElement(M7,{animationId:x,key:x,canBegin:h>0,duration:u,easing:c,isActive:f,begin:d},(e=>{var l=VF(A,a,e),c=VF(k,i,e),u=VF(C,s,e),d=VF(I,n,e),f=VF(E,o,e);p.current&&(g.current=l,v.current=c,y.current=u,b.current=d,w.current=f);var h=e>0?{transition:O,strokeDasharray:T}:{strokeDasharray:D};return t.createElement("path",Ute({},M3(r),{className:S,d:Fte(d,f,l,c,u),ref:p,style:Nte(Nte({},h),r.style)}))}))};Math.abs,Math.atan2;const Hte=Math.cos,Yte=(Math.max,Math.min,Math.sin),Vte=Math.sqrt,Gte=Math.PI,Zte=2*Gte;const Qte={draw(e,t){const r=Vte(t/Gte);e.moveTo(r,0),e.arc(0,0,r,0,Zte)}},Kte={draw(e,t){const r=Vte(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}},Xte=Vte(1/3),Jte=2*Xte,$te={draw(e,t){const r=Vte(t/Jte),n=r*Xte;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},qte={draw(e,t){const r=Vte(t),n=-r/2;e.rect(n,n,r,r)}},ere=Yte(Gte/10)/Yte(7*Gte/10),tre=Yte(Zte/10)*ere,rre=-Hte(Zte/10)*ere,nre={draw(e,t){const r=Vte(.8908130915292852*t),n=tre*r,o=rre*r;e.moveTo(0,-r),e.lineTo(n,o);for(let a=1;a<5;++a){const t=Zte*a/5,i=Hte(t),s=Yte(t);e.lineTo(s*r,-i*r),e.lineTo(i*n-s*o,s*n+i*o)}e.closePath()}},ore=Vte(3),are={draw(e,t){const r=-Vte(t/(3*ore));e.moveTo(0,2*r),e.lineTo(-ore*r,-r),e.lineTo(ore*r,-r),e.closePath()}},ire=-.5,sre=Vte(3)/2,lre=1/Vte(12),cre=3*(lre/2+1),ure={draw(e,t){const r=Vte(t/cre),n=r/2,o=r*lre,a=n,i=r*lre+r,s=-a,l=i;e.moveTo(n,o),e.lineTo(a,i),e.lineTo(s,l),e.lineTo(ire*n-sre*o,sre*n+ire*o),e.lineTo(ire*a-sre*i,sre*a+ire*i),e.lineTo(ire*s-sre*l,sre*s+ire*l),e.lineTo(ire*n+sre*o,ire*o-sre*n),e.lineTo(ire*a+sre*i,ire*i-sre*a),e.lineTo(ire*s+sre*l,ire*l-sre*s),e.closePath()}};Vte(3),Vte(3);var dre=["type","size","sizeType"];function fre(){return fre=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},fre.apply(null,arguments)}function pre(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function hre(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?pre(Object(r),!0).forEach((function(t){mre(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):pre(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function mre(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var gre={symbolCircle:Qte,symbolCross:Kte,symbolDiamond:$te,symbolSquare:qte,symbolStar:nre,symbolTriangle:are,symbolWye:ure},vre=Math.PI/180,yre=e=>{var{type:r="circle",size:n=64,sizeType:o="area"}=e,a=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,dre),i=hre(hre({},a),{},{type:r,size:n,sizeType:o}),s="circle";"string"===typeof r&&(s=r);var{className:l,cx:c,cy:u}=i,d=M3(i);return BF(c)&&BF(u)&&BF(n)?t.createElement("path",fre({},d,{className:(0,Fh.$)("recharts-symbols",l),transform:"translate(".concat(c,", ").concat(u,")"),d:(()=>{var e=(e=>{var t="symbol".concat(QF(e));return gre[t]||Qte})(s),t=function(e,t){let r=null,n=N9(o);function o(){let o;if(r||(r=o=n()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),o)return r=null,o+""||null}return e="function"===typeof e?e:_V(e||Qte),t="function"===typeof t?t:_V(void 0===t?64:+t),o.type=function(t){return arguments.length?(e="function"===typeof t?t:_V(t),o):e},o.size=function(e){return arguments.length?(t="function"===typeof e?e:_V(+e),o):t},o.context=function(e){return arguments.length?(r=null==e?null:e,o):r},o}().type(e).size(((e,t,r)=>{if("area"===t)return e;switch(r){case"cross":return 5*e*e/9;case"diamond":return.5*e*e/Math.sqrt(3);case"square":return e*e;case"star":var n=18*vre;return 1.25*e*e*(Math.tan(n)-Math.tan(2*n)*Math.tan(n)**2);case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}})(n,o,s)),r=t();if(null!==r)return r})()})):null};yre.registerSymbol=(e,t)=>{gre["symbol".concat(QF(e))]=t};var bre=["option","shapeType","activeClassName"];function wre(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function xre(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?wre(Object(r),!0).forEach((function(t){Sre(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wre(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Sre(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Are(e){var{shapeType:r,elementProps:n}=e;switch(r){case"rectangle":return t.createElement(iee,n);case"trapezoid":return t.createElement(Wte,n);case"sector":return t.createElement(pee,n);case"symbols":if(function(e){return"symbols"===e}(r))return t.createElement(yre,n);break;case"curve":return t.createElement(J9,n);default:return null}}function kre(e){var r,{option:n,shapeType:o,activeClassName:a="recharts-active-shape"}=e,i=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,bre);if((0,t.isValidElement)(n))r=(0,t.cloneElement)(n,xre(xre({},i),function(e){return(0,t.isValidElement)(e)?e.props:e}(n)));else if("function"===typeof n)r=n(i,i.index);else if(Rte()(n)&&"boolean"!==typeof n){var s=function(e,t){return xre(xre({},t),e)}(n,i);r=t.createElement(Are,{shapeType:o,elementProps:s})}else{var l=i;r=t.createElement(Are,{shapeType:o,elementProps:l})}return i.isActive?t.createElement(J5,{className:a},r):r}var Cre=["id"],Ire=["type","layout","connectNulls","needClip","shape"],Ere=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function Dre(){return Dre=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Dre.apply(null,arguments)}function Tre(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ore(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Tre(Object(r),!0).forEach((function(t){Mre(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Tre(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Mre(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Pre(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var jre=e=>{var{dataKey:t,name:r,stroke:n,legendType:o,hide:a}=e;return[{inactive:a,dataKey:t,type:o,color:n,value:rG(r,t),payload:e}]},Rre=t.memo((e=>{var{dataKey:r,data:n,stroke:o,strokeWidth:a,fill:i,name:s,hide:l,unit:c,tooltipType:u,id:d}=e,f={dataDefinedOnItem:n,positions:void 0,settings:{stroke:o,strokeWidth:a,fill:i,dataKey:r,nameKey:void 0,name:rG(s,r),hide:l,type:u,color:o,unit:c,graphicalItemId:d}};return t.createElement(ite,{tooltipEntrySettings:f})})),_re=(e,t)=>"".concat(t,"px ").concat(e-t,"px");function Nre(e,t){for(var r=e.length%2!==0?[...e,0]:e,n=[],o=0;o<t;++o)n=[...n,...r];return n}function Lre(e){var{clipPathId:r,points:n,props:o}=e,{dot:a,dataKey:i,needClip:s}=o,{id:l}=o,c=T3(Pre(o,Cre));return t.createElement(ete,{points:n,dot:a,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:i,baseProps:c,needClip:s,clipPathId:r})}function Ure(e){var{showLabels:r,children:n,points:o}=e,a=(0,t.useMemo)((()=>null===o||void 0===o?void 0:o.map((e=>{var t,r,n={x:null!==(t=e.x)&&void 0!==t?t:0,y:null!==(r=e.y)&&void 0!==r?r:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Ore(Ore({},n),{},{value:e.value,payload:e.payload,viewBox:n,parentViewBox:void 0,fill:void 0})}))),[o]);return t.createElement(zee,{value:r?a:void 0},n)}function Bre(e){var{clipPathId:r,pathRef:n,points:o,strokeDasharray:a,props:i}=e,{type:s,layout:l,connectNulls:c,needClip:u,shape:d}=i,f=Ore(Ore({},M3(Pre(i,Ire))),{},{fill:"none",className:"recharts-line-curve",clipPath:u?"url(#clipPath-".concat(r,")"):void 0,points:o,type:s,layout:l,connectNulls:c,strokeDasharray:null!==a&&void 0!==a?a:i.strokeDasharray});return t.createElement(t.Fragment,null,(null===o||void 0===o?void 0:o.length)>1&&t.createElement(kre,Dre({shapeType:"curve",option:d},f,{pathRef:n})),t.createElement(Lre,{points:o,clipPathId:r,props:i}))}function Fre(e){var{clipPathId:r,props:n,pathRef:o,previousPointsRef:a,longestAnimatedLengthRef:i}=e,{points:s,strokeDasharray:l,isAnimationActive:c,animationBegin:u,animationDuration:d,animationEasing:f,animateNewValues:p,width:h,height:m,onAnimationEnd:g,onAnimationStart:v}=n,y=a.current,b=P7(s,"recharts-line-"),w=(0,t.useRef)(b),[x,S]=(0,t.useState)(!1),A=!x,k=(0,t.useCallback)((()=>{"function"===typeof g&&g(),S(!1)}),[g]),C=(0,t.useCallback)((()=>{"function"===typeof v&&v(),S(!0)}),[v]),I=function(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch(t){return 0}}(o.current),E=(0,t.useRef)(0);w.current!==b&&(E.current=i.current,w.current=b);var D=E.current;return t.createElement(Ure,{points:s,showLabels:A},n.children,t.createElement(M7,{animationId:b,begin:u,duration:d,isActive:c,easing:f,onAnimationEnd:k,onAnimationStart:C,key:b},(e=>{var u,d=VF(D,I+D,e),f=Math.min(d,I);if(c)if(l){var g="".concat(l).split(/[,\s]+/gim).map((e=>parseFloat(e)));u=((e,t,r)=>{var n=r.reduce(((e,t)=>e+t));if(!n)return _re(t,e);for(var o=Math.floor(e/n),a=e%n,i=t-e,s=[],l=0,c=0;l<r.length;c+=r[l],++l)if(c+r[l]>a){s=[...r.slice(0,l),a-c];break}var u=s.length%2===0?[0,i]:[i];return[...Nre(r,o),...s,...u].map((e=>"".concat(e,"px"))).join(", ")})(f,I,g)}else u=_re(I,f);else u=null==l?void 0:String(l);if(e>0&&I>0&&(a.current=s,i.current=Math.max(i.current,f)),y){var v=y.length/s.length,b=1===e?s:s.map(((t,r)=>{var n=Math.floor(r*v);if(y[n]){var o=y[n];return Ore(Ore({},t),{},{x:VF(o.x,t.x,e),y:VF(o.y,t.y,e)})}return Ore(Ore({},t),{},p?{x:VF(2*h,t.x,e),y:VF(m/2,t.y,e)}:{x:t.x,y:t.y})}));return a.current=b,t.createElement(Bre,{props:n,points:b,clipPathId:r,pathRef:o,strokeDasharray:u})}return t.createElement(Bre,{props:n,points:s,clipPathId:r,pathRef:o,strokeDasharray:u})})),t.createElement(Yee,{label:n.label}))}function zre(e){var{clipPathId:r,props:n}=e,o=(0,t.useRef)(null),a=(0,t.useRef)(0),i=(0,t.useRef)(null);return t.createElement(Fre,{props:n,clipPathId:r,previousPointsRef:o,longestAnimatedLengthRef:a,pathRef:i})}var Wre=(e,t)=>{var r,n;return{x:null!==(r=e.x)&&void 0!==r?r:void 0,y:null!==(n=e.y)&&void 0!==n?n:void 0,value:e.value,errorVal:HV(e.payload,t)}};class Hre extends t.Component{render(){var{hide:e,dot:r,points:n,className:o,xAxisId:a,yAxisId:i,top:s,left:l,width:c,height:u,id:d,needClip:f,zIndex:p}=this.props;if(e)return null;var h=(0,Fh.$)("recharts-line",o),m=d,{r:g,strokeWidth:v}=function(e){var t=O3(e);if(null!=t){var{r:r,strokeWidth:n}=t,o=Number(r),a=Number(n);return(Number.isNaN(o)||o<0)&&(o=3),(Number.isNaN(a)||a<0)&&(a=2),{r:o,strokeWidth:a}}return{r:3,strokeWidth:2}}(r),y=Zee(r),b=2*g+v,w=f?"url(#clipPath-".concat(y?"":"dots-").concat(m,")"):void 0;return t.createElement(D6,{zIndex:p},t.createElement(J5,{className:h},f&&t.createElement("defs",null,t.createElement(fte,{clipPathId:m,xAxisId:a,yAxisId:i}),!y&&t.createElement("clipPath",{id:"clipPath-dots-".concat(m)},t.createElement("rect",{x:l-b/2,y:s-b/2,width:c+b,height:u+b}))),t.createElement(ute,{xAxisId:a,yAxisId:i,data:n,dataPointFormatter:Wre,errorBarOffset:0},t.createElement(zre,{props:this.props,clipPathId:m}))),t.createElement(ate,{activeDot:this.props.activeDot,points:n,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:w}))}}var Yre={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:S$.line,type:"linear"};function Vre(e){var r=k5(e,Yre),{activeDot:n,animateNewValues:o,animationBegin:a,animationDuration:i,animationEasing:s,connectNulls:l,dot:c,hide:u,isAnimationActive:d,label:f,legendType:p,xAxisId:h,yAxisId:m,id:g}=r,v=Pre(r,Ere),{needClip:y}=dte(h,m),b=v5(),w=EG(),x=gG(),S=TV((e=>xte(e,h,m,x,g)));if("horizontal"!==w&&"vertical"!==w||null==S||null==b)return null;var{height:A,width:k,x:C,y:I}=b;return t.createElement(Hre,Dre({},v,{id:g,connectNulls:l,dot:c,activeDot:n,animateNewValues:o,animationBegin:a,animationDuration:i,animationEasing:s,isAnimationActive:d,hide:u,label:f,legendType:p,xAxisId:h,yAxisId:m,points:S,layout:w,height:A,width:k,left:C,top:I,needClip:y}))}function Gre(e){var r=k5(e,Yre),n=gG();return t.createElement(Cte,{id:r.id,type:"line"},(e=>t.createElement(t.Fragment,null,t.createElement(Ste,{legendPayload:jre(r)}),t.createElement(Rre,{dataKey:r.dataKey,data:r.data,stroke:r.stroke,strokeWidth:r.strokeWidth,fill:r.fill,name:r.name,hide:r.hide,unit:r.unit,tooltipType:r.tooltipType,id:e}),t.createElement(Ete,{type:"line",id:e,data:r.data,xAxisId:r.xAxisId,yAxisId:r.yAxisId,zAxisId:0,dataKey:r.dataKey,hide:r.hide,isPanorama:n}),t.createElement(Vre,Dre({},r,{id:e})))))}var Zre=t.memo(Gre,b3);function Qre(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Kre(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Qre(Object(r),!0).forEach((function(t){Xre(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Qre(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Xre(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Zre.displayName="Line";var Jre=["Webkit","Moz","O","ms"],$re=(0,t.createContext)((()=>{}));function qre(){return qre=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},qre.apply(null,arguments)}function ene(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function tne(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ene(Object(r),!0).forEach((function(t){rne(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ene(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function rne(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function nne(e){var{x:r,y:n,width:o,height:a,stroke:i}=e,s=Math.floor(n+a/2)-1;return t.createElement(t.Fragment,null,t.createElement("rect",{x:r,y:n,width:o,height:a,fill:i,stroke:"none"}),t.createElement("line",{x1:r+1,y1:s,x2:r+o-1,y2:s,fill:"none",stroke:"#fff"}),t.createElement("line",{x1:r+1,y1:s+2,x2:r+o-1,y2:s+2,fill:"none",stroke:"#fff"}))}function one(e){var{travellerProps:r,travellerType:n}=e;return t.isValidElement(n)?t.cloneElement(n,r):"function"===typeof n?n(r):t.createElement(nne,r)}function ane(e){var r,n,{otherProps:o,travellerX:a,id:i,onMouseEnter:s,onMouseLeave:l,onMouseDown:c,onTouchStart:u,onTravellerMoveKeyboard:d,onFocus:f,onBlur:p}=e,{y:h,x:m,travellerWidth:g,height:v,traveller:y,ariaLabel:b,data:w,startIndex:x,endIndex:S}=o,A=Math.max(a,m),k=tne(tne({},T3(o)),{},{x:A,y:h,width:g,height:v}),C=b||"Min value: ".concat(null===(r=w[x])||void 0===r?void 0:r.name,", Max value: ").concat(null===(n=w[S])||void 0===n?void 0:n.name);return t.createElement(J5,{tabIndex:0,role:"slider","aria-label":C,"aria-valuenow":a,className:"recharts-brush-traveller",onMouseEnter:s,onMouseLeave:l,onMouseDown:c,onTouchStart:u,onKeyDown:e=>{["ArrowLeft","ArrowRight"].includes(e.key)&&(e.preventDefault(),e.stopPropagation(),d("ArrowRight"===e.key?1:-1,i))},onFocus:f,onBlur:p,style:{cursor:"col-resize"}},t.createElement(one,{travellerType:y,travellerProps:k}))}function ine(e){var{index:t,data:r,tickFormatter:n,dataKey:o}=e,a=HV(r[t],o,t);return"function"===typeof n?n(a,t):a}function sne(e,t){for(var r=0,n=e.length-1;n-r>1;){var o=Math.floor((r+n)/2);e[o]>t?n=o:r=o}return t>=e[n]?n:r}function lne(e){var{startX:t,endX:r,scaleValues:n,gap:o,data:a}=e,i=a.length-1,s=Math.min(t,r),l=Math.max(t,r),c=sne(n,s),u=sne(n,l);return{startIndex:c-c%o,endIndex:u===i?i:u-u%o}}function cne(e){var{x:r,y:n,width:o,height:a,fill:i,stroke:s}=e;return t.createElement("rect",{stroke:s,fill:i,x:r,y:n,width:o,height:a})}function une(e){var{startIndex:r,endIndex:n,y:o,height:a,travellerWidth:i,stroke:s,tickFormatter:l,dataKey:c,data:u,startX:d,endX:f}=e,p={pointerEvents:"none",fill:s};return t.createElement(J5,{className:"recharts-brush-texts"},t.createElement(E6,qre({textAnchor:"end",verticalAnchor:"middle",x:Math.min(d,f)-5,y:o+a/2},p),ine({index:r,tickFormatter:l,dataKey:c,data:u})),t.createElement(E6,qre({textAnchor:"start",verticalAnchor:"middle",x:Math.max(d,f)+i+5,y:o+a/2},p),ine({index:n,tickFormatter:l,dataKey:c,data:u})))}function dne(e){var{y:r,height:n,stroke:o,travellerWidth:a,startX:i,endX:s,onMouseEnter:l,onMouseLeave:c,onMouseDown:u,onTouchStart:d}=e,f=Math.min(i,s)+a,p=Math.max(Math.abs(s-i)-a,0);return t.createElement("rect",{className:"recharts-brush-slide",onMouseEnter:l,onMouseLeave:c,onMouseDown:u,onTouchStart:d,style:{cursor:"move"},stroke:"none",fill:o,fillOpacity:.2,x:f,y:r,width:p,height:n})}function fne(e){var{x:r,y:n,width:o,height:a,data:i,children:s,padding:l}=e;if(!(1===t.Children.count(s)))return null;var c=t.Children.only(s);return c?t.cloneElement(c,{x:r,y:n,width:o,height:a,margin:l,compact:!0,data:i}):null}var pne=e=>e.changedTouches&&!!e.changedTouches.length;class hne extends t.PureComponent{constructor(e){super(e),rne(this,"handleDrag",(e=>{this.leaveTimer&&(clearTimeout(this.leaveTimer),this.leaveTimer=null),this.state.isTravellerMoving?this.handleTravellerMove(e):this.state.isSlideMoving&&this.handleSlideDrag(e)})),rne(this,"handleTouchMove",(e=>{null!=e.changedTouches&&e.changedTouches.length>0&&this.handleDrag(e.changedTouches[0])})),rne(this,"handleDragEnd",(()=>{this.setState({isTravellerMoving:!1,isSlideMoving:!1},(()=>{var{endIndex:e,onDragEnd:t,startIndex:r}=this.props;null===t||void 0===t||t({endIndex:e,startIndex:r})})),this.detachDragEndListener()})),rne(this,"handleLeaveWrapper",(()=>{(this.state.isTravellerMoving||this.state.isSlideMoving)&&(this.leaveTimer=window.setTimeout(this.handleDragEnd,this.props.leaveTimeOut))})),rne(this,"handleEnterSlideOrTraveller",(()=>{this.setState({isTextActive:!0})})),rne(this,"handleLeaveSlideOrTraveller",(()=>{this.setState({isTextActive:!1})})),rne(this,"handleSlideDragStart",(e=>{var t=pne(e)?e.changedTouches[0]:e;this.setState({isTravellerMoving:!1,isSlideMoving:!0,slideMoveStartX:t.pageX}),this.attachDragEndListener()})),rne(this,"handleTravellerMoveKeyboard",((e,t)=>{var{data:r,gap:n,startIndex:o,endIndex:a}=this.props,{scaleValues:i,startX:s,endX:l}=this.state;if(null!=i){var c=-1;if("startX"===t?c=o:"endX"===t&&(c=a),!(c<0||c>=r.length)){var u=c+e;if(!(-1===u||u>=i.length)){var d=i[u];"startX"===t&&d>=l||"endX"===t&&d<=s||this.setState({[t]:d},(()=>{this.props.onChange(lne({startX:this.state.startX,endX:this.state.endX,data:r,gap:n,scaleValues:i}))}))}}}})),this.travellerDragStartHandlers={startX:this.handleTravellerDragStart.bind(this,"startX"),endX:this.handleTravellerDragStart.bind(this,"endX")},this.state={brushMoveStartX:0,movingTravellerId:void 0,endX:0,startX:0,slideMoveStartX:0}}static getDerivedStateFromProps(e,t){var{data:r,width:n,x:o,travellerWidth:a,startIndex:i,endIndex:s,startIndexControlledFromProps:l,endIndexControlledFromProps:c}=e;if(r!==t.prevData)return tne({prevData:r,prevTravellerWidth:a,prevX:o,prevWidth:n},r&&r.length?(e=>{var{data:t,startIndex:r,endIndex:n,x:o,width:a,travellerWidth:i}=e;if(!t||!t.length)return{};var s=t.length,l=WG().domain(OG()(0,s)).range([o,o+a-i]),c=l.domain().map((e=>l(e))).filter(KF);return{isTextActive:!1,isSlideMoving:!1,isTravellerMoving:!1,isTravellerFocused:!1,startX:l(r),endX:l(n),scale:l,scaleValues:c}})({data:r,width:n,x:o,travellerWidth:a,startIndex:i,endIndex:s}):{scale:void 0,scaleValues:void 0});var u=t.scale;if(u&&(n!==t.prevWidth||o!==t.prevX||a!==t.prevTravellerWidth)){u.range([o,o+n-a]);var d=u.domain().map((e=>u(e))).filter((e=>null!=e));return{prevData:r,prevTravellerWidth:a,prevX:o,prevWidth:n,startX:u(e.startIndex),endX:u(e.endIndex),scaleValues:d}}if(t.scale&&!t.isSlideMoving&&!t.isTravellerMoving&&!t.isTravellerFocused&&!t.isTextActive){if(null!=l&&t.prevStartIndexControlledFromProps!==l)return{startX:t.scale(l),prevStartIndexControlledFromProps:l};if(null!=c&&t.prevEndIndexControlledFromProps!==c)return{endX:t.scale(c),prevEndIndexControlledFromProps:c}}return null}componentWillUnmount(){this.leaveTimer&&(clearTimeout(this.leaveTimer),this.leaveTimer=null),this.detachDragEndListener()}attachDragEndListener(){window.addEventListener("mouseup",this.handleDragEnd,!0),window.addEventListener("touchend",this.handleDragEnd,!0),window.addEventListener("mousemove",this.handleDrag,!0)}detachDragEndListener(){window.removeEventListener("mouseup",this.handleDragEnd,!0),window.removeEventListener("touchend",this.handleDragEnd,!0),window.removeEventListener("mousemove",this.handleDrag,!0)}handleSlideDrag(e){var{slideMoveStartX:t,startX:r,endX:n,scaleValues:o}=this.state;if(null!=o){var{x:a,width:i,travellerWidth:s,startIndex:l,endIndex:c,onChange:u,data:d,gap:f}=this.props,p=e.pageX-t;p>0?p=Math.min(p,a+i-s-n,a+i-s-r):p<0&&(p=Math.max(p,a-r,a-n));var h=lne({startX:r+p,endX:n+p,data:d,gap:f,scaleValues:o});h.startIndex===l&&h.endIndex===c||!u||u(h),this.setState({startX:r+p,endX:n+p,slideMoveStartX:e.pageX})}}handleTravellerDragStart(e,t){var r=pne(t)?t.changedTouches[0]:t;this.setState({isSlideMoving:!1,isTravellerMoving:!0,movingTravellerId:e,brushMoveStartX:r.pageX}),this.attachDragEndListener()}handleTravellerMove(e){var{brushMoveStartX:t,movingTravellerId:r,endX:n,startX:o,scaleValues:a}=this.state;if(null!=r&&null!=a){var i=this.state[r],{x:s,width:l,travellerWidth:c,onChange:u,gap:d,data:f}=this.props,p={startX:this.state.startX,endX:this.state.endX,data:f,gap:d,scaleValues:a},h=e.pageX-t;h>0?h=Math.min(h,s+l-c-i):h<0&&(h=Math.max(h,s-i)),p[r]=i+h;var m=lne(p),{startIndex:g,endIndex:v}=m;this.setState({[r]:i+h,brushMoveStartX:e.pageX},(()=>{u&&(()=>{var e=f.length-1;return"startX"===r&&(n>o?g%d===0:v%d===0)||n<o&&v===e||"endX"===r&&(n>o?v%d===0:g%d===0)||n>o&&v===e})()&&u(m)}))}}render(){var{data:e,className:r,children:n,x:o,y:a,dy:i,width:s,height:l,alwaysShowText:c,fill:u,stroke:d,startIndex:f,endIndex:p,travellerWidth:h,tickFormatter:m,dataKey:g,padding:v}=this.props,{startX:y,endX:b,isTextActive:w,isSlideMoving:x,isTravellerMoving:S,isTravellerFocused:A}=this.state;if(!e||!e.length||!BF(o)||!BF(a)||!BF(s)||!BF(l)||s<=0||l<=0)return null;var k=(0,Fh.$)("recharts-brush",r),C=((e,t)=>{if(e){var r=e.replace(/(\w)/,(e=>e.toUpperCase())),n=Jre.reduce(((e,n)=>Kre(Kre({},e),{},{[n+r]:t})),{});return n[e]=t,n}})("userSelect","none"),I=a+(null!==i&&void 0!==i?i:0);return t.createElement(J5,{className:k,onMouseLeave:this.handleLeaveWrapper,onTouchMove:this.handleTouchMove,style:C},t.createElement(cne,{x:o,y:I,width:s,height:l,fill:u,stroke:d}),t.createElement(vG,null,t.createElement(fne,{x:o,y:I,width:s,height:l,data:e,padding:v},n)),t.createElement(dne,{y:I,height:l,stroke:d,travellerWidth:h,startX:y,endX:b,onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.handleSlideDragStart,onTouchStart:this.handleSlideDragStart}),t.createElement(ane,{travellerX:y,id:"startX",otherProps:tne(tne({},this.props),{},{y:I}),onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.travellerDragStartHandlers.startX,onTouchStart:this.travellerDragStartHandlers.startX,onTravellerMoveKeyboard:this.handleTravellerMoveKeyboard,onFocus:()=>{this.setState({isTravellerFocused:!0})},onBlur:()=>{this.setState({isTravellerFocused:!1})}}),t.createElement(ane,{travellerX:b,id:"endX",otherProps:tne(tne({},this.props),{},{y:I}),onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.travellerDragStartHandlers.endX,onTouchStart:this.travellerDragStartHandlers.endX,onTravellerMoveKeyboard:this.handleTravellerMoveKeyboard,onFocus:()=>{this.setState({isTravellerFocused:!0})},onBlur:()=>{this.setState({isTravellerFocused:!1})}}),(w||x||S||A||c)&&t.createElement(une,{startIndex:f,endIndex:p,y:I,height:l,travellerWidth:h,stroke:d,tickFormatter:m,dataKey:g,data:e,startX:y,endX:b}))}}function mne(e){var r=CV(),n=TV(g3),o=TV(v3),a=(0,t.useContext)($re),i=e.onChange,{startIndex:s,endIndex:l}=e;(0,t.useEffect)((()=>{r(aV({startIndex:s,endIndex:l}))}),[r,l,s]),function(){var e=TV(u$),r=TV(f$),n=TV((e=>e.chartData.dataStartIndex)),o=TV((e=>e.chartData.dataEndIndex));(0,t.useEffect)((()=>{if(null!=e&&null!=n&&null!=o&&null!=r){var t={startIndex:n,endIndex:o};V3.emit(Z3,e,t,r)}}),[o,n,r,e])}();var c=(0,t.useCallback)((e=>{if(null!=o){var{startIndex:t,endIndex:n}=o;e.startIndex===t&&e.endIndex===n||(null===a||void 0===a||a(e),null===i||void 0===i||i(e),r(aV(e)))}}),[i,a,r,o]),u=TV(bG);if(null==u||null==o||null==n||!n.length)return null;var{startIndex:d,endIndex:f}=o,{x:p,y:h,width:m}=u,g={data:n,x:p,y:h,width:m,startIndex:d,endIndex:f,onChange:c};return t.createElement(hne,qre({},e,g,{startIndexControlledFromProps:null!==s&&void 0!==s?s:void 0,endIndexControlledFromProps:null!==l&&void 0!==l?l:void 0}))}function gne(e){var r=CV();return(0,t.useEffect)((()=>(r(y4(e)),()=>{r(y4(null))})),[r,e]),null}var vne={height:40,travellerWidth:5,gap:1,fill:"#fff",stroke:"#666",padding:{top:1,right:1,bottom:1,left:1},leaveTimeOut:1e3,alwaysShowText:!1};function yne(e){var r=k5(e,vne);return t.createElement(t.Fragment,null,t.createElement(gne,{height:r.height,x:r.x,y:r.y,width:r.width,padding:r.padding}),t.createElement(mne,r))}yne.displayName="Brush";const bne=e=>{let{chartData:r=[],lightLoadDataKey:n="light",heavyLoadDataKey:o="heavy",lightPercentageKey:a="lightPercentage",heavyPercentageKey:i="heavyPercentage",lightLoadString:s="pages.sesameAccessControlDevice.index.LightV",heavyLoadString:l="pages.sesameAccessControlDevice.index.HeavyV",xAxisDataKey:c="time",height:u=400,onLoadMore:d,lastKey:f,onDeleteItemPress:p,showDeleteButton:h=!1,isMenuOpen:m=!1,enablePressDeleteTrigger:g=!1}=e;const{t:v}=Fv(),[y,b]=(0,t.useState)(0),[w,x]=(0,t.useState)(0),[S,A]=(0,t.useState)(!1),k=(0,t.useRef)(null),C=(0,t.useRef)(null),I=(0,t.useRef)({getBoundingClientRect:()=>new DOMRect(0,0,0,0)}),E=(0,t.useRef)({active:!1,payload:null,coordinate:null}),[D,T]=(0,t.useState)("%"),[O,M]=(0,t.useState)(!1),[P,j]=(0,t.useState)(null),[R,_]=(0,t.useState)(null),[N,L]=(0,t.useState)(!1),[U,B]=(0,t.useState)("top-start"),[F,z]=(0,t.useState)(0),W=(0,t.useRef)(m),H=Math.max(u-45,200),Y=()=>{C.current=null,E.current={active:!1,payload:null,coordinate:null},L(!1),M(!1),j(null),_(null),B("top-start")},V={V:{light:n,heavy:o,yRange:[0,"auto"]},"%":{light:a,heavy:i,yRange:[0,100]}},G=(0,t.useMemo)((()=>({main:r,high:V[D].light,low:V[D].heavy,yRange:V[D].yRange})),[r,D]);(0,t.useEffect)((()=>{b(0),x(r.length-1),setTimeout((()=>{A(!1)}),500)}),[r]);(0,t.useEffect)((()=>{const e=k.current;if(!e)return;const t=e=>{var t,r,n,o;null!==(t=e.target)&&void 0!==t&&null!==(r=t.closest)&&void 0!==r&&r.call(t,".recharts-brush")||null!==(n=e.target)&&void 0!==n&&null!==(o=n.closest)&&void 0!==o&&o.call(n,"[data-loadmore-button]")||g&&p&&C.current&&(L(!0),p(C.current))};return e.addEventListener("mousedown",t),()=>{e.removeEventListener("mousedown",t)}}),[g,p]);const Z=e=>e&&"string"===typeof e?e.split(" ")[0]:e,Q=e=>{const t=k.current;if(!t||!e)return;const r=t.getBoundingClientRect(),n=r.left+e.x,o=r.top+e.y;I.current={getBoundingClientRect:()=>new DOMRect(n,o,0,0)}},K=e=>{let{payloadData:t,payloadList:r}=e;return(0,qh.jsxs)(ym,{sx:{bgcolor:"white",p:.5,border:"1px solid #ccc",borderRadius:1,fontSize:12,display:"flex",gap:1,alignItems:"center",boxShadow:"0 1px 4px rgba(0,0,0,0.08)"},children:[(0,qh.jsxs)(ym,{sx:{flex:1},children:[(0,qh.jsx)("p",{style:{margin:0,marginBottom:0},children:null===t||void 0===t?void 0:t[c]}),(r||[]).map(((e,t)=>(0,qh.jsx)("p",{style:{margin:0,marginBottom:0,color:e.color},children:`${e.name}: ${isNaN(e.value)?"":e.value+D}`},t)))]}),h&&(0,qh.jsx)(cE.A,{"data-delete-button":"true",sx:{p:1,width:32,height:32,color:"error.main",pointerEvents:"auto","&:active":{opacity:.6}},onClick:e=>{e.preventDefault(),e.stopPropagation(),p&&C.current&&(L(!0),p(C.current))},onTouchEnd:e=>{e.preventDefault(),e.stopPropagation(),p&&C.current&&(L(!0),p(C.current))},children:(0,qh.jsx)(wD,{sx:{fontSize:16}})})]})},X=e=>{let{active:t,payload:r,coordinate:n}=e;if(t&&r&&r.length){const e={payload:r[0].payload,dataKeys:{light:G.high,heavy:G.low},payloadList:r,coordinate:n};C.current=e,E.current={active:!0,payload:e,coordinate:n}}else C.current=null,E.current={active:!1,payload:null,coordinate:null};return null},J=(e,t)=>{null!==t&&t!==D&&(Y(),T(t))},$=()=>(0,qh.jsxs)(ym,{sx:{height:45,display:"flex",alignItems:"center",justifyContent:"space-between",px:1,boxSizing:"border-box"},children:[(0,qh.jsxs)(kF,{value:D,exclusive:!0,onChange:J,sx:{border:"none"},"aria-label":"y-axis unit",children:[(0,qh.jsx)(DF,{value:"V","aria-label":"voltage",sx:{px:1,py:.5,fontSize:10},children:v("pages.sesameAccessControlDevice.index.VoltageValue")}),(0,qh.jsx)(DF,{value:"%","aria-label":"percentage",sx:{px:1,py:.5,fontSize:10},children:v("pages.sesameAccessControlDevice.index.Percentage")})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",gap:2},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,qh.jsx)(ym,{sx:{width:12,height:2,bgcolor:"#1d7f7f"}}),(0,qh.jsx)("span",{style:{fontSize:12,color:"#666"},children:v(s)})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,qh.jsx)(ym,{sx:{width:12,height:2,bgcolor:"#97eded"}}),(0,qh.jsx)("span",{style:{fontSize:12,color:"#666"},children:v(l)})]})]})]});return(0,t.useEffect)((()=>{W.current&&!m&&(Y(),z((e=>e+1))),W.current=m}),[m]),(0,t.useEffect)((()=>{let e=null;const t=()=>{const{active:r,payload:n,coordinate:o}=E.current;r&&n&&o?N||(Q(o),B((e=>{const t=(e=>{const t=k.current;if(!t||!e)return"top-start";const r=t.clientWidth||0;return e.x>.65*r?"top-end":"top-start"})(o);return e===t?e:t})),j((e=>{var t,r;const a=null===e||void 0===e||null===(t=e.payload)||void 0===t?void 0:t.timestamp,i=null===n||void 0===n||null===(r=n.payload)||void 0===r?void 0:r.timestamp,s=(null===R||void 0===R?void 0:R.x)===o.x&&(null===R||void 0===R?void 0:R.y)===o.y;return a===i&&s?e:{payload:n.payload,payloadList:n.payloadList}})),_((e=>(null===e||void 0===e?void 0:e.x)===o.x&&(null===e||void 0===e?void 0:e.y)===o.y?e:o)),M(!0)):N||(M(!1),j(null),_(null)),e=requestAnimationFrame(t)};return e=requestAnimationFrame(t),()=>{e&&cancelAnimationFrame(e)}}),[N,R]),(0,t.useEffect)((()=>{!N&&O&&R&&Q(R)}),[O,R]),(0,t.useEffect)((()=>{const e=()=>{O&&R&&Q(R)};return window.addEventListener("resize",e),window.addEventListener("scroll",e,!0),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e,!0)}}),[O,R]),(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)("style",{children:"\n        .recharts-surface {\n          user-select: none;\n          outline: none;\n        }\n        .recharts-surface g[tabindex] {\n          user-select: none;\n          outline: none;\n        }\n        .recharts-layer.recharts-brush rect {\n          stroke-width: 0.3;\n        }\n        .recharts-layer.recharts-brush .recharts-brush-traveller {\n          stroke-width: 1;\n          user-select: none;\n          outline: none;\n          -webkit-tap-highlight-color: transparent;\n        }\n        .recharts-layer .recharts-brush-texts text {\n          font-size: 10px;\n          fill: #666;\n        }\n        .recharts-layer .recharts-brush-texts text:first-child {\n          transform: translate(55px, -24px);\n        }\n        .recharts-layer .recharts-brush-texts text:last-child {\n          transform: translate(-55px, -24px);\n        }\n        .recharts-wrapper {\n          user-select: none;\n          -webkit-user-select: none;\n          -moz-user-select: none;\n          -ms-user-select: none;\n          -webkit-touch-callout: none;\n        }\n        "}),(0,qh.jsxs)(JI,{sx:{p:0},children:[(0,qh.jsx)($,{}),(0,qh.jsxs)("div",{ref:k,style:{touchAction:"pan-y",position:"relative"},children:[d&&(0,qh.jsx)(ym,{"data-loadmore-button":"true",sx:{position:"absolute",left:0,top:H-45,zIndex:2},children:(0,qh.jsx)(RE,{loading:S,disabled:!f,disableElevation:!0,size:"small",variant:"outlined",onClick:e=>{e.stopPropagation(),d&&(A(!0),d())},sx:{height:30,minWidth:56,p:0,fontSize:12,whiteSpace:"nowrap",borderRadius:0,color:"#28aeb1",borderColor:"#28aeb1"},children:v("pages.sesameAccessControlDevice.index.LoadEarlier")})}),(0,qh.jsx)(hz,{width:"100%",height:H,children:(0,qh.jsxs)(T5,{data:G.main,margin:{left:20,right:0,top:0,bottom:0},children:[(0,qh.jsx)(C8,{strokeDasharray:"3 3",stroke:"#e0e0e0"}),(0,qh.jsx)(B8,{dataKey:c,tickFormatter:Z,height:48,minTickGap:100,interval:"preserveStartEnd",tick:{fontSize:12},padding:{left:0,right:0},axisLine:{stroke:"#999"}}),(0,qh.jsx)(Q8,{unit:D,tick:{fontSize:12},domain:G.yRange,width:40,axisLine:{stroke:"#999"}}),(0,qh.jsx)(Pee,{content:(0,qh.jsx)(X,{}),wrapperStyle:{display:"none"}}),(0,qh.jsx)(Zre,{dataKey:G.high,stroke:"#1d7f7f",name:v(s),dot:{fill:"#1d7f7f",r:1.2,strokeWidth:1},strokeWidth:1,connectNulls:!0,animationDuration:1e3}),(0,qh.jsx)(Zre,{dataKey:G.low,stroke:"#97eded",name:v(l),dot:{fill:"#97eded",r:1.2,strokeWidth:1},strokeWidth:1,connectNulls:!0,animationDuration:1e3}),(0,qh.jsx)(yne,{dataKey:c,alwaysShowText:!0,height:30,stroke:"#28aeb1",travellerWidth:20,startIndex:y,endIndex:w,onChange:e=>{e&&void 0!==e.startIndex&&void 0!==e.endIndex&&(b(e.startIndex),x(e.endIndex))},tickFormatter:Z,y:H-45})]},`${D}-${F}`)}),(0,qh.jsx)(TF.A,{open:O&&!!P,anchorEl:I.current,placement:U,modifiers:[{name:"offset",options:{offset:"top-end"===U?[-12,-10]:[12,-10]}},{name:"preventOverflow",options:{padding:8}}],sx:{zIndex:1300,pointerEvents:"auto"},children:(0,qh.jsx)(K,{payloadData:null===P||void 0===P?void 0:P.payload,payloadList:(null===P||void 0===P?void 0:P.payloadList)||[]})})]})]})]})},wne=e=>{let{deviceUUID:r}=e;const{gManageDevice:n,gMediaType:o}=(0,t.useContext)(VI),[a,i]=(0,t.useState)([]),[s,l]=(0,t.useState)(null),[c,u]=(0,t.useState)(!1),[d,f]=(0,t.useState)({open:!1,selectedPoint:null}),[p]=xv(),h=p.get("deviceUUID")||r,m="app"===p.get("fromType"),g=hg(),{t:v}=Fv(),y=!0===Boolean(p.get("setting")),b=(0,t.useMemo)((()=>n.companyDevices.find((e=>e.deviceUUID===h))||n.deviceStatus),[n.companyDevices,n.deviceStatus,h]),w=(null===b||void 0===b?void 0:b.deviceModel)||p.get("deviceModel")||"",x=Dh.isWifiModel(w),S=(0,t.useCallback)((e=>{if(e.action===_C)if("batch-get"===e.op){const t=(e.data.records||[]).map((e=>({time:new Date(1e3*e.ts).toLocaleString(),timestamp:e.ts,light:e.light/1e3,heavy:e.heavy>-1?e.heavy/1e3:void 0,lightPercentage:e.lightPercentage,heavyPercentage:e.heavyPercentage})));l(e.data.lastEvaluatedKey),i((e=>[...t,...e]))}else"makeInvisible"===e.op&&e.success&&i((t=>t.filter((t=>t.timestamp!==e.data.timestamp_second))))}),[]);KC(_C,S);const A=async function(){XC({action:_C,deviceUUID:h,lastEvaluatedKey:arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,pageSize:m?50:100,op:"batch-get"})},k=(0,t.useRef)(!1);(0,t.useEffect)((()=>{!k.current&&w&&(k.current=!0,x?i([{time:"",timestamp:1,light:5,heavy:5,lightPercentage:100,heavyPercentage:100},{time:"",timestamp:2,light:5,heavy:5,lightPercentage:100,heavyPercentage:100}]):A())}),[w,x]);(0,t.useEffect)((()=>{n.getDeviceStatus(h)}),[h]),(0,t.useEffect)((()=>{var e;b&&u(null===(e=b.stateInfo)||void 0===e?void 0:e.isRechargeBattery)}),[b]);const C=()=>{f({open:!1,selectedPoint:null})};return(0,qh.jsxs)(qh.Fragment,{children:[!m&&y&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",pt:1,pl:2},children:(0,qh.jsxs)(cE.A,{onClick:()=>g(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-2}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"title.main"},children:v("pages.login.ReturnToMailInput")})]})}),(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(bne,{showDeleteButton:o.isMobile,chartData:a,lastKey:s,onLoadMore:()=>{s&&A(s)},height:m?300:400,onDeleteItemPress:e=>{let{payload:t}=e;f({open:!0,selectedPoint:t})},isMenuOpen:d.open,enablePressDeleteTrigger:!o.isMobile&&!m}),!Dh.isWifiModel(null===b||void 0===b?void 0:b.deviceModel)&&(0,qh.jsx)($T.A,{disablePadding:!0,children:(0,qh.jsxs)(lO,{disablePadding:!0,children:[(0,qh.jsx)(iD.A,{primary:(0,qh.jsx)(Bh.A,{sx:{fontSize:14},children:v("pages.sesameAccessControlDevice.index.RechargeableBattery")}),secondary:!Dh.isSupportRechargeableBattery(null===b||void 0===b?void 0:b.deviceModel)&&(0,qh.jsx)(Bh.A,{sx:{fontSize:10,color:"error.main"},children:v("pages.sesameAccessControlDevice.index.RechargeableBatteryNotice")})}),(0,qh.jsx)(rB,{checked:c,onChange:e=>{const t=e.target.checked;u(t),n.switchRechargebleBattery({deviceUUID:h,isRechargeBattery:t},(e=>{e.success?(Ue.triggerBridge({action:"requestRefreshApp"})||n.getCompanyDevices(),i([]),A()):u(!t)}))}})]})})]}),(0,qh.jsx)(QO,{anchor:"bottom",open:d.open,variant:"temporary",onClose:C,children:(0,qh.jsxs)($T.A,{sx:{pb:1,justifyContent:"center"},disablePadding:!0,children:[(0,qh.jsx)(lO,{disablePadding:!0,children:(0,qh.jsx)(aD,{onClick:()=>{if(d.selectedPoint){const{timestamp:e}=d.selectedPoint;(e=>{let{deviceUUID:t,timestamp_second:r}=e;if(x)return;XC({action:_C,deviceUUID:t,timestamp_second:r,op:"makeInvisible"})})({deviceUUID:h,timestamp_second:e})}C()},children:(0,qh.jsx)(iD.A,{primary:v("pages.ir.remote.delete"),sx:{textAlign:"center",color:"error.main",fontWeight:500}})})}),(0,qh.jsx)(lO,{disablePadding:!0,children:(0,qh.jsx)(aD,{onClick:C,children:(0,qh.jsx)(iD.A,{primary:v("pages.ir.remote.cancel"),sx:{textAlign:"center"}})})})]})})]})},xne=()=>{const e=hg(),{gMediaType:r,gManageDevice:n}=(0,t.useContext)(VI),[o]=xv(),{t:a}=Fv(),i=o.get("deviceUUID")||"",s=o.get("deviceName")||"",l=(0,t.useMemo)((()=>pB(i,n.deviceStatus,n.companyDevices)),[i,n.deviceStatus,n.companyDevices]);return Fk||"wm_2"===l.deviceModel||"wm_2"===o.get("deviceModel")?(0,qh.jsx)(gF,{}):(0,qh.jsxs)(ym,{sx:{bgcolor:"#FBFBFB",overscrollBehavior:"none",minHeight:"100vh"},children:[(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",px:r.isMobile?0:4,pt:2},children:(0,qh.jsxs)(cE.A,{onClick:()=>e(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-1}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"black"},children:s})]})}),(0,qh.jsx)(EO,{container:!0,spacing:2,sx:{py:2,px:r.isMobile?0:4,"& > *":{"& > .MuiBox-root, & > .MuiCard-root":{backgroundColor:"white",height:"100%",overflow:"auto"},"& .MuiTypography-h4":{p:1,fontWeight:"bold",pb:0}}},children:r.isMobile?(0,qh.jsx)(EO,{size:12,children:(0,qh.jsx)(gF,{})}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(EO,{size:4,sx:{height:"560px",overflowY:"auto"},children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:a("deviceMember.user")}),(0,qh.jsx)(iB,{deviceUUID:i,defaultManageMode:!0})]})}),(0,qh.jsx)(EO,{size:4,sx:{height:"560px"},children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:a("pages.sesameAccessControlDevice.index.connectedIRDevices")}),(0,qh.jsxs)($T.A,{children:[(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",pl:2,py:.5},children:(0,qh.jsx)(Bh.A,{color:"info.light",sx:{lineHeight:"30px"},children:a("pages.sesameAccessControlDevice.index.BindDeviceToHub3Hint",{deviceName:"Hub3"})})}),(0,qh.jsx)(lO,{sx:{py:0},children:(0,qh.jsx)(pF,{device:l})}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",pl:2,py:.5},children:(0,qh.jsx)(Bh.A,{color:"info.light",sx:{lineHeight:"30px"},children:a("pages.sesameAccessControlDevice.index.BindIRToHub3Hint")})}),(0,qh.jsx)(lO,{sx:{py:0},children:(0,qh.jsx)(iL,{deviceUUID:i})})]})]})}),(0,qh.jsx)(EO,{size:4,sx:{height:"560px"},children:(0,qh.jsx)(ym,{children:(0,qh.jsx)(gF,{})})}),(0,qh.jsx)(EO,{size:12,children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:a("pages.sesameAccessControlDevice.index.Battery")}),(0,qh.jsx)(wne,{deviceUUID:i})]})})]})})]})},Sne=(0,dD.A)((0,qh.jsx)("path",{d:"M8.59 16.59 13.17 12 8.59 7.41 10 6l6 6-6 6z"}),"KeyboardArrowRight"),Ane=r.p+"static/media/png_fan.c435dd5165febb6fbd71.png",kne=r.p+"static/media/png_air_model_auto_01.d518eec82edeb8e6af5f.png",Cne=r.p+"static/media/png_air_model_cold_02.27b4f3e1758dd0b27af8.png",Ine=r.p+"static/media/png_air_model_dry_03.52d983b129236da82d77.png",Ene=r.p+"static/media/png_air_model_hot_05.3073c23fda71454fc14c.png",Dne=r.p+"static/media/png_air_model_wind_04.abd4dc20ea8f21374d54.png",Tne=r.p+"static/media/png_air_wind_speed_auto.b3db6a283d7fa76a791d.png",One=r.p+"static/media/png_air_wind_speed_v1.79fdd6fd4367a1c45f50.png",Mne=r.p+"static/media/png_air_wind_speed_v2.73b6524d9fc6fc736505.png",Pne=r.p+"static/media/png_air_wind_speed_v3.36aa6dfd51b9e42791fa.png",jne=r.p+"static/media/png_air_wind_vertical_v2.369996ae7d246d539407.png",Rne=r.p+"static/media/png_air_wind_vertical_v3.fadae6c24cb3dc1a4e30.png",_ne=r.p+"static/media/png_ir_match.1dc7e8f70f4c8cd8fd2f.png",Nne=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAD+CAYAAACA/DjlAAAWfklEQVR4nO3djXHa6qKF4aUKQioIriC4giNXEKeCyBUEV3ClCkwq2LiCsCvI5wpCKjCpIEoFua9QPNuJ//SBBAKtZ+YdzpnZtjGgFYFxksjM7EB4sMzsYHiwzOxgeLDM7GB4sMzsYHiwzOxgeLDM7GB4sMzsYHiwzOxgeLDM7GB4sMzsYHiwzOxgeLDM7GAc4mBN6BWlkkY0ITNrLkgqaUnfaaUDkVDfjegDpaqr/r+ZtWelesQW9C/1Vp8Hqxqp89+Z2W6UtKBrCuqZhPqmGqpc0lhmtk9BUkFBPZFQX6SS/qGxzKxPqjOuS1ppzxLatxFdUSYz67MpfaK92fdgTegzjWVmh2BBF1TSziW0L5nqM6sRmdnhWNIFVZc7ldA+ZKpfrzKzw1TSGS1pZxLatUweK7NjUNIZLWknEtqlc/pMZnYcSjqh6rJzCe3KWNJXGpGZHY8lnVLnEtqVaqwmZGbH5xNNqVO7Gqxc0v9RG75RUH0KGmRmsUY0obHqN2y/oTacUVCHEuraWNItbeMnzWiuHrzb1uzITGhKH2gbK9WvZ3Umoa59oVSbK2hGJZlZd8aqj7V3tKmCcnUkoS6lqgdrE9VZVar6BT0z251Mm7/1qKQTqi5bl1CXFrTJWn+jVB1902b2olT18fuKYl3QXB1IqCtjbfba1U9K5TMrs33LtNmZ1kr1WVbrEurKjD5SrDMKMrM+yLXZT/g7OY4T6sotjRXnmjKZWZ+sFP/Wh06O5YS6MKGvFOuEVjKzPskU/9SwpNfUqoS6MKUrinFNmcysj1aKP8s6pSW1JqEuLOgdxXhP1ceZWf/MFf/G0kuaUWu6GqwfNKIYr6kkM+ufc/pMMa4pU4sS6sIvinFDqcysz/Z+XCfUtlTx726/oVRm1me/KEZJ1TOn1iTUtlTxg/WJpmRm/bVS/AvvrW5Mq5/st3OKfa5bUC4z67Mg6X8UI6HWtPrJfssV/87YgnKZWZ8FxQ/WGQW1JKG25fJgmR2jIA/WWkG5zKzPgjxYawXlMrM+C/JgrRWUy8z6LMiDtVZQLjPrsyAP1lpBucysz4I8WGsF5TKzPgvyYK0VlMvM+izIg7VWUC4z67MgD9ZaQbnMrM+CPFhrBeUysz4L8mCtFZTLzPosyIO1VlAuM+uzIA/WWkG5zKzPgjxYawXlMrM+C/JgrRWUy8z6LMiDtVZQLjPrsyAP1lpBucysz4I8WGsF5TKzPgvyYK0VlMvM+izIg7VWUC4z67MgD9ZaQbnMrM+CPFhrBeUysz4L8mCtFZTLzPosyIO1VlAuM+uzIA/WWkG5zKzPgjxYawXlMrM+C/JgrRWUy8z6LMiDtVZQLjPrsyAP1lpBucysz4I8WGsF5TKzPgvyYK0VlMvM+izIg7VWUC4z67MgD9ZaQbnMrM+CPFhrBeUysz4L8mCtFZRrexOqvvaIzIYkSPpEJXUlyIO1VlCu7UzoC43IbIhWki4oqBtBHqy1gnJt55bGMrMpVWdbbQvyYK0VlGtz1R10RWZWm6s+22pTkAdrraBcm7ulsczsvrnaHa0gD9ZaQbk2M6GvZGYPzdXeaAV5sNYKyrWZVPWL7Wb2uLnaGa0gD9ZaQbk2k8qDZfacG0q1vSAP1lpBuTZX0isys4euKdP2gjxYawXl2lyu+K9pNhQntNL2gjxYawXl2s6S3pKZ/aeNY+tOkAdrraBc2xlRkEfL7E4bx9V9QR6stYJyba8arSllkt6Q2RBd04yW1KYgD9ZaQbnal8psOEpaUleCPFhrBeUysz4L8mCtFZTLzPosyIO1VlAuM+uzIA/WWkG5zKzPgjxYawXlMrM+C/JgrRWUy8z6LMiDtVZQLjPrsyAP1lpBucysz4I8WGsF5TKzPgvyYK0VlMvM+izIg7VWUK7tfKBM/nUcG6bqV3IWVP1rOSV1IciDtVZQrs2M6DOlMrOVpPe0pLYFebDWCsoVb0RfaEJmVivpjJbUpiAP1lpBueJVZ1bnZGZ/Wkk6pZLaEuTBWisoV5yx6n+P0Mwed0FztSfIg7VWUK44maR/yMwed02Z2hPkwVorKFecXPFfx2xIbihVe4I8WGsF5YqTyWdYZs+5pkztCfJgrRWUK86IVvK/R2j2lAuaqz1BHqy1gnLFm9FHMrM/faex2hXkwVorKFe8EQX5n/Yyu+8npfL7sBrJtbvBqowoyKNlVvlO57SktgV5sNYKyrWdTHUTekVmQ3JDc9V1JciDtVZQLjPrs6AjHKwpXVGMgnKZWZ8FxQ/WCa3UkoTalqr+heQYBeUysz4Lih+shFrT6if7LVX8YP1L52Rm/fWLYrW6Ma1+st/Giv+l5BtKZWZ99otifKMJtSahLsR+YyvVz3XNrJ/G6sGJSEJdWNJbinFK1ceZWf9M6YpiFJSrRQl1YUYfKcYlVR9nZv0TFP+C+3taUGu6Gqxz+kwxVvLTQrM+Giv+6WDlNZXUmoS6MKIfFOuC5jKzPpmr/lepYnyjCbUqoa4s6B3FWKl+LaskM9u/CX2lWJc0o1Z1OViZNvsL9uaqz7TMbL9G9IUmFOs1ldSqhLq0kvSGYhWUy8z26QulindNmTqQUJdyxf8i9J1c9XCZ2W6N6DOl2swpLal1CXVpRCtt/te9LOiCSjKz7k3oH6ouN3FDqTqSUNemdEWbKmlGn6gkM2vfWPWzoUzbOaUldSKhXai+gbe0jZIWv7uhksxsc2PVbwY9/922PtGUOpPQLkzoK7UtyMxijWhCbfpO1ecsqTMJ7cqUrsjMjs8pLalTuxysyoLekZkdjwuaawcS2qURBW3/epaZ9cM1ZdqRhHbNo2V2HK4p0w4ltA8eLbPDdk2ZdiyhfalGa0YfyMwOxwXNtQcJ7duUcm3+bngz243vdE5L2ouE+mBCM/ofmVn/XNOUStqbhPokU3229YbMbP9uaEpL2ruE+iiTh8tsn24oV/3Dsd5IqM8mlKnOr3GZdesbzVW/wXulHur7YN03oVR1I/ofmdlmftKSVqrPooLq/91rhzRYjxnRhMysuaADdeiDZWYD4sEys4PhwTKzg+HBMrOD4cEys4PhwTKzg+HBMrOD4cEys4PhwTKzg+HBMrOD4cEys4PhwTKzgzHkwTqndzTWn4Lqf3K7JJP+j1I9VFDQsKWqH0MTum9J1WNoJWtVQkM0lnRLTynpghY0ZLnqwXpKdftUt1NJQzPWy4+hU1rJWpPQEKWSvtBL5pIuqXrwDVHQy3/vWHXbXNCChiST9A89Z676TGtJ1oKEhihVs8GqVA+2C6ouhybo5cG6M6NLGoq5mv0TdSWdUHVpW0poiFI1H6xK9WA7oyUNSVDzwarMVY9WSccs08tnV/e9pwXZlhIaolRxg1Up6ZLmGo6guMGqLOmMSjpGYz3/2tVjCsplW0toiFLFD9adU1pSVyb0iu77RiXtWlD8YFWWdEYlHZspXVGMgnLZ1hIaorHi/5S8U9IZLalNI6quU3X5t5Jm9IlK2pUZfaRNLOmUjk2muKeDlfe0INtSQkM1V7MXTR9T0glVl23J9fxbCCrV15vSNe3CiOaq32u0iU80pWMyVj3Gr6iJnzRWfd/ZlhIasiW9pU0E1Wdabcn18mDdCap/crnSbowo12ZnW9X1nOu45Gp+X72nBVkLEhqyc/pMmyooVztyNT8IKiVVB0PQ7pzTXM3PLiolndJKxyXo+df3bihX/d9ZSxIaulxxQ3Ffmwdjrs2ux5Q+0a5MKChutBb0no7JiIIeP0OPPa4m9JUeE1Q/vi6ppEGLvWGP1YTmevzB95IFvadtZYp/MffOJc1oVyYUFDdaZxTUL6nqs6QRrVS/NlhSUyMKevi4Saip6nPcUnX5nGvKNHAJWa16wAQ9fPA1cUpL2sZY9QN3Uxc01+5kihvYf+mc+qC6Hlc01p9Wqod1peZSPXyLTEJNTam6Li+5oVQDl5D9Z0RB8aN1STPaVlD9J/6mzihodxb0jppKaJ9G9A+d01OWdEpNpdpusIKa3ec3lGrgErI/jVU/aF9RUzeUansjOqcpvaVYK9UHW0m7MFbcWeEZBe3HiL7QhF5yQXM1k6r+vPcl1NQvauKGUg1cQvbQOX2mGG3flpnqs7ZXFOMTTWlXFvSOmrigufZjSlfUxA2laiaVB2tnErLHBTU7Vb9zQiu1a6x6EN5SjNdU0i7kav7TzYJy7UdQ8/uzuu1OaaWXpdp8sFI9/Nin3FCqgUvIHpepfr2jqTMKat+IlvSGmrqkGe1CquYHXUG59mNB76ipkmZUXefnpHr4/Sf0lBF9oCmN1dwNpRq4hOxpv6ipMwrqRqqHB8VzlnRKu5Cq+XUrKNd+TOmKYq1UP5UNelyqh99/Qn9LVQ9Vps3cUKqBS8ieVtIrauKC5urOgt5RU9VgLalrU7qiJgrKtR9jxf2A4G8LuqSV/pTq6cEa0Qea0ljbqb72jAYtIXvaDxpREwXl6s45faamrilT9+aqD8om9n3QVV/7I22qpBkVdCfVw8E6ow+UqR3/Uqb66w9aQva0X9TUe1pQV0b0g5oq6YSqyy7d0ljNnFHQ/oxoSW9oGyvVZ9RBjw9WjJ80pSUt6A3duaFzKsmQkD1uQl+pqTMK6tYvivGeFtSVCcXcRie00n5V1zmo+VP95yzoX/qHNvGNMtVjVRlRqv+uY5D9ISF7XKa4B+IZBXUrqPmP5iufaEpdmdFHaiqhPpjQXPXbRb5TUD0+S0pVP7V/Q126pimVZA0lZI9b0Dtqahe3Zaa4Eb2hVN0Y0S1Vl010eV26kKmb4fpJU5rLoiVkD41VH4xNfaexupcq/vWShLpQHXRX1NQnqj7m0GRqb7i+Uab6TM420NWD+dDlav7u7cq/dE5dG9EPitHVfXxLYzX3nhZ0qDLVj4s3tIlrmlJJtqGE7KFqFEbU1CXNqGsjqq5bjC7u40xxT00rr6mkQzZWfYY7VpygerAP/fvfu4TsT5niD8YTWql7qeoDJkZCbbulsZq7oVSHa6z6jDvT5lb6760QtqGE7E+3NFZz32hCu3BOn6mp7zRWuzLFD/olzejQjLX9UP2tuh0KKskiJWT/yRR/MBaUazdy1QdQUzeUql23NFacU1rSoRirvp0zdWOlx8+2xqqf9i/JHpGQ/eeWxopzQivtxleaUFOfaEptyRQ/6N9prP4Y6/kXzjPVNfWTXtEmZhRU/6FyTmPVVqpf81qS3ZOQ1TLFH4z/0jntwlj1oMZ4TwtqS/X1x4pzSTPqg1TxrwE+p6Alfaa2lXRGS7LfErLaLY0V54yCdiNX/TSlqZ80orZkih/0ygmt1A8LekfbuqFM9feVqt0RvG9Jp2S/JWT1g+8fivGNJrQLI7ql6rKpa8rUjurrxn79yi5voyaC4n616W/faUoLupPq4WCdUK76b2zY1iXNyJCQ1QfjWHHOKGg3MsUP6gmt1I5ccWd3dy5orv4I2nywCqqGo6T7Uj0crIQqY9W33Qfa1Er1fWlIaOimdEUxbijVbozoK43V3DVlas8Pqq5HrNdUUl8ExQ/WDWWqh+MxqZ4erDtjbTdcZxRkSmjIRnRL1WWMMwrajVzxZzcntFI7MsWf3VWuKVO/BDUfrO80pQU9J9XLg3VnrPr+/EAxCsplSmjIpnRFMa4p026MVZ9djaipgnK1p/r6E4p1RkH9EtR8sJqeHaZqPlh3zukzNXVJMxq8l27YY3dLYzX3kya00m5UD+pzauqGUrVnQl8p1jVl6p+gZoNV3c8jaiJV/GClevgxzzmhlezFG/aYndNnilFQrt1IFfegrg6yCa3Unhl9pBhdXI+2BDUbrE80pSZSPbyfEnrOWPUflk1c0Fy2ltBQLegdNfWTxmr2NKENXyhVc+9pQW26pbHiXFOmfsr18uuB3yhV8/s5VX1f3ZfQS5b0lp7ykzK1f58etCY37DEa0Q+KUVCu3Uj18CB4zgXN1a4JfaVYJ7RSf6Wqe8qMSmrqnD7TfQm9ZERTyvTnrwpVQ7WgKZVk9zS5YY9RpviffL2mXT2AvlCqZj7RlNqW6+Wzkb9dU6bhmNAXGtF9CTVVfWwqaaz6rKuqJHtEQkO0oHfU1DVl2o1Mzce0y+sVextV3lP1cUMwoS80or+lqn8AYi1LaIh+UYxdHoi3NNbLftJY3f1p3PR63Kmuz4iGoPo+v9CEnlLSJc1lrUloaFLVD7amftKIdiFV8+v2nhbUhRH9oBj/0jkNwVzN3/x5STOyFgxxsKZ0RU3dUKrdmKvZgdD1dUrVfDjvFJTr+E3oKzVV0imtZFtLaGjmajYKdwrK1b0R3VJ1+ZITWqk7qeIH64yCjt+UrijGBc1lW0toaIKavXnwzhkFdS9TsxfbrylTtzY5KKuziCUdu1zxPz0tKJdtLaGh+UoTauqMgrr3hVK9bBfXJ1f8QZnQEEzpimKcUZBtLaGh+UUxXlNJXRrRD3rJDaXqXi4P1lNS1X+4xDihlWxrCQ3NL4qxi9vonD7TSy5oru7l8mA9Z6U/353+nBtKZa1IaGh+UYxTWlKXZvSRnvOTxur+bK9yTp8pxiktaQhSNTvL+kmphnO7dC6hoflFMc4oqFtfaULPuaZMu5Gq2QF53xkFDUeq+mz3DT3mO53TkqwlCQ1NSa+oqUuaUZd+0UsuaK7daXKd7iso1/CkqrtTUpCHqhMJDU1Q3NsarilTdyb0lV5ySkvalZWePnt4THXdquto1pmEhmZB76ipkl5TV1I1e/q16/tqrrg32FZOaCWzjiQ0NLnifwJ2QXN1I9PLbxj9TmPtVqaXr9ffrimTWUcSGppUzc5o7lupPnvoQq6XB/SGUu3WiH5QrBNayawDCQ3RL4p1STNqW65+DlZlQe8oxpJOyax1CQ3RgmIPxEp1IC6pTbn6O1ip4s9GK3PVT6PNWpXQEJ3TZ4pV0hktqS25Xh6sleqnWvtQfa9vKdYlzcisNQkNVUmvKFb1cbnqv0u9DbleHqzKa6q+9q6d02eKtVJ9RlqSWSuGPFi5mg3FU1aqzz7e0zZSNXvaVX2dBe1DUNx71+5U17e63matGPJgjWilzc6y7nyjCW1jrPov7nvJNWXaj7Hqcd7ktnpPCzLbWkJDlin+vUb3XdKMtvWLXlLSCVWX+5Bps9uqoFxmLUho6II2e7pTOaGVthfU7DoUlGt/ZvSRYuz7OtsRSWjoxtr86U5CbZjSFTVxSkval7nifmWnoFxmLUjImr/w/be2br+xmr2OVanG6oxK2pe5mo9WQbnMWpCQ1TLFv0bT5u23pLfURPXfnlFJ+zKjj/SSgnKZtSAh+0+muNFq8/bLFPe1l/SeVtqfc5rr+afTFzSXWQsSsj9lqs8enjsI77R9+60U93dQlTSja1ppP0aU6/G3dyxoRmatSMgemtBczz9F+05jtStT3FnWnRtKZXbkErKn5ap/gveK7vtGmeqnZW2rPudbinVK1ceaHS0PVv9M6CvFKumMlmR2lBKy/sm12e85fqIpmR0lD1Z/BTV79/t9N5TK7EglZP00oqC417NuKJXZkUrI+it2tG4oldmRSsj6LWa0biiV2ZFKyPqvGq0FvfSa1g2lMjtSCdnhyPX8Tw8LymV2pBKyw5KqfuvCiO4sfzeX2RHzYJnZwfBgmdnB8GCZ2cHwYJnZwfBgmdnB8GCZ2cHwYJnZwfBgmdnB8GCZ2cHwYJnZwfBgmdnB+H9SrhRKSEywEgAAAABJRU5ErkJggg==",alt:"air icon",style:{opacity:t,width:"32px",height:"32px"}})},Lne=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:Ane,alt:"fan icon",style:{opacity:t,width:"32px",height:"32px"}})},Une=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAAXNSR0IArs4c6QAADpZJREFUeF7tnQuW5DQMRYuVASsbWBmwsgHNlOl0OvGTZDu25FfncGAYf+QnXcufquSXFz9UgArcKvALtaECVOBeAQLC6KACFQUICMODChAQxgAV8CnADOLTjbU2UYCAbOJoDtOnAAHx6daz1l+v1+u3mwb/fr1ev/fsjG3ZFCAgNr1GlCYgI1Tt1CYB6SRkQzMEpEG80VUJyGiFcfsEBGs0rQQBmSb9/x0TkPk+uLWAgMx3DgGZ7wMCsrAPCMjCzmEGme8cAjLfB8wgC/uAgCzsHGaQ+c4hIPN9wAyysA8IyMLOYQaZ7xwCMt8HzCAL+4CALOwcZpD5ziEg833ADLKwDwjIws5hBpnvHAIy3wfMIAv7gIAs7JyIGUR+XCQ/JMry2QmQcL6LBsgfr9fr2+v1+vM/OuS/M3wkaO5+USjjyzLOkL6LBEgRuECRCZIMoNfGENZ3UQA5C0xI4iAV2ncRALkTmJCsD0l4360OCBKYkKwLSQrfrQ6IbF7llEfz4Z5Eo9IzZbRwiDXyWKNlTyVXB0QEJCTPBHWvXtLAIYJEAISQ9Ard8e2kgiMSIIRkfHC39pAOjmiAEJLWEB5XPyUcEQEhJOOC3NtyWjiiAkJIvKHcv15qOCIDYoVk6aPE/nH7SIuW08Ww+kc5xbrzuMZJvB8Zx4smg4SFI3oGKW6vQUI4xsFRWq5BEhqOLIDcLbeiwXH+yvuyt8sXzF1BEh6OTICcIVkNjhL88u9f3wFW+w3I1bwvwPxz+Av580oQHSFJAUc2QAokEnizf2RUgl9+3GUFwbookslAPisAI7qvYIdVw9vy0Tfp3YTo0JCAIEAUUDs06WpCgEkVpC4VOlUiIG1CPpkpPJauttT0jGFqHQLik79ki9HLJ591X2sRFKeSBMQmXDQwzqMjKDZ/h/m6u3FY3YtHB4OgOEOCGQQLp7ktxq18LlGOZ8/HtqXU1dJNjod7L+mYUYDnCMi9QL2yRoHheBxrBepcvhxj94Cm3K/MPhpv1WRIfQJyLWtr1pCgK8etQxx3arQEdzlm9vTJbHKhGgH5KkrtUaC1wHsaijtbBBZvZiEkJ1UJyIcgmm8GXwXlKmDcLcM8WYWgvNUkID+F8CypVgWjFyiEJNBTTTxram0dKxxRwLgCxZpNtodk9wxihSNDwOw4Zu1k+aXczoBYAiVq1qgFhuUwIsPE4IJkV0AscGQODurAi8IvCliCIs0PfypxYNEj82RxKdFuGcQSDDvAUYLCcsS9FSQ7AaKFI+N+Q7P+tkCyzeSxEyDfFVEicIjzd/5oN+9bQLILIJrsQTg+pgUNJFvotQMgGjgkNLaYEZWpUbvcSr8fyQ4I4VAScVFMC0nqiSU7IJp9R/pZ0M+I6u1eqZdamQHRZA/CgenZWsfMgKDskXrmw3FvKqHZtKdcamUFRDPrZR27KfKVhTX7kZQTTsYg0cDBpZWSjEMxja7pssiOgKSc6ezx7qqBllrptM0ICNp7MHu42PhRSbPUSpVFsgGClgGEww9HqblVFskGCMoe2cbbHu72FrbKIpkChtnDHuzeGttkkUyAMHt4w91eD2WRNJv1LIAwe9iDvLUGyiIpNusEpDVM9q2/RRbJAgiXV3NATa97BkDQTMaj3XHwpF9mZQAE7T/u1sIIrFpYHV+/3PJaA48NZQOMZm/PxIAC/hwvyH6PDeNwdrScARCrU4tMyLkOOX+8Xdby2gOPDQUQNDGI/Rb/Ilvugr0GavjTLIuAnoB5ok7NQbUZDAVEi+1aUDw2HIOuZxbxTjTeei36PlY3OiAowGYBUhyIlhjI/qtAOAKCsohlBh810YQ+7o0OCAqQmnM8wemZuXpDeg76HlkE6ViLE6QjmiQ8mj5WJzsgLY7t6YS7ICnvQTzui+76Pb748/g+QRTcmgD1Zo9ia9p9SHRAautftLxAM9+VNuUts/Jv62vOUKDWAh2NBWWRlolCEyMtfug5EXVvSzP47p12bLBl5vMAcjbd8ibckYC0ZJFacCObix5pN+oE5J5WizYoQDWb9pYMIu17skiPSUL6RuO3aNlx/mxvKqzhil+3odmvV3AUL6AgkXI1m1oBQf1f9d0je8i4kJZhT7IyA4Kcgpzq0QYtNWqXd62AWLNIz/GjtpAv2qf6QS14gmCQKeZmW52C6nu0QW3KIO+CpQcglizSK3swg5hD95kKKBhRgLfWvxulJUiPbfQABGWRssyqjR2dmF2NG2nJDPIME596QYG4KyAaXWoB7Q3m2iGBt80JYfW5SxRE0w2sGKAJhJr9aNbzaoPavduo98ogmixyd4fjyR5F45Yj92XjzBsEKwwIBSIaW2v9mgaem+WegKC2yoXneQwtMz0BWYGKgw0owJGzUX0E2MqAoCxyZXtL9kBaIl8sFlof5rQEwexBtToF1W/RZnYGEd+gJWjP7IG0JCATaGl1CqrvBQS1ezdTo2WR5+Wi6Ha9uK0le2hgJCATAEHLiKdv0osECJAnNunFFm0WaQ1g1I93spkUVjmWWKsCgoJl5EXhVUChLNKaPTQZhIBMQt2z1tfO9F6noq+bPA2IF1iLS1EfXi0tNgwpG9bwtxotv0NASyGPNqjN2mw9Yg8iMiGbPOM8ByOaFHr0MQQA1GhYwxcFBAVKVkBS3oFIjEUHBM2OLb9Jt2qDlhmid82eqBkE+QAdlqBJfOrfW4NgqrEXnSPnPAWIBg60GY4KCBp76wnZ1JiLDgg6yaoFJYJLqw0KkOJgFChZAdHqOBWEu85DG6/Yh9SWkS2ASF3555vSq5plRlRAWk4SlfLNK7YDIN5n8x6fv3s8GrZ6Cz0Xq3xxED0l5fgM4Cvb7uxqmQjQWFH21EwMqI+pf58BEBQAd8ssVK+HY1CAeGxAe5mz3aiPlhggID2i5IE2PGkeBU6r2QgOzR3FlQ0rAYKOtVvga9W/S/3wA1DuQ66WWaMAKU931yyDPDasAgiyXTNBdAnikY1kAQQ56yqoUB2r7mWPIMsO7cdjwyqApF9e1U54tA5eqRz6Ut45i3iC8zxeDxTHNjw2rAII0jvF5JtiEMpl1l0WsUKuWTpZ2iynWJY6VhtqfVjbEju3yB7ZMohmNkaXdZYg3bksyh5pdM6UQSRg0amKdXmyMwR3Y0fZI9XEmw0QZpHxSKPskeL0qsiYDRBNFknlwPE8fOoBZY902mYEhFlkDDUIDumVgIzRvnuraC+Sap3cXb3rBrdaWmVeYsnYNFmEG3Y9WVtmj+yzqCaLpFsS6GNeXXJbOLIDoskiokGaM3t1yOsLajXMuJf9oVLagb1jQDP7cal1D8z2WTg7IJpjXylDSL5Csj0cO2SQ4naNswnJByQavbaInx0yiPZUi5nkJyBaOLY44NgFEHG8Zj+yOySE47TU3AkQQlI/vSIcF/rsBohlCbHLnqQ8vkjzu5QtllVHTnYExAKJlM0cFNp7jm2XnrsCQkj0m/Ft4djimA5cGmvX3aWZDNnEkjW2hoOA2I41M0CiPckrY91lH3Y7j+68xDqKYg2caHsTy0Y8w0QAFg76vyYgH1p5IFkZFOsDto9Rk2EpqaegUpKAfBbHC8lKoHiyxVEFfrv5oAYB+Tp7WDex5xZaHybnmfnKHYa8jkFzn3HVh+w3ymNTPTakrENA7t3akk3OyxX5s+WRpCjYjkBIWS8U3G8ApQkICkX9d7hwSz9LHN/zIX9GTzY8Bn95YU8rEMVWZg0Coo3barle2aSLMZ0a4V5DISQziEKkQxHrxaKt9WdKb3+3YZGZgFjUsn09w9byc6UJiEFrAmIQy/BjIlurz5YmIAa9CYhBLAJiEytDaQJi82JtD1Jm5nKDjd5aa+u5XrqchJV7DI2dPftP2xYBsbnWE3jl/qMXMAWGf95HxFfHxB47bUpsUpqA2BzdK/DKPYbmPuMIALozKaPpZadNnYSlCYjNqVECL4qdNvUnlCYgNtGjBF4UO23qTyhNQGyiRwm8KHba1J9QmoDYRI8SeFHstKk/oTQBsYkeJfCi2GlTf0JpAmITPUrgRbHTpv6E0gTEJnqUwItip039CaUJiE30KIEXxU6b+hNKExCb6Cjw5HZ7hU/5YdWVLfyyosFDBMQgFr+saBMrQ2kCYvMifzBl0yt8aQJicyEBsekVvjQBsbmQgNj0Cl+agNhciAApTyyxtdq/dO2r9dykG/QmIAaxwCZ9pcBDp23yRBN+FAoQEIVIhyJRAi+KnTb1J5QmIDbRowReFDtt6k8oTUBsokcJvCh22tSfUJqA2ESPEnhR7LSpP6E0AbGJHiXwothpU39CaQJiEz1K4NXs5MtxDD4nIAax/iuKHmK9ip7fK8MiIAafr+JQg8lTixKQqfI/3zkBsWmO3j61wisFEMQr2GhTfWJpAmITHwGywm06AoQ+N/icYhnEehdF38earWlt/7ECwHbFJ9aY7cyJQ3d3jQCZuYRB2YMbdKPbCYhRsPcLMwWSu8/MWbqWPcTemfDalV6gBgHxOQFlkRkzNcoeMlL62+hvCmYU7F1cE4xPztbo8EDMngGtT92FahEQvzNQFnlyxkZLqydt8Su6YE0C4neKZtZ+Yj+iAZXZw+lnAuIUTnnkW1ofsdwSQOX5V+glPE9A2qbiwrUJSJtzNFmk9NBzFrf0OwLONtUC1SYg7c7SbNiPkMh/l/cWWnvXZo0RUFptTVGegPRxowUS6VGWPfKYUg0oZQmlWU4dR9MzY/VRKWArBKSf06yQlJ6Pb60t/08e21M+aI9xNQLC0cmvBKSTkO9mvJD0tIJwdFSTgHQUcwFICEdnfxKQzoJOhISnVQN8SUAGiHpo8oklF7PGQB8SkIHiDgZFNvcCR9nkPzOSzXohIM86XDJK7cHSyJoChZQjGEitDn9PQDqI6Gyi3IGUI93zce4RAGYKp8it1QhIq4Ksn1oBApLavRxcqwIEpFVB1k+tAAFJ7V4OrlUBAtKqIOunVoCApHYvB9eqAAFpVZD1UyvwL3EGj/adUXaWAAAAAElFTkSuQmCC",alt:"learn icon",style:{opacity:t,width:"40px",height:"40px"}})},Bne=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAAXNSR0IArs4c6QAADSBJREFUeF7tnQFy5LgNRXdPttmTTXKyZE62MWvEsdxWCx8kKIDAd9XWVGKKFD/+I0BK3f7zD/48ocC/jkHav3+9GbC3Of/6fy9tfx7/u///r79/Yi6lxviz1GyfmWwz+o/TUFfGt76TBkqH59/WnVfuj4DMR/8MxBMwIHdMYBCVgDYEBBDpokmHIgoQ0iz+czRgdpGUevk9AcEF2w2KdzMjLHjM/yAg92JlgeIOFmaVGw8QkGtxsoPxOmtmlTeQEJCvwlQDg6AI5RYB+SXQk2D0Zxf9WPYcov67q81/f37y1MFAyyrly6/qgKwEo5u9ly/WD/XavXdYGjwrwCkPSWVA2up4fqCnONu4bNqfPbR/rWFA761DYw1MWVAqAmKZNRoIzTxeQEjg9BLJaiEoB0o1QCyyRnQo3kHT5m6RWUpBUgUQi6yxKxhXwMwuFJm0uM3CFQCZNUMvoaKWUVKZdfd7C21Sn3RlB+S/E6c7lUqJGVBS65QVkJmSqmWKv2eW5Y2vHQUlrWYZAWlwtMyh/SlTVwvC9KPikZOvtrCkKkWzATK6AqYLrHZ1uGg/qmWqkisTICMBTVsaGADSuxjRNQ0kWQApHURDGO6eoWhLrhSQZABECwf3GmNEjezttodkd0BG4Ih+QvX6pQ/Nzuc3f72/0USr+daQ7AxIxkBp59Tg6S9JPvnATnuf2x6C7AqINt3vsor9M1b9/L7qSVhKQLIjIFnhaC6fBeT1w1etNFuZWbSQbOe37W74eAiIfjhol8zRjK0FX5NsVuqggWS7Y/XdANEEY6UpNObUtLXMIFfjrtIkbVx2AiRtEE5O1sxRA965bQRIttm07wKIpvxYZYBRQ2qvewKSdk8rdNLc+xaQ7AIIWnqsCLrW4Bbtz1/I0Ptb9a0m1kZFIdliP7IDIKkEt6Dn6KOfTmlfAXlib4J+Dif8ghYdEE1pFX0uhmx862rmFfXembVZ0axvncFMdY5uqjQrkWnU7jubySyWkKCLW+hSKzIgaGllGdQHfbx8qKbfyLeYWOqJxjBsFokMCJKiLYO53LFOA6AmXXUUjFQBYbNIVEDQoEa9fycWbodFNe2dWJkWLbVCLnZRDcbssQYxLSRWpkXHDefHcDf04YttxVzjafNe0RXd+nQLKbWsgDQTLSIgzB5m4b3tCDFs78BiE42CGcqToW4GzB7hVpln/LxkFBQSq/0IMp4FjGZiRQOE2cMstHBHiGlbZxYLE5JFrGCEBbhrGAkQZO9hESQT4ZJ18iQkyFhhskgkQJg9/KhDVnar/QgyVpgsEgUQZg8/OPrIiHFbWwvzbpNFCIi/MSPdAbJQtfudLYEQGGfHMNE1CiBIeRXlXk2ED9wJsro/kUUsxpiWOYLpkFWLm/PpUMMdIKu7xakWMo57FokACLJiRbhP2GEJGiLmbdOciQsyhnsWmZmglQ+k8orZw0ppXT/IwjUbG2mM8oCwvNKZ9snWyAr/RBZxXcRdB/9QFwHE+x6fNGW0saQV3mIvIlUQrvsQb/NJAXBPsdEc+/D9PJFFQnvAGxBp9ZitcR/2U8rhJAPPPheRqgjXRdITEEmYWeFTutVhUkgWmTEx0r+bT90G5v7DwerjQ67OIlIl4bYP8QREEn1mVRq3Aq+8UgBZ5WdMLHlhpu+piEYGhPuPqdCaXyyZeGZBk/p284InIFJadRPF3Fo5OkSyyKifpL5n4JtSf3RCU4OCfyzGLa3OTi7x9dKiNhozAvJiGuQEywvexP6enppUCs2s9BJ8Ln5wGZQnWNNG9epAWunbfY16SgJkNDtNaTU6malBAUBmVqLZe+P17xVAABk1spSdRvudiicBmZKv5MWSkUcPV6R+CcjJbswgcdmT9o8ExCB20mpBQAxEXtSFVGaNxk7yRKkMIokxugot8gS7PSmwChApMxGQUxAISGwmpROnkb0tATnFnBkkNgDS3XkA4rJojpAuiYf8noAgKsVtI8VvpBxiBlFkkNGNXlxL5bozArI4npLABGRxACa7l1b7kXJI8sRIVpqc5vhrAbMDSwITkFmF114vnWQRkEn9CcikgM6XewDisl92GfQjuATE2eEGw9+dZI34SiqxRvqcnqbLoAAgbWJe9zYtapEO3mWRkfKqSbbi6Hg6FF4mlFJ0m5jLpmxa0XodtGqg/7S9Y/tP+4P4wcWrLoPyE4Va/6RvH7bk9gIESamjqTq9mxJOUALEzQuegEibMh71JiThzZQIyIUwBKQOANJMJS+47Uc9M0jYjZkUTf7eXIGQJ1jeR6kIIG4rh7kF2OE7BaTyyrXU9swgyEbdVRx6+hEFJEDcNujeGaSNL9WeEe7xEZcUHkQqr0oDwjKrMBng8zDXKsd1cFAg1xWktn+Xz14qr9xLbG9AkDLLXaTlNqk7gFRiuy+OOwDS7MPTrHwQSdkjxP4zAiDIPoRZhIC4KBABEOS4N8Rq4hKhvIOGPr3qskcBBEm37vVoXq8+PjMk3iG8GeImwNMsllmP+3jZgFtkj2hli3Siwc36Mr8+2jGSPcJUC1EySIsQN+uP+tRtMCl7hFq4IwGCPBNpbcKsLm4W23fgrbJHKFKPmCNZJOJ972vZZ+98q+wR1WiIiMwizxrbYrTtskdUQNAswqfrFrZ9rg9k4YtW8of97inkRIvHvs+Ze3YkJJ4hq4JwxCr3IiFFnXVTsuuR0ipqNRM2g6AnWnw2EpsmtFwOu9BFzSDoc5HWjqVWXEiQfUdYOMKmtVO80fQcWuS4/l16ZyliFzmD9OghGzw+QFzqdXXnKeDYIYNoSi1CovbxkgtQOLYojXfIIC2KqOjctC/xPNwpuinfJk67AKI51dpGfNh2ezTUwLHNnnEnQDQB2CJ97+F7+C5T7hV3AkRbahES2NvTDVE4dtn3/hZkN0C0kLDcmvb+bQearL5lLHYEhJCsNT3auxaObfYdZwF2BUS7aecRMGp7rF0JOLarBy9ip6l9CQlmfqmV5sh9e813ziBNfO1Ktn3AJPcu/n0pODJkkFFI+GErPUnaxWjLPcerLLtnkD6fFrwfR0ZBQ09IUKX0mToFHFkyyDnMmj0Jn5PggCCvrffe0sCRERDt6VaqYOJ+V7XU7DvS6ZmlxHqNuCaTsNS65wXNHungyJpBerjRlY+l1ntAUA1TwpEdkDY/NMDMIt8hQU+t0sJRARB0T8Is8h0QZHFJDUcVQJCVkIB8BwTZe2Tdw/5WI/0Ej5kim3aWWZ+QIItK+uxRJYOgT9tLBBw84EXKqxKLa4lJHqaQSgaWWZ/0SICUWUwqASKVWQTkExBJqzLlaCVApFWRgHwCImXbMr4pM1Hw1fhKetxtRwjIoU4lQyAnM5X0ICDAiUUlQxAQwBDAgUapUpSAfDVNJT1GMwgBwRearVoyg+DhutuDEBBcx61aEhA8XASEm/RLt7DE+iULASEgl4CUeQAmJBMCQkAIyBtI+ED1JEy1kkJ6AFZqAzoISJn3sJo+BOS7SyqXWVL2aGoREPywY7uW0kt4fUIVIUFO+Zo+pbSplkFQE/SVsv3byq7MP02TvxRfulfKM6Ume7gczSKZoRidW6nyquIepM1Zk0VGjZT1unILarkJM4sMs1sue1TNIN0hLLVwVkrCUR0QlloYIKWfDVUtsc7WYCZ5D0rZzNElISC/lEAekGHrbY5WLWs0OLIfcYvRIiBfJWqgaJ4JiAJv1oBgvASMgLx3cNujtP+y//QsUT5bXAWagGS3P+c3pQABmZKPF2dXgIBkjzDnN6UAAZmSjxdnV4CAZI8w5zelAAGZko8XZ1eAgGSPMOc3pQABuZavPf/4MaXsXhf/PG63PSjlz0kBAvLVDnyBsdhHaqXVgIB8VYgvLv56/6p97pw/Bb/V5C7ozB6f6pT6YoY7UzCDfKpDQAjIN1YICAG5WkCZQQ5VCAj3IK+AcA/CU6y3VSfLLJ5ifTEHM8g1K/15QPvwVJUffoLwItIEpIr9Oc8hBQjIkGy8qIoCBKRKpDnPIQUIyJBsvKiKAgSkSqQ5zyEFCMiQbLyoigIEpEqkOc8hBQjIkGy8qIoCBEQf6fOHqXb6Yrny37OrD3W9P+I5otHrNdJfyrUYY2UffBFRoS4ziEKsj6YZvuSaLyMqYk5AFGJ9fE599+zRZktAFDEnIAqxkgDSZsy4g3GnUKBQR7MMn1lnBlHEnIAoxEryF3J5mqWIOQFRiHU03XmjTjiU8SYgSsFOzXd6BtI35+OzLXolASkaeE4bU4CAYDqxVVEFCEjRwHPamAIEBNOJrYoqQECKBp7TxhQgIJhObFVUAQJSNPCcNqYAAcF0Gmn19HOS9goJf4wVICDGgh6vo7S/TuUBCL8d0TieBMRY0ABv/DKmhjGlmIZifnQV4T0tfmLQMKYExFDMIIDwdXbDmBIQQzGDAMI3dg1jSkAMxQzyeRECYhhTAmIo5tGV56cOCYdxPAmIsaBHd22z3v74zlNHvW3f8fMo8dbMqGiv/wcKn7nnrW5gTwAAAABJRU5ErkJggg==",alt:"light icon",style:{opacity:t,width:"32px",height:"32px"}})},Fne=e=>{let{opacity:t=1}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAAXNSR0IArs4c6QAACcRJREFUeF7tnWFu2zgQRtOTtT1Zdk+23ZPtlkUEGIZlit/wozSaZyC/QlKcN/NE0rGVbx+8IACBXQLfYAMBCOwTQBCqAwJvCCAI5QEBBKEGIKARYAXRuNGrCAEEKZJowtQIIIjGjV5FCCBIkUQTpkYAQTRu9CpCAEGKJJowNQIIonGjVxECCFIk0YSpEUAQjRu9ihBAkCKJJkyNAIJo3OhVhACCFEk0YWoEEETjRq8iBBCkSKIJUyOAIBo3ehUhgCBFEk2YGgEE0bjRqwgBBCmSaMLUCCCIxo1eRQggSJFEE6ZGAEE0bvQqQgBBiiSaMDUCCKJxo1cRAghSJNGEqRFAEI0bvYoQQJAiiSZMjQCCaNzoVYQAghRJNGFqBBBE40avIgQQpEiiCVMjgCAaN3oVIYAgRRJNmBoBBNG40asIAQQpkmjC1AggiMaNXkUIrBTkx8fHR/vhBYEogV+/a6n92F8rBGlSfCKHPZfVLvD3lyRWUVYI8g9yVKvdZfE2OX46r+YW5K+v1cMZA2PXJtAEsa0iCFK7uO4QfdtqtRux5YUgFqwMupCAdZvlFoTzx8JKKXopBCmaeMI+RuDWgrTgtrfrjuGgVSUC7WzxvfMu6K0Fsb4DUamSbhxr+zta26rvvW4tiPsMdOO6KRXafwhSKt8EO0gAQQaB0bwWAQSplW+iHSSAIIPAaF6LAILUyjfRDhJAkEFgNK9FAEFq5ZtoBwkgyCAwmtcigCC18k20gwQQZBAYzWsRQJBa+SbaQQIIMgiM5rUIIEitfBPtIAEEGQRG81oEEKRWvol2kACCDAKjeS0CCFIr30Q7SABBBoHRvBYBBKmVb6IdJIAgg8BmNM/wpPnnR2pG5hx9POeZ10aQGRU/MEaWZwY/P1Yz8iC+6BNk3hVpD3304RwI0iM8+fdZBHku6rMEifCa8excBJksQG+4SMJ7Y8/8/fOdNzLvyAoSETO6ejSeCDKzqg6MFdkuHBh+WpPn4uo9RO3dhdU7eURK9ZrPcSDItJI6NlAGQV49MTCbIDNWD1aQYzU9rVWkyKZN4sBAe3dfVW71EZ3q9WatHghyoFhmNolsGWbOozfWXoGp5wFFkAirWasHgvQqZfLvI0mfPJW3w+0dqlcKcoXVA0FWVt3Xk8Ijf/RaNd29O7Aq+OgKol6n8Zm5eiDIqor7uo56V1w8zd0ii5yhRgpX5TTz7LEx512shdWnJn7hFP/819a9f2+8QpArrR6sIAsrrxXXp3C9yJZM+QzUv7/n+O4/t6qSH/1joTq+Y/VAEKFgV3dRC8axH29jqgf1I4Koq8foGWckh2yxRmgtbhvZ0riKximIejNwrR6sIIsLfvRy6h21XcdVNOqceiuIOq4rTg7po9V6Qnu1aJyCqKtar5DVWHvjRtPGFitK0Nhf3c60KfXu2Oq0HYI4xlTje+6HILNIGsZR9+SuA/qRbccehndnoquuHpxBDEU9c8irCqKsbO8EUeJ0b62O3Axcb4T8ufbIX1aVousl0X19Zc6PfdRth/P8sc2vx/ZV7HvFpK4eq/LHFitayab+auGsEESd26uivvLqwRbLVNwzhlWLcIUg6uo262u8q1YPBJlRyaYxlG3MNhXXO1jb+LMEufrqgSCm4p4xrFI823VX3GGV+T2Kq66QK2J7zB9nkBnVPHkM9Q7dpmF9Z+UhTmWFexREEWzVO1cIsuBdtIgz6t11xfkj8k7WJoga3+rVgy1WpIqNfdUCWimIMsdtBYj0NWJ/OTRbrNXED1xP2b6sOqBHDupNkLYFbPGNvs5YPVhBRrO0qL2yP195QG/XUs5JTY72hazRL46dcfbYeLKCLCr6kctkEKR3d30VbxNE+YbkWatHL0brGyLuoHvbFPf1R4R4bKvcmbf+1oS9CKjHWGXw2O/M1QNBZmRw8hjKAXabwupiWiHI2TcytliTCzw6XCZBInM9wmm18K/mhCBHMrWwTeSu7P6IyTOGyHawh/QKcrDF6mXphN9nOaCr72QdRYogR0mJ7Xp34rP3tnthZRKkd4cVU2d74IQyH7ZYCjVTn8iefvU7WBuC3o1IQXWV1aN3A7Ayd9/Be4lzX18pjIggZxVVj/Moh7PiUFZ0BBnNbrB9RkEic36F62o3LrZYwaKe2T1y/lj9DtYW98x3sq62erDFmlndE8aKCHLWnXemIGfF8C51rCATCnvGENFCO7O4ImJv7K64erCCzKjsSWNE9vJnF9eMg/qZgrOCvCBwtYRUFuRswREkgSCRu/DZBRaRu6Xmajerx3LhDDJpixQdRvmexHZN5T9JRef73D/7/Pk7yBOBK9+1Zhcv4+kEWEF0dvQsQABBCiSZEHUCCKKzo2cBAghSIMmEqBNAEJ0dPQsQQJACSSZEnQCC6OzoWYAAghRIMiHqBBBEZ0fPAgQQpECSCVEngCA6O3oWIIAgBZJMiDoBBNHZ0bMAAQQpkGRC1AkgiM6OngUIlBXk7G/hFait9CH2vil56wfHtext/xIsfSYJYDqB7wf+G9btBZlOlQFLEUCQUukm2FECqQXp7R9HYdAeAs8ErOdY90MTok8qpBwg0COQWpAWXORZUz04/B4C1pu8dfCH3LHVopAdBKyrR5vwKkHatZok7fXpIMWYZQhsD+hrctgf1rdSkDIZJND7EECQ++SSSAwEEMQAlSHvQwBB7pNLIjEQQBADVIa8DwEEuU8uicRAAEEMUBnyPgQQ5D65JBIDAQQxQGXI+xBAkOO5bJ8EOPIFnuMjntdy+5La9umG82Zy8SsjyLEE3fUDl/bPMh3De91WCNLPzd0/aPlzxWea+piv2QJB+nl590SNfu/rt7B+I+/64b+fIYL0M4ggfUa3bYEg/dTe9fyxRc455E0NIEhfEM4gfUa3bYEgx1J7V0lYPTr5R5BjgrRW7QEU7ecOr+2bePZv5GWHhSDZM8j8rQQQxIqXwbMTQJDsGWT+VgIIYsXL4NkJIEj2DDJ/KwEEseJl8OwEECR7Bpm/lQCCWPEyeHYCCJI9g8zfSgBBrHgZPDsBBMmeQeZvJYAgVrwMnp0AgmTPIPO3EkAQK14Gz04AQbJnkPlbCSCIFS+DZyeAINkzyPytBBDEipfBsxNAkOwZZP5WAghixcvg2QkgSPYMMn8rAQSx4mXw7AQQJHsGmb+VAIJY8TJ4dgIIkj2DzN9KAEGseBk8OwEEyZ5B5m8lgCBWvAyenQCCZM8g87cSQBArXgbPTgBBsmeQ+VsJIIgVL4NnJ4Ag2TPI/K0EEMSKl8GzE0CQ7Blk/lYCCGLFy+DZCSBI9gwyfysBBLHiZfDsBBAkewaZv5UAgljxMnh2Av8DYx0N56ddkZ8AAAAASUVORK5CYII=",alt:"tv icon",style:{opacity:t,width:"34px",height:"34px"}})},zne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:kne,alt:"auto mode icon",style:{opacity:t,width:r,height:n}})},Wne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:Cne,alt:"cold mode icon",style:{opacity:t,width:r,height:n}})},Hne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:Ine,alt:"dry mode icon",style:{opacity:t,width:r,height:n}})},Yne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:Ene,alt:"hot mode icon",style:{opacity:t,width:r,height:n}})},Vne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:Dne,alt:"wind mode icon",style:{opacity:t,width:r,height:n}})},Gne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeoAAAB6CAYAAABwfBDNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAQcmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYTg3MzFiOSwgMjAyMS8wOS8wOS0wMDozNzozOCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyNC0wOS0xMVQwOTozMDoxNCswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjQtMDktMTFUMTU6MjA6MTMrMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjQtMDktMTFUMTU6MjA6MTMrMDg6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOmMxOGEzZGM5LTU2OGQtMzg0Yi05NjkyLTJjYmQ5ZjU3ODJiYSIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjU5NWU4MzI2LTZkY2QtMjc0MS05ZTliLTNiNjYxZWYyOTk4NyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIgdGlmZjpPcmllbnRhdGlvbj0iMSIgdGlmZjpYUmVzb2x1dGlvbj0iNzIwMDAwLzEwMDAwIiB0aWZmOllSZXNvbHV0aW9uPSI3MjAwMDAvMTAwMDAiIHRpZmY6UmVzb2x1dGlvblVuaXQ9IjIiIGV4aWY6Q29sb3JTcGFjZT0iNjU1MzUiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSI0OTAiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSIxMjIiPiA8cGhvdG9zaG9wOlRleHRMYXllcnM+IDxyZGY6QmFnPiA8cmRmOmxpIHBob3Rvc2hvcDpMYXllck5hbWU9IisiIHBob3Rvc2hvcDpMYXllclRleHQ9IisiLz4gPHJkZjpsaSBwaG90b3Nob3A6TGF5ZXJOYW1lPSItIiBwaG90b3Nob3A6TGF5ZXJUZXh0PSIrIi8+IDwvcmRmOkJhZz4gPC9waG90b3Nob3A6VGV4dExheWVycz4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2YjI3YWM5OS02NWJmLTQzNGItYWNhNi0zZDI3MzQ1ZmI1MTgiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMDk6MzA6MTQrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1MTM4MDczOC1iZWQ3LWYwNDgtYTBiNS01NGZjOTdmZjhmZDYiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMDk6MzA6NTErMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZWE0YThjMzAtZWRiNS1mZjQ1LWI3ZDItYzQ0MzIxYTgyZTFjIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDA5OjMyOjE3KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmU4NTVhMDJiLWQyMWEtYjU0Yy1iZDFjLWMyOGMzM2FiYjhjYiIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMjoxNyswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpkNTUxZjNjZS1hNWU5LWJiNDEtYTBhOC1kODE5YjQyMDAxZDciIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MjIrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBpbWFnZS9wbmcgdG8gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MTMwZDM2ZmItZmZmYy1kZTRlLThlN2UtNzI3OWNkZWU1NjgyIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDExOjIyKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ1NzhjNWE2LTA0ZDAtMmE0Ny1hOTQ2LWI3MTUxNzI4MjgzNCIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxNToyMDoxMyswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImRlcml2ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImNvbnZlcnRlZCBmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpjMThhM2RjOS01NjhkLTM4NGItOTY5Mi0yY2JkOWY1NzgyYmEiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTU6MjA6MTMrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NDU3OGM1YTYtMDRkMC0yYTQ3LWE5NDYtYjcxNTE3MjgyODM0IiBzdFJlZjpkb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6NzViODZhZDgtYWZhZi03ZTRjLThlMDYtNDlkMGYyODQ4ZjE1IiBzdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NmIyN2FjOTktNjViZi00MzRiLWFjYTYtM2QyNzM0NWZiNTE4Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+8z6LgAAAAs1JREFUeJzt2rFtWmEYhtGPOAu4teSGFULl1pklK1C7s1fIPoxhj5DaXVLYkdIgIUx8H9A5EgL+Ar3do3svq83d/QAATV+WHgAA7CfUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUcLm2M/Pr/bVdeAtwpK9LDwD+i+3MPP7z/e/npwW2AB/gihou048Dz4A4oYbLtD7wDIgTagAIE2oACBNqAAgTagAIE2oACBNqAAgTagAIE2oACBNqAAgTagAIE2oACBNqAAgTagAIE2oACBNqAAgTagAIE2ro2M7M88z8PsFrn1P89vP7VuATXN3crpfeALyF73FmrpcecoDrmfk+M68zs1t4C1w8V9TQcI5XqOe4Gc6OUANAmFBDw9PSA45wjpvh7HhGDQ27eXvmu57+c+qXeYu0UMMnWG3u7pfeAJzevn9+rz51BfBhbn0DQJhQA0CYUANAmFADQJhQA0CYUANAmFADQJhQA0CYUANAmFADQJhQA0CYUANAmFADQJhQA0CYUANAmFADQJhQw2V6OfAMiBNquEw/DzwD4q5ubtdLbwBObzczrzPz7f39YWaeFl0EHGW1ubtfegMAsIdb3wAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQ9geuvz9pcv6ltAAAAABJRU5ErkJggg==",alt:"temperature add icon",style:{opacity:t,width:r,height:n}})},Zne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeoAAAB6CAYAAABwfBDNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAQcmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYTg3MzFiOSwgMjAyMS8wOS8wOS0wMDozNzozOCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyNC0wOS0xMVQwOTozMDoxNCswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjQtMDktMTFUMTU6MTk6NTkrMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjQtMDktMTFUMTU6MTk6NTkrMDg6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOmEwMDZkZmM4LTQ3Y2YtZmU0ZS05Yzg0LTgyMjU5MzFhYzE3OCIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjdlMDc2Mzg2LTVmZjktNzU0MC05OTliLTI1NjczY2I1MDRhYiIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIgdGlmZjpPcmllbnRhdGlvbj0iMSIgdGlmZjpYUmVzb2x1dGlvbj0iNzIwMDAwLzEwMDAwIiB0aWZmOllSZXNvbHV0aW9uPSI3MjAwMDAvMTAwMDAiIHRpZmY6UmVzb2x1dGlvblVuaXQ9IjIiIGV4aWY6Q29sb3JTcGFjZT0iNjU1MzUiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSI0OTAiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSIxMjIiPiA8cGhvdG9zaG9wOlRleHRMYXllcnM+IDxyZGY6QmFnPiA8cmRmOmxpIHBob3Rvc2hvcDpMYXllck5hbWU9IisiIHBob3Rvc2hvcDpMYXllclRleHQ9IisiLz4gPHJkZjpsaSBwaG90b3Nob3A6TGF5ZXJOYW1lPSItIiBwaG90b3Nob3A6TGF5ZXJUZXh0PSIrIi8+IDwvcmRmOkJhZz4gPC9waG90b3Nob3A6VGV4dExheWVycz4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2YjI3YWM5OS02NWJmLTQzNGItYWNhNi0zZDI3MzQ1ZmI1MTgiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMDk6MzA6MTQrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1MTM4MDczOC1iZWQ3LWYwNDgtYTBiNS01NGZjOTdmZjhmZDYiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMDk6MzA6NTErMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZWE0YThjMzAtZWRiNS1mZjQ1LWI3ZDItYzQ0MzIxYTgyZTFjIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDA5OjMyOjE3KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmU4NTVhMDJiLWQyMWEtYjU0Yy1iZDFjLWMyOGMzM2FiYjhjYiIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMjoxNyswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpkNTUxZjNjZS1hNWU5LWJiNDEtYTBhOC1kODE5YjQyMDAxZDciIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MjIrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBpbWFnZS9wbmcgdG8gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MTMwZDM2ZmItZmZmYy1kZTRlLThlN2UtNzI3OWNkZWU1NjgyIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDExOjIyKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjBmNGIzM2E2LTU3ZGMtZjU0OC05NjJiLTQzOGI5ZWI0MTI1MyIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxNToxOTo1OSswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImRlcml2ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImNvbnZlcnRlZCBmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDphMDA2ZGZjOC00N2NmLWZlNGUtOWM4NC04MjI1OTMxYWMxNzgiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTU6MTk6NTkrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MGY0YjMzYTYtNTdkYy1mNTQ4LTk2MmItNDM4YjllYjQxMjUzIiBzdFJlZjpkb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6NzViODZhZDgtYWZhZi03ZTRjLThlMDYtNDlkMGYyODQ4ZjE1IiBzdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NmIyN2FjOTktNjViZi00MzRiLWFjYTYtM2QyNzM0NWZiNTE4Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+nlDK9gAAAmlJREFUeJzt2bFNw2AURtEXmCAtEk1mSJU27MQKMFjGCHPQQWHaSIgivkbnSO6/7ur32x1P5wEAmh7WHgAA3CbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtTQ8Toz15n5in/Xn63AHTw+PR/W3gAs4Xubmf3aQ35hPzMvM/M5M5eVt8C/50UNDVt8oW5xM2yOUANAmFBDw/vaA/5gi5thc9yooeEyy833MP079ccskRZquIPd8XReewMAcINf3wAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABAm1AAQJtQAECbUABD2DWk8NouNYYVoAAAAAElFTkSuQmCC",alt:"temperature reduce icon",style:{opacity:t,width:r,height:n}})},Qne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeoAAAB6CAYAAABwfBDNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAOm2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYTg3MzFiOSwgMjAyMS8wOS8wOS0wMDozNzozOCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjQtMDktMTFUMDk6MzA6MTQrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI0LTA5LTExVDExOjIyOjEzKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI0LTA5LTExVDExOjIyOjEzKzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpmZDA3NmY4My0yMGQ2LTgxNDEtYmQxYi02NzZjODZiMGFiMDciIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDpjNTg0NzMyMi1kZTRjLWMwNGYtYTUzOS0yZjczYzZjZDJmMDEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2YjI3YWM5OS02NWJmLTQzNGItYWNhNi0zZDI3MzQ1ZmI1MTgiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMDoxNCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjUxMzgwNzM4LWJlZDctZjA0OC1hMGI1LTU0ZmM5N2ZmOGZkNiIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMDo1MSswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDplYTRhOGMzMC1lZGI1LWZmNDUtYjdkMi1jNDQzMjFhODJlMWMiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMDk6MzI6MTcrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZTg1NWEwMmItZDIxYS1iNTRjLWJkMWMtYzI4YzMzYWJiOGNiIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDA5OjMyOjE3KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmQ1NTFmM2NlLWE1ZTktYmI0MS1hMGE4LWQ4MTliNDIwMDFkNyIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMToyMiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImRlcml2ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImNvbnZlcnRlZCBmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxMzBkMzZmYi1mZmZjLWRlNGUtOGU3ZS03Mjc5Y2RlZTU2ODIiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MjIrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MGM5NzFkZmItNDNjNy04NDQ3LTg4ZTctMmZkMDY2MTg1OWE1IiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDExOjIyOjEzKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmZkMDc2ZjgzLTIwZDYtODE0MS1iZDFiLTY3NmM4NmIwYWIwNyIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMToyMjoxMyswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowYzk3MWRmYi00M2M3LTg0NDctODhlNy0yZmQwNjYxODU5YTUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTMwZDM2ZmItZmZmYy1kZTRlLThlN2UtNzI3OWNkZWU1NjgyIiBzdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NmIyN2FjOTktNjViZi00MzRiLWFjYTYtM2QyNzM0NWZiNTE4Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+tdNTGAAAFEZJREFUeJzt3XmsbWdZx/Hv87xrrb3POXfsRFFpKS2DoVpLGUqlzglG1ChKIHH6w+AQlTiLE1FRozEa9R8SNXHARCCAhqCg4gCtIiiFtqLFai0dwRZ77+255+xpvY9/rLXX2fvcc9p7y7m7q/H3SVb2tPZaZ+1kn99+Z4sIREREpJ/8yf4DREREZH8KahERkR5TUIuIiPSYglpERKTHFNQiIiI9pqAWERHpMQW1iIhIjymoRUREekxBLSIi0mMKahERkR5TUIuIiPSYglpERKTHFNQiIiI9pqAWERHpMQW1iIhIjymoRUREekxBLSIi0mMKahERkR5TUIuIiPSYglpERKTHFNQiIiI9pqAWERHpMQW1iIhIjymoRUREekxBLSIi0mMKahERkR5TUIuIiPSYglpERKTHFNQiIiI9pqAWERHpMQW1iIhIjymoRUREeqx4sv8Akf9vzOyM5waDAVVVcfToUaqqYjAYLO3v7t3t5uYmZrZ0nPF4zHg8Znt7u7vfvBkGwyGDQclwOASgqoYUxYCqGoIlwK8BfhLYAN4L/Dnku5v3ZyaTSbfNJiMe+czD5+VzEZG9KahFemAewvOQXgzq+esA7s5wODwj7COCnDPj8XjPHwJzRVlSVhVVOaCqBpgXRyPsLYQ/r93la7H8RsjvA94GvI/wExHRnGNWH+BVi8jZUFCL9MA8qFNKFEVxRlBHRHd/OBwuPQao65rpdEpK6bGDukiURdn9IDAvroyw5xJLrWDHsfwqyK8C7i6r6l3HimO/sbl56pMPnL7/AK5WRM6FglqkR8yMlBLuZ3YfMTPqWWAGERl37wLbLOFWkDNE7B/UZo4nx73ZLPkwstm8u0peeGvOQI5nuvnr3P2FycuvnOV6dKAXLCKPS53JRHpmXs28e8s5L90ubTnIkZ/I8avdx4nc3J/NZsymU9ydelZ/4YmTJy/o2r5FZGVUohZ5ijh58iQnHz3tx48fSxsbh6ZbW6cxc8qywMtEUZcMBoO2lN2GtlvbUa2gqiqKtrS+UGKv9jndVlUVD1Jz5Xg85vDhjXdeccUzP33q1Inzfp0iskxBLdJ3bfvxJRdf+o3HL5z91GQy3ZhMJvcMBoP3A28H7nRPpLTYtr0T1FVVUZSJoiwpypLkjvs8zPMA5vXdbXhbBnKRc7wh6nh4VtfDhx566C9Ho1Htvn+1uoicHwpqkT6KhTZjc4CLtifTNw2Hw6fVNUTm84uifDnwYznnXy8L+9XIzACKqmRtY4OIwGnasouiaErSRSIVzdfezCDHwDCiDXaHRwkOZaMCvjclu3G9GMDagDrPqOuzq14XkYOjoBbptXkVtZfAcN5GXJTlfIfjZvaLntJzqqp6rSeb5Fw3bdkReORuzHVKCZKTfKHkHAx3zpMBfw/ky7B8PRGXmaVDo9Foc3u0xXg8pqq684rIiiioRZ4aHgR+PoyfAC4E3/nuGrinb7fk96bsPzPvCR6RsYUOZu5Oppk4paneBuATQI3l1JTi818D/wB8r7m9m8ibC/uydF9EVsJ2j8cUkfNrr3HOa2trDIdDLr74YtaGG6ytrQGQrStRtzfxNPBLgJcBPwo8a36MyLFt5BdXVfGvo9GInGsswKz5ju8OajObV7G/Osy/GfgI4b8JjLK3VeEBo9GI7e1RM/PZaJOHHnjgPHwqIrIflahFVu7MUZFh3m3ZFgMawoD297ThnwY+TfjtwHtopvx8LoB5Xos6vmVzc+sn53snC8BxcwiwtjOYkbpjAm+1yG8FJ84sMVfAZOeP0YhOkVXTt05kxYqqohwMKAcDBmtDynae77IscV+eWewx5i4BuBt44/xBWQwYj6Y33H777TabTvFd84E/vjNC+uuAW8zst9GPepEnjb58IitWlgXNcKqd38mDwYCyrLpZw+YBG+xumsos/772j9CUeKvTp7cxtwtuuOGGcjKZTNyMPJvumm50/t7HafJqSs6vJXi+WXo++O+Df/QJXK6IfJZUohZZscWFN4bDYRfSZTfG+ZzGKl9IeEE04b6+tja56KKL6ohgMplQ58VFNM756/4xmLep+5c379e/DJFV07dOZMXmQT0cDqmG6wzWNhisrVMO1vCiIiwR1lR7m6Vm88A8mvZr2GnHDv8ecAenLAbMMnfcd/+DdRjNeGkvyOaEJ8JtYXnM5dANz805oxnaZVFjUb8vIvJoNCJy/qqIwLI6n4qsmqq+RVasLKtmtrAigZdE5J0JSdwxO6vfz5cArwe+ddfz75jfaYLemqrveScwe4ygtdw2infV67cC95vZM4AvBI4BJ87qIkXkwCioRVasLEuqqrq8qsrXhRWfA0RK3i512bRdd23UXa62QRsAfgS4Fvic5smuE9g/AH/R3n8m8Dozu9DM7ga7GbgZbHvXe3aZh3QG/CTw8TaoLwWuAv7ls7l2ETl3CmqRFTty5EhlZr9fpPLLSYmI3MwaBgtV03sIb6fl3rPEfT+Wv8uwUQQV4X+I5S9pXur2/yhNL/E/XQhjdkI7NyXuxUK3cQvw1SlZgvoFZqagFlkxtVGLrJxvVNXwak8Jt0TyEiO1Y5udyEaELa8r3Y1f9ub+fLMMlm/F8tdD/jczoyjLdeBqs8ROSdwh/NqAtwe8IYDAu7bwOYuMMWuPOyMl+5uImjpPMfP/Xc3nIyKLFNQiK3bXXXedKIvizec0xnk+EUl0ncBmHtwBvAHyV0C+Bct4Mj78oQ+dnNWzP4q9O3458PPg39+F/p7nas734X/+0N8dOrT+iiNHjrzyyiuv+NPJZHoOVyoiB0FTiIqs2A0vu5Hbbrvdr7rqOTeubaxfVNf12U1MEgVEBfgY8v2QP2HMthaDNRPMZjNuu+02v/7662+cTqfPAn8Z8GpgI3I7M1lwCnhh7flObIYznxc8g+V2NjSnsIq6hmmeEdm4665PcvIzD56Xz0VE9qagFlmxl7z0i5lMJgwGg2ba0IhuPu692GKHshg21eNRN/N1e007YAtoghqgKAZEZCKinfDEbwTeVodd6tEd85drzz+9V1ATzXSm0/EMwnn09Baj0YThYJ3//MSt5+mTEZG9qOpbZMXMjMOHD1MUBckCJ5rFM8jdliyWtmY5jYzFNsZp3EY4EyzXWLusZVDjGI5R1xNynjWB3riJ8J+dV517U+X9lc9+9rM9lWXXmc2hfc2xcKrBBtVw4+oLjl/ytudffe0PXXfdi/U/Q2TF9KUTWTF3YzZr2nq7Ku99lo9cLmg3HbwgtxOTzEvTrcdfMOMvgc2F/Z5+3333rY9G24zHY2bT6cJxfPH29Xj1qkceOflr995777P2PLKInDcaniWycvNwbSYXcY/2Puz+7TzvkZ3bJiprqrHZdwTXwgt5cZ/mFIloTjR/LedMmQqm420OrQ+JWQaDhJEttRXpXkUEdV2nKOzYE7liEXniVKIW6Y2loVTLWzflZ7Fwv9maJTF3Pbd7GFfz/NeDb3TnwO/9xw98YMuycezIUXZ6ic+rx7sS/fb8PUaqzvvHICJLVKIWeVI53Qwj4W0wLszB3d5P7eO6Tc55J1Az2ymMN29YLkm35/DgFYT/XNuxjNozDn/14he9NMOM0fYEjK6k7st920YAqUg0vdlEZJUU1CJPghyB4xAURLwcuGwnHhdK1vN5v7vgnId6tNXi1j3VBfROyAZwGHgZwSuAYuFHwMMZ/iDRnHUx3P3MDuiL/c5VCyeyYgpqkZVzImbt/eKXiPjxpZfboVFNR672qe61NqC9ab8+28GV2WirsqM5nPEjwD0ebYF875L0XFfdbWazPfcQkfNGv45FVsxIRASnTp0aTKf5VWZlu5Sl7dNze6ftuetctqt6e/dUoEvvjozPx0iTR5B/EPIfeTsUbPe5zgzrPG5vgXziLC9TRA6IStQiKzYejzEPTp06NfGj6zdX5foVMCPnGizIYRA1EHh2sjVjoXeHdBhYboK9G8bVDfNqb+tMUTjT2WxmZjc5/EK2/PcOSyHtARknyOSYt4EHQYDxW8nqS8zS7Wb+r+fzsxGRMymoRVbsM//7MBddfIxjx49EVRSvy3l8Kza7HMuRIxbapZs2aqcN53n1dPu4qQHfVQIPyN4EsAc2GBajup7dMxikD9588023XP/il8TOelnLpemuGnwXI98B6ZsW1qkWkRVSUIus2KHDAwaDkqpKzKbTE9N6+uu0K1bNl7k0S01qLlSFL4Zo6krQZwZn94xBjszprU2SO9dddy3zcG6qt3N30OZmvzWqF+wzMYuInD8KapEVm0zGbG9vUedmTm0zw80wb4ZOwfw+O0G9b2ev5vXFNmuLnbbsyWSEWZCKZr+I/RYAecwAfhFwJfAuYOvsrlJEDorqsURWrKoG5GzNGtQezWpVKQgvmk5lewSpx749spfUs5qicIKaoFm4o6zSfN3q7nzd9vguB94L/Anwo2fzN4jIwVKJWmTFqnIIUeApEYzaebsLmq9j2xjdTmiSF1qh947VxXHWGfPMo1ubFEUJQLKFnuRnXW3drXkNcB1wQXv/6WdVPS4iB0pBLbJixoCIsq2vzphloMJJGAm6XtcAznxmzz2HXy0O57JMnbdZWz/ErK6bEnieV6fTzlq2cxCPhXHYu+cF33H1wvFv2Z6Mz/VyReSzpKAWWbUoeOSRU1xw/IIqlcOvqevZ05s5RRJdYi6kciwG7f5HzZAfmdbccdnTL/v4pz71qToiU0/adab3KE3PJ0HZ94BNR7UvIhw8B9i/jSfb53q1IvJZUlCLPAm2t7fNLrTfKFL5fbkGJ0F2wq2Z+GTRUql58YUzw7cq1yf33vPgR4DfAnsrNsBsBjZpBlvvmill5+Hu6nEn8MPg126PttgebT00npz+j7LQvwyRVVNnMpFVs8znfu6lh6oqvTIizgzmPfbf6fy1uO3FK/CXAm8B/z3CNzJOtuYd+81e1ml/FLTLWz6f8Gc0z+VbgYdUohZZPQW1yIrVecadd/771iMnHv7H3A6XMq/bLYBMtr23ZgHLnW3vEO98J5bfRFdz1oaw7bV5u7Ezzzg8j27hLr8ZYKQ2apGVUz2WyIqNRltcfsXn1e7Fd89m4w+Z+eeZpYCapnPZ8tKVS+3Iu0rEC7+0i2xcQcSXAhsLu3wbcBPhv9u895x6bb8f+HB7mj8+lzeKyMGxnd6lIrIKX3TNC1hbWyNnqOu6qfp2bwO6KcAuVofb0ld0pw15yc4kJ9cAvwf+woVhWf8O+YVY3oqoWQ7rPSrVwskU89fK0WjLRuPNyXhymtHWJg898Kkneuki8gSoRC2yYnWu2Ty9SfJEjtwMxXLDrGlL9oVJT3aH9HA4xHJgnsksdzIzIIxbCX8N8E/ARW3nsOeBX0PwwabUfk6mT/xKReQgKKhFVmw8bjpkmVk3XjqsfexN+7DvMTuZkVkfVkRkyIbPc7pdZqPrwW38F7l4H/Ca7pnw52B8cJ8/6SWEfy3wMeAdbUn6NTRV6G8GJoTvswSniJxvCmqRFRuNmumyPTkRQeS2RO1GxrE9FtqApq26PjTFAswKPHIz1tmaOcM9lnp2nwBvum83perBPn/O5xP+XuBY+/gbgDHNlKGY2aSqqjfnPCXXidEBXL+InBsFtciKPVbP6XmVd3jqnivLkrJMVEXBeDymKAtSQFixs4pWN0TaIbwCXrp84NkDWMYjdurTwwF7AWbHguZHQ7b8jRHxDM8B1HjyaSoK0tqQ0oP/vvOOg/oYROQsKahFVmx71JRL59XbOWKpqntesp7LObdzgYPZNus+bFbcoq0uz2dUk/8McA10w7ZOYPmj+/T43tUG7a+AON4+uD3X+Z11nlK4ceTIEfZesVpEzicFtciKjceLJerlau4uvBfysGnHboZtFQ7TegZeUKRmvzAOgV9FsxTltwLfMK8Ob70duB9YGG/dvbZQm+1Avqh9MPPkv1IW5TNSMRw6+ePztnURWS0FtciKTcdn0ZF6V8HVLHB3yuTMZjVFEU0P8Sac3wF8AW365pwpy4poFvf4ZARvbI6y19AuHxMO5uxajWNrOp2+djarf2dtOCxOb5/+tXvuufsNZ7fYpogcJHXjFOmj2Nk8di08uew7aMZOu1lq5wwPPCDBfQl7TcLuIQfdMlzQlrYdYLJ4MA/HswMcAb4sIm/UuR5Ejh84evTo0w78OkXkcalELfKU04ZsE7YPzkvCyRMkJ0fE6a1H31OW5Q+b2Sd2qrv3NNnvhdR2aMt5Rir8wePHLzh9oJchImdFQS3yFDKZTDBLRDZyDe7FH0bE5ZHtS4fDfDImcVvO9bs/9tF/vukF170oDh0+zIlHTuAJ3AOzwMxxN8zAzcY5mkFcQBv+TZs4AJa3cuYDBj8HPKpKOJHVU1CLPIWMx1MijHqWyTlwL7ci59eDMxptExGUVcWVVz2H7dGI8XjMdDYhpURK4J4wrykLJ6UEcA/waeDSXae6BXgn8GfAx1d6kSKyREEt0nPj0YjxaMRJTrF+aJ3ZdEpKUzY3t1ks4U4mkyaoiwJPiXo2I0ewsb5OVVUUZclwraIsysXD/4+bfSfYL9QR6znqv80RbwP+CcsTbwvWgfqQiTxZFNQiTyGTyYSpGcln7TM7U3uOtvcePpXcu6lKp6kZApZzIqU2sC3/BcFf0SxpOW5nMhORntDqWSIiIj2mniEiIiI9pqAWERHpMQW1iIhIjymoRUREekxBLSIi0mMKahERkR5TUIuIiPSYglpERKTHFNQiIiI9pqAWERHpMQW1iIhIjymoRUREekxBLSIi0mMKahERkR5TUIuIiPSYglpERKTHFNQiIiI9pqAWERHpMQW1iIhIjymoRUREekxBLSIi0mMKahERkR5TUIuIiPSYglpERKTHFNQiIiI9pqAWERHpMQW1iIhIjymoRUREekxBLSIi0mMKahERkR5TUIuIiPTY/wHXIYxg2nG71AAAAABJRU5ErkJggg==",alt:"horizontal auto wind icon",style:{opacity:t,width:r,height:n}})},Kne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeoAAAB6CAYAAABwfBDNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAPaGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYTg3MzFiOSwgMjAyMS8wOS8wOS0wMDozNzozOCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjQtMDktMTFUMDk6MzA6MTQrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI0LTA5LTExVDExOjIyOjQyKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI0LTA5LTExVDExOjIyOjQyKzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiYjE3MGI1Ny0xMjljLWVjNGYtYTJmYi0yOWM1ODE2OTQzZmYiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDpjNTg0NzMyMi1kZTRjLWMwNGYtYTUzOS0yZjczYzZjZDJmMDEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2YjI3YWM5OS02NWJmLTQzNGItYWNhNi0zZDI3MzQ1ZmI1MTgiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMDoxNCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjUxMzgwNzM4LWJlZDctZjA0OC1hMGI1LTU0ZmM5N2ZmOGZkNiIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMDo1MSswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDplYTRhOGMzMC1lZGI1LWZmNDUtYjdkMi1jNDQzMjFhODJlMWMiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMDk6MzI6MTcrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZTg1NWEwMmItZDIxYS1iNTRjLWJkMWMtYzI4YzMzYWJiOGNiIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDA5OjMyOjE3KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmQ1NTFmM2NlLWE1ZTktYmI0MS1hMGE4LWQ4MTliNDIwMDFkNyIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMToyMiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImRlcml2ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImNvbnZlcnRlZCBmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxMzBkMzZmYi1mZmZjLWRlNGUtOGU3ZS03Mjc5Y2RlZTU2ODIiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MjIrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MGM5NzFkZmItNDNjNy04NDQ3LTg4ZTctMmZkMDY2MTg1OWE1IiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDExOjIyOjEzKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmZkMDc2ZjgzLTIwZDYtODE0MS1iZDFiLTY3NmM4NmIwYWIwNyIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMToyMjoxMyswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpiYjE3MGI1Ny0xMjljLWVjNGYtYTJmYi0yOWM1ODE2OTQzZmYiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MjI6NDIrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MGM5NzFkZmItNDNjNy04NDQ3LTg4ZTctMmZkMDY2MTg1OWE1IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjEzMGQzNmZiLWZmZmMtZGU0ZS04ZTdlLTcyNzljZGVlNTY4MiIgc3RSZWY6b3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PquABF8AAAidSURBVHic7d1tjB1VHcfx75b2toGCbWkomIVWSrCEAhZRoxEfSTA2EkEJvEBNNPUhitGIBlEbBDUYAhF9QeJDFDCiFdAXUgHrAz6Csa0rD4KGBNetDdrIVnBp1y3XF2c2nXtz5+6dubMz5+79fpJm587OnDlvbn87Z878z0iz2USSJMVpUd0dkCRJ2QxqSZIiZlBLkhQxg1qSpIgZ1JIkRcygliQpYga1JEkRM6glSYqYQS1JUsQMakmSImZQS5IUMYNakqSIGdSSJEXMoJYkKWIGtSRJETOoJUmKmEEtSVLEDGpJkiJmUEuSFDGDWpKkiBnUkiRFzKCWJCliBrUkSREzqCVJiphBLUlSxAxqSZIiZlBLkhQxg1qSpIgZ1JIkRcygliQpYga1JEkRM6glSYrY4ro7IA2biYmJurvQ7izgk8BRwD3A3cCTWQePjo5W0ytJAIw0m826+yANlciC+gXAA8CG1L6ngR3AtuTnZPoEg1qqlkPf0nBbD7y4bd9K4GLg+8Bu4CZgbcX9kpQwqKXhtgwY6fL7dcCHge8kx0qqmEEtDbdGj8edCayaz45I6syglgbLImBJie1lBfUU8ETq813AUyVeV1KPnPUtDY4LgasIs7PHgfuBO4C/9tHm0oz9i4GtwD7CkPe9wKE+riOpIINaGgyrgZuBNcnn04DzgY8DNwBfBGYKtNse1M8Aywl32h8Azi3SWUnlcehbGgxL6DyZayXwOeAb9P68Oa29zR8DDybbJxFCW1KNDGppMOwFPkt4TtzpzvmdhKHqvB6ndUj7J8C7ga8AW4BnC7QpqUQWPJEq1mfBkzXAccCrgSuAk1O/ew54OfBwzjYvAd4O7AS+BBzodrAFT6RqGdRSxUqsTLaOUPIzXbDkOkI50LI0gOn0DoNaqpZD39LgehK4tm3fq+hewCSPtwC7gC/jxFOpNga1NNh20nrHu4ry3rPeApwOXA6cUVKbknIyqKXBdiytd7vTlPe+8x9T268vqU1JORnU0mB7P63f48coL6h3AM8n2+eV1KaknAxqaTAdB9wIXNa2/84SrzEG7Em2zwRWlNi2pB45QUSqx1rCqlQvBPK+enEMsCk5N+03wPZke13S/rGESWe/Tv49l+M6+4FHgBOB44FTgD/k7KukPhnUUvUawDcp97nvHuC9hHegG8AtwGvajtlNmCX+gxzt7gLeBBwBnI1BLVXOoW+pekcBG0tsbwy4AHg0+XxkRvubCIt45Klg9tPU9r8L9U5SXwxqqXqTwG19tjFDmDi2FXgD4c531n7g1ozzFhFKkX6ox+v8HNgMXES+O3FJJbEymVSxpDLZIsLKVKsLNHGQMNT9OGHd6E5m2z+ZUG70EsKd/Kz/AOdQYIlMK5NJ1TKopYqVWEI0j3OBbYRJYbO+AHwqb0MGtVQth76l4fAr4DNt+95Ib/8HbCSE/Ed7PF5SifzSScPjXlqXrTyBMPFsLlcCFwPX07pal6QKGNTS8DiCYgt2NFLnryitN5J6YlBLw+MCWieU/Z3syWhp6SIpjcyjJM0Lg1oaDpuBq9v23cfhWt7dHEhtLyurQ5J6Y2UyqV6LgfOBk8hfSnQuTeBowutZm2n9vu8DvpWjnVn+cS9VzKCW6vV54BMVX7MJfAwY7/H49HD3TPndkdSNfx1L9VlKmE1dpQPAR8iuXNbJwdT2ZJmdkTQ376il+kwTVrR6UQXXmiG8S30N8Iuc595EWFbzIeDhcrslaS4GtVSfJmEpyjHCspdlP6MeIdxBjwO/I9QDL3KNx4C3ldgvSTkY1FK9JoEb6u6EpHj5jFrSXF4GXEpvVcwklcygltTNWuAe4Hbgipr7Ig0lg1pSNy8FViXbJ9TZEWlYGdSSutmY2t5VWy+kIeZkMqk+DeDNlHOn+jzwNGGG9iPAoRLaBHhJ8rMJPFpSm5JyMKileowANwIfLLndaWAn4d3n7/XZ1tHApmT7X8Bf+mxPUgEOfUv1WA5cNA/tNoBXAt8Fvk7rall5nQ6cmGyPEcJaUsUMaqkeU8Bv5/ka7wFupvjI2QbCGtQQKqhJqoFD31I9DgHvAx4ERum/KtliQinS19J6F/0OQunQrxVo837g94Q/6L/dZ/8kFTTSbJZdtVBSNxMTE/PZ/FmEIe9zUvv+nHyeKtDeEsLz9OnZHaOjo/30T1JODn1LC8sYoYrYvtS+DYQAL+J/pEJaUvUMamnheQLYkfo8Apza5fhXANfSuvDGpYRn3I2OZ0iqjM+opYVpsu3z0ozjTiOUCF2RfH4rYf3p25PP08Bt5XZNUh4GtbTwzL6ilfaPjGPP5nBIA1zI4VeyIAx9S6qRQS0tPJ+m9Zn0JLA749j2IN4MrEy2HwLuKrVnknIzqKXBtxw4BVgPXEYYvk67A9iTce6Bts+rk58zwHWEu+tlhLKkkmpgUEuDbT1wJ3AGnSeH/o0wUSzLwYz9U8AW4KuE/yeuB7bS//veknJy1rc02N5FGObu9F2eIMzeHu9yftarV8cAryMUT1kKXA6sKdxLSYUZ1NJg29thXxPYDpwHPDDH+b2+I70X+G+OfkkqiUPf0mC7BVhLKB26H/gT8CNC2dBehqkPJseNZPx+CvglcDXwTJ99lVSAQS0Ntingyj7OHweeAo5v27+LMOP7hziRTKqVQS0Nt38SKpBdAxwJ/AzYRhgyt3SoFAGDWtJ24D7CkpZZs8Al1cTVsyRJipizviVJiphBLUlSxAxqSZIiZlBLkhQxg1qSpIgZ1JIkRcygliQpYga1JEkRM6glSYqYQS1JUsQMakmSImZQS5IUMYNakqSIGdSSJEXMoJYkKWIGtSRJETOoJUmKmEEtSVLEDGpJkiJmUEuSFDGDWpKkiBnUkiRFzKCWJCliBrUkSREzqCVJiphBLUlSxAxqSZIiZlBLkhQxg1qSpIgZ1JIkRcygliQpYv8HdyAyOskVkgUAAAAASUVORK5CYII=",alt:"horizontal stop wind icon",style:{opacity:t,width:r,height:n}})},Xne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:Tne,alt:"auto wind speed icon",style:{opacity:t,width:r,height:n}})},Jne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:One,alt:"wind speed level 1 icon",style:{opacity:t,width:r,height:n}})},$ne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:Mne,alt:"wind speed level 2 icon",style:{opacity:t,width:r,height:n}})},qne=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:Pne,alt:"wind speed level 3 icon",style:{opacity:t,width:r,height:n}})},eoe=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeoAAAB6CAYAAABwfBDNAAAACXBIWXMAAAsTAAALEwEAmpwYAAALwGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYTg3MzFiOSwgMjAyMS8wOS8wOS0wMDozNzozOCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjQtMDktMTFUMTE6MTI6MjYrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI0LTA5LTExVDExOjE5OjEyKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI0LTA5LTExVDExOjE5OjEyKzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpkZmE0Yjc5ZC0yODIyLWUzNDMtYmRiZi0wMjc1NTA0ZDRlNmUiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDowODYwYjIzNS1lMWY4LTBkNDAtYjBjMi1mOTBmMWY5NjIxZjUiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoxZTM3NmYwMi01MDg1LThkNDAtODk1NS1kM2M1MGM5NTgyNWQiPiA8cGhvdG9zaG9wOkRvY3VtZW50QW5jZXN0b3JzPiA8cmRmOkJhZz4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6M2QwOWY2YjYtNDVhMS0yZDRjLTg0OWItYWU4ZDUyZTdjYTYwPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmYyNjEzMzBhLWY0MDMtODg0MS04MGQwLTkxNmM4MGI2MzhhYTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpmYTRmOWJhMS0zZmY1LWY0NGEtOTI0YS1kYWM0ZDE1NDA2YWI8L3JkZjpsaT4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxZTM3NmYwMi01MDg1LThkNDAtODk1NS1kM2M1MGM5NTgyNWQiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MTI6MjYrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo4NWRmOGFlNi00MmRkLWY3NDUtYjMyZS05ZjdhMTM1MWRhMDIiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MTc6MTYrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6M2Y4ZmRmZjgtZDlmMS01ZjQxLWFjNzAtZDQ4MDQ0YzE2MWMyIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDExOjE3OjM1KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjA5NDM5NzQwLWU1M2YtMmY0MS1hNDEwLTZkN2VmNWJhNzJlNyIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMToxNzozNSswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpkZmE0Yjc5ZC0yODIyLWUzNDMtYmRiZi0wMjc1NTA0ZDRlNmUiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MTk6MTIrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6M2Y4ZmRmZjgtZDlmMS01ZjQxLWFjNzAtZDQ4MDQ0YzE2MWMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjFlMzc2ZjAyLTUwODUtOGQ0MC04OTU1LWQzYzUwYzk1ODI1ZCIgc3RSZWY6b3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjFlMzc2ZjAyLTUwODUtOGQ0MC04OTU1LWQzYzUwYzk1ODI1ZCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PmmQM0AAABh5SURBVHic7d15lGRXQcfx773vVb2q6p4lkIwwTFgMxIAkkUjAxBAIhM3tCBzABUQDiArqAUVxI4jgcgRBPeoxuLAcFSEBjiBGDAiGJQQJJjmAgQBhMkkYs3WYma7tvXv9476qelVdNVPVXT39avr3Oeed6dpe3b7p1K/uu5vx3iMiIiLlZLe6ACIiIjKZglpERKTEFNQiIiIlpqAWEREpMQW1iIhIiSmoRURESkxBLSIiUmIKahERkRJTUIuIiJSYglpERKTEFNQiIiIlpqAWEREpMQW1iIhIiSmoRURESkxBLSIiUmIKahERkRJTUIuIiJSYglpERKTEFNQiIiIlpqAWEREpMQW1iIhIiSmoRURESkxBLSIiUmIKahERkRJTUIuIiJSYglpERKTEFNQiIiIlpqAWEREpMQW1iIhIiSmoRURESkxBLSIiUmIKahERkRJTUIuIiJSYglpERKTE4q0ugCwOY8ymnr9Wq/WPJEmo1+v9n621eGdwhscATwO7H/iYNxzsvb7VatFstmh3mrRXV2m3m7RaLdrtNjgPefG98xPLcODAgU39HUX27du31UWQBaOglk0y68UaN/xqa0eOGI95nDF8BOwuF0L3DgP/5uA9Fq62Nl6NbIw1Ed5EOGNx2LwsDrwB49a+tYhIienSt5SW9z4czoTDm+c5b3a53m1nHph5c4n35krvzOe8M2/w3ux1zgAR+F5Ii4gsLrWoZVNUkgRrzdrL5T4E5/C9DnAkSUKSJFQqFaKKxcYGE1mcAWPAwU68xRsYE8CPAvso4IlgnwY0B8/JW9SLxwIR0N3qgpxAVKeycBTUsikqlQpxHGFtMVCj/k9mTTdxRrUaU61Ww2srFaI4LgS9BW+SfkjngT/mUvbjgAcA35jbL7M1ngX8JrAE7Ac+AVwOfHUrC7XgVKeykBTUMieWpD4YDNbtplSrVarVyo4kSR5ibeWI9/42vO2seakJLWobQWQtNjJYazHGYIzFmIgMD8YkvVayG26SHyF8+AJcBdw+sZiTx5GVycnAXwHfkd9+JPB04NXAm4E/AtKtKdrCUp3KwlJQy6aoVqskSXJ6kiSXJ0nySGvjlvf+a3j7AbB/DdwxeLYD4zDGY6zHGo+NQut75NJ5bcLbXQP8BbAL+ADQHnp0McK5qML43/Uk4A3A6cBLgbVfemQS1aksLI20kRnYMcd4lVpCUq9dUmssnVlrLMW1Rn251qifXVuqX1pr1K+u15eeUq8vUa/XqTfq1Ot1Go069d50rDjCxhEm6vVJgzPUnCEfyT3kAnD7wb0dWJn/733c3QH8LnCQ8a28nwJee1xLtPhUp7KwFNQyB+P/jJwzt3vvSZKEOI4p9C2fZo15H/CEac8XeqJt1O+bDh+2H8p/ToAL1lv6knoLcDZwDvALwNdHHn8V8OjjXagFpzqVhaSglhmNtqQHI6td4bAmolpN/tYQvand6v53mrqD+F6/c4TzfifwNmA3gB0ZHR6eZ0bf572AB4v19rPW8/PW83br3fuBKyD0XS/ele6JDgI3EvpWnwLcVHisDvzkVhRqwalOZeEoqGUG4c+lltToDR7rHZV6jW6rxaGVFQ4dOkwcV9mxY8eReqP+6ptvvvlxd9+98j3Aa703Xecczjm8999ljXleHFWxtoIh4qh/kt5eBvZiwmXKZwEHgJ8Bnp3/fCK7Bfi9kfvOZ3Sm2/o0CPX4y8BpczjforiFzatTkblRUMuMLLVaA4Ba0hha9rPHe09kI5YaS6weafHQh36nP2n37m8RPhT/LMscWZriMkcUxz8YRRE2spj+SO+1n5PW94+PWc+7gDvHFs8X/6TzqVsnzmpkn2d4sNP9CIOkNiIG/i4/3koYmPc6wijp7WAz6lRkrhTUMrVdO3exc8dOarU6O3ftCgGdNPqBfdLJJ3PKAx7AKafsodlqsf/WW4njuL/CWP7n9g9A5rzHewfwYGtMVFx/Ozx3hHFgUjCd/N+0P62LMDXrD4A/w7iTNrsettD9GZ6p0QGyDZ7z4cBzCrdPBi4lBPZLmTzS/kSxGXUqMleaniVT27t3H1El5tChw5x08v1orjb7I7IBlnfsCIucmJhKJTRKvPd5Czn/TuitjazBVsILu1nqMzzGZXS6bZKkQpa5wkIpNl8dJQMTFpNy3oOP8d70+qOfakz0GgDr+YbBvaX/2vCeLOjKZKN+juEv1//LxkPluxn/OXAacBlwCeFKyIc3+D5ltRl1KjJXalHL1JIkYc+e7yBJEpaXlqkVFjip1WosLy9RSxpUq9X+a8Zcxn6xMSaykcVGFu/9N1yWZWFNb4cxBuccawet5a1nkw5+HoTvvfTHkLknb8KvvtX2AH8CvGDk/ivmcO6zjvH49wEfJIwLOJFsZp2KzJVa1DK1pFqn3e7SaCxXrI2jWtLA22O1VC2EwTl7CVNiXjbyhH/x3lNt1Lj94O3Vs049K73lllvcclToJiz2MXvLmHHdN2DcHeD2At9DGEm+Mttvt6keAvwSoQ5mHZS+E3hM/tqiTzFo5T40P//9CQOkPpkfzSnOf6yghvAf8bnAO6d47vFS5joVmSsFtUxtaXkpuvvee1/TqNefb6MoAYaD2o+9QOMJf2d7gB0jj10PXOF9Vms2m2/cu/dBT7/ttttXG43lGx2833quBFI8I+Nwe33eBhPe4F7gfwgfvHuB07131/b7xsf1eR8/VeDvgYvmeM7bgJ8FWvn53wFcOPKcLxAuWb//KOepAWdMeOxLwIOB5fz2J9Zb2E1Q5joVmTsFtUzNufTCOI7eYKwhI8XEYHw8WDlsMGAMMxqOa0P8TnAvBg4ba35i9+7dr7rvvvuIbMzy0vK5hw+vXuLCut0vx/CVoVfm72ecx5nQnWhM5X9q9doPHG4esanPznCZu9Y7XxiYtibtj5cl5ruIxvWEfuMv5bcbE87/GMKGE78LvH7CufYCp0547F+AdwPPA74GvGud5d0MZa5TkblTH7VMrdPpLFUrVXoB6L0nI8N5n4d00Ug/snHF4wZwP4Rxn8c4qpXqjk6nSxzFpFnKPffegzMWZ+zFztiPOOyjHDa/L5xuzMjwL377298mjivEUXxWrw/cWhv2yNy6qbErbDzkUsIgp9cCTwauKzx2H5MvSVtCqLxiwuOPYLCZCcBdDAZSnUkIsN8iTN0q07aQK5S3TkXmzoydCiMyxveff1HDGy4DftiF1UlGxlIPvvcZXxg4G1rTRwgfjFdg3DuBld6rvfcnO8M7rbUXOueWWs0OjcbO4laWnwf3JHCHvXUY76CbYX1vFy1LtZacmWXZ9XG1Zu68687Lbv3GN1+2eugQGEetVsf0S+pYXV2d+DseOLAp66ZYwnKp65mb3CZclr0JmFTw3vm/k7CU6vMZDuBvA49l7XaOjwWuZfAt5i2Evt+nEgL6z9dR3uOlrHV6TPv27Zv1JbLNKahlauef96Rei/ZUb6iAG91uMoSrcdjhPytHCOqRRUoGMX/Lrfvt3gc+8CH1RuNhLvMvzbL4x4qXy431L4P0snBuh0uLQQ1fufnr9kEP2vtyb+w5q6vNN2bd7s2dTpc0bYfWf9bN98B23HPPPRN/x00K6uPtCcB7CPty9/w+IXyLDGGA34sIl31fRfjvtJfF38973qat02NSUMusFNQytfPPu3Bw6dnAIKjXjvy2MGlwWTBmtTCXOeJKjMsAX30bPn5J/+kxV3322muedu73nu1jC2k6MtXVhm0xeztrpZ2w2FSadmm321gc3juazSPc+s39E4t1ggQ1wEsIa6n3fJawPOa4Yfr5mDw5hlnqdCIFtcxKfdQytV6/dDiykdvDBzDaLz18jGEjm8+hBu/9mzxZs3e+NM0eccF55zdcN8W5Y2dKtVKlWqnSaNRJkoQkSajV6kNLnZ7g/h04XLj9QMIgqXFGK3QnWkZznFnqVGRuFNQyg+IAseKCJGP2qfYbOMJ5VyiswRxbW+10OnGn26bVXh0T+g7gfhj38xh3frHUjXy/63Bsm8/ViPWNoHsqcAPwr8CuuZZo8a23TkU2REEt6zC6zeVmHFxEaNkB0Ol0/s8Ys9poNIjsyJ/tIKxfD/wlYZ5rvy/RbM+Luj/C8OCnW5k8cKroeQwGlE2zGMp2st46jYFnEqZ3icxM86hlRsX1sykMGhsNzw01PC42xr4JML0GTBzHVzuXdg2euLL2qmxejN4WjXsw7hTj+Rb5ALJeObfJN9MfJOyAVfQRputLLXb+J/Mq0AlgI3X6UsIXyBXCkqw3HfXZIiMU1LIOFuBZYJ8JVEfDO5g5qD3h0uJDgfMwbvC3aVwT7y6DvJ/cOdIsHeoP96EMX3HYZ1i4u57U7g4vLtVmHDHwdMKKX/Nu53vCym8XEEKl+P/2XcDbZzjPIlmEOj0n/3c3oZwKapmJglrW4yKwl0N+DXrQr1wQbeD0Ll9IzIX5z57fwXMjJqx+5lxG2u2SOUeWj/52xgK8zmNvMp7r60nt9g0UYLO8Efi14/yeHvgVYPJQ92HFz4R0/sWZu0Wo0+L/DK35F0dOdApqWY+zONpVZG83PuQm9Dt3CatAvbl/au/InKPT6ZJlaX+aVh7U9+LtX27wnTdLQtjY4nhqAb/ObJtp1EdeX2aLUqfFLoTOxGeJTKCglqkV5kxfaeBWPKf6fHVO1x8JTmgJm2lb1KNrmzmAw8a7TwJvAj4K+XaZxoDzuK6j283odrt0OuM/96695mtHfZ8t0CHsvvSw4/BeKXA1YT3qj8/42t35v71FaspsUeq0Nygypfx1KiWkoJbp9UZXe24CLsC4x4OtDJYZKawkRta/vWb1sr41K5h5jFsxnq9iuNmO9jh6h/ce5xzdbod2u70mqEs8wtsTtk28njCqet4lNYTW3n7gM4S1q9fzHr0ug4PAt+ZTtE2zKHV6//zfI4SlR0VmoqCWGfQ22ABw+4H9xUvcxhWD2tAL6mjiR9uYVq4vzM4eWdnMmTCYzGWu35putQZXZ53zmHzDEBvHeO9gaAetLbdC4TJ+Sf0mIfg+z5olX0tphXLXaYVBULeBQ1tYFllQCmpZh7UBa/LBX4M7oqHnrWkdH4PN1wwvjiS3HrzzZC6j203pdEKrek05GLu7lkznLuAvtroQJ5CUMI3rVMIiMitbWhpZSApq2ZBJl5pnDeZjv9HwlwPnsrDcqBu+3xd+2iZzpjdqD2EA2Te3uiAnKA+8kvDl5+ss3vQ3KQF9lskMjrGamI/7h8PiiI9x2LEHvX+PsqmHMTYMMGP8MfrKLd2Rurx+hNDvegNwKXAS8FfAH6I1rOept/e1RnzLuqhFLdMbBOe5YJ8BJL22c2gmjC54Mrg9ZkCZB3eX9VxP2BO5GV7mcB48Hk/vErYDH1rOmeviXMpgzfHxio9Y1IwZwxD6ox+U334lYUDWz+S3PwV8cAvKdSLaQ+jv15+hrIuCWmZ1Ftj/ALtrENxr5027kQVPxn9C5ZOxjLuRMBXrndZbPA6XZTjId+nK+n3g4Wp32LJy2n7owsSxrZykVQV+gLDj0kY54F5CK+2LDC/7OS3P8AjkXcAL85/T/PwvJqxR/V+EJTDLtgBK2ep0nFcDvwq8D3jFHM8r24iCWmZgAR4PdtfIfWsvU48E99q+7MLzPWdazzucc+d2XfZK77MUHJ4sH7U9+GzrZhndzIEzmN6As3HvP2KLZ1Eb4E+Al8/5vB3C6Ow/Bf55Ha//IGHzjZ7e58FhwrrWT8lvP4cwXWs977FZylqnRcuEcN4DPBv4DTSYTNZBfdQyI/sp4K5jBeMxzjHp9ivAXQoO59L86JBlHbI0JUtTXObJMvDOhBb1hspx3CwTPqjnrQqcB7wb+BuGd3aaxr8zfven3QxCuuf0WQu3ycpap0WPBvblP98I3Lexosl2pRa1zMACfAl4MsZdjA+LnYRL38Mt29FdtUb6qL31xMB3EQY0nRTudoD7NYx7n6f9BUeG8xnOE/bo8DFZZnFZYc/rwnsOKdfIsVXg04SW6WZ5MSFkLmH6S9Q3E1qPTzjG824B3rPukm2OstZp0YUMvoX+J+qjlnVSUMt63AjcWFipbKAXkP1tLsNzLIP1y+jfA4R1wy8HHpHfrgI/feRI8wvVJCaKI7I0Be8xxuVfCI4+kKyEMuBlwGcJLayNfmDHhGUzn8hwi++FhGUu3zbleRzwIY4e1B8GfpEwtahMylqnPZaw4xaEev74Bssn25jRwhAyrcefd7TP8+FWrRnplPam8BxfbBFbgOeAey8mtLtX7l35XLO9el6SVLIkqdDuNLHeYSNot9s0m02ah5u0Wq01C55MVGhhezf5b/7AgQPTna8cziZcnn1s4b4v57fHXdIe50zgvwlfkIpahJ2p/oiwOcp2MY86BfhuQr3W8tefQ77Jyb59+47yMpG11KKWqbVavc+pSWOoB/fXGwne+3yuM2HgV/58byz4Yi646zCu6b1vGGPYtXvX7ka3kbTbzdW0G/qlISPLMtK0TZZ1cC7V6mNhqc8fA64BTs7vO4MQNp+Z8hxfBj4HfH/hvpsIg7Q+Op9iLpR51CmEPv5a/vOHKP9OZFJiCzESR8qh1Wrlx+qao9NapdPMj9Yq1oPJ1962vrAsirdDoZ3/+2Ag6V3Srlbj1aWlpGMjQ5p1yLKMbtfR6Ti6HUi7hiwr1RreW+lrwFWF24bZBn6lhI0tPg0cAP4WeBLbM6R7Zq3TxwO/R+gv7127+TKhBX4n8K5NKKNsI2pRy9TCZeaRVnTeTz26gUaWhSlVxqwd1WV9OIsPr93tvX+dwUTeezLncM5df2T1UHr48CG8D3tPW8A7RzdNyTKH9wY3eVuu7WZl5HYy7klHcR2hb3YHYS6xTF+njwSuZLA96I8TRoz/B3AuoSVdtv59WTAKaplaa3WVwQ5aI4HtLZVKhUqlQhzHtNtN4koMRFgbh+VPvO2N/j6FcCnxDGfcSzCc7VMPWLK0TbPT+YeDBw9yZPUwAEmS9DfpcK5Lt9ul67p4k00e3b1mi8w5VEA59aYTFd0+7onH0FvkRGar03MYhDTAkwlBDWGGhMiGKahlakMt6jFB3bsUbYyh3W5jjMFUwrrbxhjyh88gLLTx8OLo7cxlxHEVa+27n/vc5171+kt/p/8expihoM4yhy/X9pVb6bcJX3p6VoAvbE1RThiz1OnoQLvTCdO5riLsYy2yYQpqmVrY+3kkqAuXvItBba0lTR3WQn81UeMA+3xwDy/ukhHHMfVqnTT1HzPGv/wf/+mfXGPHDlYPHQLj6HY7he0rM7wPA8m8X6gpWvOyDDwcOA14AfCjI49fDtx2nMu06DZSp6ODxJ6YH1cSll89nbAn9RfnVFbZhhTUMrWhoJ6gF9JxHJNl2dpWr3FfdfQGk1ksjk6ndcgZ9zfW2kvvvvvuQ51um8ZSA2M97XabtNMB5/MNqbf1UsmnAVcQplSNGwj6TcKgJpneRut00vzAcwj91OcTvqr+MfBaTuROGNk0CmqZwQwtWG+H5ks72/+Eeg+4PWAvMt4d8obrLHwYk/5vmoKx4X0qkSWLI7IupC4L790bPGbYrh93L2L4kmzRAcK0Il1unc1G63TS1pV7gIsLt3+RsCf1t2YtoIiCWo4rZ1yKt28F99befdaGBVK6aYcoAms9znVxLm+RW5OHtBm3u8d2cseY+zzwb8CrCPOfZTYbrdNp95i+AzgyQ7lE+hTUsik6nU4+gMzjMoeNLN754TW/jes3jI01tFtd2u02nW6LNOuSZl2cz1vTAvAOwp7RTyRs8HADYTGNq9mu1xg2bqN12s6fN2n+wSphm9DXAYc2WFbZphTUsina7Tbee9IsJXMZkY1w3uVLiUIvfF1/ZHdMt9Oh0+2E6VedTr5blkK6YBV4zVYX4gSz0TrdT9gC9AEj919H2IP6A2ggmWyQglrmprdyGcDy0k66aZc4ijlyuHDFLw9mV/gZwJgIl2WkWYbLXP+yt/eOMK9rdKes4QAfHQWkeJfj5P8Iu2y9HmgAHyPsNHYN018WFzkqBbVsik6ng0nDCPBh+XrfdjhKDRG9lcm89/2NM5xT5ErpfRj4CGF095S7xIhMT7tniYiIlJg25RARESkxBbWIiEiJKahFRERKTEEtIiJSYgpqERGRElNQi4iIlJiCWkREpMQU1CIiIiWmoBYRESkxBbWIiEiJKahFRERKTEEtIiJSYgpqERGRElNQi4iIlJiCWkREpMQU1CIiIiWmoBYRESkxBbWIiEiJKahFRERKTEEtIiJSYgpqERGRElNQi4iIlJiCWkREpMQU1CIiIiWmoBYRESkxBbWIiEiJKahFRERKTEEtIiJSYgpqERGRElNQi4iIlJiCWkREpMT+Hxj3G3IXRrh6AAAAAElFTkSuQmCC",alt:"vertical wind level 1 icon",style:{opacity:t,width:r,height:n}})},toe=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:jne,alt:"vertical wind level 2 icon",style:{opacity:t,width:r,height:n}})},roe=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:Rne,alt:"vertical wind level 3 icon",style:{opacity:t,width:r,height:n}})},noe=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeoAAAB6CAYAAABwfBDNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAPumlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYTg3MzFiOSwgMjAyMS8wOS8wOS0wMDozNzozOCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyNC0wOS0xMVQwOTozMDoxNCswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjQtMDktMTFUMTE6MzA6MTMrMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjQtMDktMTFUMTE6MzA6MTMrMDg6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjViOTViZDIyLTM4ZDgtMmQ0YS1iNjA4LTE5NDBhMjZhYTdmNSIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmMyMTIwNjhhLTIzOTEtMTI0Yy1iOWY0LTNjZWM5Yzg0ZWYxMiIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIgdGlmZjpPcmllbnRhdGlvbj0iMSIgdGlmZjpYUmVzb2x1dGlvbj0iNzIwMDAwLzEwMDAwIiB0aWZmOllSZXNvbHV0aW9uPSI3MjAwMDAvMTAwMDAiIHRpZmY6UmVzb2x1dGlvblVuaXQ9IjIiIGV4aWY6Q29sb3JTcGFjZT0iNjU1MzUiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSI0OTAiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSIxMjIiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMDoxNCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjUxMzgwNzM4LWJlZDctZjA0OC1hMGI1LTU0ZmM5N2ZmOGZkNiIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMDo1MSswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDplYTRhOGMzMC1lZGI1LWZmNDUtYjdkMi1jNDQzMjFhODJlMWMiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMDk6MzI6MTcrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZTg1NWEwMmItZDIxYS1iNTRjLWJkMWMtYzI4YzMzYWJiOGNiIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDA5OjMyOjE3KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmQ1NTFmM2NlLWE1ZTktYmI0MS1hMGE4LWQ4MTliNDIwMDFkNyIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMToyMiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImRlcml2ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImNvbnZlcnRlZCBmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxMzBkMzZmYi1mZmZjLWRlNGUtOGU3ZS03Mjc5Y2RlZTU2ODIiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MjIrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YWRkNTRmMjctN2ZkNy0yYjRhLWExOGEtZmIyZDE0ZjVmYzI2IiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDExOjMwOjEzKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjViOTViZDIyLTM4ZDgtMmQ0YS1iNjA4LTE5NDBhMjZhYTdmNSIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMTozMDoxMyswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDphZGQ1NGYyNy03ZmQ3LTJiNGEtYTE4YS1mYjJkMTRmNWZjMjYiIHN0UmVmOmRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo3NWI4NmFkOC1hZmFmLTdlNGMtOGUwNi00OWQwZjI4NDhmMTUiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2YjI3YWM5OS02NWJmLTQzNGItYWNhNi0zZDI3MzQ1ZmI1MTgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6Ql4+PAAAEbklEQVR4nO3dIW9UaQCF4cOGkKyuwWApBhwGg2yC6C8gKBTJOvxm3Yo1hASFIvyCESSVFYtBLRjAjsFUb4JacS9ZxGy2pdP5zkyfxza933FvbnvnzpXlchkAoNNPowcAAP9NqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiV0cPANbiWpJ7Se4muZPkZpIbSfbmn58kWSb5nOR9kndJ3ib5uvGlwJlcWS6XozcAP+5WksMkD5LcP+PvHid5k2SR5OOadwFrItSwna4neZTkYZLb57zWhySvk7xK8uWc1wLWTKhh+xwkeZLpTnqdFkleJDla83WBc/AwGWyXx0meZf2RznzNZ/MZQAkPk8H2+CXJr/n3AbGLsJ/k9yQ/J3l+gecAp+SOGrbD41x8pL/Zm89yZw0FhBr6HSR5ms1E+pu9+cyDDZ4JrCDU0O16pgfH9gecvT+ffX3A2cBMqKHbo1zMg2OndThvAAYRauh1K9PnpEd7mGkLMIBQQ6/DnP9lJutwO2Pv6uFSE2rodC3Ta0FbPMi0CdgwoYZO93L2d3dfpPuZNgEbJtTQ6e7oASs0boKdJ9TQ6c7oASs0boKdJ9TQ6eboASs0boKdJ9TQ6cboASs0boKdJ9TQaZOvCz2txk2w84QaAIoJNXQ6GT1ghcZNsPOEGjotRw9YoXET7Dyhhk6fRw9YoXET7Dyhhk7vRw9YoXET7Dyhhk7vRg9YoXET7Dyhhk5vkxyPHvGd40ybgA0Tauj0Ncmb0SO+8ybTJmDDhBp6LZJ8GD0i04bF6BFwWQk19PqY5PXoEZk2fBw9Ai4roYZurzL2bnYxbwAGEWro9iXJiySfBpz9aT77y4CzgZlQQ7+jJH9ks6/wPJnPPNrgmcAKQg3b4WWS37KZWJ/MZ73cwFnA/7g6egBwas+T/J3kaZL9CzrjU6Y7aZGGEkIN2+Vlpi/HeJLkcM3XXmT6n7Q/d0MRoYbtc5TkryR/JnmY5PY5r/ch00ewXsWDY1DnynLpm+tgi93KdGf9IMn9M/7ucaY3ji3ic9JQS6hhN1xLci/J3SR3ktxMciPJ3vzzk0x/Mv+c6Vuw3mV6d7fXgkI5oQaAYj6eBQDFhBoAigk1ABQTagAoJtQAUEyoAaCYUANAMaEGgGJCDQDFhBoAigk1ABQTagAoJtQAUEyoAaCYUANAMaEGgGJCDQDFhBoAigk1ABQTagAoJtQAUEyoAaCYUANAMaEGgGJCDQDFhBoAigk1ABQTagAoJtQAUEyoAaCYUANAMaEGgGJCDQDFhBoAigk1ABQTagAoJtQAUEyoAaDYPwxmc54fwbkfAAAAAElFTkSuQmCC",alt:"power off icon",style:{opacity:t,width:r,height:n}})},ooe=e=>{let{opacity:t=1,width:r="140px",height:n="36px"}=e;return(0,qh.jsx)("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeoAAAB6CAYAAABwfBDNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAPumlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYTg3MzFiOSwgMjAyMS8wOS8wOS0wMDozNzozOCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyNC0wOS0xMVQwOTozMDoxNCswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjQtMDktMTFUMTE6Mjk6NTgrMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjQtMDktMTFUMTE6Mjk6NTgrMDg6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg4ZjczYzdjLWI3ODEtMjY0YS04NjMxLTQ2NzBiMWZkNGFkZCIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjgwMjhjODk5LWZkMTktYzg0YS04NDNkLWRjNjlkZTI0MmJjNiIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIgdGlmZjpPcmllbnRhdGlvbj0iMSIgdGlmZjpYUmVzb2x1dGlvbj0iNzIwMDAwLzEwMDAwIiB0aWZmOllSZXNvbHV0aW9uPSI3MjAwMDAvMTAwMDAiIHRpZmY6UmVzb2x1dGlvblVuaXQ9IjIiIGV4aWY6Q29sb3JTcGFjZT0iNjU1MzUiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSI0OTAiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSIxMjIiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjZiMjdhYzk5LTY1YmYtNDM0Yi1hY2E2LTNkMjczNDVmYjUxOCIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMDoxNCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjUxMzgwNzM4LWJlZDctZjA0OC1hMGI1LTU0ZmM5N2ZmOGZkNiIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQwOTozMDo1MSswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDplYTRhOGMzMC1lZGI1LWZmNDUtYjdkMi1jNDQzMjFhODJlMWMiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMDk6MzI6MTcrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZTg1NWEwMmItZDIxYS1iNTRjLWJkMWMtYzI4YzMzYWJiOGNiIiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDA5OjMyOjE3KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmQ1NTFmM2NlLWE1ZTktYmI0MS1hMGE4LWQ4MTliNDIwMDFkNyIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMToyMiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImRlcml2ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImNvbnZlcnRlZCBmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxMzBkMzZmYi1mZmZjLWRlNGUtOGU3ZS03Mjc5Y2RlZTU2ODIiIHN0RXZ0OndoZW49IjIwMjQtMDktMTFUMTE6MjIrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YWFkMDViNjEtZTIxNi02OTQ2LTgzYzUtNTkyMTQwN2EyYTU5IiBzdEV2dDp3aGVuPSIyMDI0LTA5LTExVDExOjI5OjU4KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjg4ZjczYzdjLWI3ODEtMjY0YS04NjMxLTQ2NzBiMWZkNGFkZCIgc3RFdnQ6d2hlbj0iMjAyNC0wOS0xMVQxMToyOTo1OCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDphYWQwNWI2MS1lMjE2LTY5NDYtODNjNS01OTIxNDA3YTJhNTkiIHN0UmVmOmRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo3NWI4NmFkOC1hZmFmLTdlNGMtOGUwNi00OWQwZjI4NDhmMTUiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2YjI3YWM5OS02NWJmLTQzNGItYWNhNi0zZDI3MzQ1ZmI1MTgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5WLgexAAAEmklEQVR4nO3dIW9VdwDG4ZeFkEzXMIGlmOI6AaJmCQmin6BBoUjm8MvctkxsIUGhCJ+ggqTJTAWYqoEpWExN9ZKZTpxD1mQX1sLtPe+9PE9yTWnP/3W/nHLv6aWTk5MAAJ2+mnoAAPBhQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUuzz1AOC/Nm9/d94fuZLkVpLNJDeTXE9yLcna+O/HSd4leZvkVZKDJC+T/H2eQw5e/HHeXcBnEmpYbjeSbCe5m2TrI9/3zfj69tTX9pM8T7Kb5PCiBgKfR6hhOV1Nci/JTpKNT7zG1vjaSfIsydMkR3NZB8yNUMPyuZPkQYY76XnYSPJzkttJHifZm9N1gTnwZjJYLveT/J75Rfq07fHa9y/g2sAnckcNy+P7JD/k3zeIXYT1JD8l+TrJows8Bzgjd9SwHO7n4iP93tp4ljtrKCDU0O9OkodZTKTfWxvPvLPAM4EZhBq6Xc3wxrH1Cc5eH8++OsHZwEioodu9XMwbx85qe9wATESoodeNDJ9xntpOhi3ABIQaem3n0x9mMk8bmfauHr5oQg2drmR4LGiLuxk2AQsm1NDpVj7+7O5F28qwCVgwoYZOm1MPmKFxE6w8oYZON6ceMEPjJlh5Qg2drk89YIbGTbDyhBo6XZt6wAyNm2DlCTV0WuTjQs+qcROsPKEGgGJCDZ2Opx4wQ+MmWHlCDZ3eTT1ghsZNsPKEGjq9nXrADI2bYOUJNXR6NfWAGRo3wcoTauh0MPWAGRo3wcoTauj0Msn+1CNO2c+wCVgwoYZOfyd5PvWIU55n2AQsmFBDr90kr6cekWHD7tQj4Esl1NDrMMmzqUdk2HA49Qj4Ugk1dHuaae9md8cNwESEGrodJXmc5M0EZ78Zzz6a4GxgJNTQby/Jr1nsIzyPxzP3FngmMINQw3J4kuTHLCbWx+NZTxZwFvA/Lk89ADizR0n+SvIwyfoFnfEmw520SEMJoYbl8iTDH8d4kGR7ztfezfB/0n7dDUWEGpbPXpI/k7xIspNk4zOv9zrDR7CexhvHoI5Qw3I6SvJLhrvg7SR3k2yd8xr7GZ44thufk4ZaQg3L7XB8/ZbkVpLNJDeTXE9yLcna+H3HGX5l/jbDX8E6yPDsbo8FhXKXTk5Opt4AAHyAj2cBQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKCbUAFBMqAGgmFADQDGhBoBiQg0AxYQaAIoJNQAUE2oAKPYPSKNu7Nl+UcoAAAAASUVORK5CYII=",alt:"power on icon",style:{opacity:t,width:r,height:n}})};var aoe=r(11001);const ioe=(0,dD.A)([(0,qh.jsx)("path",{d:"M23.21 8.24C20.22 5.6 16.3 4 12 4S3.78 5.6.79 8.24C.35 8.63.32 9.3.73 9.71l10.56 10.58c.19.19.45.29.7.29V14c0-1.1.9-2 2-2h6.99l2.29-2.29c.41-.41.38-1.08-.06-1.47"},"0"),(0,qh.jsx)("path",{d:"M20.3 14.71a.996.996 0 0 0-1.41 0l-1.39 1.38-1.39-1.38a.996.996 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41l1.39 1.39-1.39 1.39c-.39.39-.39 1.02 0 1.41s1.02.39 1.41 0l1.39-1.38 1.39 1.38c.39.39 1.02.39 1.41 0s.39-1.02 0-1.41l-1.38-1.39 1.38-1.39c.39-.39.39-1.02 0-1.41"},"1")],"SignalWifiConnectedNoInternet4Rounded"),soe=(0,dD.A)((0,qh.jsx)("path",{d:"M13.89 8.7 12 10.59 10.11 8.7a.996.996 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41L10.59 12 8.7 13.89c-.39.39-.39 1.02 0 1.41s1.02.39 1.41 0L12 13.41l1.89 1.89c.39.39 1.02.39 1.41 0s.39-1.02 0-1.41L13.41 12l1.89-1.89c.39-.39.39-1.02 0-1.41-.39-.38-1.03-.38-1.41 0M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8"}),"HighlightOffRounded"),loe=(0,dD.A)((0,qh.jsx)("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.996.996 0 0 0-1.41 0l-1.83 1.83 3.75 3.75z"}),"Edit"),coe=()=>{const e=hg(),[r]=xv(),{gAuth:n,gStripe:o,setSnackbarValue:a,gMediaType:i}=(0,t.useContext)(VI),{getIRCodes:s,getIRMode:l,setIRMode:c,subscribeIRMode:u,subscribeIRData:d,addIRCode:f,updateIRCode:p,deleteIRCode:h,sendIR:m,addIRRemote:g,modifyIRRemote:v,updateLocalRemoteList:y}=aL(0,o,a),[b,w]=(0,t.useState)(""),[x,S]=(0,t.useState)(null),[A,k]=(0,t.useState)([]),[C,I]=(0,t.useState)(!0),[E,D]=(0,t.useState)(!1),[T,O]=(0,t.useState)(!1),[M,P]=(0,t.useState)(!0),[j,R]=(0,t.useState)(!1),[_,N]=(0,t.useState)(!1),{t:L}=Fv(),U=i.isMobile,[B,F]=(0,t.useState)({open:!1,irCode:null,name:""}),[z,W]=(0,t.useState)({anchorEl:null,irCode:null}),H=0,Y=1;(0,t.useEffect)((()=>{const t=r.get("hub3DeviceId"),n=r.get("remote"),i="app"===r.get("fromType")||o.isFromApp,s=window.history.length<2;if(N(i&&s),!t)return console.error("hub3DeviceId \u53c2\u6570\u7f3a\u5931"),a({open:!0,msg:"hub3DeviceId \u53c2\u6570\u7f3a\u5931",severity:"error"}),void e(-1);let l;if(w(t),n)try{l=JSON.parse(n),R(!0)}catch(c){console.error("get remote error!",c),a({open:!0,msg:L("pages.ir.remote.invalidRemoteParam"),severity:"error"})}l||(l={model:"Learn",alias:L("pages.ir.remote.learn"),uuid:void 0,state:"",timestamp:Date.now(),type:65024,code:0,direction:""},R(!1)),S(l)}),[]);const V=(0,t.useCallback)((e=>{c(b,e,(e=>{e.success||(console.error("set IR mode error:",e.message),a({open:!0,msg:L("pages.ir.remote.setIRModeFail"),severity:"error"}))}))}),[b,c,a]),G=(0,t.useCallback)((()=>{l(b,(e=>{if(e.success)try{let t;e.data&&"object"===typeof e.data?t=e.data.ir_mode||e.data.mode:"number"===typeof e.data&&(t=e.data),void 0!==t&&O(t===Y)}catch(t){console.error("parse IR mode data failed:",t)}else console.error("get IR mode failed:",e.message)}))}),[b,l,V]),Z=(0,t.useCallback)((()=>{u(b,(e=>{if(e.success)try{let t=e.data.data.ir_mode;O(t===Y)}catch(t){console.error("parse IR mode data failed:",t)}else console.error("subscribe IR mode failed:",e.message),P(!1)}))}),[b,u]),Q=(0,t.useCallback)((()=>{d(b,(e=>{if(e.success){const t={keyUUID:Ue.generateUUID(),name:"",uuid:x.uuid,deviceId:b,data:e.data.data};f(t,(e=>{e.success?k((e=>[...e,t])):(console.error("add IR code failed:",e.message),a({open:!0,msg:L("pages.ir.remote.addIRCodeFail"),severity:"error"})),J()}))}else console.error("subscribe learn data failed:",e.message),P(!1),J()}))}),[b,d,A.length,x,f,a]),K=(0,t.useCallback)((()=>{if(!x||j)return;const e={uuid:Ue.generateUUID(),model:x.model,state:"",alias:x.alias,code:x.code,type:x.type,deviceUUID:b,keys:[]};g(e,(t=>{t.success?(I(!1),x.uuid=e.uuid,R(!0),y(b,e)):(console.error("save remote to server failed:",t.message),a({open:!0,msg:L(t.message||"pages.ir.remote.addIRRemoteFail"),severity:"error"}))}))}),[b,x,j,g]),X=(0,t.useCallback)((()=>{V(Y)}),[V]),J=(0,t.useCallback)((()=>{V(H)}),[V]),$=(0,t.useCallback)((()=>{T?J():X()}),[T,X,J]),q=(0,t.useCallback)((e=>{T?a({open:!0,msg:L("pages.ir.remote.cannotSendInLearnMode"),severity:"warning"}):m(b,e.uuid,e.keyUUID,"learnEmit",x.type,(e=>{e.success?a({open:!0,msg:L("pages.ir.remote.sendSuccess"),severity:"success"}):a({open:!0,msg:L("pages.ir.remote.sendFail"),severity:"error"})}))}),[b,x,T]),ee=(0,t.useCallback)(((e,t)=>{e.preventDefault(),e.stopPropagation(),W({anchorEl:e.currentTarget,irCode:t})}),[]),te=()=>{F({open:!1,irCode:null,name:""})},re=()=>{const{irCode:e,name:t}=B;te(),t.trim()?p(b,e.uuid,e.keyUUID,t.trim(),(r=>{r.success?k((r=>r.map((r=>r.keyUUID===e.keyUUID?{...r,name:t.trim()}:r)))):a({open:!0,msg:L("pages.ir.remote.updateIRCodeFail"),severity:"error"})})):a({open:!0,msg:L("pages.ir.remote.nameCannotBeEmpty"),severity:"warning"})},ne=(0,t.useCallback)((()=>{if(I(!0),D(!1),b&&x){if(!j)return void K();s(b,x.uuid,(e=>{if(I(!1),e.success){const t=e.data||[];k(t.map((e=>({...e,name:e.name}))))}else console.error("failed to get IR code list:",e.message),D(!0)}))}}),[b,x,K,s]);(0,t.useEffect)((()=>(b&&x&&(Z(),Q(),G(),ne()),()=>{V(H)})),[b,x]);return C?(0,qh.jsxs)(JI,{sx:{height:"100vh",display:"flex",flexDirection:"column"},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[!U&&(0,qh.jsx)(cE.A,{onClick:()=>e(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(Bh.A,{variant:"h6",sx:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3",ml:1},children:null===x||void 0===x?void 0:x.alias})]})}),(0,qh.jsx)(lE,{sx:{flex:1,display:"flex",alignItems:"center",justifyContent:"center"},children:(0,qh.jsx)(ym,{sx:{display:"flex",flexDirection:"column",alignItems:"center",gap:2},children:(0,qh.jsx)(AE,{})})})]}):E?(0,qh.jsxs)(JI,{sx:{height:"100vh",display:"flex",flexDirection:"column"},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[!U&&(0,qh.jsx)(cE.A,{onClick:()=>e(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(Bh.A,{variant:"h6",sx:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3",ml:1},children:null===x||void 0===x?void 0:x.alias})]})}),(0,qh.jsx)(lE,{sx:{flex:1,display:"flex",alignItems:"center",justifyContent:"center"},children:(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",alignItems:"center",gap:2},children:[(0,qh.jsx)(cE.A,{onClick:ne,children:(0,qh.jsx)(ioe,{sx:{fontSize:60}})}),(0,qh.jsx)(Bh.A,{variant:"caption",color:"text.secondary",children:L("pages.ir.remote.networkIssuePleaseRetry")})]})})]}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(JI,{sx:{height:"100vh",width:"100%",display:"flex",flexDirection:"column",overflowX:"hidden",padding:0,margin:0,"& .MuiCardContent-root":{padding:0}},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",minWidth:0},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",flex:1,minWidth:0,overflow:"hidden"},children:[!U&&(0,qh.jsx)(cE.A,{onClick:()=>e(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(ym,{sx:{flex:1,minWidth:0,overflow:"hidden"},children:(0,qh.jsx)(rT,{style:{fontSize:"1.1em",fontWeight:"bold",lineHeight:"1.3",width:"100%",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},initialValue:x.alias,onSave:(e,t)=>{e&&t&&((e,t)=>{try{if(!x.uuid||""===x.uuid.trim())return void t(!0);v(b,x.uuid,e,(r=>{r.success?(t(!0),x.alias=e,y(b,{...x,alias:e})):(t(!1),console.error("remote modification failed:",r.message),a({open:!0,msg:L("pages.ir.remote.updateIRRemoteFail"),severity:"error"}))}))}catch(r){console.error("handleModify error:",r),a({open:!0,msg:L("pages.ir.remote.updateIRRemoteFail"),severity:"error"})}})(e,(e=>{t(e)}))}})})]}),!_&&(0,qh.jsx)(cE.A,{onClick:$,children:T?(0,qh.jsx)(soe,{}):(0,qh.jsx)(VU,{})})]}),sx:{pb:1,paddingLeft:"10px","& .MuiCardHeader-content":{minWidth:0,overflow:"hidden"}}}),(0,qh.jsx)(ym,{sx:{flex:1,display:"flex",justifyContent:"center",overflow:"hidden"},children:(0,qh.jsxs)(lE,{sx:{flex:1,pt:0,display:"flex",flexDirection:"column",overflow:"hidden",height:"100vh",width:"100%",padding:0,margin:0,maxWidth:1080},children:[!M&&(0,qh.jsx)(LL,{severity:"error",sx:{mb:2,flexShrink:0},children:L("pages.ir.remote.networkError")}),(0,qh.jsx)(ym,{sx:{flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden"},children:0===A.length?(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",flex:1,gap:3,p:4},children:[(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"center",mb:2},children:(0,qh.jsx)(ym,{component:"img",src:_ne,alt:"IR Auto Match Introduction",sx:{width:"100%",height:150,maxWidth:300,objectFit:"contain"}})}),(0,qh.jsx)(ym,{sx:{textAlign:"center"},children:(0,qh.jsx)(Bh.A,{variant:"h6",sx:{mb:1,fontSize:"1.2rem"},children:L("pages.ir.remote.learnInstruction")})})]}):(()=>{const e=Math.ceil(A.length/3);return(0,qh.jsx)(ym,{sx:{px:1,padding:0,marginBottom:10},"data-ir-grid":"true",children:(0,qh.jsx)(RU.Ay,{container:!0,spacing:0,children:Array.from({length:e},((t,r)=>(0,qh.jsx)(RU.Ay,{item:!0,xs:12,children:(0,qh.jsx)(RU.Ay,{container:!0,children:[0,1,2].map((t=>{const n=A[3*r+t];if(!n)return(0,qh.jsx)(RU.Ay,{item:!0,xs:4,children:(0,qh.jsx)(ny.A,{elevation:0,sx:{height:140,borderRight:"none",borderBottom:"none"}})},`${r}-${t}`);const o=t<2,a=r<e-1;return(0,qh.jsx)(RU.Ay,{item:!0,xs:4,children:(0,qh.jsxs)(ny.A,{elevation:0,sx:{height:140,backgroundColor:"background.paper",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",cursor:"pointer",position:"relative",borderRight:o?"1px solid":"none",borderBottom:a?"1px solid":"none",borderColor:"divider",borderRadius:0,transition:"opacity 0.2s, background-color 0.2s",userSelect:"none",WebkitUserSelect:"none",WebkitTouchCallout:"none",WebkitUserDrag:"none",WebkitTapHighlightColor:"transparent",touchAction:"manipulation","&:active":{opacity:.3}},onClick:()=>q(n),children:[(0,qh.jsx)(Bh.A,{variant:"body2",sx:{textAlign:"center",fontSize:"1.2rem",lineHeight:1.2,fontWeight:"normal",wordBreak:"break-word",mb:.5,pointerEvents:"none",whiteSpace:"pre-line"},children:n.name||L("pages.ir.remote.mobileDefaultKeyName")}),(0,qh.jsx)(ym,{onClick:e=>ee(e,n),sx:{position:"absolute",bottom:0,right:0,width:32,height:32,display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",borderRadius:"50%",transition:"all 0.2s ease-in-out","&:hover":{backgroundColor:"rgba(0, 0, 0, 0.08)",transform:"scale(1.1)","& .menu-icon":{transform:"scale(1.2)"}},"&:active":{transform:"scale(0.95)",backgroundColor:"rgba(0, 0, 0, 0.12)"}},children:(0,qh.jsx)(LN,{className:"menu-icon",sx:{fontSize:"18px",color:"text.secondary",transition:"all 0.2s ease-in-out"}})})]})},n.keyUUID)}))})},r)))})})})()})]})})]}),(0,qh.jsxs)(aoe.Ay,{anchorEl:z.anchorEl,open:Boolean(z.anchorEl),onClose:()=>{W({anchorEl:null,irCode:null})},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},PaperProps:{sx:{minWidth:120,boxShadow:3}},children:[(0,qh.jsxs)(RO.A,{onClick:()=>{return e=z.irCode,F({open:!0,irCode:e,name:e.name}),void W({anchorEl:null,irCode:null});var e},children:[(0,qh.jsx)(loe,{sx:{mr:1},fontSize:"small"}),L("pages.ir.remote.edit")]}),(0,qh.jsxs)(RO.A,{onClick:()=>{return e=z.irCode,W({anchorEl:null,irCode:null}),void h(b,e.uuid,e.keyUUID,(t=>{t.success?k((t=>t.filter((t=>t.keyUUID!==e.keyUUID)))):a({open:!0,msg:L("pages.ir.remote.deleteIRCodeFail"),severity:"error"})}));var e},sx:{color:"error.main"},children:[(0,qh.jsx)(wD,{sx:{mr:1},fontSize:"small"}),L("pages.ir.remote.delete")]})]}),(0,qh.jsxs)(aM,{open:B.open,onClose:te,maxWidth:"sm",fullWidth:!0,children:[(0,qh.jsx)(BL,{children:L("pages.ir.remote.edit")}),(0,qh.jsx)(uM,{children:(0,qh.jsx)(GD.A,{autoFocus:!0,margin:"dense",fullWidth:!0,variant:"outlined",value:B.name,onChange:e=>F((t=>({...t,name:e.target.value}))),onKeyPress:e=>{"Enter"===e.key&&re()}})}),(0,qh.jsxs)(WL,{children:[(0,qh.jsx)(QI.A,{onClick:te,children:L("pages.ir.remote.cancel")}),(0,qh.jsx)(QI.A,{onClick:re,variant:"contained",children:L("pages.ir.remote.save")})]})]})]})};class uoe{getAirKey(e){return{POWER_STATUS_ON:1,POWER_STATUS_OFF:1,TEMP_CONTROL_ADD:6,TEMP_CONTROL_REDUCE:7,MODE:2,FAN_SPEED:3,WIND_DIRECTION:4,AUTO_WIND_DIRECTION:5}[e]||1}getPowerIndex(e){return 1===e}getPowerValue(e){return e?1:0}getTemperature(e){return e}getModeIndex(e){return{1:0,2:1,3:2,4:3,5:4}[e]||0}getModeValue(e){return{0:1,1:2,2:3,3:4,4:5}[e]||1}getFanSpeedIndex(e){return{1:0,2:1,3:2,4:3}[e]||0}getFanSpeedValue(e){return{0:1,1:2,2:3,3:4}[e]||1}getWindDirectionIndex(e){return{1:0,2:1,3:2}[e]||0}getWindDirectionValue(e){return{0:1,1:2,2:3}[e]||2}getAutoWindDirectionIndex(e){return{1:0,0:1}[e]||0}getAutoWindDirectionValue(e){return{0:1,1:0}[e]||1}getLightKey(e){return{POWER_STATUS_ON:1,POWER_STATUS_OFF:2,MODE:5,BRIGHTNESS_UP:3,BRIGHTNESS_DOWN:4,COLOR_TEMP_UP:9,COLOR_TEMP_DOWN:10}[e]||1}getTVKey(e){return{POWER_STATUS_ON:6,POWER_STATUS_OFF:6,MUTE:7,BACK:20,UP:22,MENU:3,LEFT:23,OK:21,RIGHT:24,VOLUME_UP:5,DOWN:25,CHANNEL_UP:2,VOLUME_DOWN:1,HOME:26,CHANNEL_DOWN:4}[e]||1}getFanKey(e){return{POWER_STATUS_ON:1,POWER_STATUS_OFF:1,FAN_SPEED:2,SHAKE_HEAD:3,MODE:4,LOW:20,MIDDLE:21,HIGH:22}[e]||1}getKeyByDeviceType(e,t){switch(e){case 49152:return this.getAirKey(t);case 57344:return this.getLightKey(t);case 8192:return this.getTVKey(t);case 32768:return this.getFanKey(t);default:return console.warn(`Unknown device type: ${e}`),1}}getPowerOnKeyByDeviceType(e){switch(e){case 49152:return this.getAirKey("POWER_STATUS_ON");case 57344:return this.getLightKey("POWER_STATUS_ON");case 8192:return this.getTVKey("POWER_STATUS_ON");case 32768:return this.getFanKey("POWER_STATUS_ON");default:return console.warn(`Unknown device type: ${e}`),1}}getPowerOffKeyByDeviceType(e){switch(e){case 49152:return this.getAirKey("POWER_STATUS_OFF");case 57344:return this.getLightKey("POWER_STATUS_OFF");case 8192:return this.getTVKey("POWER_STATUS_OFF");case 32768:return this.getFanKey("POWER_STATUS_OFF");default:return console.warn(`Unknown device type: ${e}`),1}}convertToUIState(e){if(!e)return null;try{return{power:1===e.power,temperature:e.temperature,mode:this.getModeIndex(e.mode),fanSpeed:this.getFanSpeedIndex(e.fanSpeed),windDirection:this.getWindDirectionIndex(e.windDirection),autoSwing:1===e.autoWindDirection}}catch(t){return console.error("Error converting to UI state:",t),null}}}class doe{constructor(){this.power=0,this.temperature=25,this.fanSpeed=1,this.windDirection=2,this.autoWindDirection=1,this.mode=2,this.key=1,this.code=0,this.defaultTable=[0,0,0],this.AirPrefixCode=[48,1],this.commonPrefixCode=[48,0]}buildAirCommand(){const e=this.buildKeyData(this.AirPrefixCode,this.code,this.defaultTable);e[4]=this.temperature,e[5]=this.fanSpeed,e[6]=this.windDirection,e[7]=this.autoWindDirection,e[8]=this.power,e[9]=this.key,e[10]=this.mode,e[e.length-2]=255;const t=e.slice(0,-1).reduce(((e,t)=>e+t),0);return e[e.length-1]=255&t,e}buildNonAirCommand(){const e=this.buildKeyData(this.commonPrefixCode,this.code,this.defaultTable);e[9]=this.key,e[e.length-2]=255;const t=e.slice(0,-1).reduce(((e,t)=>e+t),0);return e[e.length-1]=255&t,e}buildKeyData(e,t,r){const n=[...r],o=[];o.push(...e);const[a,i]=this.decimalToTwoHexInts(t);return o.push(a,i),o.push(...new Array(7).fill(0)),n[0]=r[0]+1&255,o.push(...n),o.push(255,0),o}decimalToTwoHexInts(e){return[Math.floor(e/256),e%256]}parseAirCommand(e){try{if(!e||e.length<22)return console.warn("Invalid hex string for parsing:",e),null;const t=this.hexStringToByteArray(e);if(t.length<11||48!==t[0]||1!==t[1])return console.warn("Not a valid air conditioner command:",e),null;return{temperature:t[4],fanSpeed:t[5],windDirection:t[6],autoWindDirection:t[7],power:t[8],key:t[9],mode:t[10]}}catch(t){return console.error("Error parsing air command:",t),null}}hexStringToByteArray(e){const t=[];for(let r=0;r<e.length;r+=2)t.push(parseInt(e.substr(r,2),16));return t}toHexString(e){return e.map((e=>e.toString(16).padStart(2,"0").toUpperCase())).join("")}setPower(e){return this.power=e,this}setTemperature(e){return this.temperature=e,this}setModel(e){return this.mode=e,this}setFanSpeed(e){return this.fanSpeed=e,this}setWindDirection(e){return this.windDirection=e,this}setAutoWindDirection(e){return this.autoWindDirection=e,this}setKey(e){return this.key=e,this}setCode(e){return this.code=e,this}getPower(){return this.power}getTemperature(){return this.temperature}getModel(){return this.mode}getFanSpeed(){return this.fanSpeed}getWindDirection(){return this.windDirection}getAutoDirection(){return this.autoWindDirection}getKey(){return this.key}getCode(){return this.code}}function foe(e,t){var r;const n=null!==(r=null===e||void 0===e?void 0:e.code)&&void 0!==r?r:0;return t(n<1e4?"pages.ir.list.fromHXD":n<3e4?"pages.ir.list.fromIRremoteESP8266":"pages.ir.list.fromSB")}const poe=()=>{var e;const r=hg(),[n,o]=(0,t.useState)({power:!1,temperature:25,mode:1,fanSpeed:0,windDirection:1,autoSwing:!0}),[a,i]=(0,t.useState)(null),[s]=xv(),l=s.get("hub3DeviceId"),c=(0,t.useMemo)((()=>new uoe),[]),u=(0,t.useMemo)((()=>new doe),[]),{gAuth:d,gStripe:f,setSnackbarValue:p,gMediaType:h}=(0,t.useContext)(VI),{sendIR:m,updateRemoteState:g,addIRRemote:v,modifyIRRemote:y,addRemoteToMatter:b,updateLocalRemoteList:w}=aL(0,f,p),[x,S]=(0,t.useState)(!1),[A,k]=(0,t.useState)(!1),[C,I]=(0,t.useState)({}),[E,D]=(0,t.useState)(""),[T,O]=(0,t.useState)(""),[M,P]=(0,t.useState)([]),{t:j}=Fv(),R=h.isMobile;(0,t.useEffect)((()=>{(()=>{const e=sessionStorage.getItem("autoMatchResult");if(e)try{const t=JSON.parse(e),r=Date.now()-t.timestamp<3e3;if(t.fromAutoMatch&&t.selectedRemote&&r){const e=t.selectedRemote.irRemote||t.selectedRemote;return I(e),P(t.matchedRemotes||[]),void sessionStorage.removeItem("autoMatchResult")}sessionStorage.removeItem("autoMatchResult")}catch(r){console.error("parse sessionStorage match result error:",r),sessionStorage.removeItem("autoMatchResult")}const t=s.get("remote");if(t)try{I(JSON.parse(t))}catch(r){console.error("parse default remote param error:",r)}else console.warn("no remote param found in url")})()}),[]),(0,t.useEffect)((()=>{const e=(null===C||void 0===C?void 0:C.uuid)&&""!==C.uuid.trim();S(e),D(C.alias),e&&C.state&&J(C)}),[C]);const _=(0,t.useCallback)(((e,t,r)=>{try{const n=c.getAirKey(e),o=u.setKey(n).setCode(t.code).setPower(r.power?1:0).setTemperature(r.temperature).setModel(c.getModeValue(r.mode)).setFanSpeed(c.getFanSpeedValue(r.fanSpeed)).setWindDirection(c.getWindDirectionValue(r.windDirection)).setAutoWindDirection(r.autoSwing?1:0).buildAirCommand();return u.toHexString(o)}catch(n){return console.error("buildCommand error:",n),""}}),[c,u]),N=()=>{switch(n.mode){case 0:return zne;case 1:default:return Wne;case 2:return Hne;case 3:return Vne;case 4:return Yne}},L=()=>{switch(n.fanSpeed){case 0:default:return Xne;case 1:return Jne;case 2:return $ne;case 3:return qne}},U=()=>{switch(n.windDirection){case 0:return eoe;case 1:default:return toe;case 2:return roe}},B=(0,t.useMemo)((()=>{return[{id:"power_on",type:"POWER_ON",title:j("pages.ir.remote.on"),icon:n.power?ooe:noe,position:{row:0,col:0},clickable:!0},{id:"temperature_display",type:"TEMPERATURE_DISPLAY",title:`${n.temperature}\xb0C`,icon:null,position:{row:0,col:1},clickable:!1},{id:"power_off",type:"POWER_OFF",title:j("pages.ir.remote.off"),icon:n.power?noe:ooe,position:{row:0,col:2},clickable:!0},{id:"temp_add",type:"TEMP_ADD",title:j("pages.ir.remote.temperature"),icon:Gne,position:{row:1,col:0},clickable:!0},{id:"mode",type:"MODE",title:(o=n.mode,[j("pages.ir.remote.autoMode"),j("pages.ir.remote.coolMode"),j("pages.ir.remote.dehumidifyMode"),j("pages.ir.remote.fanMode"),j("pages.ir.remote.heatMode")][o]||j("pages.ir.remote.coolMode")),icon:N(),position:{row:1,col:1},clickable:!0},{id:"temp_reduce",type:"TEMP_REDUCE",title:j("pages.ir.remote.temperature"),icon:Zne,position:{row:1,col:2},clickable:!0},{id:"fan_speed",type:"FAN_SPEED",title:(r=n.fanSpeed,[j("pages.ir.remote.fanSpeedAuto"),j("pages.ir.remote.fanSpeedLow"),j("pages.ir.remote.fanSpeedMedium"),j("pages.ir.remote.fanSpeedHigh")][r]||j("pages.ir.remote.fanSpeedAuto")),icon:L(),position:{row:2,col:0},clickable:!0},{id:"wind_direction",type:"WIND_DIRECTION",title:(t=n.windDirection,[j("pages.ir.remote.windDirectionUp"),j("pages.ir.remote.windDirectionCenter"),j("pages.ir.remote.windDirectionDown")][t]||j("pages.ir.remote.windDirectionCenter")),icon:U(),position:{row:2,col:1},clickable:!0},{id:"auto_swing",type:"AUTO_SWING",title:(e=n.autoSwing,j(e?"pages.ir.remote.autoSwing":"pages.ir.remote.stopSwing")),icon:n.autoSwing?Qne:Kne,position:{row:2,col:2},clickable:!0}];var e,t,r,o}),[n]),F=e=>{e.power=!0},z=e=>{e.power=!1},W=e=>{e.temperature=Math.min(32,e.temperature+1)},H=e=>{e.temperature=Math.max(16,e.temperature-1)},Y=e=>{e.mode=(e.mode+1)%5},V=e=>{e.fanSpeed=(e.fanSpeed+1)%4},G=e=>{e.windDirection=(e.windDirection+1)%3},Z=e=>{e.autoSwing=!e.autoSwing},Q=()=>[0,1,4].includes(n.mode),K=e=>{var t={...n};return t.power=!1,_("POWER_STATUS_OFF",e,t)},X=e=>{var t={...n};return t.power=!0,_("POWER_STATUS_ON",e,t)},J=(0,t.useCallback)((e=>{if(null!==e&&void 0!==e&&e.uuid&&""!==e.uuid.trim()&&e.state)try{const t=u.parseAirCommand(e.state);if(!t)return void console.warn("Failed to parse remote state");const r=c.convertToUIState(t);if(!r)return void console.warn("Failed to convert to UI state");o(r)}catch(t){console.error("Error restoring state from remote:",t)}}),[C]);return(0,qh.jsxs)(JI,{sx:{height:"100vh",width:"100%",display:"flex",flexDirection:"column",padding:0,margin:0,"& .MuiCardContent-root":{padding:0}},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[!R&&(0,qh.jsx)(cE.A,{onClick:()=>r(-1),sx:{flexShrink:0,mr:1},children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(ym,{sx:{flex:"1 1 0",minWidth:0,overflow:"hidden",mr:1},children:(0,qh.jsx)(rT,{style:{fontSize:"1.1em",fontWeight:"bold",lineHeight:"1.3",width:"100%",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},initialValue:C.alias,onSave:x?(e,t)=>{e&&t&&((e,t)=>{try{if(!C.uuid||""===C.uuid.trim())return t(!0),void D(e);y(l,C.uuid,e,(r=>{r.success?(t(!0),I((t=>({...t,alias:e}))),D(e),w(l,{...C,alias:e})):(t(!1),console.error("modify IR remote failed:",r.message),p({open:!0,msg:j("pages.ir.remote.updateIRRemoteFail"),severity:"error"}))}))}catch(r){console.error("handleModify error:",r),p({open:!0,msg:j("pages.ir.remote.handleFailed"),severity:"error"})}})(e,(e=>{t(e)}))}:null})}),!x&&(0,qh.jsx)(cE.A,{onClick:()=>{if(!A){k(!0);try{const e={uuid:Ue.generateUUID(),model:C.model,state:T,alias:E,code:C.code,type:C.type,deviceUUID:l,keys:[]};v(e,(t=>{t.success?(C.uuid=e.uuid,S(!0),w(l,e),(e=>{const t=X(e),r=K(e);b(l,t,r,e,(e=>{}))})(e)):(console.error("add IR remote failed:",t.message),p({open:!0,msg:j(t.message||"pages.ir.remote.addIRRemoteFail"),severity:"error"}),k(!1))}))}catch(e){k(!1),console.error("handleSave error:",e),p({open:!0,msg:j("pages.ir.remote.handleFailed"),severity:"error"})}}},sx:{flexShrink:0},children:(0,qh.jsx)(dB,{})})]}),sx:{pb:1,px:"10px","& .MuiCardHeader-content":{overflow:"hidden"}}}),(0,qh.jsxs)(lE,{sx:{display:"flex",overflow:"hidden",height:"100vh",width:"100%",padding:0,margin:0,flexDirection:"column",alignItems:"center"},children:[(0,qh.jsx)(ym,{sx:{px:1,width:"100%",maxWidth:1080,display:"flex",padding:0,margin:0,justifyContent:"center"},children:(0,qh.jsx)(RU.Ay,{container:!0,spacing:0,sx:{width:"100%"},children:[0,1,2].map((e=>(0,qh.jsx)(RU.Ay,{item:!0,xs:12,children:(0,qh.jsx)(RU.Ay,{container:!0,children:[0,1,2].map((t=>{const r=B.find((r=>r.position.row===e&&r.position.col===t));if(!r)return(0,qh.jsx)(RU.Ay,{item:!0,xs:4,children:(0,qh.jsx)(ny.A,{elevation:0,sx:{height:80,borderRight:t<2?"1px solid":"none",borderBottom:e<2?"1px solid":"none",borderColor:"divider"}})},`${e}-${t}`);const s=a===r.id,c=r.icon;return(0,qh.jsx)(RU.Ay,{item:!0,xs:4,children:(0,qh.jsxs)(ny.A,{elevation:0,sx:{height:125,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"space-between",cursor:r.clickable?"pointer":"default",borderRight:t<2?"1px solid":"none",borderBottom:e<2?"1px solid":"none",borderColor:"divider",borderRadius:0,opacity:s?.3:1,transition:"opacity 0.2s",margin:0,py:1},onClick:()=>(async e=>{if(e.clickable&&!a){i(e.id);try{let t={...n};switch(e.type){case"POWER_ON":F(t);break;case"POWER_OFF":z(t);break;case"TEMP_ADD":if(Q()){W(t);break}return;case"TEMP_REDUCE":if(Q()){H(t);break}return;case"MODE":Y(t);break;case"FAN_SPEED":V(t);break;case"WIND_DIRECTION":G(t);break;case"AUTO_SWING":Z(t)}o(t);let r=_(e.type,C,t);if(O(r),!r)return console.error("handleItemClick buildCommand is empty!"),void p({open:!0,msg:j("pages.ir.remote.operationFailed"),severity:"error"});let a=C.uuid||"";m(l,a,r,"remoteEmit",C.type,(e=>{e.success?C.uuid&&g(l,C.uuid,r,(e=>{e.success||console.error("update device state failed:",e.message),I((e=>({...e,state:r}))),w(l,C)})):console.error("send IR failed:",e.message)}))}catch(t){console.error("handleItemClick error:",t),p({open:!0,msg:j("pages.ir.remote.handleFailed"),severity:"error"})}finally{setTimeout((()=>{i(null)}),1e3)}}})(r),children:[(0,qh.jsx)(ym,{sx:{flex:1}}),(0,qh.jsx)(Bh.A,{variant:"caption",sx:{fontSize:"1.2rem",textAlign:"center",opacity:s?.3:1,lineHeight:1.2,fontWeight:"normal",color:"inherit"},children:r.title}),(0,qh.jsx)(ym,{sx:{flex:1,display:"flex",alignItems:"flex-end",justifyContent:"center"},children:c?(0,qh.jsx)(c,{opacity:s?.3:1}):(0,qh.jsx)(ym,{sx:{height:24}})})]})},r.id)}))})},e)))})}),(0,qh.jsxs)(ym,{sx:{position:"absolute",bottom:20,pt:4,display:"flex",flexDirection:"column",justifyContent:"flex-start",left:0,right:0,alignItems:"center"},children:[!x&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",justifyContent:"center",px:2,py:1,cursor:"pointer",borderTop:"1px solid",borderColor:"divider",width:"100%"},onClick:()=>(async()=>{r({pathname:"/biz/access-control/remote-match",search:Bg({hub3DeviceId:l,remote:JSON.stringify(C),matchedRemotes:JSON.stringify(M),...f.isFromApp&&{fromType:"app"}}).toString()})})(),children:(0,qh.jsxs)(Bh.A,{variant:"body2",color:"text.secondary",children:[j("pages.ir.remote.cannotControlAirConditionerAutoMatchRemote")," >"]})}),(0,qh.jsx)(Bh.A,{variant:"caption",color:"text.secondary",sx:{display:"block",textAlign:"center",mt:1,fontSize:"0.7rem"},children:`${foe(C,j)} ${null!==(e=null===C||void 0===C?void 0:C.alias)&&void 0!==e?e:""}`})]})]})]})};const hoe=()=>{var e;const r=hg(),n=dg(),[o]=xv(),{gAuth:a,gStripe:i,setSnackbarValue:s,gMediaType:l}=(0,t.useContext)(VI),{getIRMode:c,setIRMode:u,subscribeIRMode:d,subscribeIRData:f,unsubscribeIRMode:p,unsubscribeIRData:h,matchRemote:m}=aL(0,i,s),[g,v]=(0,t.useState)([]),[y,b]=(0,t.useState)(!1),[w,x]=(0,t.useState)(!0),[S,A]=(0,t.useState)(!1),k=o.get("hub3DeviceId"),C=JSON.parse(o.get("remote")||"{}"),I=(null===(e=n.state)||void 0===e?void 0:e.searchResults)||[],{t:E}=Fv(),D=l.isMobile,T=0,O=1;(0,t.useEffect)((()=>{let e=JSON.parse(o.get("matchedRemotes")||"[]");v(e)}),[]);const M=()=>{const e=parseInt(C.type);return{32768:E("pages.ir.list.fan"),57344:E("pages.ir.list.light"),8192:E("pages.ir.list.tv"),49152:E("pages.ir.list.airConditioner")}[e]},P=e=>{u(k,e,(e=>{e.success||(console.error("set IR mode failed:",e.message),s({open:!0,msg:E("pages.ir.remote.setIRModeFail"),severity:"error"}))}))},j=(e,t)=>{try{return e?e.map((e=>{const r=e.controlType||{},n=r.model||"",o=r.alias||"",a=r.direction||"",i=e.companyCode||-1,s=`${(e.bestMatchPercentage||0).toFixed(2)}%`;return{irRemote:{model:n,alias:o,uuid:void 0,state:null,timestamp:Date.now(),type:t,code:i,keys:null,direction:a},matchPercent:s}})):[]}catch(r){return console.error("parse match results failed:",r),[]}},R=()=>{A(!0),x(!0),d(k,(e=>{if(e.success)try{let t=e.data.data.ir_mode;S&&t!==O&&setTimeout((()=>{S&&t!==O&&P(O)}),500)}catch(t){console.error("parse IR mode data failed:",t)}else console.error("subscribe IR mode failed:",e.message),x(!1)})),c(k,(e=>{if(e.success)try{let t;e.data&&"object"===typeof e.data?t=e.data.ir_mode||e.data.mode:"number"===typeof e.data&&(t=e.data),void 0!==t&&t!==O&&P(O)}catch(t){console.error("parse IR mode data failed:",t)}else console.error("get IR mode failed:",e.message)})),f(k,(e=>{if(e.success){if(0===g.length&&b(!0),!e.data.data||e.data.data.length<=50)return void setTimeout((()=>{A(!0),P(O)}),500);A(!1),P(T),m(e.data.data,parseInt(C.type),C.model,(e=>{if(A(!0),P(O),e.success){const t=j(e.data.matches,parseInt(C.type));0===t.length||v(t),b(!1)}else console.error("match failed:",e.message),b(!1)}))}else console.error("subscribe learning data failed:",e.message),x(!1),A(!0),P(O)})),P(O)};return(0,t.useEffect)((()=>(k&&C.type&&C.model&&(I.length>0&&v(I),b(!0),R()),()=>{A(!1),h(k),p(k),P(T)})),[]),(0,qh.jsxs)(JI,{sx:{height:"100vh",display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[!D&&(0,qh.jsx)(cE.A,{onClick:()=>r(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(Bh.A,{variant:"h6",sx:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3",ml:1},children:C.model})]})}),(0,qh.jsxs)(lE,{sx:{flex:1,pt:0,display:"flex",flexDirection:"column",overflow:"hidden",pb:0},children:[!w&&(0,qh.jsx)(LL,{severity:"error",sx:{mb:2,flexShrink:0},children:E("pages.ir.remote.networkError")}),(0,qh.jsxs)(ym,{sx:{flexShrink:0},children:[(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"center",mb:2},children:(0,qh.jsx)(ym,{component:"img",src:_ne,alt:"IR Auto Match Introduction",sx:{width:"100%",height:150,maxWidth:300,objectFit:"contain"}})}),(0,qh.jsx)(Bh.A,{variant:"body1",sx:{mb:2,px:1},children:E("pages.ir.remote.matchInstruction")})]}),(0,qh.jsxs)(ym,{sx:{flex:1,minHeight:0,display:"flex",flexDirection:"column",mb:"80px"},children:[y&&0===g.length&&(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",flex:1,gap:2},children:[(0,qh.jsx)(AE,{}),(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",children:E("pages.ir.remote.matchingRemote",{type:M()})})]}),g.length>0&&(0,qh.jsx)(ym,{sx:{flex:1,overflow:"auto",minHeight:0},children:(0,qh.jsx)($T.A,{sx:{padding:0},children:g.map(((e,t)=>(0,qh.jsx)(lO,{sx:{cursor:"pointer",display:"flex",alignItems:"center",minHeight:56,px:2,py:1.5,borderBottom:t<g.length-1?"1px solid":"none",borderColor:"divider","&:hover":{backgroundColor:"action.hover"}},onClick:()=>(e=>{const t={selectedRemote:e,matchedRemotes:g,fromAutoMatch:!0,timestamp:Date.now()};sessionStorage.setItem("autoMatchResult",JSON.stringify(t)),r(-1)})(e),children:(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%"},children:[(0,qh.jsx)(Bh.A,{variant:"body1",sx:{fontWeight:"medium",flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",mr:2,lineHeight:1.5},children:e.irRemote.alias||e.irRemote.model}),(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",sx:{flexShrink:0,lineHeight:1.5},children:e.matchPercent})]})},t)))})}),!y&&0===g.length&&(0,qh.jsx)(ym,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",flex:1,gap:2},children:(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",children:E("pages.ir.remote.noMatchResults",{type:M()})})})]}),(0,qh.jsx)(ym,{sx:{position:"absolute",bottom:0,left:0,right:0,height:40,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"background.paper"},children:(0,qh.jsx)(Bh.A,{variant:"caption",color:"text.secondary",sx:{display:"block",textAlign:"center",fontSize:"0.7rem"},children:"HXD"})})]})]})},moe=e=>[{id:"power",type:"POWER_STATUS_ON",title:e("pages.ir.remote.power"),position:{row:0,col:0},clickable:!0},{id:"mode",type:"MODE",title:e("pages.ir.remote.mode"),position:{row:0,col:1},clickable:!0},{id:"shake_head",type:"SHAKE_HEAD",title:e("pages.ir.remote.headShake"),position:{row:0,col:2},clickable:!0},{id:"low",type:"LOW",title:e("pages.ir.remote.lowSpeed"),position:{row:1,col:0},clickable:!0},{id:"middle",type:"MIDDLE",title:e("pages.ir.remote.mediumSpeed"),position:{row:1,col:1},clickable:!0},{id:"high",type:"HIGH",title:e("pages.ir.remote.highSpeed"),position:{row:1,col:2},clickable:!0},{id:"fan_speed",type:"FAN_SPEED",title:e("pages.ir.remote.fanSpeed"),position:{row:2,col:0},clickable:!0}],goe=()=>{const e=hg(),[r,n]=(0,t.useState)(null),[o]=xv(),a=o.get("hub3DeviceId"),[i,s]=(0,t.useState)({}),l=(0,t.useMemo)((()=>new uoe),[]),c=(0,t.useMemo)((()=>new doe),[]),{gAuth:u,gStripe:d,setSnackbarValue:f,gMediaType:p}=(0,t.useContext)(VI),{sendIR:h,updateRemoteState:m,addIRRemote:g,modifyIRRemote:v,addRemoteToMatter:y,updateLocalRemoteList:b}=aL(0,d,f),[w,x]=(0,t.useState)(!1),[S,A]=(0,t.useState)(!1),[k,C]=(0,t.useState)(""),[I,E]=(0,t.useState)(""),[D,T]=(0,t.useState)([]),{t:O}=Fv(),M=p.isMobile;(0,t.useEffect)((()=>{(()=>{const e=sessionStorage.getItem("autoMatchResult");if(e)try{const t=JSON.parse(e),r=Date.now()-t.timestamp<3e3;if(t.fromAutoMatch&&t.selectedRemote&&r){const e=t.selectedRemote.irRemote||t.selectedRemote;return s(e),T(t.matchedRemotes||[]),void sessionStorage.removeItem("autoMatchResult")}sessionStorage.removeItem("autoMatchResult")}catch(r){console.error("parse sessionStorage match Result error:",r),sessionStorage.removeItem("autoMatchResult")}const t=o.get("remote");if(t)try{s(JSON.parse(t))}catch(r){console.error("parse default remote parameter error:",r)}else console.warn("\u6ca1\u6709\u627e\u5230 remote \u53c2\u6570")})()}),[]),(0,t.useEffect)((()=>{const e=(null===i||void 0===i?void 0:i.uuid)&&""!==i.uuid.trim();x(e),C((null===i||void 0===i?void 0:i.alias)||"")}),[i]);const P=(0,t.useMemo)((()=>(()=>{switch(parseInt(i.type)){case 32768:default:return moe(O);case 57344:return(e=>[{id:"power_on",type:"POWER_STATUS_ON",title:e("pages.ir.remote.openLight"),position:{row:0,col:0},clickable:!0},{id:"mode",type:"MODE",title:e("pages.ir.remote.mode"),position:{row:0,col:1},clickable:!0},{id:"power_off",type:"POWER_STATUS_OFF",title:e("pages.ir.remote.closeLight"),position:{row:0,col:2},clickable:!0},{id:"brightness_up",type:"BRIGHTNESS_UP",title:e("pages.ir.remote.brightnessUp"),position:{row:1,col:0},clickable:!0},{id:"brightness_down",type:"BRIGHTNESS_DOWN",title:e("pages.ir.remote.brightnessDown"),position:{row:1,col:1},clickable:!0},{id:"color_temp_up",type:"COLOR_TEMP_UP",title:e("pages.ir.remote.colorTempUp"),position:{row:1,col:2},clickable:!0},{id:"color_temp_down",type:"COLOR_TEMP_DOWN",title:e("pages.ir.remote.colorTempDown"),position:{row:2,col:0},clickable:!0}])(O);case 8192:return(e=>[{id:"power",type:"POWER_STATUS_ON",title:e("pages.ir.remote.power"),position:{row:0,col:0},clickable:!0},{id:"home",type:"HOME",title:e("pages.ir.remote.home"),position:{row:0,col:1},clickable:!0},{id:"back",type:"BACK",title:e("pages.ir.remote.back"),position:{row:0,col:2},clickable:!0},{id:"mute",type:"MUTE",title:e("pages.ir.remote.mute"),position:{row:1,col:0},clickable:!0},{id:"up",type:"UP",title:e("pages.ir.remote.up"),position:{row:1,col:1},clickable:!0},{id:"menu",type:"MENU",title:e("pages.ir.remote.menu"),position:{row:1,col:2},clickable:!0},{id:"left",type:"LEFT",title:e("pages.ir.remote.left"),position:{row:2,col:0},clickable:!0},{id:"ok",type:"OK",title:e("pages.ir.remote.ok"),position:{row:2,col:1},clickable:!0},{id:"right",type:"RIGHT",title:e("pages.ir.remote.right"),position:{row:2,col:2},clickable:!0},{id:"volume_up",type:"VOLUME_UP",title:e("pages.ir.remote.volumeUp"),position:{row:3,col:0},clickable:!0},{id:"down",type:"DOWN",title:e("pages.ir.remote.down"),position:{row:3,col:1},clickable:!0},{id:"channel_up",type:"CHANNEL_UP",title:e("pages.ir.remote.channelUp"),position:{row:3,col:2},clickable:!0},{id:"volume_down",type:"VOLUME_DOWN",title:e("pages.ir.remote.volumeDown"),position:{row:4,col:0},clickable:!0},{id:"channel_down",type:"CHANNEL_DOWN",title:e("pages.ir.remote.channelDown"),position:{row:4,col:1},clickable:!0}])(O)}})()),[i.type]),j=async e=>{if(e.clickable&&!r){n(e.id);try{let t=((e,t)=>{try{const r=l.getKeyByDeviceType(i.type,e.type),n=c.setKey(r).setCode(t.code).buildNonAirCommand();return c.toHexString(n)}catch(r){return console.error("buildCommand error:",r),""}})(e,i);if(E(t),!t)return console.error("handleItemClick buildCommand is empty!"),void f({open:!0,msg:O("pages.ir.remote.operationFailed"),severity:"error"});let r=i.uuid||"";h(a,r,t,"remoteEmit",i.type,(e=>{e.success?i.uuid&&m(a,i.uuid,t,(e=>{e.success||console.error("device state update failed:",e.message)})):console.error("IR code send failed:",e.message)}))}catch(t){console.error("handleItemClick error:",t),f({open:!0,msg:O("pages.ir.remote.operationFailed"),severity:"error"})}finally{setTimeout((()=>{n(null)}),1e3)}}},R=e=>{const t=l.getPowerOffKeyByDeviceType(e.type);return c.toHexString(c.setKey(t).setCode(e.code).buildNonAirCommand())},_=e=>{const t=l.getPowerOnKeyByDeviceType(e.type);return c.toHexString(c.setKey(t).setCode(e.code).buildNonAirCommand())},N=Math.max(...P.map((e=>e.position.row)))+1;return(0,qh.jsxs)(JI,{sx:{height:"100vh",width:"100%",display:"flex",flexDirection:"column",padding:0,margin:0,"& .MuiCardContent-root":{padding:0}},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[!M&&(0,qh.jsx)(cE.A,{onClick:()=>e(-1),sx:{flexShrink:0,mr:1},children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(ym,{sx:{flex:"1 1 0",minWidth:0,overflow:"hidden",mr:1},children:(0,qh.jsx)(rT,{style:{fontSize:"1.1em",fontWeight:"bold",lineHeight:"1.3",width:"100%",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},initialValue:i.alias,onSave:w?(e,t)=>{e&&t&&((e,t)=>{try{if(!i.uuid||""===i.uuid.trim())return t(!0),void C(e);v(a,i.uuid,e,(r=>{r.success?(t(!0),i.alias=e,C(e),b(a,i)):(t(!1),console.error("remote modification failed:",r.message),f({open:!0,msg:O("pages.ir.remote.updateIRRemoteFail"),severity:"error"}))}))}catch(r){console.error("handleModify error:",r),f({open:!0,msg:O("pages.ir.remote.handleFailed"),severity:"error"})}})(e,(e=>{t(e)}))}:null})}),!w&&(0,qh.jsx)(cE.A,{onClick:()=>{if(!S){A(!0);try{const e={uuid:Ue.generateUUID(),model:i.model,state:I,alias:k,code:i.code,type:i.type,deviceUUID:a,keys:[]};g(e,(t=>{t.success?(i.uuid=e.uuid,x(!0),b(a,e),(e=>{const t=_(e),r=R(e);y(a,t,r,e,(e=>{}))})(e)):(console.error("remote save failed:",t.message),A(!1),f({open:!0,msg:O(t.message||"pages.ir.remote.addIRRemoteFail"),severity:"error"}))}))}catch(e){A(!1),console.error("handleSave error:",e),f({open:!0,msg:O("pages.ir.remote.handleFailed"),severity:"error"})}}},sx:{flexShrink:0},children:(0,qh.jsx)(dB,{})})]}),sx:{pb:1,px:"10px","& .MuiCardHeader-content":{overflow:"hidden"}}}),(0,qh.jsxs)(lE,{sx:{display:"flex",overflow:"hidden",height:"100vh",width:"100%",padding:0,margin:0,flexDirection:"column",alignItems:"center"},children:[(0,qh.jsx)(ym,{sx:{px:1,width:"100%",maxWidth:1080,display:"flex",padding:0,margin:0,justifyContent:"center"},children:(0,qh.jsx)(RU.Ay,{container:!0,spacing:0,sx:{width:"100%"},children:Array.from({length:N},((e,t)=>(0,qh.jsx)(RU.Ay,{item:!0,xs:12,children:(0,qh.jsx)(RU.Ay,{container:!0,children:[0,1,2].map((e=>{const n=P.find((r=>r.position.row===t&&r.position.col===e));if(!n)return(0,qh.jsx)(RU.Ay,{item:!0,xs:4,children:(0,qh.jsx)(ny.A,{elevation:0,sx:{height:80,borderRight:"none",borderBottom:"none"}})},`${t}-${e}`);const o=e<2,a=P.some((r=>r.position.row===t+1&&r.position.col===e)),i=r===n.id;return(0,qh.jsx)(RU.Ay,{item:!0,xs:4,children:(0,qh.jsx)(ny.A,{elevation:0,sx:{height:125,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",cursor:n.clickable?"pointer":"default",borderRight:o?"1px solid":"none",borderBottom:a?"1px solid":"none",borderColor:"divider",borderRadius:0,opacity:i?.3:1,transition:"opacity 0.2s",margin:0},onClick:()=>j(n),children:(0,qh.jsx)(Bh.A,{variant:"body2",sx:{fontSize:"1.2rem",textAlign:"center",opacity:i?.3:1,lineHeight:1.2,fontWeight:"normal",color:"inherit"},children:n.title})})},n.id)}))})},t)))})}),(0,qh.jsxs)(ym,{sx:{position:"absolute",bottom:20,pt:4,display:"flex",flexDirection:"column",justifyContent:"flex-start",left:0,right:0,alignItems:"center"},children:[!w&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",justifyContent:"center",px:2,py:1,cursor:"pointer",borderTop:"1px solid",borderColor:"divider",width:"100%"},onClick:()=>(async()=>{e({pathname:"/biz/access-control/remote-match",search:Bg({hub3DeviceId:a,remote:JSON.stringify(i),matchedRemotes:JSON.stringify(D),...d.isFromApp&&{fromType:"app"}}).toString()})})(),children:(0,qh.jsxs)(Bh.A,{variant:"body2",color:"text.secondary",children:[O("pages.ir.remote.cannotControlAutoMatchRemote",{type:(()=>{const e=parseInt(i.type);return{32768:O("pages.ir.list.fan"),57344:O("pages.ir.list.light"),8192:O("pages.ir.list.tv")}[e]})()})," >"]})}),(0,qh.jsxs)(Bh.A,{variant:"caption",color:"text.secondary",sx:{display:"block",textAlign:"center",mt:1,fontSize:"0.7rem"},children:["HXD ",null===i||void 0===i?void 0:i.alias]})]})]})]})},voe=(0,dD.A)((0,qh.jsx)("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m4.3 14.3c-.39.39-1.02.39-1.41 0L12 13.41 9.11 16.3c-.39.39-1.02.39-1.41 0a.996.996 0 0 1 0-1.41L10.59 12 7.7 9.11a.996.996 0 0 1 0-1.41c.39-.39 1.02-.39 1.41 0L12 10.59l2.89-2.89c.39-.39 1.02-.39 1.41 0s.39 1.02 0 1.41L13.41 12l2.89 2.89c.38.38.38 1.02 0 1.41"}),"CancelRounded"),yoe=(0,dD.A)([(0,qh.jsx)("path",{d:"M12 5.99 19.53 19H4.47zM12 2 1 21h22z"},"0"),(0,qh.jsx)("path",{d:"M13 16h-2v2h2zm0-6h-2v5h2z"},"1")],"WarningAmber"),boe=(0,dD.A)((0,qh.jsx)("path",{d:"M9 16h6v-6h4l-7-7-7 7h4zm-4 2h14v2H5z"}),"FileUpload"),woe=(0,dD.A)((0,qh.jsx)("path",{d:"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8zm2 16H8v-2h8zm0-4H8v-2h8zm-3-5V3.5L18.5 9z"}),"Description"),xoe=async(e,t,r)=>{e.preventDefault();const n=e.target.files[0];if(!n)return;const o=n.name.split(".").pop().toLowerCase();if("csv"===o){const e=await n.text();let o=(0,ze.parse)(e,{header:!0,skipEmptyLines:!0}).data;t(o),r&&r(!1)}else if("xlsx"===o||"xls"===o){const e=new FileReader;e.onload=e=>{const n=Yp(new Uint8Array(e.target.result),{type:"array"}),o=n.SheetNames[0],a=n.Sheets[o];let i=(e=>{if(!Array.isArray(e)||0===e.length)return[];const t=e[0];return e.slice(1).map((e=>{let r={};return t.forEach(((t,n)=>{r[t]=e[n]})),r}))})(dh.sheet_to_json(a,{header:1,blankrows:!1}));t(i),r&&r(!1)},e.readAsArrayBuffer(n)}else console.error("\u4e0d\u652f\u6301\u7684\u6587\u4ef6\u7c7b\u578b");e.target.value=null},Soe=e=>{let{hint:r,setData:n,isShowFileClick:o,loading:a}=e;const{setCustomModalOpen:i,setModalContent:s}=(0,t.useContext)(VI),l=(0,t.useRef)(null);(0,t.useEffect)((()=>{o&&(s(c()),i(!0))}),[o]);const c=()=>(0,qh.jsxs)(ym,{sx:{width:"100%"},children:[(0,qh.jsx)(Bh.A,{variant:"small",children:"\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8"}),(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"space-between",mb:2},children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(QI.A,{size:"small",sx:{mr:1,color:"#333"},startIcon:(0,qh.jsx)(woe,{}),onClick:()=>Dh.csvUtils.downloadExcelTemp(),children:"Windows\u5411\u3051"}),(0,qh.jsx)(QI.A,{size:"small",sx:{mr:1,color:"#333"},startIcon:(0,qh.jsx)(woe,{}),onClick:()=>Dh.csvUtils.downloadCsv(),children:"Mac\u5411\u3051"})]})}),(null===r||void 0===r?void 0:r.length)&&(0,qh.jsx)(ym,{sx:{backgroundColor:"#FFF8F0",p:2,borderRadius:"4px",mb:3},children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"flex-start"},children:[(0,qh.jsx)(yoe,{sx:{color:"#F5A623",mr:1,fontSize:"20px"}}),(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{sx:{fontWeight:"bold",color:"#999"},children:"\u6ce8\u610f"}),(0,qh.jsx)(Bh.A,{sx:{fontSize:"14px",color:"#999",mt:.5},children:r})]})]})}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end"},children:[(0,qh.jsx)(QI.A,{size:"small",sx:{mr:1,color:"#28aeb1"},onClick:()=>i(!1),children:"\u30ad\u30e3\u30f3\u30bb\u30eb"}),(0,qh.jsx)(QI.A,{disableElevation:!0,size:"small",variant:"outlined",sx:{color:"#28aeb1",border:"1px solid #28aeb1","&:hover":{border:"1px solid #28aeb1"}},onClick:e=>{e.preventDefault(),l.current&&l.current.click()},children:"\u4e00\u62ec\u767b\u9332\u30fb\u66f4\u65b0"})]}),(0,qh.jsx)("input",{ref:l,type:"file",accept:".csv, .xlsx, .xls",hidden:!0,onChange:e=>xoe(e,n)})]});return(0,qh.jsx)(RE,{loading:a,size:"small",variant:"outlined",startIcon:(0,qh.jsx)(boe,{}),onClick:e=>{e.preventDefault(),s(c()),i(!0)},children:"\u4e00\u62ec\u767b\u9332\u30fb\u66f4\u65b0"})};function Aoe(e){let{hint:r,setData:n,isUserData:o=!0,isUploadCsv:a=!0,isUploadCsvCall:i,isShowFileClick:s=!1,loading:l=!1}=e;const[c]=(0,t.useState)(!1);return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)(Soe,{hint:r,loading:l,setData:n,isUploadCsv:a,isUploadCsvCall:i,isShowFileClick:s,isUserData:o,setOpenModal:c,handleOpen:()=>c(!0)})})}var koe=r(53614);function Coe(e){return e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}const Ioe=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{ignoreAccents:t=!0,ignoreCase:r=!0,limit:n,matchFrom:o="any",stringify:a,trim:i=!1}=e;return(e,s)=>{let{inputValue:l,getOptionLabel:c}=s,u=i?l.trim():l;r&&(u=u.toLowerCase()),t&&(u=Coe(u));const d=u?e.filter((e=>{let n=(a||c)(e);return r&&(n=n.toLowerCase()),t&&(n=Coe(n)),"start"===o?n.startsWith(u):n.includes(u)})):e;return"number"===typeof n?d.slice(0,n):d}}(),Eoe=e=>null!==e.current&&e.current.parentElement?.contains(document.activeElement),Doe=[];const Toe=function(e){const{unstable_isActiveElementInListbox:r=Eoe,unstable_classNamePrefix:n="Mui",autoComplete:o=!1,autoHighlight:a=!1,autoSelect:i=!1,blurOnSelect:s=!1,clearOnBlur:l=!e.freeSolo,clearOnEscape:c=!1,componentName:u="useAutocomplete",defaultValue:d=(e.multiple?Doe:null),disableClearable:f=!1,disableCloseOnSelect:p=!1,disabled:h,disabledItemsFocusable:m=!1,disableListWrap:g=!1,filterOptions:v=Ioe,filterSelectedOptions:y=!1,freeSolo:b=!1,getOptionDisabled:w,getOptionKey:x,getOptionLabel:S=e=>e.label??e,groupBy:A,handleHomeEndKeys:k=!e.freeSolo,id:C,includeInputInList:I=!1,inputValue:E,isOptionEqualToValue:D=(e,t)=>e===t,multiple:T=!1,onChange:O,onClose:M,onHighlightChange:P,onInputChange:j,onOpen:R,open:_,openOnFocus:N=!1,options:L,readOnly:U=!1,selectOnFocus:B=!e.freeSolo,value:F}=e,z=(0,KO.A)(C);let W=S;W=e=>{const t=S(e);return"string"!==typeof t?String(t):t};const H=t.useRef(!1),Y=t.useRef(!0),V=t.useRef(null),G=t.useRef(null),[Z,Q]=t.useState(null),[K,X]=t.useState(-1),J=a?0:-1,$=t.useRef(J),[q,ee]=(0,TB.A)({controlled:F,default:d,name:u}),[te,re]=(0,TB.A)({controlled:E,default:"",name:u,state:"inputValue"}),[ne,oe]=t.useState(!1),ae=t.useCallback(((e,t,r)=>{if(!(T?q.length<t.length:null!==t)&&!l)return;let n;if(T)n="";else if(null==t)n="";else{const e=W(t);n="string"===typeof e?e:""}te!==n&&(re(n),j&&j(e,n,r))}),[W,te,T,j,re,l,q]),[ie,se]=(0,TB.A)({controlled:_,default:!1,name:u,state:"open"}),[le,ce]=t.useState(!0),ue=!T&&null!=q&&te===W(q),de=ie&&!U,fe=de?v(L.filter((e=>!y||!(T?q:[q]).some((t=>null!==t&&D(e,t))))),{inputValue:ue&&le?"":te,getOptionLabel:W}):[],pe=kT({filteredOptions:fe,value:q,inputValue:te});t.useEffect((()=>{const e=q!==pe.value;ne&&!e||b&&!e||ae(null,q,"reset")}),[q,ae,ne,pe.value,b]);const he=ie&&fe.length>0&&!U,me=(0,Yv.A)((e=>{-1===e?V.current.focus():Z.querySelector(`[data-tag-index="${e}"]`).focus()}));t.useEffect((()=>{T&&K>q.length-1&&(X(-1),me(-1))}),[q,T,K,me]);const ge=(0,Yv.A)((e=>{let{event:t,index:r,reason:o="auto"}=e;if($.current=r,-1===r?V.current.removeAttribute("aria-activedescendant"):V.current.setAttribute("aria-activedescendant",`${z}-option-${r}`),P&&P(t,-1===r?null:fe[r],o),!G.current)return;const a=G.current.querySelector(`[role="option"].${n}-focused`);a&&(a.classList.remove(`${n}-focused`),a.classList.remove(`${n}-focusVisible`));let i=G.current;if("listbox"!==G.current.getAttribute("role")&&(i=G.current.parentElement.querySelector('[role="listbox"]')),!i)return;if(-1===r)return void(i.scrollTop=0);const s=G.current.querySelector(`[data-option-index="${r}"]`);if(s&&(s.classList.add(`${n}-focused`),"keyboard"===o&&s.classList.add(`${n}-focusVisible`),i.scrollHeight>i.clientHeight&&"mouse"!==o&&"touch"!==o)){const e=s,t=i.clientHeight+i.scrollTop,r=e.offsetTop+e.offsetHeight;r>t?i.scrollTop=r-i.clientHeight:e.offsetTop-e.offsetHeight*(A?1.3:0)<i.scrollTop&&(i.scrollTop=e.offsetTop-e.offsetHeight*(A?1.3:0))}})),ve=(0,Yv.A)((e=>{let{event:t,diff:r,direction:n="next",reason:a="auto"}=e;if(!de)return;const i=function(e,t){if(!G.current||e<0||e>=fe.length)return-1;let r=e;for(;;){const n=G.current.querySelector(`[data-option-index="${r}"]`),o=!m&&(!n||n.disabled||"true"===n.getAttribute("aria-disabled"));if(n&&n.hasAttribute("tabindex")&&!o)return r;if(r="next"===t?(r+1)%fe.length:(r-1+fe.length)%fe.length,r===e)return-1}}((()=>{const e=fe.length-1;if("reset"===r)return J;if("start"===r)return 0;if("end"===r)return e;const t=$.current+r;return t<0?-1===t&&I?-1:g&&-1!==$.current||Math.abs(r)>1?0:e:t>e?t===e+1&&I?-1:g||Math.abs(r)>1?e:0:t})(),n);if(ge({index:i,reason:a,event:t}),o&&"reset"!==r)if(-1===i)V.current.value=te;else{const e=W(fe[i]);V.current.value=e;0===e.toLowerCase().indexOf(te.toLowerCase())&&te.length>0&&V.current.setSelectionRange(te.length,e.length)}})),ye=t.useCallback((()=>{if(!de)return;const e=(()=>{if(-1!==$.current&&pe.filteredOptions&&pe.filteredOptions.length!==fe.length&&pe.inputValue===te&&(T?q.length===pe.value.length&&pe.value.every(((e,t)=>W(q[t])===W(e))):(e=pe.value,t=q,(e?W(e):"")===(t?W(t):"")))){const e=pe.filteredOptions[$.current];if(e)return fe.findIndex((t=>W(t)===W(e)))}var e,t;return-1})();if(-1!==e)return void($.current=e);const t=T?q[0]:q;if(0!==fe.length&&null!=t){if(G.current)if(null==t)$.current>=fe.length-1?ge({index:fe.length-1}):ge({index:$.current});else{const e=fe[$.current];if(T&&e&&-1!==q.findIndex((t=>D(e,t))))return;const r=fe.findIndex((e=>D(e,t)));-1===r?ve({diff:"reset"}):ge({index:r})}}else ve({diff:"reset"})}),[fe.length,!T&&q,y,ve,ge,de,te,T]),be=(0,Yv.A)((e=>{(0,koe.A)(G,e),e&&ye()}));t.useEffect((()=>{ye()}),[ye]);const we=e=>{ie||(se(!0),ce(!0),R&&R(e))},xe=(e,t)=>{ie&&(se(!1),M&&M(e,t))},Se=(e,t,r,n)=>{if(T){if(q.length===t.length&&q.every(((e,r)=>e===t[r])))return}else if(q===t)return;O&&O(e,t,r,n),ee(t)},Ae=t.useRef(!1),ke=function(e,t){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"options",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"selectOption",o=t;if(T){o=Array.isArray(q)?q.slice():[];const e=o.findIndex((e=>D(t,e)));-1===e?o.push(t):"freeSolo"!==r&&(o.splice(e,1),n="removeOption")}ae(e,o,n),Se(e,o,n,{option:t}),p||e&&(e.ctrlKey||e.metaKey)||xe(e,n),(!0===s||"touch"===s&&Ae.current||"mouse"===s&&!Ae.current)&&V.current.blur()},Ce=(e,t)=>{if(!T)return;""===te&&xe(e,"toggleInput");let r=K;-1===K?""===te&&"previous"===t&&(r=q.length-1):(r+="next"===t?1:-1,r<0&&(r=0),r===q.length&&(r=-1)),r=function(e,t){if(-1===e)return-1;let r=e;for(;;){if("next"===t&&r===q.length||"previous"===t&&-1===r)return-1;const e=Z.querySelector(`[data-tag-index="${r}"]`);if(e&&e.hasAttribute("tabindex")&&!e.disabled&&"true"!==e.getAttribute("aria-disabled"))return r;r+="next"===t?1:-1}}(r,t),X(r),me(r)},Ie=e=>{H.current=!0,re(""),j&&j(e,"","clear"),Se(e,T?[]:null,"clear")},Ee=e=>t=>{if(e.onKeyDown&&e.onKeyDown(t),!t.defaultMuiPrevented&&(-1===K||["ArrowLeft","ArrowRight"].includes(t.key)||(X(-1),me(-1)),229!==t.which))switch(t.key){case"Home":de&&k&&(t.preventDefault(),ve({diff:"start",direction:"next",reason:"keyboard",event:t}));break;case"End":de&&k&&(t.preventDefault(),ve({diff:"end",direction:"previous",reason:"keyboard",event:t}));break;case"PageUp":t.preventDefault(),ve({diff:-5,direction:"previous",reason:"keyboard",event:t}),we(t);break;case"PageDown":t.preventDefault(),ve({diff:5,direction:"next",reason:"keyboard",event:t}),we(t);break;case"ArrowDown":t.preventDefault(),ve({diff:1,direction:"next",reason:"keyboard",event:t}),we(t);break;case"ArrowUp":t.preventDefault(),ve({diff:-1,direction:"previous",reason:"keyboard",event:t}),we(t);break;case"ArrowLeft":Ce(t,"previous");break;case"ArrowRight":Ce(t,"next");break;case"Enter":if(-1!==$.current&&de){const e=fe[$.current],r=!!w&&w(e);if(t.preventDefault(),r)return;ke(t,e,"selectOption"),o&&V.current.setSelectionRange(V.current.value.length,V.current.value.length)}else b&&""!==te&&!1===ue&&(T&&t.preventDefault(),ke(t,te,"createOption","freeSolo"));break;case"Escape":de?(t.preventDefault(),t.stopPropagation(),xe(t,"escape")):c&&(""!==te||T&&q.length>0)&&(t.preventDefault(),t.stopPropagation(),Ie(t));break;case"Backspace":if(T&&!U&&""===te&&q.length>0){const e=-1===K?q.length-1:K,r=q.slice();r.splice(e,1),Se(t,r,"removeOption",{option:q[e]})}break;case"Delete":if(T&&!U&&""===te&&q.length>0&&-1!==K){const e=K,r=q.slice();r.splice(e,1),Se(t,r,"removeOption",{option:q[e]})}}},De=e=>{oe(!0),N&&!H.current&&we(e)},Te=e=>{r(G)?V.current.focus():(oe(!1),Y.current=!0,H.current=!1,i&&-1!==$.current&&de?ke(e,fe[$.current],"blur"):i&&b&&""!==te?ke(e,te,"blur","freeSolo"):l&&ae(e,q,"blur"),xe(e,"blur"))},Oe=e=>{const t=e.target.value;te!==t&&(re(t),ce(!1),j&&j(e,t,"input")),""===t?f||T||Se(e,null,"clear"):we(e)},Me=e=>{const t=Number(e.currentTarget.getAttribute("data-option-index"));$.current!==t&&ge({event:e,index:t,reason:"mouse"})},Pe=e=>{ge({event:e,index:Number(e.currentTarget.getAttribute("data-option-index")),reason:"touch"}),Ae.current=!0},je=e=>{const t=Number(e.currentTarget.getAttribute("data-option-index"));ke(e,fe[t],"selectOption"),Ae.current=!1},Re=e=>t=>{const r=q.slice();r.splice(e,1),Se(t,r,"removeOption",{option:q[e]})},_e=e=>{ie?xe(e,"toggleInput"):we(e)},Ne=e=>{e.currentTarget.contains(e.target)&&e.target.getAttribute("id")!==z&&e.preventDefault()},Le=e=>{e.currentTarget.contains(e.target)&&(V.current.focus(),B&&Y.current&&V.current.selectionEnd-V.current.selectionStart===0&&V.current.select(),Y.current=!1)},Ue=e=>{h||""!==te&&ie||_e(e)};let Be=b&&te.length>0;Be=Be||(T?q.length>0:null!==q);let Fe=fe;if(A){new Map;Fe=fe.reduce(((e,t,r)=>{const n=A(t);return e.length>0&&e[e.length-1].group===n?e[e.length-1].options.push(t):e.push({key:r,index:r,group:n,options:[t]}),e}),[])}return h&&ne&&Te(),{getRootProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{"aria-owns":he?`${z}-listbox`:null,...e,onKeyDown:Ee(e),onMouseDown:Ne,onClick:Le}},getInputLabelProps:()=>({id:`${z}-label`,htmlFor:z}),getInputProps:()=>({id:z,value:te,onBlur:Te,onFocus:De,onChange:Oe,onMouseDown:Ue,"aria-activedescendant":de?"":null,"aria-autocomplete":o?"both":"list","aria-controls":he?`${z}-listbox`:void 0,"aria-expanded":he,autoComplete:"off",ref:V,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:h}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:Ie}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:_e}),getTagProps:e=>{let{index:t}=e;return{key:t,"data-tag-index":t,tabIndex:-1,...!U&&{onDelete:Re(t)}}},getListboxProps:()=>({role:"listbox",id:`${z}-listbox`,"aria-labelledby":`${z}-label`,ref:be,onMouseDown:e=>{e.preventDefault()}}),getOptionProps:e=>{let{index:t,option:r}=e;const n=(T?q:[q]).some((e=>null!=e&&D(r,e))),o=!!w&&w(r);return{key:x?.(r)??W(r),tabIndex:-1,role:"option",id:`${z}-option-${t}`,onMouseMove:Me,onClick:je,onTouchStart:Pe,"data-option-index":t,"aria-disabled":o,"aria-selected":n}},id:z,inputValue:te,value:q,dirty:Be,expanded:de&&Z,popupOpen:de,focused:ne||-1!==K,anchorEl:Z,setAnchorEl:Q,focusedTag:K,groupedOptions:Fe}};function Ooe(e){return(0,oy.Ay)("MuiListSubheader",e)}(0,mm.A)("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);const Moe=(0,am.Ay)("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[t.root,"default"!==r.color&&t[`color${(0,ey.A)(r.color)}`],!r.disableGutters&&t.gutters,r.inset&&t.inset,!r.disableSticky&&t.sticky]}})((0,qv.A)((e=>{let{theme:t}=e;return{boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(t.vars||t).palette.text.secondary,fontFamily:t.typography.fontFamily,fontWeight:t.typography.fontWeightMedium,fontSize:t.typography.pxToRem(14),variants:[{props:{color:"primary"},style:{color:(t.vars||t).palette.primary.main}},{props:{color:"inherit"},style:{color:"inherit"}},{props:e=>{let{ownerState:t}=e;return!t.disableGutters},style:{paddingLeft:16,paddingRight:16}},{props:e=>{let{ownerState:t}=e;return t.inset},style:{paddingLeft:72}},{props:e=>{let{ownerState:t}=e;return!t.disableSticky},style:{position:"sticky",top:0,zIndex:1,backgroundColor:(t.vars||t).palette.background.paper}}]}}))),Poe=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiListSubheader"}),{className:n,color:o="default",component:a="li",disableGutters:i=!1,disableSticky:s=!1,inset:l=!1,...c}=r,u={...r,color:o,component:a,disableGutters:i,disableSticky:s,inset:l},d=(e=>{const{classes:t,color:r,disableGutters:n,inset:o,disableSticky:a}=e,i={root:["root","default"!==r&&`color${(0,ey.A)(r)}`,!n&&"gutters",o&&"inset",!a&&"sticky"]};return(0,zv.A)(i,Ooe,t)})(u);return(0,qh.jsx)(Moe,{as:a,className:(0,Fh.A)(d.root,n),ref:t,ownerState:u,...c})}));Poe&&(Poe.muiSkipListHighlight=!0);const joe=Poe;var Roe=r(10465),_oe=r(63589),Noe=r(79229),Loe=r(22797),Uoe=r(63976);function Boe(e){return(0,oy.Ay)("MuiAutocomplete",e)}const Foe=(0,mm.A)("MuiAutocomplete",["root","expanded","fullWidth","focused","focusVisible","tag","tagSizeSmall","tagSizeMedium","hasPopupIcon","hasClearIcon","inputRoot","input","inputFocused","endAdornment","clearIndicator","popupIndicator","popupIndicatorOpen","popper","popperDisablePortal","paper","listbox","loading","noOptions","option","groupLabel","groupUl"]);var zoe,Woe;const Hoe=(0,am.Ay)("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:r}=e,{fullWidth:n,hasClearIcon:o,hasPopupIcon:a,inputFocused:i,size:s}=r;return[{[`& .${Foe.tag}`]:t.tag},{[`& .${Foe.tag}`]:t[`tagSize${(0,ey.A)(s)}`]},{[`& .${Foe.inputRoot}`]:t.inputRoot},{[`& .${Foe.input}`]:t.input},{[`& .${Foe.input}`]:i&&t.inputFocused},t.root,n&&t.fullWidth,a&&t.hasPopupIcon,o&&t.hasClearIcon]}})({[`&.${Foe.focused} .${Foe.clearIndicator}`]:{visibility:"visible"},"@media (pointer: fine)":{[`&:hover .${Foe.clearIndicator}`]:{visibility:"visible"}},[`& .${Foe.tag}`]:{margin:3,maxWidth:"calc(100% - 6px)"},[`& .${Foe.inputRoot}`]:{[`.${Foe.hasPopupIcon}&, .${Foe.hasClearIcon}&`]:{paddingRight:30},[`.${Foe.hasPopupIcon}.${Foe.hasClearIcon}&`]:{paddingRight:56},[`& .${Foe.input}`]:{width:0,minWidth:30}},[`& .${Roe.A.root}`]:{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}},[`& .${Roe.A.root}.${_oe.A.sizeSmall}`]:{[`& .${Roe.A.input}`]:{padding:"2px 4px 3px 0"}},[`& .${Noe.A.root}`]:{padding:9,[`.${Foe.hasPopupIcon}&, .${Foe.hasClearIcon}&`]:{paddingRight:39},[`.${Foe.hasPopupIcon}.${Foe.hasClearIcon}&`]:{paddingRight:65},[`& .${Foe.input}`]:{padding:"7.5px 4px 7.5px 5px"},[`& .${Foe.endAdornment}`]:{right:9}},[`& .${Noe.A.root}.${_oe.A.sizeSmall}`]:{paddingTop:6,paddingBottom:6,paddingLeft:6,[`& .${Foe.input}`]:{padding:"2.5px 4px 2.5px 8px"}},[`& .${Loe.A.root}`]:{paddingTop:19,paddingLeft:8,[`.${Foe.hasPopupIcon}&, .${Foe.hasClearIcon}&`]:{paddingRight:39},[`.${Foe.hasPopupIcon}.${Foe.hasClearIcon}&`]:{paddingRight:65},[`& .${Loe.A.input}`]:{padding:"7px 4px"},[`& .${Foe.endAdornment}`]:{right:9}},[`& .${Loe.A.root}.${_oe.A.sizeSmall}`]:{paddingBottom:1,[`& .${Loe.A.input}`]:{padding:"2.5px 4px"}},[`& .${_oe.A.hiddenLabel}`]:{paddingTop:8},[`& .${Loe.A.root}.${_oe.A.hiddenLabel}`]:{paddingTop:0,paddingBottom:0,[`& .${Foe.input}`]:{paddingTop:16,paddingBottom:17}},[`& .${Loe.A.root}.${_oe.A.hiddenLabel}.${_oe.A.sizeSmall}`]:{[`& .${Foe.input}`]:{paddingTop:8,paddingBottom:9}},[`& .${Foe.input}`]:{flexGrow:1,textOverflow:"ellipsis",opacity:0},variants:[{props:{fullWidth:!0},style:{width:"100%"}},{props:{size:"small"},style:{[`& .${Foe.tag}`]:{margin:2,maxWidth:"calc(100% - 4px)"}}},{props:{inputFocused:!0},style:{[`& .${Foe.input}`]:{opacity:1}}},{props:{multiple:!0},style:{[`& .${Foe.inputRoot}`]:{flexWrap:"wrap"}}}]}),Yoe=(0,am.Ay)("div",{name:"MuiAutocomplete",slot:"EndAdornment",overridesResolver:(e,t)=>t.endAdornment})({position:"absolute",right:0,top:"50%",transform:"translate(0, -50%)"}),Voe=(0,am.Ay)(cE.A,{name:"MuiAutocomplete",slot:"ClearIndicator",overridesResolver:(e,t)=>t.clearIndicator})({marginRight:-2,padding:4,visibility:"hidden"}),Goe=(0,am.Ay)(cE.A,{name:"MuiAutocomplete",slot:"PopupIndicator",overridesResolver:(e,t)=>{let{ownerState:r}=e;return{...t.popupIndicator,...r.popupOpen&&t.popupIndicatorOpen}}})({padding:2,marginRight:-2,variants:[{props:{popupOpen:!0},style:{transform:"rotate(180deg)"}}]}),Zoe=(0,am.Ay)(TF.A,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:(e,t)=>{const{ownerState:r}=e;return[{[`& .${Foe.option}`]:t.option},t.popper,r.disablePortal&&t.popperDisablePortal]}})((0,qv.A)((e=>{let{theme:t}=e;return{zIndex:(t.vars||t).zIndex.modal,variants:[{props:{disablePortal:!0},style:{position:"absolute"}}]}}))),Qoe=(0,am.Ay)(ny.A,{name:"MuiAutocomplete",slot:"Paper",overridesResolver:(e,t)=>t.paper})((0,qv.A)((e=>{let{theme:t}=e;return{...t.typography.body1,overflow:"auto"}}))),Koe=(0,am.Ay)("div",{name:"MuiAutocomplete",slot:"Loading",overridesResolver:(e,t)=>t.loading})((0,qv.A)((e=>{let{theme:t}=e;return{color:(t.vars||t).palette.text.secondary,padding:"14px 16px"}}))),Xoe=(0,am.Ay)("div",{name:"MuiAutocomplete",slot:"NoOptions",overridesResolver:(e,t)=>t.noOptions})((0,qv.A)((e=>{let{theme:t}=e;return{color:(t.vars||t).palette.text.secondary,padding:"14px 16px"}}))),Joe=(0,am.Ay)("ul",{name:"MuiAutocomplete",slot:"Listbox",overridesResolver:(e,t)=>t.listbox})((0,qv.A)((e=>{let{theme:t}=e;return{listStyle:"none",margin:0,padding:"8px 0",maxHeight:"40vh",overflow:"auto",position:"relative",[`& .${Foe.option}`]:{minHeight:48,display:"flex",overflow:"hidden",justifyContent:"flex-start",alignItems:"center",cursor:"pointer",paddingTop:6,boxSizing:"border-box",outline:"0",WebkitTapHighlightColor:"transparent",paddingBottom:6,paddingLeft:16,paddingRight:16,[t.breakpoints.up("sm")]:{minHeight:"auto"},[`&.${Foe.focused}`]:{backgroundColor:(t.vars||t).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},'&[aria-disabled="true"]':{opacity:(t.vars||t).palette.action.disabledOpacity,pointerEvents:"none"},[`&.${Foe.focusVisible}`]:{backgroundColor:(t.vars||t).palette.action.focus},'&[aria-selected="true"]':{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:(0,ry.X4)(t.palette.primary.main,t.palette.action.selectedOpacity),[`&.${Foe.focused}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:(0,ry.X4)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(t.vars||t).palette.action.selected}},[`&.${Foe.focusVisible}`]:{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.focusOpacity}))`:(0,ry.X4)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.focusOpacity)}}}}}))),$oe=(0,am.Ay)(joe,{name:"MuiAutocomplete",slot:"GroupLabel",overridesResolver:(e,t)=>t.groupLabel})((0,qv.A)((e=>{let{theme:t}=e;return{backgroundColor:(t.vars||t).palette.background.paper,top:-8}}))),qoe=(0,am.Ay)("ul",{name:"MuiAutocomplete",slot:"GroupUl",overridesResolver:(e,t)=>t.groupUl})({padding:0,[`& .${Foe.option}`]:{paddingLeft:24}}),eae=t.forwardRef((function(e,r){const n=(0,im.b)({props:e,name:"MuiAutocomplete"}),{autoComplete:o=!1,autoHighlight:a=!1,autoSelect:i=!1,blurOnSelect:s=!1,ChipProps:l,className:c,clearIcon:u=zoe||(zoe=(0,qh.jsx)(ML,{fontSize:"small"})),clearOnBlur:d=!n.freeSolo,clearOnEscape:f=!1,clearText:p="Clear",closeText:h="Close",componentsProps:m,defaultValue:g=(n.multiple?[]:null),disableClearable:v=!1,disableCloseOnSelect:y=!1,disabled:b=!1,disabledItemsFocusable:w=!1,disableListWrap:x=!1,disablePortal:S=!1,filterOptions:A,filterSelectedOptions:k=!1,forcePopupIcon:C="auto",freeSolo:I=!1,fullWidth:E=!1,getLimitTagsText:D=e=>`+${e}`,getOptionDisabled:T,getOptionKey:O,getOptionLabel:M,isOptionEqualToValue:P,groupBy:j,handleHomeEndKeys:R=!n.freeSolo,id:_,includeInputInList:N=!1,inputValue:L,limitTags:U=-1,ListboxComponent:B,ListboxProps:F,loading:z=!1,loadingText:W="Loading\u2026",multiple:H=!1,noOptionsText:Y="No options",onChange:V,onClose:G,onHighlightChange:Z,onInputChange:Q,onOpen:K,open:X,openOnFocus:J=!1,openText:$="Open",options:q,PaperComponent:ee,PopperComponent:te,popupIcon:re=Woe||(Woe=(0,qh.jsx)(Uoe.A,{})),readOnly:ne=!1,renderGroup:oe,renderInput:ae,renderOption:ie,renderTags:se,selectOnFocus:le=!n.freeSolo,size:ce="medium",slots:ue={},slotProps:de={},value:fe,...pe}=n,{getRootProps:he,getInputProps:me,getInputLabelProps:ge,getPopupIndicatorProps:ve,getClearProps:ye,getTagProps:be,getListboxProps:we,getOptionProps:xe,value:Se,dirty:Ae,expanded:ke,id:Ce,popupOpen:Ie,focused:Ee,focusedTag:De,anchorEl:Te,setAnchorEl:Oe,inputValue:Me,groupedOptions:Pe}=Toe({...n,componentName:"Autocomplete"}),je=!v&&!b&&Ae&&!ne,Re=(!I||!0===C)&&!1!==C,{onMouseDown:_e}=me(),{ref:Ne,...Le}=we(),Ue=M||(e=>e.label??e),Be={...n,disablePortal:S,expanded:ke,focused:Ee,fullWidth:E,getOptionLabel:Ue,hasClearIcon:je,hasPopupIcon:Re,inputFocused:-1===De,popupOpen:Ie,size:ce},Fe=(e=>{const{classes:t,disablePortal:r,expanded:n,focused:o,fullWidth:a,hasClearIcon:i,hasPopupIcon:s,inputFocused:l,popupOpen:c,size:u}=e,d={root:["root",n&&"expanded",o&&"focused",a&&"fullWidth",i&&"hasClearIcon",s&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",l&&"inputFocused"],tag:["tag",`tagSize${(0,ey.A)(u)}`],endAdornment:["endAdornment"],clearIndicator:["clearIndicator"],popupIndicator:["popupIndicator",c&&"popupIndicatorOpen"],popper:["popper",r&&"popperDisablePortal"],paper:["paper"],listbox:["listbox"],loading:["loading"],noOptions:["noOptions"],option:["option"],groupLabel:["groupLabel"],groupUl:["groupUl"]};return(0,zv.A)(d,Boe,t)})(Be),ze={slots:{paper:ee,popper:te,...ue},slotProps:{chip:l,listbox:F,...m,...de}},[We,He]=(0,kL.A)("listbox",{elementType:Joe,externalForwardedProps:ze,ownerState:Be,className:Fe.listbox,additionalProps:Le,ref:Ne}),[Ye,Ve]=(0,kL.A)("paper",{elementType:ny.A,externalForwardedProps:ze,ownerState:Be,className:Fe.paper}),[Ge,Ze]=(0,kL.A)("popper",{elementType:TF.A,externalForwardedProps:ze,ownerState:Be,className:Fe.popper,additionalProps:{disablePortal:S,style:{width:Te?Te.clientWidth:null},role:"presentation",anchorEl:Te,open:Ie}});let Qe;if(H&&Se.length>0){const e=e=>({className:Fe.tag,disabled:b,...be(e)});Qe=se?se(Se,e,Be):Se.map(((t,r)=>{const{key:n,...o}=e({index:r});return(0,qh.jsx)(WD.A,{label:Ue(t),size:ce,...o,...ze.slotProps.chip},n)}))}if(U>-1&&Array.isArray(Qe)){const e=Qe.length-U;!Ee&&e>0&&(Qe=Qe.splice(0,U),Qe.push((0,qh.jsx)("span",{className:Fe.tag,children:D(e)},Qe.length)))}const Ke=oe||(e=>(0,qh.jsxs)("li",{children:[(0,qh.jsx)($oe,{className:Fe.groupLabel,ownerState:Be,component:"div",children:e.group}),(0,qh.jsx)(qoe,{className:Fe.groupUl,ownerState:Be,children:e.children})]},e.key)),Xe=ie||((e,t)=>{const{key:r,...n}=e;return(0,qh.jsx)("li",{...n,children:Ue(t)},r)}),Je=(e,t)=>{const r=xe({option:e,index:t});return Xe({...r,className:Fe.option},e,{selected:r["aria-selected"],index:t,inputValue:Me},Be)},$e=ze.slotProps.clearIndicator,qe=ze.slotProps.popupIndicator,et=e=>(0,qh.jsx)(Zoe,{as:Ge,...Ze,children:(0,qh.jsx)(Qoe,{as:Ye,...Ve,children:e})});let tt=null;return Pe.length>0?tt=et((0,qh.jsx)(We,{as:B,...He,children:Pe.map(((e,t)=>j?Ke({key:e.key,group:e.group,children:e.options.map(((t,r)=>Je(t,e.index+r)))}):Je(e,t)))})):z&&0===Pe.length?tt=et((0,qh.jsx)(Koe,{className:Fe.loading,ownerState:Be,children:W})):0!==Pe.length||I||z||(tt=et((0,qh.jsx)(Xoe,{className:Fe.noOptions,ownerState:Be,role:"presentation",onMouseDown:e=>{e.preventDefault()},children:Y}))),(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsx)(Hoe,{ref:r,className:(0,Fh.A)(Fe.root,c),ownerState:Be,...he(pe),children:ae({id:Ce,disabled:b,fullWidth:!0,size:"small"===ce?"small":void 0,InputLabelProps:ge(),InputProps:{ref:Oe,className:Fe.inputRoot,startAdornment:Qe,onMouseDown:e=>{e.target===e.currentTarget&&_e(e)},...(je||Re)&&{endAdornment:(0,qh.jsxs)(Yoe,{className:Fe.endAdornment,ownerState:Be,children:[je?(0,qh.jsx)(Voe,{...ye(),"aria-label":p,title:p,ownerState:Be,...$e,className:(0,Fh.A)(Fe.clearIndicator,$e?.className),children:u}):null,Re?(0,qh.jsx)(Goe,{...ve(),disabled:b,"aria-label":Ie?h:$,title:Ie?h:$,ownerState:Be,...qe,className:(0,Fh.A)(Fe.popupIndicator,qe?.className),children:re}):null]})}},inputProps:{className:Fe.input,disabled:b,readOnly:ne,...me()}})}),Te?tt:null]})})),tae=e=>{let{defaultVal:r,callBindMm:n}=e;const{gManageEmployee:o}=(0,t.useContext)(VI),[a,i]=(0,t.useState)(!1),[s,l]=(0,t.useState)(r),[c,u]=(0,t.useState)(r?r.employeeName:"");(0,t.useEffect)((()=>{l(r),u(r?r.employeeName:"")}),[r]);return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)(eae,{size:"small",variant:"outlined",value:null!==s&&void 0!==s?s:null,freeSolo:!0,clearOnBlur:!0,options:o.employees.Items||[],getOptionLabel:e=>e&&e.employeeName?e.employeeName:"",inputValue:c,onInputChange:(e,t,r)=>{if("clear"===r)return u(""),l(null),void(n&&n(null));u(t);const a=o.employees.Items.find((e=>e.employeeName===t));a&&(l(a),n&&n(a))},onChange:(e,t)=>{l(t),u(t?t.employeeName:""),n&&n(t)},filterOptions:(e,t)=>{let{inputValue:r}=t;return e.filter((e=>e&&e.employeeName&&e.employeeName.toLowerCase().includes(r.toLowerCase())))},renderInput:e=>(0,qh.jsx)(GD.A,{size:"small",label:"\u30e6\u30fc\u30b6\u30fc",...e,InputProps:{...e.InputProps,type:"text",startAdornment:(0,qh.jsx)($D,{position:"start",children:!a&&!c&&(0,qh.jsx)(_N,{sx:{marginTop:"4px"},fontSize:"small"})})},onFocus:()=>i(!0),onBlur:()=>i(!1),sx:{width:"100%",paddingLeft:"0px"}})})})},rae=e=>{let{mdatas:r=[],isBindMm:n=!0,addCard:o,buttonTitle:a="\u4fee\u6b63",tagTitle:i="\u30ab\u30fc\u30c9\u540d",id:s="cardID"}=e;const[l,c]=(0,t.useState)([]);return(0,t.useEffect)((()=>{c(r)}),[r]),(0,qh.jsx)(qh.Fragment,{children:l.map(((e,r)=>(0,qh.jsx)(t.Fragment,{children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:2,ml:"9px",flexDirection:"row",mb:1},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",width:"30%"},children:[(0,qh.jsx)(Bh.A,{variant:"h4",sx:{marginRight:"20px"},children:r+1}),(0,qh.jsx)(Bh.A,{variant:"h4",children:"cardID"===s?Ue.formatCardID(e[s]):Dh.binaryToDecimal(e[s])})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"top",gap:2,width:"40%"},children:[(0,qh.jsx)(ym,{sx:{width:n?"40%":"60%"},children:(0,qh.jsx)(GD.A,{label:i,required:!0,size:"small",variant:n?"outlined":"filled",value:e.name,onChange:t=>{c(l.map((r=>r[s]===e[s]?{...r,name:t.target.value}:r)))},sx:{width:"100%"}})}),n&&(0,qh.jsx)(ym,{sx:{width:"40%"},children:(0,qh.jsx)(tae,{callBindMm:t=>{c((r=>r.map((r=>r[s]===e[s]?{...r,mm:null===t||void 0===t?void 0:t.employeeName,memberID:null===t||void 0===t?void 0:t.subUUID}:r))))}})})]}),(0,qh.jsx)(QI.A,{disabled:!e.name&&!e.memberID,disableElevation:!0,variant:"outlined",color:"primary",onClick:()=>{o&&o(e),c((t=>t.filter((t=>t[s]!==e[s]))))},children:a})]})},e[s])))})},nae=(0,t.forwardRef)(((e,r)=>{let{data:n,mdatas:o,addCard:a,goSet:i,buttonTitle:s,isBindMm:l=!0,csvData:c,csvDownData:u,isShowCsv:d=!0,tagTitle:f,id:p="cardID",csvLoading:h}=e;const[m,g]=(0,t.useState)(!1);(0,t.useImperativeHandle)(r,(()=>({setReadCardContent:e=>{g(e)}})));return(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",mb:"1px",justifyContent:"space-between"},children:[(0,qh.jsx)(Bh.A,{variant:"h2",sx:{ml:"9px"},children:n.title}),(0,qh.jsx)(ym,{sx:{display:"flex"},children:d&&(0,qh.jsx)(Aoe,{hint:Dh.authText.fontCfpCards.warningMsg,loading:h,setData:c,downData:u})})]})}),(0,qh.jsx)(lE,{children:(0,qh.jsxs)(ym,{sx:{mt:"1px"},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{ml:"9px"},children:n.h2}),(0,qh.jsx)(cE.A,{onClick:()=>{i&&i(!m)},size:"small",variant:"outlined",sx:{color:"#28AEB1"},children:m?(0,qh.jsx)(voe,{style:{color:"#28AEB1"}}):(0,qh.jsx)(bD,{style:{color:"#28AEB1"}})})]}),(0,qh.jsxs)(hD,{show:!m,sx:{marginTop:"20px"},children:[(0,qh.jsx)(ym,{children:(0,qh.jsx)(Bh.A,{variant:"h4",sx:{ml:"9px",mt:"10px",color:"#9B9B9B"},children:n.b2t})}),(0,qh.jsx)(ym,{sx:{display:"flex",flexDirection:"column"},children:(0,qh.jsx)(rae,{id:p,isMobile:!d,mdatas:o,addCard:a,buttonTitle:s,isBindMm:l,tagTitle:f})})]})]})})]})})),oae=(0,dD.A)((0,qh.jsx)("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1M8 13h8v-2H8zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5"}),"Link"),aae=(0,dD.A)((0,qh.jsx)("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"RefreshOutlined");var iae=r(39447);function sae(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"sesamebiz";if("json"===r){const r=JSON.stringify(function(e,t){if("cards"===t)return{nfc_cards:e.map(((e,t)=>{var r,n;const o=String(null!==(r=e.cardID)&&void 0!==r?r:"").toLowerCase();if(!/^(?:[0-9a-f]{2})+$/.test(o))throw new Error("Invalid card ID");const a=String(null!==(n=e.name)&&void 0!==n?n:"");return{name:a.trim()?a:0===t?"NFC":`NFC\u30ab\u30fc\u30c9${t+1}`,id:o}}))};if("passcodes"===t)return{passcodes:e.map(((e,t)=>{var r,n;const o=String(null!==(r=e.passwordID)&&void 0!==r?r:"");if(!/^(?:0[0-9])+$/.test(o))throw new Error("Invalid passcode");const a=String(null!==(n=e.name)&&void 0!==n?n:"");return{account:a.trim()?a:0===t?"\u6697\u8a3c\u756a\u53f7":`\u6697\u8a3c\u756a\u53f7${t+1}`,password:Dh.binaryToDecimal(o)}}))};throw new Error("Unsupported credential type")}(e,t),null,2);(0,Fe.saveAs)(new Blob([r],{type:"application/json;charset=utf-8"}),`${n}.json`)}else Dh.csvUtils.downloadLists(e,"csv"===r,n)}const lae=["csv","excel","json"];function cae(e){let{data:r,type:n,onExportAll:o,isExporting:a=!1}=e;const[i,s]=(0,t.useState)(null),[l,c]=(0,t.useState)(!1),u=async function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];s(null);try{t?await o(e):sae(r,n,e)}catch{c(!0)}};return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(dU.A,{title:"\u30c7\u30fc\u30bf\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8",children:(0,qh.jsx)("span",{children:(0,qh.jsx)(cE.A,{"aria-label":"\u30c7\u30fc\u30bf\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8","aria-haspopup":"menu","aria-expanded":Boolean(i),disabled:a,onClick:e=>{e.stopPropagation(),s(e.currentTarget)},onMouseDown:e=>e.stopPropagation(),onMouseUp:e=>e.stopPropagation(),children:(0,qh.jsx)(YP,{fontSize:"small",sx:{color:"rgba(0, 0, 0, 0.54)"}})})})}),(0,qh.jsxs)(jO.A,{anchorEl:i,open:Boolean(i),onClose:()=>s(null),onClick:e=>e.stopPropagation(),children:[o&&(0,qh.jsx)(joe,{children:"\u73fe\u5728\u306e\u30c7\u30fc\u30bf"}),lae.map((e=>(0,qh.jsx)(RO.A,{disabled:a,onClick:()=>u(e),children:"excel"===e?"Excel":e.toUpperCase()},e))),o&&(0,qh.jsx)(mM,{}),o&&(0,qh.jsx)(joe,{children:"\u904e\u53bb\u306b\u4f7f\u7528\u3057\u305f\u5168\u30ab\u30fc\u30c9"}),o&&lae.map((e=>(0,qh.jsx)(RO.A,{disabled:a,onClick:()=>u(e,!0),children:"excel"===e?"Excel":e.toUpperCase()},`all-${e}`)))]}),(0,qh.jsx)(fy,{open:l,autoHideDuration:6e3,onClose:()=>c(!1),children:(0,qh.jsx)(LL,{severity:"error",onClose:()=>c(!1),children:"\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u30c7\u30fc\u30bf\u3092\u3054\u78ba\u8a8d\u306e\u3046\u3048\u3001\u518d\u5ea6\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002"})})]})}const uae=e=>{let{hasNext:t,count:r,page:n,rowsPerPage:o,onChangePage:a,onChangeRowsPerPage:i,rowsPerPageOptions:s,showCount:l=!1,inTableFooter:c=!1}=e;const u=l?(n+1)*o>=r:!t;return c?(0,qh.jsx)("td",{colSpan:1e3,style:{padding:0,border:"none"},children:(0,qh.jsx)(iae.A,{component:"div",count:r,page:n,rowsPerPage:o,rowsPerPageOptions:s||[50],onPageChange:(e,t)=>a(t),onRowsPerPageChange:e=>i(parseInt(e.target.value,10)),nextIconButtonProps:{disabled:u},backIconButtonProps:{disabled:0===n},labelRowsPerPage:"\u8868\u793a\u6570",labelDisplayedRows:e=>{let{from:t,to:r,count:n}=e;return`${t}-${r}${l?"/"+n:""}`}})}):(0,qh.jsx)(iae.A,{component:"div",count:r,page:n,rowsPerPage:o,rowsPerPageOptions:s||[50],onPageChange:(e,t)=>a(t),onRowsPerPageChange:e=>i(parseInt(e.target.value,10)),nextIconButtonProps:{disabled:u},backIconButtonProps:{disabled:0===n},labelRowsPerPage:"\u8868\u793a\u6570",labelDisplayedRows:e=>{let{from:t,to:r,count:n}=e;return`${t}-${r}${l?"/"+n:""}`}})};function dae(e){let{data:r,text:n,columns:o,callRowClick:a,callAdd:i,callBind:s,callDelData:l,callSearch:c,selectableRows:u="multiple",isKey:d=!1,isDel:f=!0,isCsv:p=!0,onCsvClick:h=null,toolbarActions:m=null,credentialExport:g=null,isBind:v=!0,isBack:y=!1,isHideToolBar:b=!1,adjustToolBar:w=!1,btnCallKey:x,rowSelectable:S,isShowFooter:A=!0,rowsPerPageOptions:k,ref:C=null,refreshTb:I=35,callSelects:E,callRefresh:D,rowHeight:T="default",onPageConfChange:O=null,hasNext:M=!1}=e;const[P,j]=(0,t.useState)(null),[R,_]=(0,t.useState)([]),[N,L]=(0,t.useState)(void 0),[U,B]=(0,t.useState)(new Set),F={page:0,rowsPerPage:O?50:100},[z,W]=(0,t.useState)({...F}),[H,Y]=(0,t.useState)(r);(0,t.useEffect)((()=>{Y(r),B(new Set)}),[r]);const V=()=>{const e={small:20,default:50,large:70};if("string"===typeof T&&T in e)return e[T];const t=Number(T);return!isNaN(t)&&t>0?t:e.default};(0,t.useEffect)((()=>{const e=Array.from(U).filter((e=>e<H.length)).map((e=>H[e])).filter(Boolean);_(e)}),[U,H]),(0,t.useEffect)((()=>{E&&E(R)}),[R]),(0,t.useEffect)((()=>{j(null),B(new Set),L(I),W({...F})}),[I]);const G=async e=>{if(j(e.currentTarget),R.length>0)try{l&&l(R)}catch(t){console.error(t)}},Z=()=>{j(null)},Q=(0,t.useMemo)((()=>{const e=z.page*z.rowsPerPage,t=Math.min(e+z.rowsPerPage,H.length);return H.slice(e,t)}),[z,H]),K=(0,t.useCallback)((e=>{const t={...z,page:e};O?O({old:z,new:t,cb:()=>{W(t)}}):W(t)}),[z,O]),X=(0,t.useCallback)();return(0,qh.jsx)(sm,{sx:{p:"16px",marginTop:w?"20px":"0px"},children:(0,qh.jsx)(Cy.A,{theme:(r.length,(0,pm.A)({palette:{primary:{main:"#28aeb1"},info:{light:"#cccccc",main:"#666666"},error:{light:"#db807c",main:"#CC4A44"}},typography:{fontFamily:"'Noto Sans JP', sans-serif",h2:{fontSize:"22px",fontWeight:"bold"},h4:{fontSize:"16px"},h5:{fontSize:"14px"},button:{textTransform:"none"}},components:{MuiCheckbox:{styleOverrides:{root:{color:"#BDBDBD","& .MuiSvgIcon-root":{fontSize:25}}}},MuiTypography:{styleOverrides:{root:{letterSpacing:"0.02rem"}}},MUIDataTableToolbar:{styleOverrides:{root:{minHeight:"auto",height:b?"0px":"auto",display:b?"none":"block",marginBottom:w?"-30px":"0px",padding:"0 10px",paddingRight:"0px"}}},MuiTableCell:{styleOverrides:{root:{height:`${V()}px`,maxHeight:`${V()}px`,border:"none","&:first-of-type":{borderTopLeftRadius:"6px",borderBottomLeftRadius:"6px"},"&:last-of-type":{borderTopRightRadius:"6px !important",borderBottomRightRadius:"6px !important"},padding:"0px 16px"}}},MuiTableRow:{styleOverrides:{root:{"&:hover":{cursor:"pointer"}}}},MUIDataTableBodyRow:{styleOverrides:{root:{height:`${V()}px !important`,maxHeight:`${V()}px !important`,border:"none",overflow:"hidden"}}},MUIDataTableBodyCell:{styleOverrides:{stackedCommon:{"@media (max-width: 899.95px)":{fontSize:"12px !important"}}}}}})),children:(0,qh.jsx)(gL.Ay,{ref:C,data:Q,title:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"flex-start",flexDirection:"column",mb:1},children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",flexDirection:"row",justifyContent:n?"space-between":"flex-start",width:"100%"},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",flexDirection:"row"},children:[y&&(0,qh.jsx)(cE.A,{size:"small",onClick:()=>{window.history.back()},sx:{color:"rgba(0, 0, 0, 0.87)"},children:(0,qh.jsx)(ZL,{})}),n&&(0,qh.jsx)(Bh.A,{variant:"h2",sx:{fontWeight:"bold"},children:n})]}),c&&(0,qh.jsx)(ym,{sx:{minWidth:"30%"},children:(0,qh.jsx)(NN,{callSearch:c})})]})}),(0,qh.jsxs)(ym,{sx:{display:i||v||d||p||f||c||A||m?"flex":"none",justifyContent:"space-between"},children:[v||i||d||p||f||c||m?(0,qh.jsxs)(ym,{sx:{display:"flex",marginLeft:"2px",flexDirection:"row",alignItems:"center"},children:[i&&(0,qh.jsx)(cE.A,{onClick:()=>{i&&i()},children:(0,qh.jsx)(bD,{fontSize:"small",style:{color:"rgba(0, 0, 0, 0.54)"}})}),v&&(0,qh.jsx)(dU.A,{title:"\u4ed6\u306e\u8a8d\u8a3c\u6a5f\u5668\u3068\u9023\u643a",children:(0,qh.jsx)(cE.A,{onClick:()=>{s&&s()},children:(0,qh.jsx)(oae,{fontSize:"small",sx:{color:"rgba(0, 0, 0, 0.54)"}})})}),d&&(0,qh.jsx)(dU.A,{title:"\u5408\u9375\u767a\u884c",children:(0,qh.jsx)(cE.A,{onClick:e=>{e.stopPropagation(),x&&x(R)},onMouseDown:e=>e.stopPropagation(),onMouseUp:e=>e.stopPropagation(),children:(0,qh.jsx)(WP,{fontSize:"small",sx:{color:"rgba(0, 0, 0, 0.54)"}})})}),p&&g&&(0,qh.jsx)(cae,{data:H,...g}),p&&!g&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(dU.A,{title:"CSV\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9",children:(0,qh.jsx)(cE.A,{onClick:()=>{h?h(!0):Dh.csvUtils.downloadLists(H)},children:(0,qh.jsx)(YP,{fontSize:"small",sx:{color:"rgba(0, 0, 0, 0.54)"}})})}),(0,qh.jsx)(dU.A,{title:"Excel\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9",children:(0,qh.jsx)(cE.A,{onClick:()=>{h?h(!1):Dh.csvUtils.downloadLists(H,!1)},children:(0,qh.jsx)(VP,{fontSize:"small",sx:{color:"rgba(0, 0, 0, 0.54)"}})})})]}),m,f&&(0,qh.jsx)(dU.A,{title:"\u524a\u9664",children:(0,qh.jsx)(cE.A,{onClick:e=>{e.stopPropagation(),(async(e,t)=>{if("mobile"===t)return await G(e),void j(null);j(e.currentTarget)})(e)},onMouseDown:e=>e.stopPropagation(),onMouseUp:e=>e.stopPropagation(),children:(0,qh.jsx)(wD,{fontSize:"small",sx:{color:"rgba(0, 0, 0, 0.54)"}})})}),D&&(0,qh.jsx)(dU.A,{title:"\u30ea\u30d5\u30ec\u30c3\u30b7\u30e5",children:(0,qh.jsx)(cE.A,{onClick:D,children:(0,qh.jsx)(aae,{sx:{color:"rgba(0, 0, 0, 0.54)"}})})}),(0,qh.jsx)(jO.A,{elevation:1,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},MenuListProps:{disablePadding:!0},id:"customized-menu",anchorEl:P,keepMounted:!0,open:Boolean(P),onClose:Z,children:(0,qh.jsx)(RO.A,{disabled:0===R.length,onClick:e=>{e.stopPropagation(),G(e),Z()},children:"\u524a\u9664"})})]}):(0,qh.jsx)(ym,{}),A?(0,qh.jsx)(uae,{hasNext:M,count:H.length,showCount:null===O,page:z.page,rowsPerPage:z.rowsPerPage,rowsPerPageOptions:k||[z.rowsPerPage],onChangePage:K,onChangeRowsPerPage:X}):(0,qh.jsx)(ym,{})]})]}),columns:o,options:{customFooter:()=>A?(0,qh.jsx)("tfoot",{children:(0,qh.jsx)("tr",{children:(0,qh.jsx)(uae,{hasNext:M,page:z.page,count:H.length,showCount:null===O,rowsPerPage:z.rowsPerPage,rowsPerPageOptions:k||[z.rowsPerPage],onChangePage:K,onChangeRowsPerPage:X,inTableFooter:!0})})}):null,elevation:0,print:!1,download:!1,rowHover:!1,filter:!1,selectableRows:u,pagination:!1,search:!1,viewColumns:!1,responsive:"vertical",filterType:"checkbox",rowsSelected:(()=>{const e=z.page||0,t=z.rowsPerPage||50,r=e*t,n=Math.min(r+t,H.length),o=[];for(let a of U)a>=r&&a<n&&o.push(a-r);return o})(),rowsPerPage:z.rowsPerPage,rowsPerPageOptions:null!==k&&void 0!==k?k:[z.rowsPerPage],selectToolbarPlacement:"none",customToolbarSelect:()=>{},setTableProps:()=>({size:"small",sx:{width:"100%"}}),onRowSelectionChange:(e,t,r)=>{const n=z.page||0,o=z.rowsPerPage||50,a=n*o,i=r.map((e=>a+e));let s=i;S&&(s=i.filter((e=>S(H[e],e)))),B((e=>{const t=new Set(e);for(let r=a;r<a+o&&r<H.length;r++)t.delete(r);return s.forEach((e=>t.add(e))),t}))},onRowClick:(e,t)=>{const r=z.page*z.rowsPerPage+t.dataIndex;a&&a(r)},textLabels:{body:{noMatch:"\u691c\u7d22\u7d50\u679c\u306f\uff10\u4ef6\u3067\u3059"},pagination:{next:"Next Page",previous:"Previous Page",rowsPerPage:"\u8868\u793a\u6570",displayRows:"/"}}}},null!==N&&void 0!==N?N:2184)})})}const fae=e=>{let{msg:t,onClick:r}=e;return(0,qh.jsxs)(ym,{sx:{width:"auto",margin:"15px",display:"flex",flexDirection:"column",alignItems:"flex-end"},children:[(0,qh.jsx)(Bh.A,{sx:{alignSelf:"flex-start"},children:t}),(0,qh.jsx)(QI.A,{size:"small",variant:"outlined",onClick:r,sx:{marginTop:"10px",width:"64px",borderRadius:"6px",color:"#28aeb1"},children:"\u78ba\u5b9a"})]})},pae=(e,r)=>{const[n,o]=(0,t.useState)("Idle"),a=(0,t.useRef)(null),i=(0,t.useRef)(0),s=(0,t.useRef)(null),l=(0,t.useRef)(null),c=(0,t.useRef)(null),u=(0,t.useRef)(null),d=()=>{a.current=null,s.current=null,i.current=0,c.current=null,u.current=null,o("Idle"),l.current&&(l.current(),l.current=null)},f=async()=>{try{if(!s.current)return;const t=s.current.length,n=i.current;if(n<t){const o=Math.min(4905,t-n),l=new Uint8Array(o+5);l[0]=r.cmdCode,l[1]=255&n,l[2]=n>>8&255,l[3]=255&t,l[4]=t>>8&255,l.set(s.current.subarray(n,n+o),5);const c=Te.hp.from(l).toString("base64"),u={topic:`stp${a.current.deviceUUID}cmd`,payload:c,op:r.cmdCode};i.current+=o,await e(u)}}catch(t){console.error("Error sending data packet:",t),o("Error"),u.current&&u.current(t),d()}};(0,t.useEffect)((()=>{const e=dI(r.cmdCode,(async(e,t)=>{if(t&&"string"===typeof t.status)if(o(t.status),"Ok"===t.status)if(a.current&&c.current)try{c.current({deviceUUID:a.current.deviceUUID,list:a.current.list})}catch(r){console.error("Failed to resolve promise:",r),u.current&&u.current(r)}finally{d()}else d();else"Pending"!==t.status&&(i.current=parseInt(t.status.split("/")[0],10)-1,f())}));return l.current=e,()=>{l.current&&l.current()}}),[e,r.cmdCode]);return{uploadItemBatch:async e=>{let{deviceUUID:t,list:n}=e;return t&&Array.isArray(n)&&0!==n.length?(d(),new Promise((async(e,l)=>{try{c.current=e,u.current=l,a.current={deviceUUID:t,list:n},s.current=r.prepareData(n),i.current=0,o("Processing"),await f()}catch(p){console.error("Error preparing data:",p),l(p),d()}}))):Promise.reject(new Error("Invalid parameters"))},uploadState:n}},hae=e=>{const t={cmdCode:l.cmdCode.STP_ITEM_CODE_CARDS_ADD,prepareData:e=>{let t=0;for(const o of e)t+=1+Te.hp.from(o.cardID,"hex").length+1+Te.hp.from(o.nameUUID,"hex").length;const r=new Uint8Array(t);let n=0;for(const o of e){const e=Math.ceil(o.cardID.length/2);r[n++]=e;const t=Te.hp.from(o.cardID,"hex");r.set(t,n),n+=e;const a=Te.hp.from(o.nameUUID,"hex");r[n++]=a.length,r.set(a,n),n+=a.length}return r}},{uploadItemBatch:r,uploadState:n}=pae(e,t);return{uploadCardBatch:r,uploadState:n}};function mae(){const{gManageAuthData:e}=(0,t.useContext)(VI),[r,n]=(0,t.useState)(!1),o=(0,t.useCallback)(((t,r)=>new Promise(((n,o)=>{const a=setTimeout((()=>{o(new Error("getCardsByStpDevice timeout"))}),3e4);e.getCardsByStpDevice({stpDeviceUUID:t,lastKey:r,pageSize:500},(e=>{clearTimeout(a),n(e)}))}))),[e]),a=(0,t.useCallback)((async e=>{const t=[];let r=null;for(let i=0;i<100;i+=1){var n,a;const i=await o(e,r);if(!1===(null===i||void 0===i?void 0:i.success))throw new Error(i.message||"getCardsByStpDevice failed");const s=(null===i||void 0===i||null===(n=i.data)||void 0===n?void 0:n.list)||[];if(t.push(...s),r=(null===i||void 0===i||null===(a=i.data)||void 0===a?void 0:a.lastKey)||null,!r)break}return t}),[o]),i=(0,t.useCallback)((async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"csv";if(!e||r)return 0;n(!0);try{const r=(e=>{const t=new Map;return e.forEach((e=>{if(!e)return;const r=(e.cardID||e.cardNameUUID||"").toUpperCase();if(!r)return;const n=t.get(r);(!n||(e.timestamp||0)>=(n.timestamp||0))&&t.set(r,e)})),Array.from(t.values()).sort(((e,t)=>(t.timestamp||0)-(e.timestamp||0)))})(await a(e)).map((t=>({...t,uuids:[e]})));return r.length<1?0:(sae(r,"cards",t,(e=>{const t=new Date,r=e=>String(e).padStart(2,"0");return`sesamebiz_all-history_${e}_${t.getFullYear()}${r(t.getMonth()+1)}${r(t.getDate())}-${r(t.getHours())}${r(t.getMinutes())}${r(t.getSeconds())}`})(e)),r.length)}finally{n(!1)}}),[a,r]);return{isExporting:r,exportCards:i}}const gae=e=>{let{label:r,value:n,onEdit:o,onDelete:a,onAdd:i,isMobile:s}=e;const[l,c]=(0,t.useState)(null),[u,d]=(0,t.useState)(null),f=(e,t)=>{e.stopPropagation(),c(e.currentTarget),d(t)},p=()=>{c(null)},h=()=>{a(r,u),p()};return"string"===typeof n?s?(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",mb:2},children:[(0,qh.jsx)(Bh.A,{sx:{fontWeight:"bold",color:"#333",mb:1},children:r}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,qh.jsx)(Bh.A,{sx:{color:"##333"},children:n}),o&&(0,qh.jsx)(cE.A,{size:"small",color:"primary",onClick:()=>o(r,n),children:(0,qh.jsx)(loe,{fontSize:"small"})})]})]}):(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(Bh.A,{sx:{width:120,fontWeight:"bold",color:"#333"},children:r}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,qh.jsx)(Bh.A,{sx:{color:"##333"},children:n}),o&&(0,qh.jsx)(cE.A,{size:"small",color:"primary",onClick:()=>o(r,n),children:(0,qh.jsx)(loe,{fontSize:"small"})})]})]}):Array.isArray(n)?s?(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",width:"100%",mb:2},children:[(0,qh.jsx)(Bh.A,{sx:{fontWeight:"bold",color:"#333",mb:1},children:r}),(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",gap:1,width:"100%"},children:[n.map(((e,t)=>(0,qh.jsx)(ym,{sx:{mb:2},children:(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",mb:1},children:[(0,qh.jsx)(Bh.A,{sx:{color:"#888",flexBasis:"30%",flexShrink:0},children:e.title}),(0,qh.jsx)(ym,{sx:{flexGrow:1,flexBasis:"50%",display:"flex",alignItems:"center"},children:(0,qh.jsx)(rT,{initialValue:e.value,onSave:(e,n)=>o(r,e,t,n)})}),n.length>1&&a&&(0,qh.jsx)(ym,{sx:{flexBasis:"20%",display:"flex",justifyContent:"flex-end"},children:(0,qh.jsx)(cE.A,{size:"small",color:"error",onClick:e=>f(e,t),children:(0,qh.jsx)(wD,{fontSize:"small"})})})]})},t))),(0,qh.jsx)(ym,{sx:{padding:0},children:(0,qh.jsx)(cE.A,{disabled:!i,size:"small",onClick:()=>i(r),children:(0,qh.jsx)(bD,{style:{color:"#28AEB1"}})})})]}),(0,qh.jsx)(jO.A,{elevation:1,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"center"},MenuListProps:{disablePadding:!0},anchorEl:l,keepMounted:!0,open:Boolean(l),onClose:p,children:(0,qh.jsx)(RO.A,{onClick:e=>{e.stopPropagation(),h()},children:"\u524a\u9664"})})]}):(0,qh.jsxs)(ym,{sx:{display:"flex",width:"100%"},children:[(0,qh.jsx)(Bh.A,{sx:{width:120,fontWeight:"bold",color:"#333",pt:1},children:r}),(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",gap:1},children:[n.map(((e,t)=>(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,qh.jsxs)(ym,{sx:{display:"grid",gridTemplateColumns:"200px 1fr",width:"100%"},children:[(0,qh.jsx)(Bh.A,{sx:{color:"#888",pt:1},children:e.title}),(0,qh.jsx)(rT,{initialValue:e.value,onSave:(e,n)=>o(r,e,t,n)})]}),n.length>1&&(0,qh.jsx)(ym,{sx:{position:"absolute",left:"calc(60%)"},children:a&&(0,qh.jsx)(cE.A,{size:"small",color:"error",onClick:e=>f(e,t),children:(0,qh.jsx)(wD,{fontSize:"small"})})})]},t))),(0,qh.jsx)(ym,{sx:{padding:0},children:(0,qh.jsx)(cE.A,{disabled:!i,size:"small",onClick:()=>i(r),children:(0,qh.jsx)(bD,{style:{color:"#28AEB1"}})})}),(0,qh.jsx)(jO.A,{elevation:1,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"center"},MenuListProps:{disablePadding:!0},anchorEl:l,keepMounted:!0,open:Boolean(l),onClose:p,children:(0,qh.jsx)(RO.A,{onClick:e=>{e.stopPropagation(),h()},children:"\u524a\u9664"})})]})]}):null},vae=e=>{let{style:t,data:r,onEdit:n,onDelete:o,onAdd:a,isMobile:i}=e;return(0,qh.jsx)(ym,{sx:{display:"flex",flexDirection:"column",gap:1,width:"100%",mt:"20px",pl:i?"15px":"25px",pr:i?"15px":0,...t},children:Object.entries(r).map(((e,t)=>{let[r,s]=e;return(0,qh.jsx)(gae,{label:r,value:s,onEdit:n,onDelete:o,onAdd:a,isMobile:i},t)}))})};const yae=e=>{const t={cmdCode:l.cmdCode.STP_ITEM_CODE_PASSCODES_ADD,logPrefix:"passwordUploader",prepareData:e=>{let t=0;for(const o of e)t+=1+Te.hp.from(o.passwordID,"hex").length+1+Te.hp.from(o.nameUUID,"hex").length;const r=new Uint8Array(t);let n=0;for(const o of e){const e=Math.ceil(o.passwordID.length/2);r[n++]=e,r.set(Te.hp.from(o.passwordID,"hex"),n),n+=e;const t=Te.hp.from(o.nameUUID,"hex");r[n++]=t.length,r.set(t,n),n+=t.length}return r}},{uploadItemBatch:r,uploadState:n}=pae(e,t);return{uploadPasswordBatch:r,uploadState:n}};const bae=e=>{let{count:t,onClick:r,name:n,isShow:o=!0}=e;return(0,qh.jsx)(qh.Fragment,{children:o&&(0,qh.jsxs)(ym,{sx:{width:"100%",borderRadius:"6px",backgroundColor:"secondary.light",padding:"10px",flexDirection:"column",display:"flex",alignItems:"baseline",cursor:"pointer","&:hover":{opacity:"0.6"}},onClick:r,children:[(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",fontWeight:400,lineHeight:"27.24px",letterSpacing:"0.06em"},children:n}),(0,qh.jsx)(ym,{sx:{display:"flex"},children:(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"string"===typeof t?"20px":"60px",fontWeight:700,letterSpacing:"0.06em"},children:t})})]})})};function wae(e){let{cc:t,pc:r,call:n,model:o,isMobile:a=!1}=e;const{t:i}=Fv();return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsxs)(ym,{sx:{p:2},children:[(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",fontWeight:600,lineHeight:"31px",letterSpacing:"0.06em"},children:"\u767b\u9332\u5185\u5bb9"}),(0,qh.jsxs)(sm,{direction:a?"column":"row",spacing:2,sx:{p:"18px 18px 18px 0"},children:[(0,qh.jsx)(bae,{count:t,name:i("accessCtl.auth.card"),onClick:()=>n(l.sesameTouchProAuthType.card),isShow:Dh.isShowType(o,l.sesameTouchProAuthType.card)}),(0,qh.jsx)(bae,{count:r,name:i("accessCtl.auth.password"),onClick:()=>n(l.sesameTouchProAuthType.password),isShow:Dh.isShowType(o,l.sesameTouchProAuthType.password)}),(0,qh.jsx)(bae,{count:"Coming soon",name:i("accessCtl.auth.fingerprint"),onClick:()=>{},isShow:Dh.isShowType(o,l.sesameTouchProAuthType.finger)}),(0,qh.jsx)(bae,{count:"Coming soon",name:i("accessCtl.auth.face"),onClick:()=>{},isShow:Dh.isShowType(o,l.sesameTouchProAuthType.face)}),(0,qh.jsx)(bae,{count:"Coming soon",name:i("accessCtl.auth.palm"),onClick:()=>{},isShow:Dh.isShowType(o,l.sesameTouchProAuthType.palm)})]})]})})}const xae=(0,dD.A)((0,qh.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown"),Sae=(0,dD.A)((0,qh.jsx)("path",{d:"m10 17 5-5-5-5z"}),"ArrowRight");function Aae(e){let{deviceUUID:r}=e;const n=yj(r),[o,a]=(0,t.useState)(!1),[i,s]=(0,t.useState)(!1),[l,c]=(0,t.useState)(!1),{t:u}=Fv(),d=hg(),f=dg(),p=e=>{var t;return null===(t=n.scripts.find((t=>t.id===e)))||void 0===t?void 0:t.name.replace(/^\ud83c\udfac\s*/,"")},h=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,qh.jsxs)(ym,{component:"span",sx:{display:"block",position:"relative",width:"fit-content",maxWidth:"100%",mx:"auto",pl:"22px",boxSizing:"border-box",fontSize:17,lineHeight:"30px",textAlign:"left"},children:[(0,qh.jsxs)(ym,{component:"span","aria-hidden":"true",sx:{display:"flex",alignItems:"center",gap:"2px",visibility:"hidden"},children:[(0,qh.jsx)(ym,{component:"span",sx:{width:20,flexShrink:0},children:"\ud83c\udfac"}),(0,qh.jsx)(ym,{component:"span",sx:{overflow:"hidden",whiteSpace:"nowrap"},children:p(n.selected)})]}),t&&(0,qh.jsx)(ym,{component:"span",sx:{position:"absolute",left:0,top:0,display:"flex",width:24},children:o?(0,qh.jsx)(xae,{sx:{fontSize:30}}):(0,qh.jsx)(Sae,{sx:{fontSize:30}})}),(0,qh.jsxs)(ym,{component:"span",sx:{position:"absolute",left:22,top:0,right:t?0:"auto",display:"flex",alignItems:"center",gap:"2px"},children:[(0,qh.jsx)(ym,{component:"span",sx:{width:20,flexShrink:0},children:"\ud83c\udfac"}),(0,qh.jsx)(ym,{component:"span",sx:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:p(e)})]})]})};return(0,qh.jsxs)(ym,{sx:bj,children:[(0,qh.jsxs)(lO,{sx:{display:"grid",gridTemplateColumns:"1fr minmax(0, 2fr) 1fr"},children:[(0,qh.jsx)(iD.A,{primary:u("botSettings.script")}),(0,qh.jsx)(ym,{component:"button",onClick:()=>a(!o),sx:{display:"flex",alignItems:"center",justifyContent:"center",width:"100%",mx:"auto",p:0,minWidth:0,border:0,bgcolor:"transparent",color:"text.secondary",font:"inherit"},children:h(n.selected,!0)}),(0,qh.jsx)(cE.A,{sx:{justifySelf:"end"},disableRipple:!0,onClick:()=>d({pathname:"/device-setting/bot-script",search:`${f.search}&index=${n.selected}`}),children:(0,qh.jsx)(fU.A,{component:jN})})]}),l&&(0,qh.jsx)(Bh.A,{color:"error",children:u("lockSettings.failed")}),o&&(0,qh.jsx)(sU,{title:u("botSettings.script"),values:n.scripts.map((e=>e.id)),value:n.selected,label:e=>(0,qh.jsx)(ym,{component:"span",sx:{display:"grid",gridTemplateColumns:"1fr minmax(0, 2fr) 1fr",px:2},children:(0,qh.jsx)(ym,{component:"span",sx:{gridColumn:2,minWidth:0},children:h(e)})}),disabled:i||!n.connected,onChange:async e=>{s(!0),c(!1);try{await n.select(e),a(!1)}catch(t){c(!0)}finally{s(!1)}}}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]})}function kae(e){const r=(0,t.useSyncExternalStore)(Yk.subscribe,Yk.getSnapshot)[e.toUpperCase()],n=!0===(null===r||void 0===r?void 0:r.bleConnected),o=(0,t.useRef)({}),[a,i]=(0,t.useState)({}),[s,l]=(0,t.useState)(!1),[c,u]=(0,t.useState)(!1),[d,f]=(0,t.useState)(!1),[p,h]=(0,t.useState)(0),m=(0,t.useRef)(!1);n&&(o.current=r.settings||{});const g={...a,...o.current,...null===r||void 0===r?void 0:r.settings};void 0===g.autoLockSeconds&&(g.autoLockSeconds=a.autoLockSeconds),(0,t.useEffect)((()=>{let t=!0;return f(!1),n&&Yk.request("lockSettings",{deviceUUID:e,operation:"read"}).then((e=>{let{data:r}=e;t&&i(r)})).catch((()=>{t&&f(!0)})),()=>{t=!1}}),[e,n,p]);return{settings:g,connected:n,busy:s,error:c,readFailed:d,command:async(t,r)=>{if(m.current||!n)return null;m.current=!0,l(!0),u(!1);try{const{data:n}=await Yk.request("toggle"===t?"command":"lockSettings",{deviceUUID:e,operation:t,value:r});return"toggle"!==t&&(o.current={...o.current,...n},i((e=>({...e,...n})))),n||{}}catch(a){return u(!0),null}finally{m.current=!1,l(!1)}},retryRead:()=>h((e=>e+1))}}const Cae=[0,3,5,7,10,15,30,60,120,180,240,300,600,900,1800,3600],Iae=[65535,0,1,2,3,4,...Cae.slice(2)];function Eae(e){var r;let{deviceUUID:n}=e;const{t:o}=Fv(),a=hg(),i=dg(),{settings:s,connected:l,busy:c,error:u,readFailed:d,retryRead:f,command:p}=kae(n),[h,m]=(0,t.useState)(!1),[g,v]=(0,t.useState)(!1),[y,b]=(0,t.useState)(!1);(0,t.useEffect)((()=>{l||(m(!1),v(!1),b(!1))}),[l]);const w=e=>65535===e?o("lockSettings.immediate"):0===e?o("lockSettings.off"):e>=3600?o("lockSettings.hours",{count:e/3600}):e>=60?o("lockSettings.minutes",{count:e/60}):o("lockSettings.seconds",{count:e}),x=async(e,t)=>{await p(e,t)&&("sensorLock"===e?m(!1):(v(!1),b(!1)))},S=y||s.autoLockSeconds>0;return(0,qh.jsxs)(ym,{sx:bj,children:[u&&(0,qh.jsx)(LL,{severity:"error",children:o("lockSettings.failed")}),(0,qh.jsxs)(aD,{onClick:()=>a({pathname:"/device-setting/angle",search:i.search}),children:[(0,qh.jsx)(iD.A,{primary:o("pages.sesameAccessControlDevice.index.SetAngle")}),(0,qh.jsx)(fU.A,{component:jN})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),s.magnet&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(aD,{"aria-disabled":!l||c||void 0===s.sensorLockSeconds,onClick:()=>{l&&!c&&void 0!==s.sensorLockSeconds&&m(!h)},children:[(0,qh.jsx)(iD.A,{primary:o("pages.sesameAccessControlDevice.index.LockWithOpenSensor")}),(0,qh.jsx)(Bh.A,{sx:{color:"#999"},children:void 0===s.sensorLockSeconds?"\u2014":w(s.sensorLockSeconds)})]}),h&&(0,qh.jsx)(sU,{title:o("pages.sesameAccessControlDevice.index.LockWithOpenSensor"),values:Iae,value:s.sensorLockSeconds,label:w,disabled:c||!l,onChange:e=>x("sensorLock",e)}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}),(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:o("pages.sesameAccessControlDevice.index.AutoLockCountdown")}),d&&void 0===s.autoLockSeconds&&(0,qh.jsx)(QI.A,{onClick:f,children:o("lockSettings.retry")}),s.autoLockSeconds>0&&(0,qh.jsx)(QI.A,{disabled:!l||c,sx:{color:"#999",minWidth:0},onClick:()=>v(!g),children:w(s.autoLockSeconds)}),(0,qh.jsx)(rB,{checked:S,disabled:!l||c||void 0===s.autoLockSeconds,inputProps:{"aria-label":o("pages.sesameAccessControlDevice.index.AutoLockCountdown")},onChange:(e,t)=>{t?(b(!0),v(!0)):s.autoLockSeconds>0?x("autoLock",0):(v(!1),b(!1))}})]}),g&&(0,qh.jsx)(sU,{title:o("pages.sesameAccessControlDevice.index.AutoLockCountdown"),values:Cae,value:null!==(r=s.autoLockSeconds)&&void 0!==r?r:0,label:w,disabled:c||!l,onChange:e=>x("autoLock",e)}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]})}function Dae(e){var r;const{gManageDevice:n}=(0,t.useContext)(VI),[o]=xv(),a=o.get("deviceUUID"),i=(null===(r=n.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===(null===a||void 0===a?void 0:a.toUpperCase())})))||void 0===r?void 0:r.deviceModel)||o.get("deviceModel");return aj(i)?(0,qh.jsx)(dF,{...e}):(0,qh.jsx)(Tae,{...e})}function Tae(e){var r,n,o;let{showBack:a=!0}=e;const{gStripe:i,gManageDevice:s,setSnackbarValue:c,gMediaType:u}=(0,t.useContext)(VI),{t:d}=Fv(),[f]=xv(),p=hg(),h=f.get("deviceUUID")||"",m=(null===(r=s.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===h.toUpperCase()})))||void 0===r?void 0:r.deviceModel)||f.get("deviceModel")||"",g=f.get("deviceName")||"",v=(0,t.useMemo)((()=>s.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===h.toUpperCase()}))||{}),[s.companyDevices,h]),y=()=>{c({open:!0,msg:"Coming soon",severity:"info"})},b=e=>{let t={title:g,uuid:h},r="";e===l.sesameTouchProAuthType.card?r="/biz/access-control/cards":e===l.sesameTouchProAuthType.password&&(r="/biz/access-control/passwords"),p(r,{state:t})},w=(0,t.useMemo)((()=>Dh.isLockModel(m)||JP(m)?Fk&&JP(m)?(0,qh.jsx)(Eae,{deviceUUID:h,device:v},`settings:${h}`):!i.isFromApp&&JP(m)?(0,qh.jsx)(qh.Fragment,{children:["SetAngle","LockWithOpenSensor","AutoLockCountdown"].map((e=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:y,sx:{cursor:"pointer"},children:[(0,qh.jsx)(iD.A,{primary:d(`pages.sesameAccessControlDevice.index.${e}`)}),"SetAngle"===e&&(0,qh.jsx)(fU.A,{component:jN}),"LockWithOpenSensor"===e&&(0,qh.jsx)(Bh.A,{sx:{color:"#999"},children:d("lockSettings.immediate")}),"AutoLockCountdown"===e&&(0,qh.jsx)(rB,{checked:!1,inputProps:{"aria-label":d("pages.sesameAccessControlDevice.index.AutoLockCountdown")},onClick:e=>e.stopPropagation(),onChange:y})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]},e)))}):null:(0,qh.jsxs)(qh.Fragment,{children:[Dh.isShowType(m,l.sesameTouchProAuthType.card)&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:()=>b(l.sesameTouchProAuthType.card),children:[(0,qh.jsx)(iD.A,{primary:d("accessCtl.auth.manageCard")}),(0,qh.jsx)(fU.A,{component:jN})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}),Dh.isShowType(m,l.sesameTouchProAuthType.finger)&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:y,children:[(0,qh.jsx)(iD.A,{primary:d("accessCtl.auth.manageFingerprint")}),(0,qh.jsx)(fU.A,{component:jN})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}),Dh.isShowType(m,l.sesameTouchProAuthType.password)&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:()=>b(l.sesameTouchProAuthType.password),children:[(0,qh.jsx)(iD.A,{primary:d("accessCtl.auth.managePasscode")}),(0,qh.jsx)(fU.A,{component:jN})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}),Dh.isShowType(m,l.sesameTouchProAuthType.face)&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:y,children:[(0,qh.jsx)(iD.A,{primary:d("accessCtl.auth.manageFace")}),(0,qh.jsx)(fU.A,{component:jN})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}),Dh.isShowType(m,l.sesameTouchProAuthType.palm)&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:y,children:[(0,qh.jsx)(iD.A,{primary:d("accessCtl.auth.managePalmVeins")}),(0,qh.jsx)(fU.A,{component:jN})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]})]})),[m,y]);return(0,qh.jsxs)(ym,{sx:{height:"100vh",overflow:"auto",bgcolor:"background.default","&::-webkit-scrollbar":{display:"none"},msOverflowStyle:"none",scrollbarWidth:"none"},children:[a&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:u.isMobile?0:4,pt:Fk?0:2},children:(0,qh.jsxs)(cE.A,{onClick:()=>p(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-1}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"black"},children:v.deviceName||g})]})}),Fk&&(0,qh.jsx)(KL,{deviceUUID:h}),(0,qh.jsxs)($T.A,{children:[(0,qh.jsx)(lO,{disablePadding:!0,children:(0,qh.jsx)(hB,{})}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:10}}),(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:d("pages.sesameAccessControlDevice.index.DeviceModel")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:m})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),$P(m)?Fk?(0,qh.jsx)(Aae,{deviceUUID:h}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(lO,{onClick:y,children:(0,qh.jsx)(iD.A,{primary:d("botSettings.script")})}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}):w,(!i.isFromApp||/iPhone|iPad|iPod/.test(navigator.userAgent))&&!Fk&&JP(m)&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(lO,{onClick:y,children:(0,qh.jsx)(iD.A,{primary:d("pages.sesameAccessControlDevice.index.SiriCustomPhrase")})}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}),(0,qh.jsx)(DB,{device:v,Hub3DeviceUUID:null===(n=v.stateInfo)||void 0===n?void 0:n.wm2UUID},`firmware:${h}`),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsx)(vB,{device:v}),(null===v||void 0===v||null===(o=v.stateInfo)||void 0===o?void 0:o.registerTime)&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:d("pages.sesameAccessControlDevice.index.RegisterTime")}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:new Date(Number(v.stateInfo.registerTime)).toLocaleString()})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]}),(0,qh.jsxs)(lO,{onClick:()=>{const e=new URL(window.location.href),t=new URLSearchParams(e.searchParams);t.set("deviceUUID",h),t.set("deviceName",v.deviceName||g),p({pathname:"/device-setting/factory-info",search:t.toString()})},sx:{cursor:"pointer"},children:[(0,qh.jsx)(iD.A,{primary:"UUID"}),(0,qh.jsx)(Bh.A,{sx:{color:"text.secondary",fontSize:"0.75rem",maxWidth:250,wordBreak:"break-all"},children:h}),(0,qh.jsx)(fU.A,{component:jN})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),Dh.isShowType(m,l.sesameTouchProAuthType.face)&&(0,qh.jsx)(hF,{text:d("accessCtl.auth.radarDetectionDistance"),value:0,onChangeCommitted:y}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:10}}),(0,qh.jsx)(gB,{deviceUUID:h,subUUID:i.customerInfo.subUUID,deviceName:v.deviceName||g,named:JP(m)||qP(m)}),(JP(m)||qP(m))&&(0,qh.jsx)(sF,{deviceUUID:h,autoUnlock:!qP(m)},`extras:${h}`)]})]})}const Oae=e=>{let{readCardContent:t,cards:r,buttonTitle:n,b2t:o,addCard:a}=e;return(0,qh.jsxs)(hD,{show:!t,sx:{marginTop:"20px"},children:[(0,qh.jsx)(ym,{children:(0,qh.jsx)(Bh.A,{variant:"h4",sx:{ml:"9px",mt:"10px",color:"#9B9B9B"},children:o})}),(0,qh.jsx)(ym,{sx:{display:"flex",flexDirection:"column"},children:(0,qh.jsx)(rae,{mdatas:r,addCard:a,buttonTitle:n})})]})};function Mae(e){let{items:r,btnDel:n,name:o="deviceName"}=e;const[a,i]=(0,t.useState)(!1);(0,t.useEffect)((()=>{i(r.length>0)}),[r]);const s={borderBottom:1,opacity:.1,borderColor:"gray"};return(0,qh.jsx)(qh.Fragment,{children:a&&(0,qh.jsxs)(uD,{sx:{marginBottom:"20px",maxWidth:"98%"},children:[(0,qh.jsx)(uD,{sx:s}),r.map(((e,r)=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsxs)(uD,{display:"flex",justifyContent:"space-between",alignItems:"center",children:[(0,qh.jsx)(Bh.A,{children:e[o]}),(0,qh.jsx)(cE.A,{onClick:()=>{n&&n(e)},children:(0,qh.jsx)(wD,{sx:{color:"error.main"}})})]}),(0,qh.jsx)(uD,{sx:s})]},r)))]})})}const Pae=(0,t.forwardRef)(((e,r)=>{let{mdatas:n,goSet:o,addCard:a,downData:i,setCsvData:s,touchList:l,setTouchList:c,isShowFileClick:u,chooseOpenHold:d,isUploadCsvCall:f,setChooseOpenHold:p,csvLoading:h,isShowCsv:m=!0}=e;const{t:g}=Fv(),{gManageDevice:v,setCustomModalOpen:y,setModalContent:b}=(0,t.useContext)(VI),[w,x]=(0,t.useState)(!1);(0,t.useImperativeHandle)(r,(()=>({setReadCardContent:e=>{x(e)}})));const[S,A]=(0,t.useState)([]);(0,t.useEffect)((()=>{A(l),0===l.length&&x(!1)}),[l]),(0,t.useEffect)((()=>{d?k():y(!1)}),[d]);const k=()=>{let e=v.filteredAccessControlDevices.filter((e=>e.stateInfo.wm2State&&!l.some((t=>t.deviceUUID===e.deviceUUID))));b((0,qh.jsx)(vL,{title:g("pages.sesameAccessControlDevice.index.SelectAuthenticationDevice"),selectableRows:"multiple",data:e,setOpenModal:y,handleCheck:C,isWifi:!0})),y(!0)},C=e=>{y(!1),p(!1),c([...e,...l])};return(0,qh.jsxs)(JI,{sx:{mb:"15px"},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",mb:"10px",justifyContent:"space-between",alignItems:"center"},children:[(0,qh.jsx)(Bh.A,{variant:"h2",sx:{ml:"9px"},children:"\u65b0\u898f\u30ab\u30fc\u30c9\u8ffd\u52a0"}),m&&(0,qh.jsx)(ym,{sx:{display:"flex"},children:(0,qh.jsx)(Aoe,{hint:Dh.authText.fontCfpCards.warningMsg,loading:h,setData:s,isShowFileClick:u,downData:i,isUserData:!1,isUploadCsv:S.length>0,isUploadCsvCall:f})})]})}),(0,qh.jsxs)(lE,{children:[(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{ml:"9px"},children:`1.${g("pages.sesameAccessControlDevice.index.SelectAuthenticationDevice")}`}),(0,qh.jsx)(cE.A,{onClick:()=>{k()},children:(0,qh.jsx)(bD,{style:{color:"#28AEB1"}})})]}),S.length>0&&(0,qh.jsx)(ym,{sx:{p:"15px"},children:(0,qh.jsx)(Mae,{items:S,btnDel:e=>{c((t=>t.filter((t=>t.deviceUUID!==e.deviceUUID))))},name:"deviceName"})})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{ml:"9px"},children:"2.\u30ab\u30fc\u30c9\u8aad\u307f\u53d6\u308a"}),(0,qh.jsx)(cE.A,{disabled:0===S.length,onClick:()=>{o&&o(!w)},size:"small",variant:"outlined",sx:{color:"#28AEB1"},children:w?(0,qh.jsx)(voe,{style:{color:"#28AEB1"}}):(0,qh.jsx)(bD,{style:{color:0===S.length?"rgba(0, 0, 0, 0.26)":"#28AEB1"}})})]}),(0,qh.jsx)(Oae,{b2t:"\uff0b\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u30bf\u30c3\u30c1/\u30bf\u30c3\u30c1\u30d7\u30ed\u306b\u30ab\u30fc\u30c9\u3092\u304b\u3056\u3057\u3066\u4e0b\u3055\u3044\u3002",addCard:a,cards:n,readCardContent:w})]})]})})),jae=Pae;const Rae=(0,am.Ay)(aM)({"& .MuiDialog-paper":{width:"80%",height:"auto",borderRadius:"6px",margin:"auto"}}),_ae=e=>{let{isLoading:t,handleClose:r,handleSure:n}=e;return(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",mt:"10px",marginRight:"20px",marginBottom:"20px"},children:[(0,qh.jsx)(QI.A,{onClick:r,size:"small",sx:{mr:"10px 20px"},children:"\u30ad\u30e3\u30f3\u30bb\u30eb"}),(0,qh.jsx)(RE,{disableElevation:!0,loading:t,size:"small",variant:"outlined",onClick:n,children:"\u78ba\u8a8d"})]})},Nae=e=>{let{mOpen:r,handleClose:n,handleSure:o,defaultVal:a}=e;const[i,s]=(0,t.useState)({}),[l,c]=(0,t.useState)(!1);return(0,qh.jsxs)(Rae,{open:r,onClose:n,children:[(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",m:"32px 32px 10px 32px"},children:[(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"22px",fontWeight:600,letterSpacing:"0.06em",paddingBottom:"20px"},children:"\u30e6\u30fc\u30b6\u30fc\u3092\u7d10\u4ed8\u3051"}),(0,qh.jsx)(tae,{defaultVal:a,callBindMm:e=>{s(e)}})]}),(0,qh.jsx)(_ae,{isLoading:l,handleClose:n,handleSure:()=>{c(!0),o(i,(e=>{c(!1)}))}})]})};var Lae=r(64697);const Uae=(0,dD.A)((0,qh.jsx)("path",{d:"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2m0 16H8V7h11z"}),"ContentCopy"),Bae=(0,dD.A)((0,qh.jsx)("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"Refresh"),Fae=(0,dD.A)((0,qh.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-6h2zm0-8h-2V7h2z"}),"Info");const zae=()=>{const{t:e}=Fv(),r=hg(),{gStripe:n}=(0,t.useContext)(VI),[o]=xv(),a=(e=>{if(!e)return null;try{return JSON.parse(Te.hp.from(decodeURIComponent(e),"base64").toString("utf8"))}catch{return null}})(o.get("data")),i=a?(e=>{if(!Array.isArray(e))return[];const t=[];return e.forEach((e=>{e&&"object"===typeof e&&Object.keys(e).forEach((r=>{return t.push({key:r,value:(n=e[r],null===n||void 0===n?"":Array.isArray(n)?JSON.stringify(n):String(n))});var n}))})),t})(a):[];return(0,qh.jsxs)(ym,{sx:{width:"100%",minHeight:"100vh",bgcolor:"background.paper"},children:[!n.isFromApp&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",pt:1,pl:2},children:(0,qh.jsxs)(cE.A,{onClick:()=>r(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-2}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"title.main"},children:o.get("deviceName")})]})}),0===i.length?(0,qh.jsx)(ym,{sx:{p:3},children:(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"info.light"},children:e("envSnapshot.noData","No Data")})}):(0,qh.jsx)($T.A,{children:i.map(((r,n)=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsxs)(lO,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",py:1,px:2},children:[(0,qh.jsx)(Bh.A,{variant:"body1",sx:{fontWeight:400,color:"title.main",mr:2},children:e(`envSnapshot.${r.key}`,r.key)}),(0,qh.jsx)(Bh.A,{variant:"body1",sx:{color:"info.light",textAlign:"right",wordBreak:"break-all"},children:r.value})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]},`${r.key}-${n}`)))})]})};var Wae=r(72348),Hae=r.n(Wae);const Yae=e=>{let{callTime:r,sTitle:n="\u5229\u7528\u958b\u59cb\u65e5\u6642",eTitle:o="\u5229\u7528\u7d42\u4e86\u65e5\u6642",sx:a={}}=e;const[i,s]=(0,t.useState)(new Date),[l,c]=(0,t.useState)(new Date(Date.now()+18e5));(0,t.useEffect)((()=>{r&&r(i,l)}),[i,l]);return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsxs)(ym,{sx:a,children:[(0,qh.jsx)(Bh.A,{sx:{marginRight:"10px",whiteSpace:"no-wrap !important"},children:n}),(0,qh.jsx)(ym,{children:(0,qh.jsx)(Hae(),{selectsStart:!0,showTimeSelect:!0,locale:"ja",dateFormat:"Pp",timeCaption:"\u6642\u9593",popperPlacement:"top-start",selected:i,minDate:new Date,filterTime:e=>(new Date).getTime()<e.getTime(),onChange:e=>{e<new Date&&(e=new Date),s(e),c(new Date(e.getTime()+18e5))},customInput:(0,qh.jsx)(GD.A,{variant:"outlined",color:"primary",size:"small",sx:{marginRight:"10px",maxWidth:"180px",input:{textAlign:"center"}}})})}),(0,qh.jsx)(Bh.A,{sx:{margin:"0 5px 0 -60px"},children:"~"}),(0,qh.jsx)(Bh.A,{sx:{marginRight:"10px",whiteSpace:"no-wrap !important"},children:o}),(0,qh.jsx)(Hae(),{selectsStart:!0,showTimeSelect:!0,locale:"ja",dateFormat:"Pp",timeCaption:"\u6642\u9593",popperPlacement:"top-start",selected:l,minDate:new Date(i),filterTime:e=>i.getTime()<e.getTime(),onChange:e=>{e<i&&(e=new Date(i.getTime()+18e5)),c(e)},customInput:(0,qh.jsx)(GD.A,{size:"small",variant:"outlined",color:"primary",sx:{maxWidth:"180px",input:{textAlign:"center"}}})})]})})},Vae={lessThanXSeconds:{one:"1\u79d2\u672a\u6e80",other:"{{count}}\u79d2\u672a\u6e80",oneWithSuffix:"\u7d041\u79d2",otherWithSuffix:"\u7d04{{count}}\u79d2"},xSeconds:{one:"1\u79d2",other:"{{count}}\u79d2"},halfAMinute:"30\u79d2",lessThanXMinutes:{one:"1\u5206\u672a\u6e80",other:"{{count}}\u5206\u672a\u6e80",oneWithSuffix:"\u7d041\u5206",otherWithSuffix:"\u7d04{{count}}\u5206"},xMinutes:{one:"1\u5206",other:"{{count}}\u5206"},aboutXHours:{one:"\u7d041\u6642\u9593",other:"\u7d04{{count}}\u6642\u9593"},xHours:{one:"1\u6642\u9593",other:"{{count}}\u6642\u9593"},xDays:{one:"1\u65e5",other:"{{count}}\u65e5"},aboutXWeeks:{one:"\u7d041\u9031\u9593",other:"\u7d04{{count}}\u9031\u9593"},xWeeks:{one:"1\u9031\u9593",other:"{{count}}\u9031\u9593"},aboutXMonths:{one:"\u7d041\u304b\u6708",other:"\u7d04{{count}}\u304b\u6708"},xMonths:{one:"1\u304b\u6708",other:"{{count}}\u304b\u6708"},aboutXYears:{one:"\u7d041\u5e74",other:"\u7d04{{count}}\u5e74"},xYears:{one:"1\u5e74",other:"{{count}}\u5e74"},overXYears:{one:"1\u5e74\u4ee5\u4e0a",other:"{{count}}\u5e74\u4ee5\u4e0a"},almostXYears:{one:"1\u5e74\u8fd1\u304f",other:"{{count}}\u5e74\u8fd1\u304f"}};function Gae(e){return function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const r=t.width?String(t.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}const Zae={date:Gae({formats:{full:"y\u5e74M\u6708d\u65e5EEEE",long:"y\u5e74M\u6708d\u65e5",medium:"y/MM/dd",short:"y/MM/dd"},defaultWidth:"full"}),time:Gae({formats:{full:"H\u6642mm\u5206ss\u79d2 zzzz",long:"H:mm:ss z",medium:"H:mm:ss",short:"H:mm"},defaultWidth:"full"}),dateTime:Gae({formats:{full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},defaultWidth:"full"})},Qae={lastWeek:"\u5148\u9031\u306eeeee\u306ep",yesterday:"\u6628\u65e5\u306ep",today:"\u4eca\u65e5\u306ep",tomorrow:"\u660e\u65e5\u306ep",nextWeek:"\u7fcc\u9031\u306eeeee\u306ep",other:"P"};function Kae(e){return(t,r)=>{let n;if("formatting"===(r?.context?String(r.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,o=r?.width?String(r.width):t;n=e.formattingValues[o]||e.formattingValues[t]}else{const t=e.defaultWidth,o=r?.width?String(r.width):e.defaultWidth;n=e.values[o]||e.values[t]}return n[e.argumentCallback?e.argumentCallback(t):t]}}function Xae(e){return function(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=r.width,o=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],a=t.match(o);if(!a)return null;const i=a[0],s=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(s)?function(e,t){for(let r=0;r<e.length;r++)if(t(e[r]))return r;return}(s,(e=>e.test(i))):function(e,t){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r]))return r;return}(s,(e=>e.test(i)));let c;c=e.valueCallback?e.valueCallback(l):l,c=r.valueCallback?r.valueCallback(c):c;return{value:c,rest:t.slice(i.length)}}}var Jae;const $ae={code:"ja",formatDistance:(e,t,r)=>{let n;r=r||{};const o=Vae[e];return n="string"===typeof o?o:1===t?r.addSuffix&&o.oneWithSuffix?o.oneWithSuffix:o.one:r.addSuffix&&o.otherWithSuffix?o.otherWithSuffix.replace("{{count}}",String(t)):o.other.replace("{{count}}",String(t)),r.addSuffix?r.comparison&&r.comparison>0?n+"\u5f8c":n+"\u524d":n},formatLong:Zae,formatRelative:(e,t,r,n)=>Qae[e],localize:{ordinalNumber:(e,t)=>{const r=Number(e);switch(String(t?.unit)){case"year":return`${r}\u5e74`;case"quarter":return`\u7b2c${r}\u56db\u534a\u671f`;case"month":return`${r}\u6708`;case"week":return`\u7b2c${r}\u9031`;case"date":return`${r}\u65e5`;case"hour":return`${r}\u6642`;case"minute":return`${r}\u5206`;case"second":return`${r}\u79d2`;default:return`${r}`}},era:Kae({values:{narrow:["BC","AC"],abbreviated:["\u7d00\u5143\u524d","\u897f\u66a6"],wide:["\u7d00\u5143\u524d","\u897f\u66a6"]},defaultWidth:"wide"}),quarter:Kae({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["\u7b2c1\u56db\u534a\u671f","\u7b2c2\u56db\u534a\u671f","\u7b2c3\u56db\u534a\u671f","\u7b2c4\u56db\u534a\u671f"]},defaultWidth:"wide",argumentCallback:e=>Number(e)-1}),month:Kae({values:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],abbreviated:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],wide:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"]},defaultWidth:"wide"}),day:Kae({values:{narrow:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],short:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],abbreviated:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],wide:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"]},defaultWidth:"wide"}),dayPeriod:Kae({values:{narrow:{am:"\u5348\u524d",pm:"\u5348\u5f8c",midnight:"\u6df1\u591c",noon:"\u6b63\u5348",morning:"\u671d",afternoon:"\u5348\u5f8c",evening:"\u591c",night:"\u6df1\u591c"},abbreviated:{am:"\u5348\u524d",pm:"\u5348\u5f8c",midnight:"\u6df1\u591c",noon:"\u6b63\u5348",morning:"\u671d",afternoon:"\u5348\u5f8c",evening:"\u591c",night:"\u6df1\u591c"},wide:{am:"\u5348\u524d",pm:"\u5348\u5f8c",midnight:"\u6df1\u591c",noon:"\u6b63\u5348",morning:"\u671d",afternoon:"\u5348\u5f8c",evening:"\u591c",night:"\u6df1\u591c"}},defaultWidth:"wide",formattingValues:{narrow:{am:"\u5348\u524d",pm:"\u5348\u5f8c",midnight:"\u6df1\u591c",noon:"\u6b63\u5348",morning:"\u671d",afternoon:"\u5348\u5f8c",evening:"\u591c",night:"\u6df1\u591c"},abbreviated:{am:"\u5348\u524d",pm:"\u5348\u5f8c",midnight:"\u6df1\u591c",noon:"\u6b63\u5348",morning:"\u671d",afternoon:"\u5348\u5f8c",evening:"\u591c",night:"\u6df1\u591c"},wide:{am:"\u5348\u524d",pm:"\u5348\u5f8c",midnight:"\u6df1\u591c",noon:"\u6b63\u5348",morning:"\u671d",afternoon:"\u5348\u5f8c",evening:"\u591c",night:"\u6df1\u591c"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:(Jae={matchPattern:/^\u7b2c?\d+(\u5e74|\u56db\u534a\u671f|\u6708|\u9031|\u65e5|\u6642|\u5206|\u79d2)?/i,parsePattern:/\d+/i,valueCallback:function(e){return parseInt(e,10)}},function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=e.match(Jae.matchPattern);if(!r)return null;const n=r[0],o=e.match(Jae.parsePattern);if(!o)return null;let a=Jae.valueCallback?Jae.valueCallback(o[0]):o[0];return a=t.valueCallback?t.valueCallback(a):a,{value:a,rest:e.slice(n.length)}}),era:Xae({matchPatterns:{narrow:/^(B\.?C\.?|A\.?D\.?)/i,abbreviated:/^(\u7d00\u5143[\u524d\u5f8c]|\u897f\u66a6)/i,wide:/^(\u7d00\u5143[\u524d\u5f8c]|\u897f\u66a6)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^B/i,/^A/i],any:[/^(\u7d00\u5143\u524d)/i,/^(\u897f\u66a6|\u7d00\u5143\u5f8c)/i]},defaultParseWidth:"any"}),quarter:Xae({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^Q[1234]/i,wide:/^\u7b2c[1234\u4e00\u4e8c\u4e09\u56db\uff11\uff12\uff13\uff14]\u56db\u534a\u671f/i},defaultMatchWidth:"wide",parsePatterns:{any:[/(1|\u4e00|\uff11)/i,/(2|\u4e8c|\uff12)/i,/(3|\u4e09|\uff13)/i,/(4|\u56db|\uff14)/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:Xae({matchPatterns:{narrow:/^([123456789]|1[012])/,abbreviated:/^([123456789]|1[012])\u6708/i,wide:/^([123456789]|1[012])\u6708/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^1\D/,/^2/,/^3/,/^4/,/^5/,/^6/,/^7/,/^8/,/^9/,/^10/,/^11/,/^12/]},defaultParseWidth:"any"}),day:Xae({matchPatterns:{narrow:/^[\u65e5\u6708\u706b\u6c34\u6728\u91d1\u571f]/,short:/^[\u65e5\u6708\u706b\u6c34\u6728\u91d1\u571f]/,abbreviated:/^[\u65e5\u6708\u706b\u6c34\u6728\u91d1\u571f]/,wide:/^[\u65e5\u6708\u706b\u6c34\u6728\u91d1\u571f]\u66dc\u65e5/},defaultMatchWidth:"wide",parsePatterns:{any:[/^\u65e5/,/^\u6708/,/^\u706b/,/^\u6c34/,/^\u6728/,/^\u91d1/,/^\u571f/]},defaultParseWidth:"any"}),dayPeriod:Xae({matchPatterns:{any:/^(AM|PM|\u5348\u524d|\u5348\u5f8c|\u6b63\u5348|\u6df1\u591c|\u771f\u591c\u4e2d|\u591c|\u671d)/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^(A|\u5348\u524d)/i,pm:/^(P|\u5348\u5f8c)/i,midnight:/^\u6df1\u591c|\u771f\u591c\u4e2d/i,noon:/^\u6b63\u5348/i,morning:/^\u671d/i,afternoon:/^\u5348\u5f8c/i,evening:/^\u591c/i,night:/^\u6df1\u591c/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};(0,Wae.registerLocale)("ja",$ae);const qae=()=>{const{gManageGroup:e,gManageEmployee:r,gManageDevice:n,gMediaType:o}=(0,t.useContext)(VI),[a,i]=(0,t.useState)([]),[s,l]=(0,t.useState)([]),[c,u]=(0,t.useState)(!1),[d,f]=(0,t.useState)(+new Date),[p,h]=(0,t.useState)(+new Date+18e5),[m,g]=(0,t.useState)("\u5e38\u6642\u5229\u7528"),[v,y]=(0,t.useState)(2),[b,w]=(0,t.useState)(!0),[x]=xv(),[S,A]=(0,t.useState)(!1),k=hg();(0,t.useEffect)((()=>{const e=(x.get("dids")||"").split(",").filter(Boolean),t=n.companyDevices.filter((t=>e.includes(t.deviceUUID)));i(t)}),[n.companyDevices]);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(ym,{sx:{mb:"15px",bgcolor:"white",borderRadius:"5px"},children:[(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",p:"10px 5px"},children:(0,qh.jsxs)(cE.A,{size:"small",onClick:()=>window.history.back(),children:[(0,qh.jsx)(ZL,{}),(0,qh.jsx)(Bh.A,{variant:"h2",sx:{ml:"5px",color:"black"},children:"\u9078\u629e\u6e08\u30c7\u30d0\u30a4\u30b9"})]})}),(0,qh.jsx)(dae,{isMobile:o.isMobile,isAdd:!1,data:a,isBind:!1,isBack:!1,isPagination:!1,isHideToolBar:!0,selectableRows:"none",isShowFooter:!1,columns:PU.deviceShareFromDevice()})]}),(0,qh.jsxs)(hD,{show:c,children:[(0,qh.jsxs)(ym,{sx:{mb:"15px",bgcolor:"white",borderRadius:"5px"},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",p:"10px 15px"},children:[(0,qh.jsx)(Bh.A,{variant:"h2",children:"\u9078\u629e\u6e08\u30e6\u30fc\u30b6\u30fc"}),(0,qh.jsx)(QI.A,{variant:"outlined",size:"small",onClick:()=>{l([]),u(!1)},children:"\u518d\u9078\u629e"})]}),(0,qh.jsx)(dae,{isMobile:o.isMobile,isAdd:!1,data:s,isBind:!1,isBack:!1,isPagination:!1,isHideToolBar:!0,selectableRows:"none",columns:PU.deviceShareChoosedEmployee()})]}),(0,qh.jsx)(gL.Ay,{title:(0,qh.jsx)(Bh.A,{variant:"h2",children:"\u9078\u629e\u6e08\u30e6\u30fc\u30b6\u30fc"}),columns:PU.deviceShareCanChooseEmployee(),data:r.employees.Items,options:{setTableProps:()=>({size:"small",padding:"none",sx:{"& .MuiTableRow-root":{borderTop:"none",borderBottom:o.isMobile?"solid 1px rgba(0, 0, 0, 0.10)":"none"},"& .MuiTableCell-root":{borderBottom:"none"},"& .MuiTableCell-paddingCheckbox":{padding:"0",paddingLeft:"8px"},"& .tss-1vd39vz-MUIDataTableBodyCell-stackedCommon":{fontSize:"13px"}}}),search:!1,print:!1,filter:!0,toolbar:!1,download:!1,viewColumns:!1,customToolbarSelect:(e,t)=>(0,qh.jsx)("div",{style:{marginRight:"24px"},children:(0,qh.jsx)(QI.A,{disableElevation:!0,variant:"contained",size:"small",sx:{color:"white"},onClick:()=>{(e=>{const t=r.employees.Items;let n=[];e.data.map((e=>{delete e.index,n.push(...Object.values(e))}));const o=t.filter(((e,t)=>n.includes(t)));l(o)})(e),u(!0),w(!1)},children:"\u78ba\u8a8d"})}),filterType:"textField",elevation:0,textLabels:{pagination:{next:"Next Page",previous:"Previous Page",rowsPerPage:"\u8868\u793a\u6570",displayRows:"/"}}}})]}),(0,qh.jsx)(_U,{onConfirm:e=>{y(e)}}),(0,qh.jsx)(hD,{show:c&&v>1,children:(0,qh.jsxs)(JI,{sx:{overflow:"unset"},children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(Bh.A,{variant:"h2",children:"\u6709\u52b9\u6642\u9593\u3092\u8a2d\u5b9a"}),sx:{pb:"5px"}}),(0,qh.jsx)(lE,{children:(0,qh.jsx)(jU.A,{fullWidth:!0,children:(0,qh.jsxs)(zD,{row:!0,value:m,onChange:e=>{g(e.target.value)},children:[(0,qh.jsx)(xD.A,{value:"\u5e38\u6642\u5229\u7528",control:(0,qh.jsx)(LD,{}),label:"\u5e38\u6642\u5229\u7528"}),(0,qh.jsxs)(ym,{sx:{display:"flex",flexGrow:"1"},children:[(0,qh.jsx)(xD.A,{value:"\u4e00\u6642\u5229\u7528",control:(0,qh.jsx)(LD,{}),label:"\u4e00\u6642\u5229\u7528"}),(0,qh.jsx)(hD,{show:"\u4e00\u6642\u5229\u7528"===m,children:(0,qh.jsx)(Yae,{callTime:(e,t)=>{f(e),h(t)},sx:{display:"flex",flexDirection:o.isMobile?"column":"row",marginBottom:"10px",justifyContent:o.isMobile?"space-between":"start",alignItems:"center",marginLeft:"40px",flexGrow:"1"}})})]})]})})})]})}),(0,qh.jsx)(RE,{disableElevation:!0,loading:S,size:"small",sx:{m:"15px",color:"white"},variant:"contained",disabled:0===s.length||b,onClick:()=>{A(!0),(async t=>{const r=s.flatMap((e=>a.map((t=>({...t,...e,keyLevel:v,startTime:"\u4e00\u6642\u5229\u7528"===m?Math.floor(d/1e3):"",endTime:"\u4e00\u6642\u5229\u7528"===m?Math.floor(p/1e3):""})))));e.shareDeviceKeysToEmployees(r,t)})((()=>{A(!1),k(-1)}))},children:"\u5408\u9375\u767a\u884c"})]})},eie=()=>{const{gManageGroup:e,gManageEmployee:r,setCustomModalOpen:n,setModalContent:o,gIot:a,gManageDevice:i,gMediaType:s}=(0,t.useContext)(VI),[l,c]=(0,t.useState)(""),[u,d]=(0,t.useState)([]),[f,p]=(0,t.useState)([]),[h,m]=(0,t.useState)([]),[g]=xv(),v=g.get("gid")||"",y=()=>{e.getEmployeeGroup(v,(e=>{const t=(e.data||[]).map((e=>{var t;const n=r.employeeGroups.find((t=>t.gid===e.mid));let o="\u5e38\u6642\u5229\u7528";return e.startTime&&e.endTime&&(o=Dh.getStartTimeEndTime(e)),{memberGName:null!==(t=null===n||void 0===n?void 0:n.name)&&void 0!==t?t:e.mid,keyLevel:e.keyLevel,msgdata:o,mid:e.mid}}));m(t)}))};(0,t.useEffect)((()=>{y()}),[]),(0,t.useEffect)((()=>{const t=e.deviceGroups.Items.find((e=>e.gid===v));t&&p(i.filteredSsmDevices.filter((e=>!t.uuids.some((t=>t===e.deviceUUID)))))}),[i.filteredSsmDevices]),(0,t.useEffect)((()=>{const t=e.deviceGroups.Items.find((e=>e.gid===v));if(!t)return;c((null===t||void 0===t?void 0:t.name)||"");const r=i.filteredSsmDevices.filter((e=>t.uuids.includes(e.deviceUUID)));d(r)}),[e.deviceGroups,i.filteredSsmDevices]);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(JI,{sx:{padding:"10px",pb:"0"},children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(cE.A,{size:"small",onClick:()=>window.history.back(),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(rT,{style:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3"},initialValue:l,onSave:(t,r)=>{t&&r&&e.postDeviceGroupInfo({gid:v,name:t},(e=>{r(e.success)}))}})]})}),(0,qh.jsx)(dae,{isMobile:s.isMobile,isShowFooter:!1,callAdd:()=>{n(!0),o((0,qh.jsx)(vL,{title:"\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e",data:f,selectableRows:"multiple",enableFilter:!0,useCustomSelection:!0,setOpenModal:n,handleCheck:t=>{n(!1);const r=e.deviceGroups.Items.find((e=>e.gid===v));e.addDeviceInGroup(v,r.uuids,t,(t=>{e.getDeviceGroups()}))},isWifi:!1}))},isAdd:!0,data:u,isBind:!1,isBack:!1,text:`\u30c7\u30d0\u30a4\u30b9(${u.length})`,columns:PU.ssmDevices({gIot:a}),callDelData:t=>{const r=e.deviceGroups.Items.find((e=>e.gid===v));e.removeDeviceInGroup(v,r.uuids,t,(t=>{e.getDeviceGroups()}))}}),(0,qh.jsx)(dae,{isMobile:s.isMobile,isShowFooter:!1,isAdd:!1,isDel:!1,isCsv:!1,data:h,isBind:!1,isBack:!1,text:"\u30b0\u30eb\u30fc\u30d7\u9375",selectableRows:"none",columns:PU.groupDeviceKey({click:t=>{let r=h.find((e=>e.mid===t));if(r){const t={...r,did:g.get("gid")};delete t.memberGName,delete t.msgdata,e.removeEmployeeGroup(t,(e=>{y()}))}}})})]})};const tie=function(e){let{items:r,labelProp:n,legend:o="Choose an option",keyProp:a,orientation:i="vertical",radioCallValue:s,mr:l="16px"}=e;const[c,u]=t.useState("");return(0,qh.jsxs)(jU.A,{component:"fieldset",sx:{marginBottom:"12px",marginLeft:"15px",marginTop:"28px"},children:[(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"22px",fontWeight:600,color:"black",lineHeight:"30px",letterSpacing:"0.06em",textAlign:"left"},children:o}),(0,qh.jsx)(zD,{"aria-label":"options",name:"options",sx:{marginTop:"8px"},value:c,onChange:e=>{u(e.target.value),s&&s(e.target.value)},row:"horizontal"===i,children:r.map(((e,r)=>(0,qh.jsxs)(t.Fragment,{children:[" ",(0,qh.jsx)(xD.A,{value:e[a],control:(0,qh.jsx)(LD,{sx:{color:"#BABABA","&.Mui-checked":{color:"#28AEB1"},marginRight:l}}),label:(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",fontWeight:500,lineHeight:"27px",letterSpacing:"0.06em",textAlign:"left"},children:e[n]})}),"vertical"===i&&(0,qh.jsx)(mM,{})," "]},e[a])))})]})},rie=()=>{const{gManageGroup:e,gManageEmployee:r,gMediaType:n}=(0,t.useContext)(VI),[o,a]=(0,t.useState)(!1),i="name",[s,l]=(0,t.useState)({ready:!1,loading:!1}),[c,u]=(0,t.useState)([]),[d,f]=(0,t.useState)([]),[p]=xv(),[h,m]=(0,t.useState)(""),[g,v]=(0,t.useState)(""),[y,b]=(0,t.useState)(),[w,x]=(0,t.useState)(!1),[S,A]=(0,t.useState)({}),k=hg(),C=(0,t.useMemo)((()=>{const e=Boolean(c)&&Boolean(h)&&Boolean(g),t="2"===g,r=t&&"1"===y;let n=e;return t&&(n=n&&Boolean(y)),{isOpenGuestTime:t,isShowTime:r,btnEnabled:n}}),[h,g,y]);(0,t.useEffect)((()=>{a(C.isOpenGuestTime),x(C.isShowTime),l({ready:C.btnEnabled,loading:!1})}),[C]),(0,t.useEffect)((()=>{const t=(p.get("gids")||"").split(",").filter(Boolean),r=e.deviceGroups.Items.filter((e=>t.includes(e.gid)));u(r)}),[e.deviceGroups]),(0,t.useEffect)((()=>{f(r.employeeGroups)}),[r.employeeGroups]);return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(ym,{sx:{mb:"15px",bgcolor:"white",borderRadius:"5px"},children:[(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",p:"10px 5px"},children:(0,qh.jsxs)(cE.A,{size:"small",onClick:()=>window.history.back(),children:[(0,qh.jsx)(ZL,{}),(0,qh.jsx)(Bh.A,{variant:"h2",sx:{ml:"5px",color:"black"},children:"\u9078\u629e\u6e08\u30c7\u30d0\u30a4\u30b9"})]})}),(0,qh.jsx)(dae,{isMobile:n.isMobile,isAdd:!1,data:c,isBind:!1,isBack:!1,isPagination:!1,isHideToolBar:!0,selectableRows:"none",isShowFooter:!1,columns:[{name:"name",label:"\u30c9\u30a2\u30b0\u30eb\u30fc\u30d7\u540d"}]})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",p:2},children:[(0,qh.jsx)(tie,{items:d||[],keyProp:"gid",labelProp:i,legend:"\u30e6\u30fc\u30b6\u30fc\u30b0\u30eb\u30fc\u30d7\u3092\u9078\u629e",radioCallValue:e=>m(e)}),(0,qh.jsx)(tie,{items:[{name:"\u30aa\u30fc\u30ca\u30fc",id:"0"},{name:"\u30de\u30cd\u30fc\u30b8\u30e3\u30fc",id:"1"},{name:"\u30b2\u30b9\u30c8",id:"2"}]||[],keyProp:"id",labelProp:i,mr:"5px",legend:"\u30b0\u30eb\u30fc\u30d7\u9375\u306e\u6a29\u9650\u3092\u9078\u629e",orientation:"horizontal",radioCallValue:e=>v(e)}),o&&(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:n.isMobile?"column":"row",marginTop:"8px",alignItems:n.isMobile?"flex-start":"flex-end"},children:[(0,qh.jsx)(tie,{items:[{name:"\u5e38\u6642\u5229\u7528",id:"0"},{name:"\u4e00\u6642\u5229\u7528",id:"1"}],keyProp:"id",labelProp:i,mr:"8px",legend:"\u30b2\u30b9\u30c8\u306e\u6709\u52b9\u6642\u9593\u3092\u8a2d\u5b9a",orientation:"horizontal",radioCallValue:e=>b(e)}),w&&(0,qh.jsx)(Yae,{callTime:(e,t)=>{A({startTime:Math.floor(e/1e3),endTime:Math.floor(t/1e3)})},sx:{display:"flex",marginBottom:"10px",flexDirection:n.isMobile?"column":"row",justifyContent:n.isMobile?"space-between":"start",alignItems:"center",marginLeft:"40px",flexGrow:"1"}})]}),(0,qh.jsx)(RE,{size:"small",variant:"contained",sx:{width:"116px",marginTop:"10px",marginLeft:"12px",padding:"4px 10px",borderRadius:"6px",color:"white"},loading:s.loading,disabled:!s.ready,onClick:()=>{const t=[...new Set(c.flatMap((e=>e.uuids)))];let r=d.find((e=>e.gid===h)),n={};n.keyLevel=g,n.members=r.uuids,n.devices=t,n.mid=r.gid,n.dids=c.flatMap((e=>e.gid)),"2"===g&&(w?(n.startTime=S.startTime,n.endTime=S.endTime):(n.startTime="",n.endTime="")),l({ready:C.btnEnabled,loading:!0}),e.shareDeviceGroupKeysToEmployeeGroup(n,(()=>{l({ready:C.btnEnabled,loading:!1}),k(-1)}))},disableElevation:!0,children:"\u30b0\u30eb\u30fc\u30d7\u9375\u767a\u884c"})]})]})})},nie=()=>{const{gStripe:e,gManageDevice:r,setCustomModalOpen:n,setModalContent:o,gManageGroup:a,gManageEmployee:i,gIot:s,gMediaType:l}=(0,t.useContext)(VI),[c,u]=(0,t.useState)(""),[d,f]=(0,t.useState)([]),[p,h]=(0,t.useState)({ready:!1,loading:!1}),[m,g]=(0,t.useState)([]),v=hg(),y=(0,t.useRef)(null);(0,t.useEffect)((()=>{e.customerInfo.companyID&&(i.employeeGroups||i.getEmployeeGroups(),a.getDeviceGroups())}),[e.customerInfo.companyID]),(0,t.useEffect)((()=>{g(b)}),[a.deviceGroups,i.employeeGroups]);const b=(0,t.useMemo)((()=>{const e=new Map((i.employeeGroups||[]).map((e=>[e.gid,e])));return a.deviceGroups.Items.map((t=>{const r=t.employeeGroups.map((t=>{const r=e.get(t);return r?{...r,memberGName:r.name}:{memberGName:t}}));return{...t,members:r}}))}),[a.deviceGroups,i.employeeGroups]),w=(0,t.useMemo)((()=>r.filteredSsmDevices.filter((e=>-1===d.findIndex((t=>t.subUUID===e.subUUID))))),[d,r.filteredSsmDevices]);(0,t.useEffect)((()=>{c&&d.length>0?h({ready:!0,loading:!1}):h({ready:!1,loading:!1})}),[c,d]);const x=(0,t.useMemo)((()=>(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"space-between",mb:"10px"},children:(0,qh.jsx)(Bh.A,{variant:"h2",children:"\u65b0\u898f\u30b0\u30eb\u30fc\u30d7\u3092\u8ffd\u52a0"})})}),(0,qh.jsxs)(lE,{sx:{paddingBottom:"unset"},children:[(0,qh.jsx)(GD.A,{required:!0,size:"small",id:"outlined-basic",label:"\u30b0\u30eb\u30fc\u30d7\u540d",variant:"filled",value:c,sx:{width:"341px",borderRadius:"6px"},onChange:e=>{u(e.target.value)}}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",margin:"10px 0px"},children:[(0,qh.jsx)(Bh.A,{variant:"body1",component:"p",style:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"18px",fontWeight:400,lineHeight:"27px",letterSpacing:"0.06em",textAlign:"left"},children:`\u30c7\u30d0\u30a4\u30b9(${d.length})`}),(0,qh.jsx)(cE.A,{disabled:0===w.length,sx:{marginTop:"4px"},onClick:()=>{n(!0),o((0,qh.jsx)(vL,{title:"\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e",data:w,selectableRows:"multiple",enableFilter:!0,useCustomSelection:!0,setOpenModal:n,handleCheck:e=>{n(!1),f((t=>[...t,...e]))},isWifi:!1}))},children:(0,qh.jsx)(bD,{style:{color:0===w.length?"rgba(0, 0, 0, 0.26)":"#28AEB1"}})})]}),(0,qh.jsx)(Mae,{items:d,btnDel:e=>{f((t=>t.filter((t=>t.deviceUUID!==e.deviceUUID))))}}),(0,qh.jsx)(RE,{loading:p.loading,size:"small",variant:"outlined",disableElevation:!0,sx:{width:"64px",borderRadius:"6px",color:"#28aeb1"},disabled:!p.ready,onClick:()=>{let e=d.map((e=>e.deviceUUID));h({ready:p.ready,loading:!0}),a.addDeviceGroup(c,e,(()=>{h({ready:!1,loading:!1}),u(""),f([]),y.current.handleClose()}))},children:"\u767b\u9332"})]})]})),[c,d,w,p.loading,p.ready]);return(0,qh.jsx)(XP,{ref:y,isMobile:l.isMobile,popupComponent:x,children:(0,qh.jsx)(dae,{isMobile:l.isMobile,isAdd:!1,data:m,isBind:!1,isBack:!1,rowHeight:"large",isKey:!0,callRowClick:e=>{v({pathname:"/biz/devices/group-item",search:Bg({gid:m[e].gid}).toString()})},callAdd:()=>{y.current.handleOpen()},columns:PU.deviceGroup({clickCall:(e,t)=>{e.forEach((e=>{const r=w.find((t=>t.deviceUUID===e));r&&s.sendCommandToWM2({device_id:e,cmd:t,sescretKey:r.secretKey})}))}}),callDelData:e=>{let t=e.map((e=>({gid:e.gid})));a.removeDeviceGroups(t)},btnCallKey:e=>{let t=e.map((e=>e.gid)).join(",");t&&v({pathname:"/biz/devices/group-share",search:Bg({gids:t}).toString()})},callSearch:e=>{if(!e)return void g(b);const t=b.filter((t=>t.name.includes(e)||t.members.some((t=>t.memberGName.includes(e)))));g(t)}})})},oie=()=>{const{gMediaType:e,gManageDevice:r}=(0,t.useContext)(VI),{navigateToDeviceSetting:n}=yL(),o=hg(),{t:a}=Fv(),[i]=xv(),s=i.get("deviceUUID")||"",l=i.get("deviceName")||"";(0,t.useEffect)((()=>{window.scrollTo(0,0)}),[]);const c=(0,t.useMemo)((()=>r.companyDevices.find((e=>e.deviceUUID===s))||{}),[r.companyDevices,s]);return(0,qh.jsxs)(ym,{sx:{bgcolor:"#FBFBFB",overscrollBehavior:"none"},children:[(0,qh.jsxs)(ym,{sx:{position:e.isMobile?"sticky":"static",top:0,zIndex:1100,bgcolor:"#FBFBFB",display:"flex",alignItems:"center",justifyContent:"space-between",px:e.isMobile?0:4,pt:e.isMobile?0:2},children:[(0,qh.jsxs)(cE.A,{onClick:()=>o(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-1}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"black"},children:l})]}),e.isMobile?(0,qh.jsx)(cE.A,{onClick:()=>n(c),disableRipple:!0,children:(0,qh.jsx)(LN,{sx:{color:"black"}})}):null]}),(0,qh.jsx)(EO,{container:!0,spacing:2,sx:{py:2,px:e.isMobile?0:4,"& > *":{"& > .MuiBox-root":{backgroundColor:"white",height:"100%",overflow:"auto"},"& .MuiTypography-h4":{p:1,fontWeight:"bold",pb:0}}},children:e.isMobile?(0,qh.jsx)(EO,{size:12,children:(0,qh.jsx)(EU,{})}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(EO,{size:4,sx:{height:"560px",overflowY:"auto"},children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:a("deviceMember.user")}),(0,qh.jsx)(iB,{deviceUUID:s,defaultManageMode:!0})]})}),(0,qh.jsx)(EO,{size:4,sx:{height:"560px"},children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:a("pages.sesameAccessControlDevice.index.history","\u5c65\u6b74")}),(0,qh.jsx)(EU,{deviceUUID:s,showToolBar:!0})]})}),(0,qh.jsx)(EO,{size:4,sx:{height:"560px"},children:(0,qh.jsx)(Dae,{showBack:!1})}),(0,qh.jsx)(EO,{size:12,sx:{height:"560px"},children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:a("pages.sesameAccessControlDevice.index.Battery")}),(0,qh.jsx)(wne,{deviceUUID:s})]})})]})})]})},aie=()=>{const{t:e}=Fv(),r=hg(),{gManageDevice:n}=(0,t.useContext)(VI),[o]=xv(),a=o.get("deviceUUID"),i="app"===o.get("fromType"),[s,l]=(0,t.useState)([]);return(0,t.useEffect)((()=>{a&&n.getFactoryInfo(a,(e=>{!1!==(null===e||void 0===e?void 0:e.success)&&l((e=>{if(!e)return[];const t=[],r=e=>{Object.keys(e).forEach((r=>{return t.push({key:r,value:(n=e[r],null===n||void 0===n?"":"object"===typeof n?JSON.stringify(n):String(n))});var n}))};return Array.isArray(e)?e.forEach((e=>e&&"object"===typeof e&&r(e))):"object"===typeof e&&r(e),t})(null===e||void 0===e?void 0:e.data))}))}),[a]),(0,qh.jsxs)(ym,{sx:{width:"100%",minHeight:"100vh",bgcolor:"background.paper"},children:[!i&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",pt:1,pl:2},children:(0,qh.jsxs)(cE.A,{onClick:()=>r(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-2}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"title.main"},children:o.get("deviceName")})]})}),0===s.length?(0,qh.jsx)(ym,{sx:{p:3},children:(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"info.light"},children:e("envSnapshot.noData","No Data")})}):(0,qh.jsx)($T.A,{children:s.map(((r,n)=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsxs)(lO,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",py:1,px:2},children:[(0,qh.jsx)(Bh.A,{variant:"body1",sx:{fontWeight:400,color:"title.main",mr:2},children:e(`factoryInfo.${r.key}`,r.key)}),(0,qh.jsx)(Bh.A,{variant:"body1",sx:{color:"info.light",textAlign:"right",wordBreak:"break-all"},children:r.value})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]},`${r.key}-${n}`)))})]})},iie=()=>{const[e,r]=(0,t.useState)(""),[n,o]=(0,t.useState)([]),[a,i]=(0,t.useState)([]),[s,l]=(0,t.useState)([]),{setCustomModalOpen:c,setModalContent:u,gManageEmployee:d,gManageGroup:f,gStripe:p,gMediaType:h}=(0,t.useContext)(VI),[m]=xv(),g=m.get("gid")||"";(0,t.useEffect)((()=>{var e;const t=null===(e=d.employeeGroups)||void 0===e?void 0:e.find((e=>e.gid===g));if(!t)return;r((null===t||void 0===t?void 0:t.name)||"");const n=t.uuids.map((e=>d.employees.Items.find((t=>t.subUUID===e))));o(n),i(d.employees.Items.filter((e=>!t.uuids.includes(e.subUUID))))}),[d.employeeGroups,d.employees]);const v=()=>{d.getDeviceGroup(g,(e=>{const t=(e.data||[]).map((e=>{var t;const r=f.deviceGroups.Items.find((t=>t.gid===e.did));let n="\u5e38\u6642\u5229\u7528";return e.startTime&&e.endTime&&(n=Dh.getStartTimeEndTime(e)),{memberGName:null!==(t=null===r||void 0===r?void 0:r.name)&&void 0!==t?t:e.mid,keyLevel:e.keyLevel,msgdata:n,mid:e.mid,did:e.did}}));l(t)}))};return(0,t.useEffect)((()=>{v()}),[p.customerInfo.companyID]),(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(JI,{sx:{padding:"10px",pb:"0"},children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(cE.A,{size:"small",onClick:()=>window.history.back(),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(rT,{style:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3"},initialValue:e,onSave:(e,t)=>{e&&t&&d.postEmployeeGroupInfo({gid:g,name:e},(e=>{t(e.success)}))}})]})}),(0,qh.jsx)(dae,{isShowFooter:!1,isMobile:h.isMobile,callAdd:()=>{c(!0),u((0,qh.jsx)(vL,{title:"\u30e6\u30fc\u30b6\u30fc\u3092\u9078\u629e",customColumns:PU.groupMember,data:a,selectableRows:"multiple",enableFilter:!0,useCustomSelection:!0,setOpenModal:c,handleCheck:e=>{var t;c(!1);const r=null===(t=d.employeeGroups)||void 0===t?void 0:t.find((e=>e.gid===g));d.addEmployeeInGroup(g,r.uuids,e,(e=>{e.success&&d.getEmployeeGroups()}))}}))},isAdd:!0,data:n,isBind:!1,isBack:!1,text:`\u30e6\u30fc\u30b6\u30fc(${n.length})`,columns:PU.groupMember,callDelData:e=>{var t;const r=null===(t=d.employeeGroups)||void 0===t?void 0:t.find((e=>e.gid===g));d.removeEmployeeInGroup(g,r.uuids,e,(e=>{e.success&&d.getEmployeeGroups()}))}}),(0,qh.jsx)(dae,{isShowFooter:!1,isMobile:h.isMobile,isAdd:!1,isDel:!1,isCsv:!1,data:s,isBind:!1,isBack:!1,text:"\u30b0\u30eb\u30fc\u30d7\u9375",selectableRows:"none",columns:PU.groupMemberKey({click:e=>{let t=s.find((t=>t.did===e));if(t){const e={mid:t.mid,did:t.did,keyLevel:t.keyLevel};d.removeDeviceGroup(e,(e=>{e.success&&v()}))}},members:s})})]})},sie=()=>{const{gStripe:e,gManageEmployee:r,setModalContent:n,setCustomModalOpen:o,gManageGroup:a,gMediaType:i}=(0,t.useContext)(VI),[s,l]=(0,t.useState)([]),[c,u]=(0,t.useState)(""),[d,f]=(0,t.useState)([]),[p,h]=(0,t.useState)({ready:!1,loading:!1}),m=(0,t.useRef)(null),g=hg();(0,t.useEffect)((()=>{c&&d.length>0?h({ready:!0,loading:!1}):h({ready:!1,loading:!1})}),[c,d]),(0,t.useEffect)((()=>{e.customerInfo.companyID&&(r.getEmployeeGroups(),a.getDeviceGroups())}),[e.customerInfo.companyID]);const v=(0,t.useMemo)((()=>r.employees.Items.filter((e=>-1===d.findIndex((t=>t.subUUID===e.subUUID))))),[d,r.employees.Items]);(0,t.useEffect)((()=>{l(y)}),[a.deviceGroups,r.employeeGroups]);const y=(0,t.useMemo)((()=>{var e;const t=new Map((a.deviceGroups.Items||[]).map((e=>[e.gid,e])));return(null===(e=r.employeeGroups)||void 0===e?void 0:e.map((e=>{const r=(e.deviceGroups||[]).map((e=>{const r=t.get(e);return r?{...r,memberGName:r.name}:{memberGName:e}}));return{...e,members:r}})))||[]}),[[a.deviceGroups,r.employeeGroups]]),b=(0,t.useMemo)((()=>(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"space-between",mb:"10px"},children:(0,qh.jsx)(Bh.A,{variant:"h2",children:"\u65b0\u898f\u30b0\u30eb\u30fc\u30d7\u3092\u8ffd\u52a0"})})}),(0,qh.jsxs)(lE,{sx:{paddingBottom:"unset"},children:[(0,qh.jsx)(GD.A,{required:!0,size:"small",id:"outlined-basic",label:"\u30b0\u30eb\u30fc\u30d7\u540d",variant:"filled",value:c,sx:{width:"341px",borderRadius:"6px"},onChange:e=>{u(e.target.value)}}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",margin:"10px 0px 0px"},children:[(0,qh.jsx)(Bh.A,{variant:"body1",component:"p",style:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"18px",fontWeight:400,lineHeight:"27px",letterSpacing:"0.06em",textAlign:"left"},children:`\u30e6\u30fc\u30b6\u30fc(${d.length})`}),(0,qh.jsx)(cE.A,{disabled:0===v.length,sx:{marginTop:"4px"},onClick:()=>{o(!0),n((0,qh.jsx)(vL,{title:"\u30e6\u30fc\u30b6\u30fc\u3092\u9078\u629e",customColumns:PU.groupMember,data:v,selectableRows:"multiple",enableFilter:!0,useCustomSelection:!0,setOpenModal:o,handleCheck:e=>{o(!1),f((t=>[...t,...e]))}}))},children:(0,qh.jsx)(bD,{style:{color:0===v.length?"rgba(0, 0, 0, 0.26)":"#28AEB1"}})})]}),(0,qh.jsx)(Mae,{items:d,btnDel:e=>{f((t=>t.filter((t=>t.subUUID!==e.subUUID))))},name:"employeeName"}),(0,qh.jsx)(RE,{loading:p.loading,variant:"outlined",size:i.isMobile?"large":"small",fullWidth:i.isMobile,disableElevation:!0,disabled:!p.ready,onClick:()=>{let e=d.map((e=>e.subUUID));h({ready:!1,loading:!0}),r.addEmployeeGroup({name:c,uuids:e},(e=>{u(""),f([]),h({ready:!1,loading:!1}),m.current.handleClose()}))},children:"\u767b\u9332"})]})]})),[c,d,v,p,o,n,r]);return(0,qh.jsx)(XP,{ref:m,isMobile:i.isMobile,popupComponent:b,children:(0,qh.jsx)(dae,{isMobile:i.isMobile,isAdd:!1,data:s,path:"",isBind:!1,isBack:!1,rowHeight:"large",columns:PU.membersGroup,callRowClick:e=>{g({pathname:"/biz/employees/group-item",search:Bg({gid:s[e].gid}).toString()})},callAdd:i.isMobile?null:()=>{m.current.handleOpen()},callDelData:e=>{const t=e.map((e=>e.gid));r.removeEmployeeGroups(t)},callSearch:e=>{if(!e)return void l(y);const t=y.filter((t=>t.name.includes(e)||t.members.some((t=>t.memberGName.includes(e)))));l(t)}})})},lie=e=>{let{onDelete:r}=e;const[n,o]=(0,t.useState)(null),a=()=>{o(null)};return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(cE.A,{onClick:e=>{e.stopPropagation(),o(e.currentTarget)},onMouseDown:e=>e.stopPropagation(),onMouseUp:e=>e.stopPropagation(),children:(0,qh.jsx)(wD,{fontSize:"small",sx:{color:"error.main"}})}),(0,qh.jsx)(jO.A,{elevation:1,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},MenuListProps:{disablePadding:!0},id:"customized-menu",anchorEl:n,keepMounted:!0,open:Boolean(n),onClose:a,children:(0,qh.jsx)(RO.A,{onClick:e=>{e.stopPropagation(),r(e),a()},children:"\u524a\u9664"})})]})},cie=e=>{let{deviceKeys:r,onAddButtonClickHandler:n,onDelete:o,onRemoveUser:a}=e;const[i,s]=(0,t.useState)(!1),[l,c]=(0,t.useState)(!1),{t:u}=Fv(),d=e=>`${0===parseInt(e.keyLevel)?u("deviceMember.role.owner"):1===parseInt(e.keyLevel)?u("deviceMember.role.manager"):u("deviceMember.role.guest")}`;return(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsxs)(ym,{sx:{px:2.5},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start",pb:0},children:[(0,qh.jsx)(Bh.A,{variant:"h4",color:"title.main",sx:{fontWeight:"bold"},children:u("pages.sesameAccessControlDevice.index.UserKeyList")}),(0,qh.jsx)(cE.A,{onClick:n,children:(0,qh.jsx)(bD,{fontSize:"small",style:{color:"rgba(0, 0, 0, 0.54)"}})})]}),(0,qh.jsxs)($T.A,{sx:{bgcolor:"white",borderRadius:1,mb:2},children:[(null===r||void 0===r?void 0:r.length)<1&&(0,qh.jsx)(Bh.A,{variant:"body2",color:"info.light",children:u("pages.sesameAccessControlDevice.index.NoResult")}),r.map(((e,r)=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsx)(lO,{disablePadding:!0,sx:{"& .MuiListItemSecondaryAction-root":{right:0}},secondaryAction:(0,qh.jsx)(DU,{handleCheck:t=>{o&&o(e.deviceUUID)},employeeRole:parseInt(e.keyLevel)<parseInt(e.curLevel)?"Owner":""}),children:(0,qh.jsx)(iD.A,{primary:(0,qh.jsx)(Bh.A,{variant:"body1",sx:{color:"title.main",mb:.5,mr:5,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},children:e.deviceName}),secondary:(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(Bh.A,{component:"span",sx:{color:"title.main",fontSize:"0.8rem"},children:d(e)}),(0,qh.jsx)(Bh.A,{component:"span",sx:{color:"info.light",ml:1,fontSize:"0.8rem"},children:e.msgData})]})})}),(0,qh.jsx)(mM,{light:!0})]},r)))]}),(0,qh.jsx)(ym,{sx:{display:a?"flex":"none",justifyContent:"center"},children:(0,qh.jsx)(QI.A,{variant:"text",onClick:e=>{e.stopPropagation(),s(!0)},sx:{color:"error.main",fontSize:"1rem"},children:u("pages.sesameAccessControlDevice.index.DeleteFrienddHint")})}),(0,qh.jsx)(QO,{anchor:"bottom",open:i,onClose:()=>s(!1),PaperProps:{sx:{borderTopLeftRadius:"16px",borderTopRightRadius:"16px",maxHeight:"50vh",pb:"16px"}},children:(0,qh.jsx)(ym,{sx:{width:"100%","& .MuiListItem-root":{justifyContent:"center"}},children:(0,qh.jsxs)($T.A,{children:[(0,qh.jsxs)(lO,{onClick:()=>{c(!0),a&&a((()=>{c(!1),s(!1)}))},children:[(0,qh.jsx)(Bh.A,{color:"error.main",children:"\u524a\u9664"}),l&&(0,qh.jsx)(AE,{size:16,color:"info",sx:{ml:1}})]}),(0,qh.jsx)(lO,{onClick:()=>s(!1),children:(0,qh.jsx)(Bh.A,{children:u("deviceMember.opt.cancel")})})]})})})," "]})})},uie=e=>{let{handleCheck:r,label:n,rowChipLength:o}=e;const[a,i]=(0,t.useState)(null);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(WD.A,{style:{margin:1},label:n,onDelete:1===o?null:e=>{i(e.currentTarget)}}),(0,qh.jsx)(jO.A,{elevation:1,getcontentanchorel:null,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},MenuListProps:{disablePadding:!0},id:"customized-menu",anchorEl:a,keepMounted:!0,open:Boolean(a),onClose:()=>{i(null)},children:(0,qh.jsx)(RO.A,{onClick:e=>{e.stopPropagation(),r(),i(null)},children:(0,qh.jsx)(iD.A,{primary:"\u524a\u9664"})})})]})},die=e=>{let{data:t,employeeEmail:r,isSesameApp:n,onSave:o}=e;const{t:a}=Fv(),i={display:"flex",alignItems:"center",px:0,wordBreak:"break-all",justifyContent:"space-between",height:"40px"};var s;return n?(0,qh.jsxs)($T.A,{disablePadding:!0,sx:{"> .css-1samsxy-MuiListItem-root":{padding:"0px"}},children:[(0,qh.jsxs)(lO,{sx:{...i},children:[(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"title.main"},children:a("pages.sesameAccessControlDevice.index.Email")}),(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"info.light"},children:null!==(s=t.employeeEmail)&&void 0!==s?s:r})]}),(0,qh.jsx)(mM,{sx:{opacity:.4}})]}):(0,qh.jsxs)($T.A,{disablePadding:!0,sx:{"> .css-1samsxy-MuiListItem-root":{padding:"0px"}},children:[(0,qh.jsxs)(lO,{sx:{...i},children:[(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"title.main"},children:a("pages.sesameAccessControlDevice.index.Email")}),(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"info.light"},children:t.employeeEmail})]}),(0,qh.jsx)(mM,{sx:{opacity:.4}}),(0,qh.jsxs)(lO,{sx:{...i},children:[(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"title.main"},children:a("deviceMember.nickName")}),(0,qh.jsx)(rT,{initialValue:t.employeeName,onSave:(e,r)=>{e&&r&&o({subUUID:t.subUUID,employeeName:e},r)}})]}),(0,qh.jsx)(mM,{sx:{opacity:.4}}),(0,qh.jsxs)(lO,{sx:{...i},children:[(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"title.main"},children:a("pages.sesameAccessControlDevice.index.UUID")}),(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"info.light"},children:t.subUUID})]}),(0,qh.jsx)(mM,{sx:{opacity:.4}}),(0,qh.jsxs)(lO,{sx:{...i},children:[(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"title.main"},children:"\u30ed\u30fc\u30eb"}),(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"info.light"},children:t.tag&&t.tag.map(((e,t)=>(0,qh.jsx)(uie,{handleCheck:()=>{},label:e,rowChipLength:1},t)))})]}),(0,qh.jsx)(mM,{sx:{opacity:.4}}),(0,qh.jsxs)(lO,{sx:{...i},children:[(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"title.main"},children:"\u6240\u5c5e"}),(0,qh.jsx)(rT,{initialValue:t.department,onSave:(e,r)=>{e&&r&&o({subUUID:t.subUUID,department:e},r)}})]}),(0,qh.jsx)(mM,{sx:{opacity:.4}}),(0,qh.jsxs)(lO,{sx:{...i},children:[(0,qh.jsx)(Bh.A,{variant:"h4",sx:{color:"title.main"},children:"\u96fb\u8a71\u756a\u53f7"}),(0,qh.jsx)(rT,{initialValue:t.phone,onSave:(e,r)=>{e&&r&&o({subUUID:t.subUUID,phone:e},r)}})]})]})},fie=()=>{const{gManageEmployee:e,gStripe:r,gManageGroup:n,gManageDevice:o,gManageAuthData:a,gMediaType:i,setCustomModalOpen:s,setModalContent:l}=(0,t.useContext)(VI),[c,u]=(0,t.useState)([]),[d]=xv(),f=hg(),p=(0,t.useRef)(null),h=d.get("uid")||"",m=d.get("email")||"",[g,v]=(0,t.useState)({});(0,t.useEffect)((()=>{const t=e.findEmployeeById(h);t&&v(t)}),[e.employees]);const y=(0,t.useMemo)((()=>{if(!r.customerInfo.subUUID||o.companyDevices.length<1||c.length<1)return[];const e=h===r.customerInfo.subUUID;return c.map((t=>{if(e)return{...t};const r=o.companyDevices.find((e=>e.deviceUUID===t.deviceUUID));return r?{...t,deviceName:r.deviceName,curLevel:r.keyLevel}:{...t,deviceName:void 0,msgData:g}})).filter((e=>void 0!==e.deviceName))}),[o.companyDevices,c,r.customerInfo]),b=()=>{n.getEmployeeDeviceKeys(h,(e=>{if(e.success){let t=e.data.map((e=>{let t="\u5e38\u6642\u5229\u7528";return e.endAt&&e.startAt&&(e.startTime=e.startAt,e.endTime=e.endAt,t=Dh.getStartTimeEndTime(e)),{...e,msgData:t}}));u(t)}}))};(0,t.useEffect)((()=>{r.isFromApp&&o.getCompanyDevices(!0),b()}),[r.customerInfo.companyID]);const w=(0,t.useMemo)((()=>{const e=[],t=new Set;return a.nfcCards.forEach((r=>{t.has(r.cardID)||(t.add(r.cardID),e.push(r))})),e.filter((e=>e.subUUID===h))}),[a.nfcCards]),x=(0,t.useMemo)((()=>y.length<1?o.companyDevices.filter((e=>!Dh.isDeviceKeyGuest(e.keyLevel))):o.companyDevices.filter((e=>!Dh.isDeviceKeyGuest(e.keyLevel)&&!y.some((t=>(null===t||void 0===t?void 0:t.deviceUUID)===e.deviceUUID))))),[y,o.companyDevices]),S=e=>{l((0,qh.jsx)(_U,{showButton:!0,showOwnerOption:0===e[0].keyLevel,onConfirm:(t,r)=>{const o=e.flatMap((e=>(delete e.stateInfo,{...e,rank:0,keyLevel:t,subUUID:h})));n.shareDeviceKeysToEmployees(o,(e=>{s(!1),e.success&&b(),r&&r()}))},onCancel:()=>{s(!1)}}))};return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(JI,{children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(aE,{title:r.isFromApp?null:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(cE.A,{sx:{p:0},size:"small",onClick:()=>f(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(rT,{style:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3"},initialValue:g.employeeName,onSave:null}),h!==r.customerInfo.subUUID&&!r.customerInfo.isSesameApp&&(0,qh.jsx)(lie,{onDelete:()=>{const t=e.findEmployeeById(h);e.removeEmployees([t],(e=>{e.success&&f(-1)}))}})]})}),(0,qh.jsx)(lE,{children:(0,qh.jsx)(die,{data:g,employeeEmail:m,isSesameApp:r.customerInfo.isSesameApp,onSave:(t,r)=>{e.postEmployeeInfo(t,(e=>{r(e.success)}))}})})]})}),(0,qh.jsx)(cie,{onAddButtonClickHandler:()=>{s(!0),l((0,qh.jsx)(vL,{title:"\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e",data:x,selectableRows:"single",enableFilter:!r.isFromApp,useCustomSelection:!0,setOpenModal:s,handleCheck:S,isMobile:r.isFromApp}))},deviceKeys:y,onRemoveUser:r.customerInfo.isSesameApp?t=>{e.removeEmployees([{subUUID:h,companyID:r.customerInfo.companyID}],(e=>{if(e.success)if(t&&t(),r.isFromApp){const e=`ssm://UI/webview/notify?${new URLSearchParams({notifyName:"FriendChanged"})}`;Ue.triggerScheme(e)}else f(-1)}))}:null,onDelete:e=>{const t=y.find((t=>t.deviceUUID===e)),r={subUUID:t.subUUID,deviceUUID:t.deviceUUID};n.removeEmployeeDeviceKey(r,(e=>{e.success&&b()}))}}),!r.customerInfo.isSesameApp&&w.length>0&&(0,qh.jsx)(dae,{isMobile:i.isMobile,isShowFooter:!1,isAdd:!1,data:w,selectableRows:"none",isCsv:!1,isBind:!1,isDel:!1,text:"\u30ab\u30fc\u30c9\u4e00\u89bd",columns:PU.deviceItemCards({gManageDevice:o,ref:p})})]})};var pie=r(29277),hie=r(51496);const mie=e=>{let{btnClose:r,btnSure:n,tags:o}=e;const{gStripe:a}=(0,t.useContext)(VI),[i,s]=(0,t.useState)([]),[l,c]=(0,t.useState)(!1);return(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{sx:{paddingTop:"16px"},children:"CSV\u30d5\u30a1\u30a4\u30eb\u5185\u306e\u30e6\u30fc\u30b6\u30fc\u306b\u306f\u5168\u3066\u540c\u3058\u30ed\u30fc\u30eb\u304c\u4ed8\u4e0e\u3055\u308c\u307e\u3059\u3002\uff08\u30aa\u30fc\u30ca\u30fc\u306e\u30ed\u30fc\u30eb\u306f\u5909\u66f4\u3055\u308c\u307e\u305b\u3093\uff09"}),(0,qh.jsx)(ym,{children:(0,qh.jsxs)(jU.A,{sx:{display:"center",alignItems:"center"},children:[(0,qh.jsx)(pie.A,{sx:{mr:"15px",color:"rgba(0, 0, 0, 0.6)","&.Mui-focused":{color:"#28aeb1"}},required:!0,children:"\u30ed\u30fc\u30eb"}),(0,qh.jsx)(UD.A,{sx:{width:"100%",display:"flex",flexDirection:"row"},children:o.filter((e=>a.customerInfo.access.includes("\u30e6\u30fc\u30b6\u30fc")?"\u30aa\u30fc\u30ca\u30fc"!==e.tag:"\u30aa\u30fc\u30ca\u30fc"!==e.tag&&"\u30de\u30cd\u30fc\u30b8\u30e3\u30fc"!==e.tag)).sort(((e,t)=>t.access.length-e.access.length)).map((e=>(0,qh.jsx)(xD.A,{control:(0,qh.jsx)(hie.A,{sx:{"&.Mui-checked":{color:"#28aeb1"}},onChange:e=>{let t=i.indexOf(e.target.value);"\u30b2\u30b9\u30c8"===e.target.value?s(-1===t?[e.target.value]:[]):s(-1===t?[...i,e.target.value].filter((e=>"\u30b2\u30b9\u30c8"!==e)):i.filter((t=>t!==e.target.value)))},checked:i.includes(e.tag)}),label:e.tag,value:e.tag},e.tag)))})]})}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",mt:"10px"},children:[(0,qh.jsx)(QI.A,{size:"small",sx:{mr:"10px",color:"#28aeb1"},onClick:()=>{r&&r(!1)},children:"\u30ad\u30e3\u30f3\u30bb\u30eb"}),(0,qh.jsx)(RE,{loading:l,disableElevation:!0,disabled:i.length<1,variant:"contained",size:"small",sx:{color:"white",backgroundColor:"#28aeb1",minWidth:"120px"},onClick:()=>{n&&c(!0),n(i,(()=>{c(!1)}))},children:"\u65b0\u898f\u30e6\u30fc\u30b6\u30fc\u3092\u8ffd\u52a0"})]})]})};function gie(e){let{tags:r,completionCallback:n}=e;const o=hg(),{gStripe:a,gManageEmployee:i,setModalTitle:s,setModalContent:l,setCustomModalOpen:c,setSnackbarValue:u,gMediaType:d}=(0,t.useContext)(VI),[f,p]=(0,t.useState)({employeeEmail:"",employeeName:"",phone:void 0,department:void 0}),[h,m]=(0,t.useState)([]),[g,v]=(0,t.useState)(!0),[y,b]=(0,t.useState)(!1),{t:w}=Fv(),x=d.isMobile,S=(e,t)=>{i.addEmployee(e,(e=>{p({employeeEmail:"",employeeName:"",phone:"",department:""}),b(!1),m([]),t&&t(),n&&n(e)}))},A=async(e,t,r)=>{const n=e.filter((e=>e.\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9&&"undefined"!==e.\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9&&e.\u30e6\u30fc\u30b6\u30fc\u540d&&"undefined"!==e.\u30e6\u30fc\u30b6\u30fc\u540d)),o=a.customerInfo.mainEmail||a.customerInfo.employeeEmail,i=n.map((e=>{let r={companyID:a.customerInfo.companyID,employeeEmail:e["\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9"],employeeName:e["\u30e6\u30fc\u30b6\u30fc\u540d"],tag:t,phone:e["\u96fb\u8a71\u756a\u53f7\uff08\u4efb\u610f\uff09"]||"",department:e["\u6240\u5c5e\uff08\u4efb\u610f\uff09"]||""};return r.employeeEmail&&o&&r.employeeEmail.toLowerCase()===o.toLowerCase()&&(r.tag=a.customerInfo.tag),r}));if(!C(i))return u({open:!0,msg:"\u6709\u52b9\u306a\u30e6\u30fc\u30b6\u30fc\u540d\u304a\u3088\u3073\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3044\u305a\u308c\u3082\u7a7a\u6b04\u3067\u306f\u767b\u9332\u3067\u304d\u307e\u305b\u3093\u3002"}),r&&r(),void c(!1);const s=[...new Set(i.map((e=>{var t;return null===(t=e.employeeEmail)||void 0===t?void 0:t.toLowerCase()})).filter(Boolean).filter(((e,t,r)=>r.indexOf(e)!==t)))];if(s.length>0)return u({open:!0,msg:`\u91cd\u8907\u3057\u305f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u5b58\u5728\u3057\u307e\u3059\u3002\u4fee\u6b63\u3057\u305f\u30c7\u30fc\u30bf\u3067\u518d\u5ea6\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n        ${s.join("\n")}`}),r&&r(),void c(!1);b(!0),S(i,(()=>{c(!1),r&&r()}))},k=e=>{s(""),c(!1),l((0,qh.jsx)(fae,{msg:e,onClick:()=>{c(!1)}})),c(!0)},C=e=>(e=>e.every((e=>Dh.isValidEmail(e.employeeEmail))))(e)&&(e=>e.every((e=>e.employeeName&&""!==e.employeeName.trim())))(e),I=(0,t.useMemo)((()=>r?""===f.employeeName||""===f.employeeEmail||h.length<1||!0!==g:""===f.employeeEmail||!0!==g),[f.employeeName,f.employeeEmail,h.length,g,r]),E={"& .MuiOutlinedInput-root":{"&.Mui-focused fieldset":{borderColor:"#28aeb1"}},"& .MuiInputLabel-outlined.Mui-focused":{color:"#28aeb1"}};return(0,qh.jsxs)(JI,{elevation:0,sx:{padding:0},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"space-between",flexDirection:"row",alignItems:"center"},children:[(0,qh.jsx)(ym,{sx:{bgcolor:a.isFromApp?"secondary.light":"white",p:2,flex:1},children:(0,qh.jsx)(Bh.A,{sx:{fontWeight:"bold",color:"info.main"},children:w("deviceMember.findFriendHint")})}),!x&&(null===r||void 0===r?void 0:r.length)>0?(0,qh.jsx)(ym,{sx:{display:"flex"},children:(0,qh.jsx)(Aoe,{setData:async e=>{c(!1),s("\u30ed\u30fc\u30eb\u3092\u9078\u629e"),l((0,qh.jsx)(mie,{btnClose:c,tags:r,btnSure:(t,r)=>{A(e,t,r)}})),c(!0)},downData:()=>{var e=We().unparse({fields:["\u30e6\u30fc\u30b6\u30fc\u540d","\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9","\u6240\u5c5e\uff08\u4efb\u610f\uff09","\u96fb\u8a71\u756a\u53f7\uff08\u4efb\u610f\uff09"]}),t=new Blob([e]),r=window.document.createElement("a");r.href=window.URL.createObjectURL(t),r.download="SASEME_Biz_add_users_template.csv",document.body.appendChild(r),r.click(),document.body.removeChild(r)}})}):(0,qh.jsx)(qh.Fragment,{})]})}),(0,qh.jsx)(lE,{sx:{p:2,py:"unset"},children:(0,qh.jsxs)(RU.Ay,{container:!0,alignItems:"top",spacing:1.5,sx:{mt:"2px",p:"0px"},children:[(null===r||void 0===r?void 0:r.length)>0&&(0,qh.jsx)(RU.Ay,{item:!0,xs:x?12:2,children:(0,qh.jsx)(GD.A,{size:"small",label:"\u30e6\u30fc\u30b6\u30fc\u540d",variant:"filled",fullWidth:!0,required:!0,value:f.employeeName,onChange:e=>{p({...f,employeeName:e.target.value})},sx:E})}),(0,qh.jsx)(RU.Ay,{item:!0,xs:x||!r?12:2,children:(0,qh.jsx)(GD.A,{size:"small",label:"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",variant:"filled",error:!g,helperText:g?"":"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306e\u5f62\u5f0f\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093",fullWidth:!0,required:!0,value:f.employeeEmail,onChange:e=>{p({...f,employeeEmail:e.target.value}),v(Dh.isValidEmail(e.target.value))},sx:E})}),(null===r||void 0===r?void 0:r.length)>0&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(RU.Ay,{item:!0,xs:x?12:2,children:(0,qh.jsx)(GD.A,{size:"small",label:"\u6240\u5c5e\uff08\u4efb\u610f\uff09",variant:"filled",fullWidth:!0,value:f.department,onChange:e=>{p({...f,department:e.target.value.trim()})},sx:E})}),(0,qh.jsx)(RU.Ay,{item:!0,xs:x?12:2,children:(0,qh.jsx)(GD.A,{size:"small",label:"\u96fb\u8a71\u756a\u53f7\uff08\u4efb\u610f\uff09",variant:"filled",fullWidth:!0,value:f.phone,onChange:e=>{p({...f,phone:e.target.value.trim()})},sx:E})})]}),(null===r||void 0===r?void 0:r.length)>0&&(0,qh.jsxs)(RU.Ay,{item:!0,xs:12,children:[(0,qh.jsxs)(jU.A,{sx:{display:"flex",alignItems:x?"flex-start":"center",flexDirection:x?"column":"row",mt:x?1:0},children:[(0,qh.jsx)(pie.A,{sx:{mr:"15px",width:"70px"},required:!0,children:"\u30ed\u30fc\u30eb"}),(0,qh.jsx)(UD.A,{sx:{width:"100%",display:"flex",flexDirection:"row"},children:r.filter((e=>a.customerInfo.access.includes("\u30e6\u30fc\u30b6\u30fc")?"\u30aa\u30fc\u30ca\u30fc"!==e.tag:"\u30aa\u30fc\u30ca\u30fc"!==e.tag&&"\u30de\u30cd\u30fc\u30b8\u30e3\u30fc"!==e.tag)).sort(((e,t)=>t.access.length-e.access.length)).map((e=>(0,qh.jsx)(xD.A,{control:(0,qh.jsx)(hie.A,{sx:{color:"#BDBDBD","& .MuiSvgIcon-root":{fontSize:25}},onChange:e=>{let t=h.indexOf(e.target.value);"\u30b2\u30b9\u30c8"===e.target.value?m(-1===t?[e.target.value]:[]):m(-1===t?[...h,e.target.value].filter((e=>"\u30b2\u30b9\u30c8"!==e)):h.filter((t=>t!==e.target.value)))},checked:h.includes(e.tag)}),label:e.tag,value:e.tag},e.tag)))})]}),a.customerInfo.access&&(0,qh.jsx)(hD,{show:a.customerInfo.access.includes("\u30ed\u30fc\u30eb\u7ba1\u7406"),children:(0,qh.jsx)(cE.A,{size:"small",onClick:()=>{o("/employees/role")},children:(0,qh.jsx)(bD,{fontSize:"inherit"})})})]}),a.customerInfo.isSesameApp&&(0,qh.jsxs)(QI.A,{varient:"text",component:"label",startIcon:(0,qh.jsx)(zP,{}),sx:{ml:1},children:["QR\u30b3\u30fc\u30c9\u3067\u8ffd\u52a0",(0,qh.jsx)("input",{type:"file",hidden:!0,onChange:e=>{const t=e.target;Ue.readUserQrcode(e.target.files[0],((e,r)=>{if(!r)return void u({open:!0,msg:"\u8aad\u307f\u53d6\u308a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002QR\u30b3\u30fc\u30c9\u304c\u6b63\u3057\u3044\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002"});const n={...r,companyID:a.customerInfo.companyID};S([n]),t.value=""}))}})]}),(0,qh.jsx)(RU.Ay,{item:!0,xs:12,sx:{mt:x?1:0},children:(0,qh.jsx)(RE,{loading:!I&&y,variant:"outlined",size:x?"large":"small",disabled:I,onClick:e=>{e.preventDefault(),b(!0),(()=>{let e={...f,phone:""===f.phone?void 0:f.phone,department:""===f.department?void 0:f.department,tag:h,companyID:a.customerInfo.companyID};if(a.customerInfo.isSesameApp)return void S([e]);const t=a.customerInfo.mainEmail||a.customerInfo.employeeEmail;if(C([e])){if(e.employeeEmail&&t&&e.employeeEmail.toLowerCase()===t.toLowerCase())return b(!1),void k("\u30aa\u30fc\u30ca\u30fc\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3068\u540c\u3058\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306f\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3002");S([e])}else b(!1),u({open:!0,msg:"\u6709\u52b9\u306a\u30e6\u30fc\u30b6\u30fc\u540d\u304a\u3088\u3073\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3044\u305a\u308c\u3082\u7a7a\u6b04\u3067\u306f\u767b\u9332\u3067\u304d\u307e\u305b\u3093\u3002"})})()},sx:{height:"40px"},fullWidth:!0,children:"\u767b\u9332"})})]})})]})}const vie=(0,dD.A)((0,qh.jsx)("path",{d:"M1 21h22L12 2zm12-3h-2v-2h2zm0-4h-2v-4h2z"}),"Warning"),yie=e=>{let{title:t,message:r,cancelClick:n,sureClick:o}=e;return(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",margin:"10px 20px"},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",marginBottom:"20px",alignItems:"center"},children:[(0,qh.jsx)(cE.A,{sx:{color:"#000",paddingLeft:"0px"},children:(0,qh.jsx)(vie,{sx:{fontSize:"30px"}})}),(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"22px",fontWeight:"bold"},children:t})]}),(0,qh.jsx)(Bh.A,{sx:{fontFamily:"'Noto Sans JP', sans-serif",fontSize:"16px",marginBottom:"20px"},children:r}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"flex-end",mt:"10px"},children:[(0,qh.jsx)(QI.A,{variant:"outlined",onClick:n,sx:{fontFamily:"'Noto Sans JP', sans-serif",border:"1px solid #28aeb1",color:"#28aeb1",marginRight:"10px","&:hover":{color:"#28aeb1",border:"1px solid #28aeb1",opacity:"0.8"}},children:"\u30ad\u30e3\u30f3\u30bb\u30eb"}),(0,qh.jsx)(QI.A,{variant:"contained",color:"primary",onClick:o,sx:{fontFamily:"'Noto Sans JP', sans-serif",backgroundColor:"#28aeb1",color:"#fff","&:hover":{backgroundColor:"#28aeb1",opacity:"0.8"}},disableElevation:!0,children:"\u3053\u306e\u307e\u307e\u524a\u9664\u3092\u5b9f\u884c"})]})]})},bie=()=>{const{gManageEmployee:e,setModalTitle:r,setModalContent:n,setCustomModalOpen:o,gStripe:a,gMediaType:i}=(0,t.useContext)(VI),[s,l]=(0,t.useState)([]),[c,u]=(0,t.useState)([]),d=(0,t.useRef)(null),f=hg();(0,t.useEffect)((()=>{a.customerInfo.companyID&&e.tags.length<1&&e.getTags()}),[a.customerInfo.companyID]),(0,t.useEffect)((()=>{l(e.employees.Items),u(e.tags)}),[e.employees,e.tags]);return(0,qh.jsx)(XP,{ref:d,isMobile:i.isMobile,popupComponent:(0,qh.jsx)(gie,{tags:c,completionCallback:()=>{d.current.handleClose()}}),children:(0,qh.jsx)(dae,{isMobile:i.isMobile,isAdd:!1,data:s,rowHeight:"large",isBind:!1,isBack:!1,columns:PU.employeeList(),callAdd:i.isMobile?null:()=>{d.current.handleOpen()},rowSelectable:(e,t)=>(null===e||void 0===e?void 0:e.tag)&&"\u30aa\u30fc\u30ca\u30fc"!==e.tag[0],callRowClick:e=>{f({pathname:"/biz/employees/list-item",search:Bg({uid:s[e].subUUID}).toString()})},callDelData:t=>{(async e=>{r(""),n((0,qh.jsx)(yie,{title:"\u30e6\u30fc\u30b6\u30fc\u304c\u524a\u9664\u3055\u308c\u307e\u3059",message:"\u8a8d\u8a3c\u6a5f\u5668\u3068Hub3\u3068\u306e\u901a\u4fe1\u304c\u4e0d\u5b89\u5b9a\u306a\u5834\u5408\u3001\u30e6\u30fc\u30b6\u30fc\u306b\u7d10\u3065\u3044\u305f\u30ab\u30fc\u30c9\u30fb\u6307\u7d0b\u304c\u540c\u6642\u306b\u524a\u9664\u3055\u308c\u306a\u3044\u53ef\u80fd\u6027\u304c\u3054\u3056\u3044\u307e\u3059\u3002\n\u901a\u4fe1\u72b6\u6cc1\u3092\u3054\u78ba\u8a8d\u306e\u3046\u3048\u3067\u64cd\u4f5c\u304f\u3060\u3055\u3044\u3002",cancelClick:()=>{o(!1)},sureClick:()=>{o(!1),e&&e()}})),o(!0)})((async function(){e.removeEmployees(t)}))},callSearch:t=>{var r,n;l(t?(r=e.employees.Items,n=t,r.filter((e=>{const t=e.employeeName||"",r=e.employeeEmail||"";return t.includes(n)||r.includes(n)}))):e.employees.Items)}})})},wie=()=>{const[e,r]=(0,t.useState)([]),[n,o]=(0,t.useState)(""),[a,i]=(0,t.useState)(!0),s=Dh.allTags,[l,c]=(0,t.useState)([{tag:"",companyID:"",access:["1","2"]}]),{gManageEmployee:u,gStripe:d,gMediaType:f}=(0,t.useContext)(VI),[p,h]=(0,t.useState)(),m=(0,t.useRef)(null),g=t=>{const n=e.indexOf(t.target.value);r(-1===n?[...e,t.target.value]:e.filter((e=>e!==t.target.value)))};(0,t.useEffect)((()=>{c(v)}),[u.tags]);const v=(0,t.useMemo)((()=>{let e=u.tags;return e.length?e.map((e=>(e.isShowAdd=!0,"\u30aa\u30fc\u30ca\u30fc"===e.tag?(e.access=Dh.allTags,e.isShowAdd=!1):"\u30b2\u30b9\u30c8"===e.tag?(e.access=["\u6a29\u9650\u306a\u3057"],e.isShowAdd=!1):"\u30de\u30cd\u30fc\u30b8\u30e3\u30fc"===e.tag&&(e.access=Dh.allTags,e.isShowAdd=!1),e))):[]}),[u.tags]);(0,t.useEffect)((()=>{d.customerInfo.companyID&&(u.tags.length>0||u.getTags())}),[d.customerInfo.companyID]);const y=(0,t.useMemo)((()=>(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"space-between",mb:"10px"},children:(0,qh.jsx)(Bh.A,{variant:"h2",children:"\u65b0\u898f\u30ed\u30fc\u30eb\u3092\u8ffd\u52a0"})})}),(0,qh.jsx)(lE,{sx:{paddingBottom:"unset"},children:(0,qh.jsxs)(RU.Ay,{container:!0,spacing:1,alignItems:"center",children:[(0,qh.jsx)(RU.Ay,{item:!0,xs:f.isMobile?12:3,children:(0,qh.jsx)(GD.A,{size:"small",label:"\u30ed\u30fc\u30eb\u306e\u540d\u79f0",variant:"filled",fullWidth:!0,required:!0,error:!a,helperText:a?"":"\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u6a29\u9650\u3068\u540c\u3058\u540d\u524d\u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093",onChange:e=>{o(e.target.value),i("\u30aa\u30fc\u30ca\u30fc"!==e.target.value&&"\u30de\u30cd\u30fc\u30b8\u30e3\u30fc"!==e.target.value&&"\u30b2\u30b9\u30c8"!==e.target.value)},value:n})}),(0,qh.jsx)(RU.Ay,{item:!0,xs:12,children:(0,qh.jsxs)(jU.A,{sx:{display:"flex",alignItems:f.isMobile?"flex-start":"center",flexDirection:f.isMobile?"column":"row",mt:f.isMobile?1:0},children:[(0,qh.jsx)(pie.A,{sx:{mr:"15px"},children:"\u95b2\u89a7\u53ef\u80fd\u30da\u30fc\u30b8"}),(0,qh.jsx)(UD.A,{sx:{width:"100%",display:"flex",flexDirection:"row"},children:s.map((t=>(0,qh.jsx)(xD.A,{control:(0,qh.jsx)(hie.A,{onChange:e=>{g(e)},checked:e.includes(t)}),label:t,value:t},t)))})]})}),(0,qh.jsx)(RU.Ay,{item:!0,xs:12,children:(0,qh.jsx)(RE,{loading:p,variant:"outlined",size:f.isMobile?"large":"small",fullWidth:f.isMobile,disabled:""===n||0===e.length||!a,onClick:()=>{const t={access:e,tag:n};h(!0),u.postTag(t,(async e=>{h(!1),r([]),o(""),m.current.handleClose()}))},children:"\u767b\u9332"})})]})})]})),[a,n,s,e,p,g,u]);return(0,qh.jsx)(XP,{ref:m,isMobile:f.isMobile,popupComponent:y,children:(0,qh.jsx)(dae,{isMobile:f.isMobile,isAdd:!1,data:l,selectableRows:"none",isCsv:!1,isBind:!1,isDel:!1,rowHeight:"large",columns:PU.companyRole({companyRoles:l,setCompanyRoles:c,gManageEmployee:u,changeSingleAccess:e=>{delete e.isShowAdd,u.postTag(e,(async e=>{}))}}),callAdd:()=>{m.current.handleOpen()},callSearch:e=>{if(e){const t=v.filter((t=>t.tag.includes(e)||t.access.some((t=>t.includes(e)))));return c(t)}c(v)}})})};var xie=r(66553),Sie=r(2660);const Aie=function(e){let{itemsSelect:r,callSelect:n}=e;const[o,a]=(0,t.useState)(""),[i,s]=(0,t.useState)([]),[l,c]=(0,t.useState)(!1),u=(0,t.useMemo)((()=>r.length),[r]);(0,t.useEffect)((()=>{let e={deviceName:"\u5168\u4f53\u5c65\u6b74",deviceUUID:"0"},t=[e,...r];r.length>0&&n&&n(e.deviceUUID),a(e.deviceUUID),s(t)}),[u]);const d=()=>{c(!l)};return(0,qh.jsx)(jU.A,{size:"small",sx:{p:"16px",pb:0},children:(0,qh.jsx)(xie.A,{labelId:"demo-simple-select-label",id:"demo-simple-select",value:o,open:l,onOpen:()=>c(!0),onClose:()=>c(!1),onChange:e=>{a(e.target.value),n&&n(e.target.value)},input:(0,qh.jsx)(Sie.A,{sx:{"& .MuiOutlinedInput-notchedOutline":{borderColor:"#28aeb1"},borderRadius:"6px",color:"#28aeb1","& .MuiSvgIcon-root":{color:"#28aeb1"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:"#28aeb1"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:"#28aeb1"}}}),IconComponent:()=>(0,qh.jsx)(QT,{sx:{fontSize:"26px",marginRight:"6px"},onClick:d}),children:i.map(((e,t)=>(0,qh.jsx)(RO.A,{value:e.deviceUUID,children:e.deviceName},t)))})})},kie=()=>{const{gManageGroup:e,gManageDevice:r,gStripe:n}=(0,t.useContext)(VI),o=hg(),[a,i]=(0,t.useState)([]),[s,l]=(0,t.useState)(void 0),[c,u]=(0,t.useState)("0"),d=(0,t.useMemo)((()=>r.filteredSsmDevices||[]),[r.filteredSsmDevices]),f=(0,t.useCallback)((function(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2?arguments[2]:void 0;e.getDeviceHistory([{deviceUUID:t,lastKey:r}],(e=>{var r,o;const a=e.data||[];a.map((e=>{var t;const r=null===(t=d.find((t=>t.deviceUUID===e.device_id)))||void 0===t?void 0:t.deviceName;return e.deviceName=r,e})),i((e=>[...e,...a])),l({[t]:null===(r=a[a.length-1])||void 0===r?void 0:r.timestamp}),n&&n(null===(o=a[a.length-1])||void 0===o?void 0:o.timestamp)}))}),[e]),p=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;const n=d.map((e=>({deviceId:e.deviceUUID,lastKey:t[e.deviceUUID]||null})));e.getDeviceHistory(n,(e=>{if(e.success&&e.data){const{items:t,deviceLastKeys:n,hasMore:o}=e.data||{};t.map((e=>{var t;const r=null===(t=d.find((t=>t.deviceUUID===e.device_id)))||void 0===t?void 0:t.deviceName;return e.deviceName=r,e})),i((e=>[...e,...t])),l(n),r&&r(o)}}))},h=(0,t.useCallback)((e=>{u(e),i([]),l(void 0),"0"===e?p({}):f(e,null)}),[r.filteredSsmDevices,p]),m=(0,t.useCallback)((t=>{e.getHistoryEnv({deviceUUID:t.device_id,timestamp:t.timestamp},(e=>{var t;const r=null!==(t=null===e||void 0===e?void 0:e.data)&&void 0!==t?t:{},a="string"===typeof r?r:JSON.stringify(r);Ue.openEnvSnapshot(Te.hp.from(a,"utf8").toString("base64"),n.isFromApp,o)}))}),[e,n.isFromApp,o]);return(0,qh.jsxs)(ym,{sx:{height:"100vh",display:"flex",flexDirection:"column"},children:[(0,qh.jsx)(ym,{sx:{px:0,pb:2},children:(0,qh.jsx)(Aie,{callSelect:h,itemsSelect:r.filteredSsmDevices})}),(0,qh.jsx)(ym,{sx:{px:1,flex:1,height:"100%"},children:(0,qh.jsx)(CU,{fullHeight:!1,histories:a,onLoadMore:e=>{"0"===c?p(s,e):f(c,s[c],e)},onItemClick:m},c)})]})},Cie={lock:"lock",unlock:"unlock",upgrade_firmware:"upgrade firmware"},Iie=()=>{const{gStripe:e,gSchedule:r}=(0,t.useContext)(VI),n=(0,t.useRef)(null);(0,t.useEffect)((()=>{r.getScheduleList()}),[e.customerInfo]);return(0,qh.jsx)(ym,{ref:n,sx:{width:"100%",height:"100%",bgcolor:"background.paper"},children:(0,qh.jsx)(ym,{sx:{width:"100%",height:"100%",overflowY:"auto",overflowX:"hidden",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},children:(0,qh.jsx)($T.A,{children:r.schedules.Items.map((e=>{const t=function(){const e=String(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"").trim();if(!e)return"";const t=e.toLowerCase().replace(/[\s-]+/g,"_");return Cie[t]?Cie[t]:e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\s+/g," ").trim()}(e.action),n=function(){const e=String(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"").trim();return e?/^\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}$/.test(e)||/^\d{2}:\d{2}$/.test(e)?` at ${e}`:` ${e}`:""}(e.displayTime);return(0,qh.jsxs)(lO,{sx:{"&:hover":{bgcolor:"action.hover"}},children:[(0,qh.jsx)(iD.A,{primary:(0,qh.jsxs)(Bh.A,{variant:"body1",children:[e.deviceName," will ",t,n]})}),(0,qh.jsx)(dU.A,{title:"Cancel Schedule",children:e.isCancelling?(0,qh.jsx)(AE,{size:18,color:"inherit","aria-label":"Loading"}):(0,qh.jsx)($M,{sx:{cursor:"pointer"},onClick:()=>{return t=e.scheduleId,r.setSchedules((e=>({...e,Items:e.Items.map((e=>e.scheduleId===t?{...e,isCancelling:!0}:e))}))),void r.cancelSchedule(t);var t}})})]},`${e.scheduleId}`)}))})})})};function Eie(e){return(0,oy.Ay)("MuiCardActionArea",e)}const Die=(0,mm.A)("MuiCardActionArea",["root","focusVisible","focusHighlight"]),Tie=(0,am.Ay)($E.A,{name:"MuiCardActionArea",slot:"Root",overridesResolver:(e,t)=>t.root})((0,qv.A)((e=>{let{theme:t}=e;return{display:"block",textAlign:"inherit",borderRadius:"inherit",width:"100%",[`&:hover .${Die.focusHighlight}`]:{opacity:(t.vars||t).palette.action.hoverOpacity,"@media (hover: none)":{opacity:0}},[`&.${Die.focusVisible} .${Die.focusHighlight}`]:{opacity:(t.vars||t).palette.action.focusOpacity}}}))),Oie=(0,am.Ay)("span",{name:"MuiCardActionArea",slot:"FocusHighlight",overridesResolver:(e,t)=>t.focusHighlight})((0,qv.A)((e=>{let{theme:t}=e;return{overflow:"hidden",pointerEvents:"none",position:"absolute",top:0,right:0,bottom:0,left:0,borderRadius:"inherit",opacity:0,backgroundColor:"currentcolor",transition:t.transitions.create("opacity",{duration:t.transitions.duration.short})}}))),Mie=t.forwardRef((function(e,t){const r=(0,im.b)({props:e,name:"MuiCardActionArea"}),{children:n,className:o,focusVisibleClassName:a,...i}=r,s=r,l=(e=>{const{classes:t}=e;return(0,zv.A)({root:["root"],focusHighlight:["focusHighlight"]},Eie,t)})(s);return(0,qh.jsxs)(Tie,{className:(0,Fh.A)(l.root,o),focusVisibleClassName:(0,Fh.A)(a,l.focusVisible),ref:t,ownerState:s,...i,children:[n,(0,qh.jsx)(Oie,{className:l.focusHighlight,ownerState:s})]})}));var Pie,jie,Rie,_ie,Nie;function Lie(){return Lie=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Lie.apply(null,arguments)}function Uie(e,r){let{title:n,titleId:o,...a}=e;return t.createElement("svg",Lie({id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 24 24",style:{enableBackground:"new 0 0 24 24"},xmlSpace:"preserve",ref:r,"aria-labelledby":o},a),n?t.createElement("title",{id:o},n):null,Pie||(Pie=t.createElement("style",{type:"text/css"},"\r\n\t.st0{fill:none;}\r\n\t.st1{fill:currentColor;}\r\n")),jie||(jie=t.createElement("rect",{y:0,className:"st0",width:24,height:24})),Rie||(Rie=t.createElement("path",{className:"st1",d:"M12,20.2c-0.1,0-0.3-0.1-0.4-0.2l-3.1-3.1L8.3,17c-0.5,0.1-0.9,0.2-1.3,0.2c-3.1,0-5.7-2.5-5.7-5.7 c0-0.7,0.2-1.4,0.5-2.3C1.9,9,2.1,8.9,2.3,8.9c0.1,0,0.2,0,0.3,0C2.9,9.1,3,9.4,2.9,9.7c-0.2,0.6-0.3,1.1-0.3,1.8 c0,2.4,2,4.4,4.4,4.4s4.4-2,4.4-4.4S9.4,7.1,7,7.1S2.4,6.4,0.6,5l0,0l0,0C0.4,4.8,0.3,4.7,0.3,4.6c0-0.2,0-0.4,0.1-0.5l0,0l0,0 c0.1-0.2,0.3-0.2,0.4-0.2s0.3,0,0.4,0.1C2.8,5.2,4.8,5.8,7,5.8c1.9,0,3.6,0.9,4.7,2.6L12,8.9l0.3-0.5c1.1-1.6,2.8-2.6,4.7-2.6 c2.2,0,4.1-0.7,5.7-1.9c0.1-0.1,0.2-0.1,0.3-0.1c0.2,0,0.4,0.1,0.5,0.2c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2-0.1,0.3-0.2,0.4 C21.6,6.3,19.4,7,17,7s-4.4,2-4.4,4.4s2,4.4,4.4,4.4s4.4-2,4.4-4.4c0-0.6-0.1-1.2-0.3-1.8c-0.1-0.3,0-0.7,0.3-0.8c0.1,0,0.2,0,0.3,0 c0.2,0,0.5,0.1,0.5,0.3c0.3,0.9,0.5,1.6,0.5,2.3c0,3.1-2.5,5.7-5.7,5.7c-0.4,0-0.8-0.1-1.3-0.2l-0.2-0.1l-3,3.2 C12.3,20.2,12.2,20.2,12,20.2z M11.7,14.7c-0.4,0.6-0.9,1.1-1.5,1.5l-0.4,0.3l2.2,2.2l2.2-2.2l-0.4-0.3c-0.6-0.4-1.1-0.9-1.5-1.5 L12,14.2L11.7,14.7z"})),_ie||(_ie=t.createElement("path",{className:"st1",d:"M7,9.6c-1,0-1.9,0.8-1.9,1.9s0.8,1.9,1.9,1.9s1.9-0.8,1.9-1.9S8,9.6,7,9.6z M7.5,11.4c-0.3,0-0.6-0.3-0.6-0.6 s0.3-0.6,0.6-0.6s0.6,0.3,0.6,0.6S7.8,11.4,7.5,11.4z"})),Nie||(Nie=t.createElement("path",{className:"st1",d:"M17.1,9.6c-1,0-1.9,0.8-1.9,1.9s0.8,1.9,1.9,1.9s1.9-0.8,1.9-1.9S18.1,9.6,17.1,9.6z M16.6,11.4 c-0.3,0-0.6-0.3-0.6-0.6s0.3-0.6,0.6-0.6c0.3,0,0.6,0.3,0.6,0.6S16.9,11.4,16.6,11.4z"})))}const Bie=t.forwardRef(Uie);r.p;var Fie=r(99892);const zie=(e,t,r)=>{try{var n,o;const a=null===(n=window.RTCRtpReceiver)||void 0===n||null===(o=n.getCapabilities)||void 0===o?void 0:o.call(n,t);if(null===a||void 0===a||!a.codecs||null===e||void 0===e||!e.setCodecPreferences)return;const i=a.codecs.filter((e=>r.some((t=>(e.mimeType||"").toLowerCase()===t))));i.length&&e.setCodecPreferences(i)}catch{}},Wie=e=>{if(void 0===e||null===e)return"";if(e instanceof Error)return e.name+": "+e.message;if("string"===typeof e)return e;try{return JSON.stringify(e)}catch{return String(e)}};function Hie(e,t){var r,n,o;let{onStream:a,onError:i,onState:s}=t;const{channelArn:l,region:c,clientId:u,credentials:d,iceServers:f}=e||{};let p=null,h=null,m=null,g=!1,v=null,y=null;const b={signalingOpen:!1,offerSent:!1,offerAttempts:0,offerBytes:0,answerReceived:!1,localCandidates:0,remoteCandidates:0,localTypes:{},remoteTypes:{}},w=[],x=e=>(/ typ (\w+)/.exec(e&&e.candidate||"")||[])[1]||"unknown",S=e=>{g||null===s||void 0===s||s(e)},A=()=>{var e;if(!g){g=!0,clearTimeout(v),clearInterval(y),clearInterval(O);try{h&&(h.ontrack=null,h.onicecandidate=null,h.close())}catch{}null===(e=m)||void 0===e||e.getTracks().forEach((e=>e.stop())),m=null;try{p&&p.close()}catch{}h=null,p=null}},k=(e,t)=>{if(g)return;console.error("[face3Viewer] "+e+" "+Wie(t));const r=i;A(),null===r||void 0===r||r(e)};var C,I;if("undefined"!==typeof window&&(!window.isSecureContext||null===(r=window.crypto)||void 0===r||!r.subtle))return console.error("[face3Viewer] insecure context: crypto.subtle unavailable, \u7528 https \u6216 localhost \u6253\u5f00\uff0c\u5426\u5219 SigV4 \u7b7e\u4e0d\u51fa\u6765 "+Wie({isSecureContext:window.isSecureContext,hasSubtle:Boolean(null===(C=window.crypto)||void 0===C?void 0:C.subtle),origin:null===(I=window.location)||void 0===I?void 0:I.origin})),setTimeout((()=>null===i||void 0===i?void 0:i("errInsecureContext")),0),{close:()=>{}};if(!l||null===d||void 0===d||!d.accessKeyId)return setTimeout((()=>null===i||void 0===i?void 0:i("errBadConfig")),0),{close:()=>{}};v=setTimeout((()=>k("errTimeout",(()=>{var e,t,r,n;return{...b,iceGatheringState:null===(e=h)||void 0===e?void 0:e.iceGatheringState,iceConnectionState:null===(t=h)||void 0===t?void 0:t.iceConnectionState,connectionState:null===(r=h)||void 0===r?void 0:r.connectionState,signalingState:null===(n=h)||void 0===n?void 0:n.signalingState}})())),3e4);try{p=new Fie.gB({channelARN:l,channelEndpoint:e.wssEndpoint,clientId:u,role:Fie.Xh.VIEWER,region:c,credentials:{accessKeyId:d.accessKeyId,secretAccessKey:d.secretAccessKey,sessionToken:d.sessionToken},systemClockOffset:0})}catch(o6){return k("errBadConfig",o6),{close:A}}h=new RTCPeerConnection({iceServers:f||[],iceTransportPolicy:"all"});let E=null;h.ontrack=e=>{var t;if(g)return;const r=e.streams[0];var n;r&&(clearTimeout(v),E!==r.id?(E=r.id,null===(t=e.track)||void 0===t||t.kind,r.id,S("playing"),null===a||void 0===a||a(r),P()):null===(n=e.track)||void 0===n||n.kind)},null===(n=(o=h).addEventListener)||void 0===n||n.call(o,"track",(e=>{const t=e.track;t&&(t.kind,t.readyState,t.muted,t.onunmute=()=>{t.kind},t.onmute=()=>{t.kind},t.onended=()=>{t.kind})}));const D=[3e3,8e3,15e3];let T=!1,O=null;const M=async e=>{if(!g&&h)try{const t=await h.getStats(),r={at:e},n=new Map;t.forEach((e=>n.set(e.id,e)));const o=new Set;t.forEach((e=>{o.add(e.type);const t=e.kind||e.mediaType;if("transport"===e.type&&(r.dtls=e.dtlsState,r.iceState=e.iceState,r.tx=e.bytesSent,r.rx=e.bytesReceived),"inbound-rtp"===e.type&&"video"===t&&(r.video={bytes:e.bytesReceived,packets:e.packetsReceived,lost:e.packetsLost,framesReceived:e.framesReceived,framesDecoded:e.framesDecoded,dropped:e.framesDropped,fps:e.framesPerSecond,size:`${e.frameWidth||0}x${e.frameHeight||0}`,pli:e.pliCount,nack:e.nackCount,freezes:e.freezeCount,freezeSec:e.totalFreezesDuration,jbMs:e.jitterBufferEmittedCount>0?Math.round(e.jitterBufferDelay/e.jitterBufferEmittedCount*1e3):null,jitterMs:void 0!==e.jitter?Math.round(1e3*e.jitter):null}),"inbound-rtp"===e.type&&"audio"===t&&(r.audio={bytes:e.bytesReceived,packets:e.packetsReceived}),"outbound-rtp"===e.type&&"audio"===t&&(r.microphone={bytes:e.bytesSent,packets:e.packetsSent}),"candidate-pair"===e.type&&"succeeded"===e.state&&e.nominated){const t=n.get(e.localCandidateId),o=n.get(e.remoteCandidateId);r.pair={rtt:e.currentRoundTripTime,sent:e.bytesSent,recv:e.bytesReceived,local:t?`${t.candidateType}/${t.protocol||"?"}`:"?",remote:o?`${o.candidateType}/${o.protocol||"?"}`:"?",relayed:"relay"===(null===t||void 0===t?void 0:t.candidateType)||"relay"===(null===o||void 0===o?void 0:o.candidateType)}}})),r.types=[...o].join(",")}catch(t){}},P=()=>{if(T)return;T=!0,D.forEach((e=>{setTimeout((()=>M(e/1e3+"s")),e)}));const e=performance.now();O=setInterval((()=>{M(Math.round((performance.now()-e)/1e3)+"s")}),5e3)};return h.onicecandidate=e=>{let{candidate:t}=e;if(t&&!g){const e=x(t);b.localCandidates+=1,b.localTypes[e]=(b.localTypes[e]||0)+1,w.push(t),p.sendIceCandidate(t)}},h.onconnectionstatechange=()=>{!g&&h&&(h.connectionState,"failed"===h.connectionState&&k("errPeerFailed"))},h.oniceconnectionstatechange=()=>{!g&&h&&h.iceConnectionState},h.onicegatheringstatechange=()=>{!g&&h&&h.iceGatheringState},p.on("open",(async()=>{if(!g){b.signalingOpen=!0,S("signaling");try{const t=h.addTransceiver("video",{direction:"recvonly"});let r;try{if(m=await navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0},video:!1}),g)return void m.getTracks().forEach((e=>e.stop()));const e=m.getAudioTracks()[0];r=e?h.addTransceiver(e,{direction:"sendrecv",streams:[m]}):h.addTransceiver("audio",{direction:"recvonly"})}catch(e){r=h.addTransceiver("audio",{direction:"recvonly"})}zie(t,"video",["video/h264","video/rtx"]),zie(r,"audio",["audio/pcma","audio/pcmu"]);const n=await h.createOffer();await h.setLocalDescription(n);const o={type:n.type,sdp:n.sdp};b.offerBytes=(n.sdp||"").length,b.offerBytes>7e3&&console.warn("[face3Viewer] offer sdp "+b.offerBytes+"B exceeds 7000B \u2014\u2014 \u8bbe\u5907\u5f88\u53ef\u80fd\u76f4\u63a5\u65ad\u5f00\u4fe1\u4ee4(0x5d000028)");const a=()=>{g||b.answerReceived||(p.sendSdpOffer(o),b.offerSent=!0,b.offerAttempts+=1,b.offerAttempts,b.offerBytes)};a(),y=setInterval(a,2e3),S("offered")}catch(o6){k("errPeerFailed",o6)}}})),p.on("sdpAnswer",(async e=>{if(!g){b.answerReceived=!0,clearInterval(y),b.offerAttempts,w.length&&(w.length,w.forEach((e=>{try{p.sendIceCandidate(e)}catch{}})));try{await h.setRemoteDescription(e),S("answered")}catch(o6){k("errPeerFailed",o6)}}})),p.on("iceCandidate",(e=>{if(g)return;const t=x(e);b.remoteCandidates+=1,b.remoteTypes[t]=(b.remoteTypes[t]||0)+1,h.addIceCandidate(e).catch((()=>{}))})),p.on("close",(()=>{!g&&h&&"connected"!==h.connectionState&&k("errSignalingClosed")})),p.on("error",(e=>k("errSignaling",e))),S("connecting"),p.open(),{close:A}}const Yie={not_bound:"face3.errNotBound",channel_not_ready:"face3.liveNotReady",invalid_device_id:"face3.errLiveUnknown",not_authenticated:"face3.errNotAuthenticated",device_offline:"face3.wakeOffline",device_identity_rejected:"face3.wakeIdentityRejected",device_not_signable:"face3.wakeNeedsUpdate"},Vie={errTimeout:"face3.errLiveTimeout",errPeerFailed:"face3.errPeerFailed",errSignaling:"face3.errSignaling",errSignalingClosed:"face3.errSignalingClosed",errInsecureContext:"face3.errInsecureContext",errBadConfig:"face3.errBadConfig"};function Gie(e){let{device:r,onClose:n}=e;const{t:o}=Fv(),{gFace3:a}=(0,t.useContext)(VI),{viewFace3Device:i,face3StreamStates:s}=a,l=(0,t.useRef)(null),c=(0,t.useRef)(null),[u,d]=(0,t.useState)("connecting"),[f,p]=(0,t.useState)(""),[h,m]=(0,t.useState)(0),[g,v]=(0,t.useState)(!1),y=null===r||void 0===r?void 0:r.deviceUUID,b=null===s||void 0===s?void 0:s[y],w="master_ready"===b||"already_streaming"===b;(0,t.useEffect)((()=>{if(!y||!w)return;let e=!1;d("connecting"),v(!1),p("");const t=t=>{e||(p(t),d("error"))},r=setTimeout((()=>t("face3.errTimeout")),15e3);return i(y,(n=>{clearTimeout(r),e||(null!==n&&void 0!==n&&n.success?c.current=Hie(n.data,{onStream:t=>{if(e)return;const r=l.current;if(!r)return;r.onloadedmetadata=()=>{},r.srcObject!==t&&(r.srcObject=t),d("playing"),x(r),r.muted=!1;const n=r.play();null!==n&&void 0!==n&&n.catch&&n.catch((t=>{e||(console.warn("[face3Viewer] unmuted autoplay blocked:",(null===t||void 0===t?void 0:t.name)||t),r.muted=!0,r.play().catch((t=>{e||console.warn("[face3Viewer] muted autoplay also blocked:",(null===t||void 0===t?void 0:t.name)||t)})),v(!0))}))},onError:e=>t(Vie[e]||"face3.errLiveUnknown")}):t(Yie[null===n||void 0===n?void 0:n.message]||"face3.errLiveUnknown"))})),()=>{var t;e=!0,clearTimeout(r),null===(t=c.current)||void 0===t||t.close(),c.current=null,l.current&&(l.current.srcObject=null)}}),[y,w,i,h]);const x=e=>{if("function"!==typeof e.requestVideoFrameCallback)return void console.warn("[face3Lat] requestVideoFrameCallback \u4e0d\u53ef\u7528\uff0c\u9000\u56de\u53ea\u770b getStats");let t=0,r=0,n=0;const o=(a,i)=>{if(r){const e=Math.round(i.presentationTime-r);e>150&&(n++,console.warn(`[face3Lat] GAP ${e}ms (#${n}) rtp90k=${i.rtpTimestamp} wallMs=${Date.now()}`))}if(r=i.presentationTime,t++%30===0){void 0!==i.receiveTime&&Math.round(i.presentationTime-i.receiveTime)}e.requestVideoFrameCallback(o)};e.requestVideoFrameCallback(o)};return(0,qh.jsxs)(ym,{sx:{position:"absolute",inset:0,bgcolor:"#000"},children:[(0,qh.jsx)("video",{ref:l,autoPlay:!0,playsInline:!0,onClick:()=>{const e=l.current;e&&(e.muted=!1,e.play().then((()=>v(!1))).catch((e=>{console.warn("[face3Viewer] tap play failed:",(null===e||void 0===e?void 0:e.name)||e)})))},style:{position:"absolute",inset:0,width:"100%",height:"100%",objectFit:"contain",display:"playing"===u?"block":"none"}}),"playing"===u&&g&&(0,qh.jsx)(ym,{sx:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"rgba(255,255,255,0.85)"},children:o("face3.liveTapToPlay")})}),"playing"!==u&&(0,qh.jsx)(ym,{sx:{position:"absolute",inset:0,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:1.5,px:3,textAlign:"center"},children:"error"===u?(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"rgba(255,255,255,0.85)"},children:o(f)}),(0,qh.jsx)(QI.A,{variant:"outlined",size:"small",startIcon:(0,qh.jsx)(Bae,{}),onClick:()=>m((e=>e+1)),sx:{color:"white",borderColor:"rgba(255,255,255,0.5)"},children:o("face3.retry")})]}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(AE,{size:28,sx:{color:"rgba(255,255,255,0.7)"}}),(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"rgba(255,255,255,0.7)"},children:o("face3.liveConnecting")})]})}),(0,qh.jsx)(cE.A,{onClick:n,"aria-label":o("face3.cancel"),sx:{position:"absolute",top:8,right:8,bgcolor:"rgba(0,0,0,0.5)",color:"white","&:hover":{bgcolor:"rgba(0,0,0,0.7)"}},children:(0,qh.jsx)(tT,{fontSize:"small"})})]})}const Zie=e=>{var t,r,n;let{device:o,onOpen:a,onWake:i,onCloseView:s,waking:l,isViewing:c}=e;const{t:u}=Fv(),d=(()=>{const{t:e}=Fv();return t=>{if(!t)return"";const r=Date.now()-t;return r<6e4?e("face3.justNow"):r<36e5?e("face3.minutesAgo",{n:Math.floor(r/6e4)}):r<864e5?e("face3.hoursAgo",{n:Math.floor(r/36e5)}):e("face3.daysAgo",{n:Math.floor(r/864e5)})}})(),f=o.deviceName||o.deviceUUID,p=null!==(t=o.stateInfo)&&void 0!==t&&t.isOwner?"owner":null,h=!0===(null===(r=o.stateInfo)||void 0===r?void 0:r.wm2State),m=null===(n=o.stateInfo)||void 0===n?void 0:n.lastSeenAt;return(0,qh.jsxs)(JI,{sx:{position:"relative",p:0,borderRadius:2,overflow:"hidden",boxShadow:"0 1px 3px rgba(0,0,0,0.08)"},children:[(0,qh.jsxs)(Mie,{disableRipple:!0,onClick:()=>null===a||void 0===a?void 0:a(o),sx:{"& .MuiCardActionArea-focusHighlight":{opacity:"0 !important"}},children:[(0,qh.jsxs)(ym,{sx:{position:"relative",width:"100%",aspectRatio:"16 / 9",bgcolor:"#2A2A2E",display:"flex",alignItems:"center",justifyContent:"center"},children:[(0,qh.jsx)(ym,{sx:{color:"rgba(255,255,255,0.28)",display:"flex"},children:(0,qh.jsx)(Bie,{width:56,height:56})}),m>0&&(0,qh.jsx)(Bh.A,{variant:"caption",sx:{position:"absolute",right:8,bottom:6,color:"rgba(255,255,255,0.75)",fontVariantNumeric:"tabular-nums"},children:d(m)}),!h&&(0,qh.jsx)(ym,{sx:{position:"absolute",inset:0,bgcolor:"rgba(0,0,0,0.45)",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,qh.jsx)(Bh.A,{variant:"body2",sx:{color:"rgba(255,255,255,0.85)"},children:u("face3.offline")})})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:1,pl:1.5,pr:0,py:1,bgcolor:"white"},children:[(0,qh.jsx)(ym,{sx:{color:"text.secondary",display:"flex",flexShrink:0},children:(0,qh.jsx)(Bie,{width:20,height:20})}),(0,qh.jsxs)(ym,{sx:{minWidth:0,flex:1},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:.75},children:[(0,qh.jsx)(Bh.A,{variant:"body2",sx:{minWidth:0,fontWeight:600,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:f}),h&&(0,qh.jsx)(ym,{component:"span","aria-label":u("face3.live"),sx:{width:8,height:8,borderRadius:"50%",bgcolor:"success.main",flexShrink:0}})]}),p&&(0,qh.jsx)(Bh.A,{variant:"caption",sx:{color:"text.secondary"},children:u(`deviceMember.role.${p}`)})]}),(0,qh.jsx)(Sne,{sx:{color:"text.disabled",mr:-.5}})]})]}),(0,qh.jsx)(ym,{sx:{position:"absolute",top:0,left:0,right:0,aspectRatio:"16 / 9",pointerEvents:"none"},children:(0,qh.jsx)(cE.A,{disabled:!h||l,onClick:()=>null===i||void 0===i?void 0:i(o),"aria-label":u("face3.wake"),sx:{pointerEvents:"auto",position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, 42px)",width:44,height:44,bgcolor:"rgba(0,0,0,0.55)",color:"white","&:hover":{bgcolor:"rgba(0,0,0,0.72)"},"&.Mui-disabled":{bgcolor:"rgba(0,0,0,0.35)",color:"rgba(255,255,255,0.4)"}},children:l?(0,qh.jsx)(AE,{size:20,sx:{color:"inherit"}}):(0,qh.jsx)(wj,{})})}),c&&(0,qh.jsx)(ym,{sx:{position:"absolute",top:0,left:0,right:0,aspectRatio:"16 / 9"},children:(0,qh.jsx)(Gie,{device:o,onClose:s})})]})};function Qie(e){let{onOpen:r}=e;const{t:n}=Fv(),{gFace3:o,gStripe:a,gManageGroup:i,gManageDevice:s,setSnackbarValue:l}=(0,t.useContext)(VI),[c,u]=(0,t.useState)(0),d=(0,t.useRef)(null),{listFace3Devices:f,wakeFace3Device:p}=o,h=(0,t.useRef)(0);(0,t.useEffect)((()=>{const e=Date.now();e-h.current<1e3||(h.current=e,f((()=>{})))}),[f,c]),(0,t.useEffect)((()=>{const e=()=>{"visible"===document.visibilityState&&u((e=>e+1))},t=setInterval(e,3e4),r=()=>{"visible"===document.visibilityState&&e()};return document.addEventListener("visibilitychange",r),()=>{clearInterval(t),document.removeEventListener("visibilitychange",r)}}),[]);const m=o.face3Devices||[],[g,v]=(0,t.useState)((()=>new Set)),[y,b]=(0,t.useState)((()=>new Set)),[w,x]=(0,t.useState)(null),S=e=>{if(null===e||void 0===e||!e.deviceUUID||g.has(e.deviceUUID))return;v((t=>new Set(t).add(e.deviceUUID))),b((t=>new Set(t).add(e.deviceUUID)));let t=!1;const r=(r,n)=>{t||(t=!0,v((t=>{const r=new Set(t);return r.delete(e.deviceUUID),r})),x({severity:r,text:n}))},o=setTimeout((()=>r("error",n("face3.errTimeout"))),15e3);p(e.deviceUUID,(t=>{clearTimeout(o),null!==t&&void 0!==t&&t.success?r("success",n("face3.wakeSent")):(b((t=>{const r=new Set(t);return r.delete(e.deviceUUID),r})),r("error",(e=>{switch(e){case"device_offline":return n("face3.wakeOffline");case"not_bound":return n("face3.wakeNotBound");case"device_identity_rejected":return n("face3.wakeIdentityRejected");case"device_not_signable":return n("face3.wakeNeedsUpdate");default:return n("face3.wakeFailed")}})(null===t||void 0===t?void 0:t.message)))}))},A=(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h2",sx:{px:1},children:"\u65b0\u898f\u30c7\u30d0\u30a4\u30b9\u3092\u8ffd\u52a0"}),(0,qh.jsx)(ym,{sx:{px:1,display:"flex",flexDirection:"column",alignItems:"flex-start"},children:(0,qh.jsxs)(QI.A,{variant:"text",component:"label",startIcon:(0,qh.jsx)(zP,{}),sx:{justifyContent:"flex-start"},children:["QR\u30b3\u30fc\u30c9\u3067\u8ffd\u52a0",(0,qh.jsx)("input",{type:"file",hidden:!0,accept:"image/*",onChange:e=>{const t=e.target;Ue.readQrcodeUrl(t.files[0],((e,r)=>{var o;if(e||!r)return null===(o=d.current)||void 0===o||o.handleClose(),l({open:!0,msg:n("face3.errInvalidQr")}),void(t.value="");i.redeemQRToken(r,(e=>{var r;if(null===(r=d.current)||void 0===r||r.handleClose(),null===e||void 0===e||!e.success)return l({open:!0,msg:(null===e||void 0===e?void 0:e.message)||n("face3.errUnknown")}),void(t.value="");const o=Ue.parseDeviceKeyFromUrl(e.data);if(!o)return l({open:!0,msg:n("face3.errInvalidQr")}),void(t.value="");s.addSesameDevicesToBiz3([o],(()=>u((e=>e+1)))),t.value=""}))}))}})]})})]});return 0===m.length?(0,qh.jsx)(XP,{ref:d,isMobile:!a.isFromApp,popupComponent:A,children:(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",justifyContent:"center",minHeight:"60vh",color:"text.disabled"},children:(0,qh.jsx)(Bie,{width:96,height:96})})}):(0,qh.jsx)(XP,{ref:d,isMobile:!a.isFromApp,popupComponent:A,children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(ym,{sx:{display:"flex",flexDirection:"column",gap:2,p:2},children:m.map((e=>(0,qh.jsx)(Zie,{device:e,onOpen:r,onWake:S,onCloseView:()=>b((t=>{const r=new Set(t);return r.delete(e.deviceUUID),r})),waking:g.has(e.deviceUUID),isViewing:y.has(e.deviceUUID)},e.deviceUUID)))}),(0,qh.jsx)(fy,{open:Boolean(w),autoHideDuration:4e3,onClose:()=>x(null),anchorOrigin:{vertical:"bottom",horizontal:"center"},children:(0,qh.jsx)(LL,{severity:(null===w||void 0===w?void 0:w.severity)||"info",variant:"filled",onClose:()=>x(null),sx:{width:"100%"},children:(null===w||void 0===w?void 0:w.text)||""})})]})})}const Kie=()=>{const{gStripe:e,gManageDevice:r}=(0,t.useContext)(VI),{t:n}=Fv(),o=hg(),[a]=xv(),i=a.get("ssmUUID"),s=a.get("deviceUUID"),l=(0,t.useMemo)((()=>{var e,t,n;const o=r.companyDevices.find((e=>e.deviceUUID===i));if(o)return o;return(null!==(e=null===(t=r.deviceStatus)||void 0===t||null===(n=t.stateInfo)||void 0===n?void 0:n.sesameDevices)&&void 0!==e?e:[]).find((e=>e.deviceUUID===i))||{}}),[i,r.companyDevices,r.deviceStatus]);return(0,qh.jsxs)(qh.Fragment,{children:[!e.isFromApp&&(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",pt:1,pl:2},children:[(0,qh.jsx)(cE.A,{onClick:()=>o(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-2}})}),(0,qh.jsx)(Bh.A,{variant:"h3",children:n("pages.login.ReturnToMailInput")})]}),(0,qh.jsx)(ym,{sx:{width:"100%",bgcolor:"background.paper",pl:0},children:(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.light",p:2},children:(0,qh.jsx)(Bh.A,{children:n("pages.sesameAccessControlDevice.index.UpgradeHint",{hub:"Hub3",sesame:null===l||void 0===l?void 0:l.deviceName})})})}),(0,qh.jsx)(DB,{device:l,Hub3DeviceUUID:s})]})},Xie=e=>{var t,r,n;let{index:o,user:a,callRowClick:i,enableDrag:s}=e;const{attributes:l,listeners:c,setNodeRef:u,transform:d,transition:f,isDragging:p}=sN({id:a.subUUID,disabled:!s}),h={transform:d?`translate3d(0, ${d.y}px, 0)`:void 0,transition:f};return(0,qh.jsxs)(lO,{ref:u,...l,...c,onClick:()=>{p||i(o)},style:h,sx:{...h},children:[(0,qh.jsx)(UU,{children:(0,qh.jsx)(YU,{variant:"circular",sx:{bgcolor:"info.light"},children:null!==(t=null===(r=a.employeeName)||void 0===r||null===(n=r.charAt(0))||void 0===n?void 0:n.toUpperCase())&&void 0!==t?t:""})}),(0,qh.jsx)(iD.A,{primary:a.employeeName})]})},Jie=e=>{let{contacts:r,callRowClick:n,callSearch:o,onDragEnd:a}=e;const[i,s]=(0,t.useState)(r);(0,t.useEffect)((()=>{s(r)}),[r]),(0,t.useEffect)((()=>{const e=`ssm://UI/webview/registNotify?${new URLSearchParams({notifyName:"RefreshList"})}`;Ue.triggerScheme(e)}),[]);const l=nR(rR(n_,{activationConstraint:{distance:5}}),rR(a_,{activationConstraint:{delay:250,tolerance:5}}),rR(QR,{coordinateGetter:uN}));return(0,qh.jsx)(F_,{sensors:l,collisionDetection:dR,onDragEnd:e=>{const{active:t,over:r}=e;if(t.id!==r.id){const e=i.findIndex((e=>e.subUUID===t.id)),n=i.findIndex((e=>e.subUUID===r.id)),o=G_(i,e,n);s(o),a&&a(o,e,n)}},modifiers:[fN],children:(0,qh.jsx)(eN,{items:i.map((e=>e.subUUID)),strategy:J_,children:(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:[(0,qh.jsx)(ym,{sx:{p:"16px",pb:"8px"},children:(0,qh.jsx)(NN,{callSearch:o})}),(0,qh.jsx)($T.A,{children:i.map(((e,t)=>(0,qh.jsx)(Xie,{index:t,user:e,callRowClick:n,enableDrag:!!a},e.subUUID)))})]})})})},$ie=()=>{const{gManageEmployee:e,gStripe:r}=(0,t.useContext)(VI),[n,o]=(0,t.useState)([]),a=(0,t.useRef)(null),[i,s]=(0,t.useState)(!1),l=hg();(0,t.useEffect)((()=>{o(e.employees.Items)}),[e.employees,e.tags]);const c=(0,t.useCallback)((t=>{var r,n;o(t?(r=e.employees.Items,n=t,r.filter((e=>{const t=e.employeeName||"",r=e.employeeEmail||"";return t.includes(n)||r.includes(n)}))):e.employees.Items),s(!!t)}),[e.employees.Items]);(0,t.useEffect)((()=>{r.isFromApp&&e.getEmployees()}),[]);const u=(0,t.useCallback)((e=>{const t=new URLSearchParams(new URLSearchParams(window.location.search));t.set("uid",n[e].subUUID),t.set("email",n[e].employeeEmail),r.isFromApp?(e=>{const{protocol:t,host:r}=new URL(window.location.href),n=`ssm://UI/webview/open?${new URLSearchParams({notifyName:"FriendChanged",url:`${t}//${r}/biz/employees/list-item?${e}`})}`;Ue.triggerScheme(n)})(t.toString()):l({pathname:"/biz/employees/list-item",search:t.toString()})}),[n]);return(0,qh.jsx)(XP,{ref:a,isMobile:!r.isFromApp,popupComponent:(0,qh.jsx)(gie,{completionCallback:()=>{a.current.handleClose()}}),children:(0,qh.jsx)(Jie,{contacts:n,callRowClick:u,callSearch:c,onDragEnd:i?null:(t,r,n)=>{const o=t.map(((e,t)=>({friendUUID:e.subUUID,rank:-t})));e.reorderEmployees(o)}})})},qie=()=>(0,qh.jsx)($ie,{}),ese=()=>{const{gStripe:e,gManageEmployee:r,gMediaType:n}=(0,t.useContext)(VI),o=hg(),[a,i]=(0,t.useState)({}),[s,l]=(0,t.useState)(""),[c,u]=(0,t.useState)(!1),d=Ue.generateUserQRCodeBySubUUID(e.customerInfo.subUUID),{t:f}=Fv(),p={display:"flex",alignItems:"center",justifyContent:"space-between"},h={flexShrink:0,marginRight:"16px"},m={display:"flex"},g=(e,t)=>{const r=(e||[]).find((e=>e&&t in e));return r?r[t]:void 0},v=(a.recentLogins||[]).map((e=>JSON.parse(e))).sort(((e,t)=>new Date(g(t,"collectedAt"))-new Date(g(e,"collectedAt"))));return(0,t.useEffect)((()=>{(async()=>{r.getCurrentUserInfo((e=>{i(e.data)}))})(),Ue.writeQrcode(d,(e=>{const t=e.toDataURL(10,0);l(t)}))}),[]),(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",height:"100%",overflow:"auto"},children:[(0,qh.jsxs)($T.A,{sx:{"> .css-1samsxy-MuiListItem-root":{padding:"0px"}},children:[(0,qh.jsxs)(lO,{sx:{...p},children:[(0,qh.jsx)(Bh.A,{sx:{...h},children:f("deviceMember.nickName")}),(0,qh.jsx)(ym,{sx:{...m},children:(0,qh.jsx)(rT,{initialValue:a.name||a.email,onSave:(e,t)=>{r.postEmployeeInfo({Name:"name",Value:e},(e=>{t(e.success),e.success&&Ue.triggerScheme(`ssm://UI/webview/notify?${new URLSearchParams({notifyName:"UserProfileChanged"})}`)}))}})})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{sx:{...p},children:[(0,qh.jsx)(Bh.A,{sx:{...h},children:f("pages.login.Email")}),(0,qh.jsx)(ym,{sx:{...m},children:a.email})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{sx:{...p},children:[(0,qh.jsx)(Bh.A,{sx:{...h},children:"sub UUID"}),(0,qh.jsx)(Bh.A,{sx:{...m,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:"clamp(0.75rem, 2.5vw, 1rem)",minWidth:0},children:a.sub})]}),(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}}),(0,qh.jsxs)(lO,{sx:{...p,alignItems:"start"},children:[(0,qh.jsx)(Bh.A,{sx:{...h},children:f("deviceMember.qr")}),(0,qh.jsx)(ym,{sx:{...m},children:(0,qh.jsx)("img",{src:s,alt:"QR Code",onClick:()=>u(!0),style:{marginTop:"6px",width:"80px",height:"80px",cursor:"pointer"}})})]})]}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.main",height:10,flexShrink:0}}),(0,qh.jsx)($T.A,{disablePadding:!0,children:v.map(((e,r)=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsxs)(lO,{onClick:()=>(e=>{const t=Te.hp.from(JSON.stringify(e),"utf8").toString("base64"),r=new URL(window.location.href);r.pathname="/biz/history/env-snapshot",r.searchParams.set("data",t),o({pathname:r.pathname,search:r.searchParams.toString()})})(e),sx:{...p,justifyContent:"space-between",cursor:"pointer"},children:[(0,qh.jsx)(ym,{children:(0,qh.jsx)(Bh.A,{children:g(e,"model")})}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(Bh.A,{sx:{color:"text.secondary"},children:g(e,"collectedAt")}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(fU.A,{component:jN})})]})]}),r<v.length-1&&(0,qh.jsx)(mM,{variant:"middle",sx:{opacity:.4}})]},r)))}),(0,qh.jsx)(oB,{open:c,qrCodeUrl:s,isMobile:n.isMobile,userName:a.name||e.customerInfo.employeeName,onClose:()=>u(!1)})]})};const tse=r.p+"static/media/knob.9376c5afa509d20cdf6d.png";const rse=r.p+"static/media/locked.5129de54382b91719c523d6eb7dd5f49.svg";const nse=r.p+"static/media/unlocked.46651d2494fea7d9b8eb6d203c496a69.svg";function ose(e){let{settings:r,onClick:n,label:o,disabled:a}=e;const i=(0,t.useRef)({min:1/0,max:-1/0}),{position:s=0,lockPosition:l=0,unlockPosition:c=0,switchPoint:u,productType:d}=r,f=(e,t,r)=>(0,qh.jsx)("image",{href:e,x:t-14,y:r-14,width:"28",height:"28"}),p=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:128;const r=e*Math.PI/180;return[150+Math.cos(r)*t,150-Math.sin(r)*t]},h=[s,l,c].filter(Number.isFinite);i.current.min=Math.min(i.current.min,...h),i.current.max=Math.max(i.current.max,...h);const m=(i.current.min+i.current.max)/2,g=Math.min(i.current.min,m-10),v=Math.max(i.current.max,m+10),y=260,b=e=>20+.58*y*(1-(e=>Math.max(0,Math.min(1,(e-g)/(v-g))))(e)),w=e=>b(e)+54.6,x=32===d,[S,A]=p(u||0,114),[k,C]=p(u||0,142);return(0,qh.jsx)("svg",{role:"button",tabIndex:a?-1:0,"aria-label":o,"aria-disabled":a,onClick:()=>{a||n()},onKeyDown:e=>{a||"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),n())},viewBox:x?"0 0 310 300":"0 0 300 300",style:{width:x?310:300,maxWidth:"100%",display:"block",margin:"auto",cursor:a?"default":"pointer",outline:"none",WebkitTapHighlightColor:"transparent"},children:x?(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)("rect",{x:"90",y:"20",width:"130",height:y,rx:"18",fill:"#E7E6EB"}),(0,qh.jsx)("rect",{x:"96",y:b(s),width:"118",height:109.2,rx:"20",fill:"#C2BEC6"}),(0,qh.jsx)("line",{x1:"117",x2:"193",y1:w(s),y2:w(s),stroke:"white",strokeWidth:"4",strokeLinecap:"round"}),f(rse,252,w(l)),f(nse,252,w(c)),Number.isFinite(u)&&(0,qh.jsx)("line",{x1:"228",x2:"278",y1:w(u),y2:w(u),stroke:"#999",strokeWidth:"2",strokeDasharray:"4 3",strokeLinecap:"round"})]}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)("image",{href:tse,x:"40",y:"40",width:"220",height:"220",transform:`rotate(${-s-90} 150 150)`}),f(rse,...p(l)),f(nse,...p(c)),Number.isFinite(u)&&(0,qh.jsx)("line",{x1:S,y1:A,x2:k,y2:C,stroke:"#999",strokeWidth:"2",strokeDasharray:"4 3",strokeLinecap:"round"})]})})}const ase=[0,1e3,500,300,250,200,150,100,50];function ise(e){let{deviceUUID:r}=e;const{t:n}=Fv(),o=hg(),{gManageDevice:a}=(0,t.useContext)(VI),{settings:i,connected:s,busy:l,error:c,command:u}=kae(r),[d,f]=(0,t.useState)(!1),[p,h]=(0,t.useState)(null),[m,g]=(0,t.useState)(!1),[v,y]=(0,t.useState)(!1),b=(0,t.useRef)(null),w=(0,t.useRef)(!1),x=(0,t.useRef)(null);(0,t.useEffect)((()=>()=>clearTimeout(b.current)),[]),(0,t.useEffect)((()=>{s||f(!1)}),[s]),(0,t.useEffect)((()=>{var e;d&&(null===(e=x.current)||void 0===e||e.scrollIntoView({block:"nearest",behavior:"smooth"}))}),[d]);const S=e=>0===e?n("lockSettings.stopped"):n("lockSettings.hertz",{count:Math.round(1e3/e)}),A=!s||l||v,k=async e=>{y(!0);try{const t=a.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===r.toUpperCase()}));if(!t)throw new Error("Device unavailable");const n={...t,deviceModel:e};await new Promise(((e,t)=>a.addSesameDevicesToBiz3([n],(r=>r.success?e():t(new Error("Sync failed")))))),a.updateDeviceState(n),h(null),g(!1)}catch(t){g(!0)}finally{y(!1)}},C=(e,t,r)=>(0,qh.jsxs)($E.A,{disabled:A,onClick:()=>u(e),sx:{width:"100%",minHeight:60,bgcolor:"#fff",borderBottom:"1px solid #eee",position:"relative",px:"55px",py:1,fontSize:20,color:"#111"},children:[r?(0,qh.jsx)(ym,{component:"img",src:r,alt:"",sx:{position:"absolute",left:"12%",width:24,height:24}}):(0,qh.jsx)(ym,{sx:{position:"absolute",left:"15%",height:30,borderLeft:"2px dashed #999"}}),(0,qh.jsx)(ym,{component:"span",sx:{ml:2},children:t})]});return(0,qh.jsxs)(ym,{sx:{...bj,height:"100dvh",display:"flex",flexDirection:"column",bgcolor:"#ededed",color:"#111"},children:[(0,qh.jsxs)(ym,{component:"header",sx:{height:44,flexShrink:0,position:"relative",display:"grid",placeItems:"center",bgcolor:"#fff"},children:[(0,qh.jsx)(cE.A,{onClick:()=>o(-1),"aria-label":n("lockSettings.back"),sx:{position:"absolute",left:0,width:44,height:44,color:"#111"},children:(0,qh.jsx)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",children:(0,qh.jsx)("path",{d:"M15 4 7 12l8 8",fill:"none",stroke:"currentColor",strokeWidth:"1.7"})})}),(0,qh.jsx)(Bh.A,{sx:{fontSize:18,fontWeight:"bold"},children:n("pages.sesameAccessControlDevice.index.SetAngle")})]}),(0,qh.jsx)(KL,{deviceUUID:r}),(0,qh.jsxs)(ym,{sx:{flex:1,minHeight:0,overflowY:"auto",pb:"30px",overscrollBehavior:"contain"},children:[(0,qh.jsx)(Bh.A,{sx:{mt:2,textAlign:"center",fontSize:18,color:"#999"},children:n("lockSettings.configure")}),(0,qh.jsx)(ym,{sx:{mt:2},children:(0,qh.jsx)(ose,{settings:i,disabled:A,onClick:()=>u("toggle"),label:n("pages.sesameAccessControlDevice.index.SetAngle")})}),(0,qh.jsx)(Bh.A,{sx:{textAlign:"center",fontSize:18,color:"#999"},children:Number.isFinite(i.position)?`${i.position}\xb0`:"\u2014"}),(0,qh.jsx)(Bh.A,{sx:{mt:"30px",mb:"20px",px:4,textAlign:"center",color:"#999",fontSize:14,whiteSpace:"pre-line"},children:n("lockSettings.instructions")}),C("lockPosition",n("lockSettings.setLocked"),rse),C("unlockPosition",n("lockSettings.setUnlocked"),nse),void 0!==i.switchPoint&&C("switchPoint",n("lockSettings.switchPoint")),(c||m)&&(0,qh.jsxs)(LL,{severity:"error",children:[n("lockSettings.failed"),p&&(0,qh.jsx)(QI.A,{disabled:A,onClick:()=>k(p),children:n("lockSettings.retry")})]}),(0,qh.jsx)(ym,{sx:{height:400}}),void 0!==i.sensorInterval&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)($E.A,{disabled:A,onClick:()=>f(!d),sx:{width:"100%",minHeight:53,px:2,justifyContent:"space-between",bgcolor:"#fff",gap:2},children:[(0,qh.jsx)(Bh.A,{children:n("lockSettings.frequency")}),(0,qh.jsx)(Bh.A,{sx:{color:"#999"},children:S(i.sensorInterval)})]}),d&&(0,qh.jsx)(ym,{ref:x,children:(0,qh.jsx)(sU,{title:n("lockSettings.frequency"),values:ase,value:ase.reduce(((e,t)=>Math.abs(t-i.sensorInterval)<Math.abs(e-i.sensorInterval)?t:e)),label:S,disabled:A,onChange:async e=>{await u("sensorInterval",e)&&f(!1)}})})]}),i.magnet&&(0,qh.jsx)($E.A,{disabled:A,onPointerDown:()=>{w.current=!1,b.current=setTimeout((()=>{w.current=!0,(async()=>{if(![21,32].includes(i.productType))return;const e=await u("slidingMode");e&&(h(e.deviceModel),await k(e.deviceModel))})()}),700)},onPointerUp:()=>clearTimeout(b.current),onPointerCancel:()=>clearTimeout(b.current),onPointerLeave:()=>clearTimeout(b.current),onContextMenu:e=>e.preventDefault(),onClick:()=>{w.current||u("magnet")},sx:{width:"100%",minHeight:53,bgcolor:"#fff",mt:"1px",fontSize:17,fontWeight:"bold",color:"#f44336",userSelect:"none"},children:n("lockSettings.magnet")})]})]})}const sse=()=>{const{gManageDevice:e,gStripe:r}=(0,t.useContext)(VI),[n]=xv(),o=n.get("deviceUUID"),a=n.get("deviceName")||"",i="bridge"===n.get("notifyType"),{t:s}=Fv(),l=hg();return(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:[(!r.isFromApp||Fk)&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",pt:Fk?0:1,pl:2},children:(0,qh.jsxs)(cE.A,{onClick:()=>l(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-2}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"title.main"},children:s("pages.login.ReturnToMailInput")})]})}),(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.light",p:2},children:(0,qh.jsx)(Bh.A,{sx:{fontWeight:"bold",color:"info.main"},children:s("deviceMember.modifyDeviceNameHint")})}),(0,qh.jsx)($T.A,{disablePadding:!0,children:(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:s("deviceMember.editName")}),(0,qh.jsx)(rT,{initialValue:a,onSave:async(t,n)=>{t&&n&&e.updateDeviceName({subUUID:r.customerInfo.subUUID,deviceUUID:o,deviceName:t},(e=>{n(e.success),e.success&&(()=>{if(i)return void Ue.triggerBridge({action:"requestRefreshApp"});const e=`ssm://UI/webview/notify?${new URLSearchParams({notifyName:"DeviceMemberChanged"})}`;Ue.triggerScheme(e)})()}))}},o)]})})]})},lse=()=>{const{gMediaType:e,gManageGroup:r,gStripe:n,gManageDevice:o}=(0,t.useContext)(VI),[a]=xv(),i=a.get("deviceUUID"),s=a.get("deviceName"),[l,c]=(0,t.useState)(),{t:u}=Fv(),[d,f]=(0,t.useState)(null),[p,h]=(0,t.useState)(!0),m=(0,t.useRef)({}),[g,v]=(0,t.useState)([]),[y,b]=(0,t.useState)({}),w=hg();(0,t.useEffect)((()=>{if(!i)return;const e=o.companyDevices.find((e=>e.deviceUUID===i))||o.deviceStatus;e?b(e):o.getDeviceStatus(i)}),[i,o.companyDevices,o.deviceStatus]),(0,t.useEffect)((()=>{if(!y)return;c(y.keyLevel);const e=[{value:0,label:u("deviceMember.role.owner")},{value:1,label:u("deviceMember.role.manager")},{value:2,label:u("deviceMember.role.guest")}].filter((e=>e.value>=y.keyLevel));v(e)}),[y]);const x=(0,t.useCallback)((async e=>{let t="";switch(l){case 0:case 1:case 2:try{t=await new Promise(((e,t)=>{r.generateQRToken({deviceUUID:i,keyLevel:l,...!p&&{isSecure:!1}},(r=>{var n;r.success?e(null===(n=r.data)||void 0===n?void 0:n.qrToken):t(new Error("Failed to generate QR token"))}))}))}catch(n){return void console.error("Error generating QR token:",n)}}e&&e(t)}),[l,y,i,p]),S=(0,t.useCallback)((e=>{Ue.writeQrcode(e,(e=>{if(e){const t=e.toDataURL(10,0);f(t)}}))}),[]);(0,t.useEffect)((()=>{if(null===l)return;f(null);const e=m.current[l];e?S(e):x((e=>{e&&(m.current[l]=e),S(e)}))}),[l,y,p,x,S]);const A=(0,t.useCallback)((e=>{c(e.target.value)}),[]),k=(0,t.useCallback)((e=>{m.current={},h(e.target.checked)}),[]);return void 0===l?(0,qh.jsx)(qh.Fragment,{}):(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper",position:"relative",height:"100vh"},children:[!n.isFromApp&&(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",pt:1,pl:2},children:(0,qh.jsxs)(cE.A,{onClick:()=>w(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-2}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"title.main"},children:u("pages.login.ReturnToMailInput")})]})}),(0,qh.jsx)(oB,{open:!0,qrCodeUrl:d,isMobile:e.isMobile,userName:s,fullScreen:!0,title:`${s} ${u("pages.sesameAccessControlDevice.index.AddKeyByScan")}`,onEncryptChange:k}),(0,qh.jsx)(ym,{sx:{position:"absolute",top:50,left:0,right:0,zIndex:1500,display:"flex",flexDirection:"column",alignItems:"center"},children:(0,qh.jsx)(ym,{sx:{p:2},children:(0,qh.jsx)(jU.A,{fullWidth:!0,children:(0,qh.jsx)(xie.A,{variant:"standard",value:l,disableUnderline:!0,onChange:A,children:g.map((e=>(0,qh.jsx)(RO.A,{value:e.value,children:e.label},e.value)))})})})})]})},cse=()=>{const{t:e}=Fv(),{gStripe:r,gManageEmployee:n}=(0,t.useContext)(VI),[o,a]=(0,t.useState)({}),[i,s]=(0,t.useState)(null),[l,c]=(0,t.useState)(null),u=(0,t.useCallback)((()=>new Promise(((e,t)=>{const r=Date.now().toString();window[`deviceListCallback_${r}`]=t=>{delete window[`deviceListCallback_${r}`],e(t)};const n=setTimeout((()=>{delete window[`deviceListCallback_${r}`]}),1e4),o={action:"requestNotificationStatus",requestId:r,callbackName:`deviceListCallback_${r}`};Ue.triggerBridge(o)||clearTimeout(n)}))),[]),d=(0,t.useCallback)((()=>new Promise(((e,t)=>{const r=Date.now().toString();window[`deviceListCallback_${r}`]=t=>{delete window[`deviceListCallback_${r}`],e(t)};const n=setTimeout((()=>{delete window[`deviceListCallback_${r}`]}),1e4),o={action:"requestPushToken",requestId:r,callbackName:`deviceListCallback_${r}`};Ue.triggerBridge(o)||clearTimeout(n)}))),[]),f=(0,t.useCallback)((()=>new Promise(((e,t)=>{const r=Date.now().toString();window[`promotionCallback_${r}`]=t=>{clearTimeout(n),delete window[`promotionCallback_${r}`],e(t)};const n=setTimeout((()=>{delete window[`promotionCallback_${r}`],e(null)}),1e4),o={action:"requestActivePromotion",requestId:r,callbackName:`promotionCallback_${r}`};Ue.triggerBridge(o)||(clearTimeout(n),delete window[`promotionCallback_${r}`],e(null))}))),[]),p=(0,t.useCallback)(((e,t)=>new Promise(((r,n)=>{const o=Date.now().toString();window[`promotionCallback_${o}`]=e=>{clearTimeout(a),delete window[`promotionCallback_${o}`],r(e)};const a=setTimeout((()=>{delete window[`promotionCallback_${o}`],r(null)}),1e4),i={action:"requestMarkPromotionRead",requestId:o,callbackName:`promotionCallback_${o}`,promotionId:e,targetUrl:t};Ue.triggerBridge(i)||(clearTimeout(a),delete window[`promotionCallback_${o}`],r(null))}))),[]);(0,t.useEffect)((()=>{Fk||f().then((e=>{null!==e&&void 0!==e&&e.success&&c(e)})).catch((()=>{c(null)}))}),[]),(0,t.useEffect)((()=>{r.customerInfo.isAnonymous||((async()=>{n.getCurrentUserInfo((e=>{a(e.data)}))})(),Fk||u().then((e=>{s(Boolean(null===e||void 0===e?void 0:e.enabled))})).catch((e=>{console.error("Failed to get notification status:",e),s(null)})))}),[]);const h=e=>{let{targetPath:t,link:r="",notifyEnable:n=!1,param:o=null}=e;var a=new URL(window.location.href);r?a=new URL(r):(a.searchParams.delete("displayType"),a.pathname=t),o&&Object.entries(o).forEach((e=>{let[t,r]=e;a.searchParams.set(t,r)}));const i=`ssm://UI/webview/open?${new URLSearchParams({url:a.toString(),...n&&{notifyName:"UserProfileChanged"}})}`;Ue.triggerScheme(i)};return(0,qh.jsx)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:(0,qh.jsxs)($T.A,{disablePadding:!0,children:[(0,qh.jsx)(lO,{onClick:()=>{r.customerInfo.isAnonymous?Ue.triggerBridge({action:"requestLogin"}):h({targetPath:"me",notifyEnable:!0})},sx:{height:"80px"},children:r.customerInfo.isAnonymous?(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)(iD.A,{primary:e("setting.loginRegist"),secondary:e("pages.sesameAccessControlDevice.index.Email")})}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(iD.A,{primary:o.name||o.email,secondary:o.email}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(zP,{sx:{fontSize:50,color:"title.light"}})})]})}),!Fk&&(0,qh.jsxs)(lO,{onClick:async()=>{const e=await d();h({targetPath:"device-notify",param:e})},children:[(0,qh.jsx)(iD.A,{primary:e("setting.enableNotification"),secondary:null==i?null:e(i?"setting.notificationEnabled":"setting.notificationDisabled"),secondaryTypographyProps:{sx:{color:"text.other",fontSize:"0.875rem"}}}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(fU.A,{component:jN})})]}),(0,qh.jsxs)(lO,{onClick:()=>{const e=(null===l||void 0===l?void 0:l.targetUrl)||YD.shop;null!==l&&void 0!==l&&l.promotionId&&l.visible&&(c({...l,visible:!1}),p(l.promotionId,e)),h({link:e})},children:[(0,qh.jsx)(iD.A,{primary:(0,qh.jsxs)(ym,{component:"span",sx:{position:"relative",display:"inline-block",pr:"24px"},children:[e("setting.shop"),(null===l||void 0===l?void 0:l.visible)&&(0,qh.jsx)(ym,{component:"span",sx:{position:"absolute",top:"-4px",right:"2px",width:"20px",height:"20px",borderRadius:"50%",bgcolor:"#f44336"}})]})}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:""}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(fU.A,{component:jN})})]})]})})},use=()=>{const{gManageDevice:e,setSnackbarValue:r}=(0,t.useContext)(VI),{t:n}=Fv(),[o]=xv(),[a,i]=(0,t.useState)(Fk?null:o.get("pushToken"));(0,t.useEffect)((()=>{Fk&&Uk("pushInfo").then((e=>{let{data:t}=e;return i(t.pushToken)})).catch((e=>r({open:!0,msg:e.message})))}),[]);const[s,l]=(0,t.useState)([]);(0,t.useEffect)((()=>{a&&e.getDevicesNotifyStatus({pushToken:a},(e=>{e.success?l(e.data):r({open:!0,msg:e.message||n("appHome.networkError")})}))}),[a]);const c=(0,t.useCallback)((t=>{let{pushToken:o,deviceUUID:a,enablePush:i}=t;e.switchDeviceNotify({pushToken:o,deviceUUID:a,enablePush:i},(e=>{e.success?l((e=>e.map((e=>e.deviceUUID===a?{...e,enablePush:i}:e)))):r({open:!0,msg:e.message||n("appHome.networkError")})}))})),u=(0,t.useCallback)((()=>{Ue.triggerBridge({action:"requestNotificationSettings"})}),[]);return(0,qh.jsx)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:(0,qh.jsxs)($T.A,{disablePadding:!0,children:[s.length>0&&(0,qh.jsx)(ym,{sx:{bgcolor:"secondary.light",p:2},children:(0,qh.jsx)(Bh.A,{onClick:u,sx:{fontWeight:"bold",textDecoration:"underline",cursor:"pointer"},children:n("pages.sesameAccessControlDevice.index.NotifyCenterHint")})}),s.map(((e,r)=>(0,qh.jsxs)(t.Fragment,{children:[(0,qh.jsxs)(lO,{children:[(0,qh.jsx)(iD.A,{primary:e.deviceName,sx:{flex:1}}),(0,qh.jsx)(rB,{edge:"end",checked:e.enablePush,onChange:t=>{c({pushToken:a,deviceUUID:e.deviceUUID,enablePush:t.target.checked})}})]}),r<s.length-1&&(0,qh.jsx)(mM,{light:!0,variant:"middle"})]},e.deviceUUID)))]})})},dse=e=>{let{open:t,title:r,confirmText:n,confirmColor:o="#FF3B30",onConfirm:a,onClose:i}=e;const{t:s}=Fv();return(0,qh.jsxs)(QO,{anchor:"bottom",open:t,onClose:i,PaperProps:{sx:{bgcolor:"transparent",boxShadow:"none",p:"8px",pb:"calc(8px + env(safe-area-inset-bottom))"}},children:[(0,qh.jsxs)(ym,{sx:{mb:"8px",borderRadius:"14px",overflow:"hidden",bgcolor:"rgba(248,248,248,0.95)",backdropFilter:"blur(20px)"},children:[r&&(0,qh.jsx)(ym,{sx:{px:2,py:1.25,textAlign:"center",fontSize:"13px",color:"rgba(60,60,67,0.6)",borderBottom:"0.5px solid rgba(60,60,67,0.29)"},children:r}),(0,qh.jsx)(ym,{onClick:a,sx:{py:"16px",textAlign:"center",fontSize:"20px",color:o,cursor:"pointer"},children:n||s("setting.delete")})]}),(0,qh.jsx)(ym,{onClick:i,sx:{borderRadius:"14px",bgcolor:"#fff",py:"16px",textAlign:"center",fontSize:"20px",fontWeight:600,color:"#007AFF",cursor:"pointer"},children:s("setting.cancel")})]})},fse=()=>{var e;const{t:r}=Fv(),{gStripe:n,gManageEmployee:o}=(0,t.useContext)(VI),[a,i]=(0,t.useState)({}),[s,l]=(0,t.useState)(null),[c,u]=(0,t.useState)(null),d=(0,t.useSyncExternalStore)(mT.subscribe,mT.getSnapshot),f=Fk?d:c,[p,h]=(0,t.useState)(null),[m,g]=(0,t.useState)(null),[v,y]=(0,t.useState)(null),b=(0,t.useCallback)((()=>new Promise(((e,t)=>{const r=Date.now().toString();window[`deviceListCallback_${r}`]=t=>{delete window[`deviceListCallback_${r}`],e(t)};const n=setTimeout((()=>{delete window[`deviceListCallback_${r}`]}),1e4),o={action:"requestNotificationStatus",requestId:r,callbackName:`deviceListCallback_${r}`};Ue.triggerBridge(o)||clearTimeout(n)}))),[]),w=(0,t.useCallback)((()=>new Promise(((e,t)=>{const r=Date.now().toString();window[`deviceListCallback_${r}`]=t=>{delete window[`deviceListCallback_${r}`],e(t)};const n=setTimeout((()=>{delete window[`deviceListCallback_${r}`]}),1e4),o={action:"requestPushToken",requestId:r,callbackName:`deviceListCallback_${r}`};Ue.triggerBridge(o)||clearTimeout(n)}))),[]),x=(0,t.useCallback)((()=>new Promise(((e,t)=>{const r=Date.now().toString();window[`promotionCallback_${r}`]=t=>{clearTimeout(n),delete window[`promotionCallback_${r}`],e(t)};const n=setTimeout((()=>{delete window[`promotionCallback_${r}`],e(null)}),1e4),o={action:"requestActivePromotion",requestId:r,callbackName:`promotionCallback_${r}`};Ue.triggerBridge(o)||(clearTimeout(n),delete window[`promotionCallback_${r}`],e(null))}))),[]),S=(0,t.useCallback)(((e,t)=>new Promise(((r,n)=>{const o=Date.now().toString();window[`promotionCallback_${o}`]=e=>{clearTimeout(a),delete window[`promotionCallback_${o}`],r(e)};const a=setTimeout((()=>{delete window[`promotionCallback_${o}`],r(null)}),1e4),i={action:"requestMarkPromotionRead",requestId:o,callbackName:`promotionCallback_${o}`,promotionId:e,targetUrl:t};Ue.triggerBridge(i)||(clearTimeout(a),delete window[`promotionCallback_${o}`],r(null))}))),[]),A=(0,t.useCallback)((()=>new Promise((e=>{const t=Date.now().toString(),r=`requestAuthState_${t}`;window[r]=t=>{delete window[r],e(t)};const n=setTimeout((()=>{delete window[r],e(null)}),1e4);Ue.triggerBridge({action:"requestAuthState",requestId:t,callbackName:r})||(clearTimeout(n),delete window[r],e(null))}))),[]),k=(0,t.useCallback)((()=>new Promise((e=>{const t=Date.now().toString(),r=`requestAppVersion_${t}`;window[r]=t=>{delete window[r],e(t)};const n=setTimeout((()=>{delete window[r],e(null)}),1e4);Ue.triggerBridge({action:"requestAppVersion",requestId:t,callbackName:r})||(clearTimeout(n),delete window[r],e(null))}))),[]),C=(0,t.useCallback)((()=>new Promise((e=>{const t=Date.now().toString(),r=`requestSignOut_${t}`;window[r]=t=>{delete window[r],e(t)},Ue.triggerBridge({action:"requestSignOut",requestId:t,callbackName:r})||(delete window[r],e(null))}))),[]);(0,t.useEffect)((()=>{Fk||x().then((e=>{null!==e&&void 0!==e&&e.success&&u(e)})).catch((()=>{u(null)}))}),[]),(0,t.useEffect)((()=>{A().then((e=>e&&h(e))),k().then((e=>e&&g(e)))}),[A,k]),(0,t.useEffect)((()=>{n.customerInfo.isAnonymous||(async()=>{o.getCurrentUserInfo((e=>{i(e.data)}),!0)})(),b().then((e=>{l(Boolean(null===e||void 0===e?void 0:e.enabled))})).catch((e=>{console.error("Failed to get notification status:",e),l(null)}))}),[]);const I=e=>{let{targetPath:t,link:r="",notifyEnable:n=!1,param:o=null}=e;var a=new URL(window.location.href);r?a=new URL(r):(a.searchParams.delete("displayType"),a.pathname=t),o&&Object.entries(o).forEach((e=>{let[t,r]=e;a.searchParams.set(t,r)}));const i=`ssm://UI/webview/open?${new URLSearchParams({url:a.toString(),...n&&{notifyName:"UserProfileChanged"}})}`;Ue.triggerScheme(i)},E=()=>{Ue.triggerBridge({action:"requestLogin",url:`${window.location.origin}/login`})},D=async()=>{const e=await C();null!==e&&void 0!==e&&e.success&&h({signedIn:!1,state:"signedOut"})};return(0,qh.jsxs)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:[(0,qh.jsxs)(ym,{sx:{minHeight:Fk?"calc(100dvh - 64px - env(safe-area-inset-bottom))":"100vh",display:"flex",flexDirection:"column"},children:[(0,qh.jsxs)($T.A,{disablePadding:!0,children:[(0,qh.jsx)(lO,{onClick:()=>{n.customerInfo.isAnonymous?E():I({targetPath:"me",notifyEnable:!0})},sx:{height:"80px"},children:n.customerInfo.isAnonymous?(0,qh.jsx)(qh.Fragment,{children:(0,qh.jsx)(iD.A,{primary:r("setting.loginRegist"),secondary:r("pages.sesameAccessControlDevice.index.Email"),primaryTypographyProps:{sx:{fontWeight:"bold"}}})}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(iD.A,{primary:a.name||a.email,secondary:a.email,primaryTypographyProps:{sx:{fontWeight:"bold"}}}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(zP,{sx:{fontSize:50,color:"title.light"}})})]})}),(0,qh.jsxs)(lO,{onClick:async()=>{if(Fk)I({targetPath:"device-notify"});else{const e=await w();I({targetPath:"device-notify",param:e})}},children:[(0,qh.jsx)(iD.A,{primary:r("setting.enableNotification"),secondary:null==s?null:r(s?"setting.notificationEnabled":"setting.notificationDisabled"),secondaryTypographyProps:{sx:{color:"text.other",fontSize:"0.875rem"}}}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(fU.A,{component:jN})})]}),(0,qh.jsxs)(lO,{onClick:async()=>{const e=(null===f||void 0===f?void 0:f.targetUrl)||YD.shop;null!==f&&void 0!==f&&f.promotionId&&f.visible&&(u({...f,visible:!1}),Fk?await mT.markRead(f.promotionId,e).catch((()=>{})):S(f.promotionId,e)),I({link:e})},children:[(0,qh.jsx)(iD.A,{primary:(0,qh.jsxs)(ym,{component:"span",sx:{position:"relative",display:"inline-block",pr:"24px"},children:[r("setting.shop"),(null===f||void 0===f?void 0:f.visible)&&(0,qh.jsx)(ym,{component:"span",sx:{position:"absolute",top:"-4px",right:"2px",width:"16px",height:"16px",borderRadius:"50%",bgcolor:"#f44336"}})]})}),(0,qh.jsx)(Bh.A,{sx:{color:"title.other"},children:""}),(0,qh.jsx)(cD,{sx:{minWidth:"auto"},children:(0,qh.jsx)(fU.A,{component:jN})})]})]}),(0,qh.jsx)(ym,{sx:{flexGrow:1}}),(0,qh.jsx)(Bh.A,{onClick:()=>{let e="https://testflight.apple.com/join/Rok4GOFD";(Ok||window.AndroidHandler)&&(e="https://github.com/CANDY-HOUSE/SesameSDK_Android_with_DemoApp/releases/latest/download/Sesame_android_release.apk"),Ue.triggerBridge({action:"requestOpenExternalURL",url:e})},sx:{textAlign:"center",pb:2,color:"rgba(0,0,25,0.22)"},children:null!==(e=null===m||void 0===m?void 0:m.display)&&void 0!==e?e:""})]}),(null===p||void 0===p?void 0:p.signedIn)&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(ym,{onClick:()=>y({title:r("setting.logout"),onConfirm:D}),sx:{height:"50px",display:"flex",alignItems:"center",justifyContent:"center",bgcolor:"#F2F2F7",fontSize:"15px",color:"#000",cursor:"pointer"},children:r("setting.logout")}),(0,qh.jsx)(ym,{sx:{height:"500px"}}),(0,qh.jsx)(ym,{onClick:()=>y({title:r("setting.deleteAccount"),onConfirm:D}),sx:{height:"50px",display:"flex",alignItems:"center",justifyContent:"center",bgcolor:"#F2F2F7",fontSize:"15px",color:"#000",cursor:"pointer"},children:r("setting.deleteAccount")})]}),(0,qh.jsx)(dse,{open:!!v,title:null===v||void 0===v?void 0:v.title,onConfirm:()=>{const e=null===v||void 0===v?void 0:v.onConfirm;y(null),e&&e()},onClose:()=>y(null)})]})},pse=[{router:"/",component:bL},{router:"/contacts",component:qie},{router:"/contact-add",component:()=>(0,qh.jsx)(ym,{sx:{width:"100%",bgcolor:"background.paper"},children:(0,qh.jsx)(gie,{completionCallback:e=>{var t,r;if(!e.success)return;const n=null===(t=e.data.Attributes.find((e=>"sub"===e.Name)))||void 0===t?void 0:t.Value,o=null===(r=e.data.Attributes.find((e=>"email"===e.Name)))||void 0===r?void 0:r.Value,a=new URLSearchParams(new URLSearchParams(window.location.search));a.set("uid",n),a.set("email",o),(e=>{const{protocol:t,host:r}=new URL(window.location.href),n=`ssm://UI/webview/open?${new URLSearchParams({notifyName:"FriendChanged",url:`${t}//${r}/biz/employees/list-item?${e}`})}`;Ue.triggerScheme(n)})(a.toString()),setTimeout((()=>{(()=>{const e=`ssm://UI/webview/notify?${new URLSearchParams({notifyName:"RefreshList"})}`;Ue.triggerScheme(e)})()}),0)}})}),load:!0},{router:"/me",components:[{router:"index",component:cse},{router:"homepage",component:fse},{router:"",component:ese}]},{router:"/biz",component:ZI},{router:"/vision",components:[{router:"",component:function(){return(0,qh.jsx)(Qie,{})}}],load:!0},{router:"/biz/employees",components:[{router:"list",component:bie},{router:"list-item",component:fie},{router:"group",component:sie},{router:"group-item",component:iie},{router:"role",component:wie}]},{router:"/biz/devices",components:[{router:"list",component:bL},{router:"list-item",component:oie},{router:"device-share",component:qae},{router:"group-share",component:rie},{router:"group",component:nie},{router:"group-item",component:eie}]},{router:"/biz/access-control",components:[{router:"index",component:bL},{router:"region",component:function(){var e,r;const n=hg(),{gManageDevice:o,gMediaType:a}=(0,t.useContext)(VI),{t:i}=Fv(),{navigateToDeviceSetting:s}=yL(),[c]=xv(),u=c.get("deviceUUID")||"",d=c.get("deviceName")||"",f=(0,t.useMemo)((()=>o.companyDevices.find((e=>e.deviceUUID===u))||{}),[o.companyDevices,u]);return(0,qh.jsxs)(ym,{sx:{bgcolor:"#FBFBFB",overscrollBehavior:"none",minHeight:"100vh"},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:a.isMobile?0:4,pt:2},children:[(0,qh.jsxs)(cE.A,{onClick:()=>n(-1),disableRipple:!0,children:[(0,qh.jsx)(ZL,{sx:{ml:-1}}),(0,qh.jsx)(Bh.A,{variant:"h3",sx:{color:"black"},children:d})]}),a.isMobile&&Dh.isOPSModel(f.deviceModel)?(0,qh.jsx)(cE.A,{onClick:()=>s(f),disableRipple:!0,children:(0,qh.jsx)(LN,{sx:{color:"black"}})}):null]}),(0,qh.jsx)(EO,{container:!0,spacing:2,sx:{py:2,px:a.isMobile?0:4,"& > *":{"& > .MuiBox-root, & > .MuiCard-root":{backgroundColor:"white",height:"100%"},"& .MuiTypography-h4":{p:1,fontWeight:"bold",pb:0}}},children:a.isMobile?(0,qh.jsx)(EO,{size:12,children:Dh.isOPSModel(f.deviceModel)?(0,qh.jsx)(EU,{}):(0,qh.jsx)(Dae,{showBack:!1})}):(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(EO,{size:4,sx:{height:"500px",overflowY:"auto"},children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:i("deviceMember.user")}),(0,qh.jsx)(iB,{deviceUUID:u,defaultManageMode:!0})]})}),(0,qh.jsx)(EO,{size:4,sx:{height:"500px"},children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:i("\u9023\u643a\u6e08\u307f\u30bb\u30b5\u30df")}),(0,qh.jsx)(ym,{sx:{px:2},children:(0,qh.jsx)(pF,{device:f,editable:!1})})]})}),(0,qh.jsx)(EO,{size:4,sx:{height:"500px"},children:(0,qh.jsx)(Dae,{showBack:!1})}),Dh.isOPSModel(f.deviceModel)&&(0,qh.jsx)(EO,{size:12,sx:{height:"560px"},children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:i("pages.sesameAccessControlDevice.index.history","\u5c65\u6b74")}),(0,qh.jsx)(EU,{deviceUUID:u,showToolBar:!0})]})}),(0,qh.jsx)(EO,{size:12,children:(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{variant:"h4",children:i("pages.sesameAccessControlDevice.index.Battery")}),(0,qh.jsx)(wne,{deviceUUID:u})]})}),Dh.isSesameAccessControlDevice(f.deviceModel)&&(0,qh.jsx)(EO,{size:{xs:12,md:12},sx:{height:"500px"},children:(0,qh.jsx)(ym,{children:(0,qh.jsx)(wae,{isMobile:a.isMobile,model:f.deviceModel,cc:(null===(e=f.stateInfo)||void 0===e?void 0:e.cards_num)||0,pc:(null===(r=f.stateInfo)||void 0===r?void 0:r.keyboards_num)||0,call:e=>{let t={title:f.deviceName,uuid:f.deviceUUID},r="";e===l.sesameTouchProAuthType.card?r="/biz/access-control/cards":e===l.sesameTouchProAuthType.password&&(r="/biz/access-control/passwords"),n(r,{state:t})}})})})]})})]})}},{router:"cards",component:function(){const e=(0,t.useRef)(null),r=(0,t.useRef)(null),n=dg(),o=hg(),{state:a={}}=n,{gManageAuthData:i,gManageDevice:c,setModalTitle:u,setCustomModalOpen:d,setModalContent:f,gManageEmployee:p,gMediaType:h}=(0,t.useContext)(VI),m=(0,t.useRef)(null),[g,v]=(0,t.useState)([]),{title:y}=a||"",[b,w]=(0,t.useState)([]),{sendCmd:x}=hI(),{uploadCardBatch:S,uploadState:A}=hae(x),{isExporting:k,exportCards:C}=mae();(0,t.useEffect)((()=>{c.filteredAccessControlDevices.length>0&&i.fetchNfcCards()}),[c.filteredAccessControlDevices.length]),(0,t.useEffect)((()=>{a.uuid&&v(I)}),[i.nfcCards]);const I=(0,t.useMemo)((()=>i.nfcCards.filter((e=>e.deviceID===a.uuid)).sort(((e,t)=>t.timestamp-e.timestamp))),[i.nfcCards]);(0,t.useEffect)((()=>{var e;if(!i.nfcCardFetchState.done)return;const t=c.filteredAccessControlDevices.find((e=>e.deviceUUID===a.uuid));t&&(null===(e=t.stateInfo)||void 0===e?void 0:e.cards_num)!==I.length&&M()}),[i.nfcCardFetchState.done]);const E=async e=>{u(""),f((0,qh.jsx)(fae,{msg:e,onClick:()=>{d(!1)}})),d(!0)};dI(l.cmdCode.SSM_OS3_CARD_MODE_SET,(async(t,r)=>{var n;r.op===l.cmdCode.SSM_OS3_CARD_MODE_SET&&r.stpUUID===a.uuid&&(null===(n=e.current)||void 0===n||n.setReadCardContent(r.status))}));const D=new Set,T=async(e,t)=>{if(!t||"object"!==typeof t||!t.c)return;const{cardID:r}=Ue.parseHexStrToCardInfo(t.c),n=`${r}`;D.has(n)||(D.add(n),w((e=>e.includes(r)?e:[...e,r])))},O=(0,t.useMemo)((()=>b.length<1?[]:g.filter((e=>b.includes(e.cardID)))),[b,g]),M=()=>{P&&i.clearCards(a.uuid,(e=>{i.getAllCards(a.uuid)}))},P=(0,t.useMemo)((()=>{var e;const t=c.filteredAccessControlDevices.find((e=>e.deviceUUID===a.uuid));return Boolean(null===t||void 0===t||null===(e=t.stateInfo)||void 0===e?void 0:e.wm2State)}),[a.uuid,c.filteredAccessControlDevices]),j=async e=>{await x(Ue.buildPayloadModeSet({uuid:a.uuid,type:s.card,insertOn:e})),w([]),D.clear(),e?dI(l.cmdCode.SSM_OS3_CARD_CHANGE,T):fI(l.cmdCode.SSM_OS3_CARD_CHANGE)},R=(0,t.useMemo)((()=>(0,qh.jsx)(nae,{ref:e,isShowCsv:!h.isMobile,style:{marginTop:"0px"},csvLoading:"Idle"!==A,csvData:async e=>{if(d(!1),c.getWifiState(a.uuid)){let t=[],r=!0;e.forEach((e=>{let n={};if(e.id||e.ID||e.cardID){if(n.cardID=e.id||e.ID||e.cardID,n.nameUUID=String(e.\u30ab\u30fc\u30c9\u540d||e.name||""),n.cardType=e.cardType||"02",e.\u30e6\u30fc\u30b6\u30fc){let t=p.employees.Items.find((t=>t.subUUID===e.\u30e6\u30fc\u30b6\u30fc));t&&(n.memberID=t.subUUID)}t.push(n)}else r=!1})),!0===r?await(async e=>{if(!Array.isArray(e)||0===e.length)return void console.warn("[cards][sendDataToSesameTouchPro] Invalid input: list must be a non-empty array");const t=Ue.buildNameUUIDMappedDataList(e),r=await S({deviceUUID:a.uuid,list:t}),n=r.list.map((e=>({...e,nameUUID:Ue.insertUUIDIsolationCharacter(e.nameUUID.toLowerCase())})));i.postCards({deviceUUID:r.deviceUUID,list:n,cb:e=>{}})})(t):(async()=>{E("\u6709\u52b9\u306a\u30ab\u30fc\u30c9\u540d\u304a\u3088\u3073ID\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3044\u305a\u308c\u3082\u7a7a\u6b04\u3067\u306f\u767b\u9332\u3067\u304d\u307e\u305b\u3093\u3002")})()}},data:Dh.authText.fontCfpCards,goSet:async e=>{j(e)},mdatas:O,addCard:e=>{const t={cardID:e.cardID,name:e.name,cardNameUUID:e.nameUUID,ownerSubUUID:e.memberID,timestamp:(new Date).getTime(),cardType:e.cardType||"",stpDeviceUUID:e.deviceID};i.updateCardName(t,(r=>{w((t=>t.filter((t=>t!==e.cardID)))),i.updateCardOwner(t,(()=>{})),r.success}))}})),[h.isMobile,A,a.uuid,Dh.authText.fontCfpCards,O,p.employees.Items]);return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(XP,{ref:r,isMobile:h.isMobile,popupComponent:R,onClose:()=>{j(!1)},children:(0,qh.jsx)(dae,{isMobile:h.isMobile,isAdd:!1,credentialExport:{type:"cards",onExportAll:async e=>{try{0===await C(a.uuid,e)&&E("\u3053\u306e\u8a8d\u8a3c\u6a5f\u5668\u3067\u4f7f\u7528\u3055\u308c\u305f\u30ab\u30fc\u30c9\u306e\u30c7\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093\u3002")}catch(t){console.error("[cards][handleExportAllCards]",t),E("\u30ab\u30fc\u30c9\u30c7\u30fc\u30bf\u306e\u53d6\u5f97\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u6642\u9593\u3092\u304a\u3044\u3066\u518d\u5ea6\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002")}},isExporting:k},data:g,isBind:!1,isBack:!0,text:y,columns:PU.cardColumns({gManageEmployee:p,click:()=>{},ref:m,listDevices:c.filteredAccessControlDevices}),callAdd:()=>{r.current.handleOpen()},callRowClick:e=>{o({pathname:"/biz/cards/details",search:Bg({did:g[e].cardID}).toString()})},callDelData:e=>{P&&i.sendDelCardsCmd(a.uuid,e)},callSearch:e=>{if(e){const t=I.filter((t=>{var r,n;const o=p.findEmployeeById(t.subUUID),a=null===o||void 0===o||null===(r=o.employeeName)||void 0===r?void 0:r.includes(e),i=Ue.formatCardID(t.cardID).includes(e.toLowerCase()),s=t.cardID.toLowerCase().includes(e.toLowerCase());return(null===(n=t.name)||void 0===n?void 0:n.includes(e))||a||i||s}));v(t)}else v(I)},callRefresh:P?e=>{M()}:null})}),(0,qh.jsxs)(eM.A,{sx:{color:"#fff",zIndex:e=>e.zIndex.drawer+1,display:"flex",flexDirection:"column",gap:2},open:k,children:[(0,qh.jsx)(AE,{color:"inherit"}),(0,qh.jsx)("div",{children:"\u30ab\u30fc\u30c9\u30c7\u30fc\u30bf\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u4e2d..."})]})]})}},{router:"passwords",component:function(){const e=(0,t.useRef)(null),r=(0,t.useRef)(null),n=dg(),o=hg(),{state:a={}}=n,{gManageAuthData:i,gManageDevice:c,setModalTitle:u,setCustomModalOpen:d,setModalContent:f,gMediaType:p}=(0,t.useContext)(VI),h=(0,t.useRef)(null),[m,g]=(0,t.useState)([]),{title:v}=a||"",[y,b]=(0,t.useState)([]),{sendCmd:w}=hI(),{uploadPasswordBatch:x,uploadState:S}=yae(w),[A,k]=(0,t.useState)({passwordID:"",name:"",loading:!1}),C=(0,t.useMemo)((()=>A.passwordID&&A.name),[A]);(0,t.useEffect)((()=>{c.filteredAccessControlDevices.length>0&&i.fetchPasscodes()}),[c.filteredAccessControlDevices.length]),(0,t.useEffect)((()=>{a.uuid&&g(I)}),[i.passcodes]);const I=(0,t.useMemo)((()=>i.passcodes.filter((e=>e.deviceID===a.uuid)).sort(((e,t)=>t.timestamp-e.timestamp))),[i.passcodes,a.uuid]);(0,t.useEffect)((()=>{var e;if(!i.passcodeFetchState.done)return;const t=c.filteredAccessControlDevices.find((e=>e.deviceUUID===a.uuid));t&&(null===(e=t.stateInfo)||void 0===e?void 0:e.keyboards_num)!==I.length&&O()}),[i.passcodeFetchState.done]),dI(l.cmdCode.SSM_OS3_PASSCODE_MODE_SET,(async(t,r)=>{var n;r.op===l.cmdCode.SSM_OS3_PASSCODE_MODE_SET&&r.stpUUID===a.uuid&&(null===(n=e.current)||void 0===n||n.setReadCardContent(r.status))}));const E=new Set,D=async(e,t)=>{if(!t||"object"!==typeof t||!t.p)return;const{passwordID:r}=Ue.parseHexStrToPasscodeInfo(t.p),n=`${r}`;E.has(n)||(E.add(n),b((e=>e.includes(r)?e:[...e,r])))},T=(0,t.useMemo)((()=>y.length<1?[]:m.filter((e=>y.includes(e.passwordID)))),[y,m]),O=()=>{M&&i.clearPasswords(a.uuid,(e=>{i.getAllPasscodes(a.uuid)}))},M=(0,t.useMemo)((()=>{var e;const t=c.filteredAccessControlDevices.find((e=>e.deviceUUID===a.uuid));return Boolean(null===t||void 0===t||null===(e=t.stateInfo)||void 0===e?void 0:e.wm2State)}),[a.uuid,c.filteredAccessControlDevices]),P=(e,t)=>{const r={keyBoardPassCode:e.passwordID,name:e.name||"",keyBoardPassCodeNameUUID:e.nameUUID||"",timestamp:(new Date).getTime(),type:e.passwordType||"",stpDeviceUUID:a.uuid};i.updatePasswordName(r,(e=>{t&&t(e)}))},j=async e=>{await w(Ue.buildPayloadModeSet({uuid:a.uuid,type:s.password,insertOn:e})),b([]),E.clear(),e?dI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE,D):fI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE)},R=(0,t.useMemo)((()=>(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(nae,{ref:e,isShowCsv:!p.isMobile,style:{marginTop:"0px"},csvLoading:"Idle"!==S,csvData:async e=>{if(d(!1),c.getWifiState(a.uuid)){let t=[],n=!0;e.forEach((e=>{let r={};const o=e.\u6697\u8a3c\u756a\u53f7;o&&/^\d+$/.test(o)?(r.passwordID=Ue.formatPasscodeID(e.\u6697\u8a3c\u756a\u53f7||e.passwordID),r.nameUUID=String(e.\u6697\u8a3c\u756a\u53f7\u540d||e.nameUUID||""),t.push(r)):n=!1})),!0===n?await(async e=>{var t;if(!Array.isArray(e)||0===e.length)return void console.warn("[passwords][sendDataToSesameTouchPro] Invalid input: list must be a non-empty array");const n=Ue.buildNameUUIDMappedDataList(e),o=await x({deviceUUID:a.uuid,list:n}),s=o.list.map(((e,t)=>({...e,nameUUID:Ue.insertUUIDIsolationCharacter(e.nameUUID.toLowerCase())})));i.postPasscodes({deviceUUID:o.deviceUUID,list:s,cb:e=>{}}),null===(t=r.current)||void 0===t||t.handleClose()})(t):(async()=>{u(""),f((0,qh.jsx)(fae,{msg:"\u6709\u52b9\u306a\u30d1\u30b9\u30ef\u30fc\u30c9\u540d\u304a\u3088\u3073\u30b3\u30fc\u30c9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3044\u305a\u308c\u3082\u7a7a\u6b04\u3067\u306f\u767b\u9332\u3067\u304d\u307e\u305b\u3093\u3002",onClick:()=>{d(!1)}})),d(!0)})()}},data:Dh.authText.fontCfpPw,goSet:async e=>{j(e)},isBindMm:!1,tagTitle:"\u6697\u8a3c\u756a\u53f7\u540d",id:"passwordID",mdatas:T,addCard:e=>{P(e,(t=>{b((t=>t.filter((t=>t!==e.passwordID))))}))}}),(0,qh.jsxs)(JI,{sx:{px:3.5,pb:0},children:[(0,qh.jsx)(Bh.A,{variant:"h3",children:"\u6697\u8a3c\u756a\u53f7\u3092\u624b\u5165\u529b"}),(0,qh.jsxs)(RU.Ay,{container:!0,spacing:1,sx:{pt:0,mt:1,lineHeight:3},children:[(0,qh.jsx)(RU.Ay,{item:!0,xs:4,children:(0,qh.jsx)(GD.A,{size:"small",label:"\u6697\u8a3c\u756a\u53f7",variant:"filled",fullWidth:!0,required:!0,value:A.passwordID,onChange:e=>{k((t=>({...t,passwordID:e.target.value.trim().replace(/\D/g,"")})))}})}),(0,qh.jsx)(RU.Ay,{item:!0,xs:4,children:(0,qh.jsx)(GD.A,{size:"small",label:"\u6697\u8a3c\u756a\u53f7\u540d",variant:"filled",fullWidth:!0,required:!0,value:A.name,onChange:e=>{k((t=>({...t,name:e.target.value.trim()})))}})}),(0,qh.jsx)(RU.Ay,{item:!0,xs:3,children:(0,qh.jsx)(RE,{sx:{minWidth:"64px",height:"40px"},loading:A.loading,variant:"outlined",size:"small",disabled:!C,onClick:e=>{e.preventDefault(),(async()=>{const e=Ue.buildPayloadPasscodeAdd({password:Ue.formatPasscodeID(A.passwordID)});let t=Te.hp.from(e).toString("base64"),n={topic:`stp${a.uuid}cmd`,payload:t,op:l.cmdCode.SSM_OS3_PASSCODE_ADD};await w(n),k((e=>({...e,loading:!0}))),dI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE,(async(e,t)=>{var n;const o=Ue.parseHexStrToPasscodeInfo(t.p);P({...o,name:A.name},(e=>{k({passwordID:"",name:"",loading:!1})})),fI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE),null===(n=r.current)||void 0===n||n.handleClose()}))})()},children:"\u767b\u9332"})})]})]})]})),[p.isMobile,S,a.uuid,Dh.authText.fontCfpPw,T,A.passwordID,A.name,A.loading,C]);return(0,qh.jsx)(XP,{ref:r,isMobile:p.isMobile,popupComponent:R,onClose:()=>{j(!1)},children:(0,qh.jsx)(dae,{isMobile:p.isMobile,isAdd:!1,credentialExport:{type:"passcodes"},data:m,isBind:!1,isBack:!0,text:v,columns:PU.passwordColumns({ref:h,listDevices:c.filteredAccessControlDevices}),callAdd:()=>{r.current.handleOpen()},callRowClick:e=>{o({pathname:"/biz/access-control/password-details",search:Bg({did:m[e].passwordID,uuid:a.uuid}).toString()})},callDelData:e=>{M&&i.sendDelPasswordsCmd(a.uuid,e)},callSearch:e=>{if(e){const t=I.filter((t=>{var r,n;const o=null===(r=Ue.convertHexPairsToDecimal(t.passwordID))||void 0===r?void 0:r.includes(e);return(null===(n=t.name)||void 0===n?void 0:n.includes(e))||o}));g(t)}else g(I)},callRefresh:M?e=>{O()}:null})})}},{router:"password-details",component:function(){const{t:e}=Fv(),r=hg(),[n]=xv(),o=n.get("did")||"",a=n.get("uuid")||"",{gManageDevice:i,setCustomModalOpen:s,setModalContent:c,gManageAuthData:u,setSnackbarValue:d,gMediaType:f}=(0,t.useContext)(VI),p=(0,t.useRef)({deviceIDs:[],cb:null}),{sendCmd:h}=hI(),m=(0,t.useMemo)((()=>u.findPasscodesByPasscodeID(o).sort(((e,t)=>e.timestamp-t.timestamp))),[u.passcodes,o]),g=(0,t.useMemo)((()=>({[ph]:m.map((e=>({title:i.findTouchName(e.deviceID),value:e.name,rawData:e})))})),[m]),v=async(e,t)=>{p.current={deviceIDs:e.map((e=>e.deviceUUID)),cb:t};const{passwordID:r,name:n}=m[0],o=Ue.buildPayloadPasscodeAdd({password:r});for(const a of e)await new Promise((e=>{dI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE,(async(t,r)=>{if(t!==a.deviceUUID)return;fI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE);const o=Ue.parseHexStrToPasscodeInfo(r.p);x({...o,name:n},(t=>{e()}))})),h({topic:`stp${a.deviceUUID}cmd`,payload:Te.hp.from(o).toString("base64"),op:l.cmdCode.SSM_OS3_PASSCODE_ADD})}));t&&t(),s(!1)},y=(0,t.useCallback)((async(e,t)=>{const r=Ue.hexStringToUint8Array(Ue.formatPasscodeID(e)),n=Ue.hexStringToUint8Array(o);let a=2+n.length+r.length,i=new Uint8Array(a);i[0]=l.cmdCode.STP_ITEM_CODE_PASSCODE_CHANGE_VALUE,i[1]=n.length,i.set(n,2),i.set(r,n.length+2),await h({topic:`stp${t.deviceID}cmd`,payload:Te.hp.from(i).toString("base64"),op:l.cmdCode.STP_ITEM_CODE_PASSCODE_CHANGE_VALUE})}),[o]),b=e=>{const t=new URL(window.location.href);t.searchParams.set("did",e),r(t.pathname+t.search,{replace:!0})},w=async(e,t)=>{for(const n of e){var r;const e=i.filteredAccessControlDevices.find((e=>e.deviceUUID===n.deviceID));if(!Boolean(null===e||void 0===e||null===(r=e.stateInfo)||void 0===r?void 0:r.wm2State))return;u.clearPasswords(n.deviceID,(e=>{u.getAllPasscodes(n.deviceID)})),await new Promise((e=>setTimeout(e,6e3)))}t&&t()},x=(e,t)=>{const r={keyBoardPassCode:e.passwordID,name:e.name||"",keyBoardPassCodeNameUUID:e.nameUUID||"",timestamp:(new Date).getTime(),type:e.passwordType||"",stpDeviceUUID:a};u.updatePasswordName(r,(e=>{t&&t(e)}))};return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(JI,{children:(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(cE.A,{onClick:()=>r(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-2}})}),(0,qh.jsx)(Bh.A,{variant:"h3",children:e("pages.login.ReturnToMailInput")})]})})}),(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"row",alignItems:"center",pl:"25px",mt:"0px"},children:[(0,qh.jsx)(Bh.A,{sx:{fontWeight:"bold",color:"#333",mr:6},children:hh}),(0,qh.jsx)(rT,{initialValue:Ue.convertHexPairsToDecimal(o),onSave:(e,t)=>{(async(e,t)=>{const r=[...m];for(const o of r)try{await new Promise((t=>{const r=setTimeout((()=>{fI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE),t()}),1e4);dI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE,(async(e,n)=>{e===o.deviceID&&(clearTimeout(r),fI(l.cmdCode.SSM_OS3_PASSCODE_CHANGE),t())})),y(e,o)}))}catch(n){console.error(`\u8bbe\u5907 ${o.deviceUUID} \u66f4\u65b0\u5bc6\u7801\u5931\u8d25:`,n)}w(r,(()=>{t&&t(!0),b(Ue.formatPasscodeID(e))}))})(e.trim().replace(/\D/g,""),t)}})]}),(0,qh.jsx)(vae,{isMobile:f.isMobile,style:{mt:0,pl:"25px"},data:g,onEdit:(e,t,r,n)=>{if(e===hh)return;const o=m[r]||{},a={keyBoardPassCode:o.passwordID,name:t,keyBoardPassCodeNameUUID:o.nameUUID||"",timestamp:(new Date).getTime(),type:o.passwordType||"",stpDeviceUUID:o.deviceID};u.updatePasswordName(a,(e=>{e.errMsg?(d({open:!0,msg:e.errMsg}),n(!1)):n(!0)}))},onDelete:(e,t)=>{(async e=>{let t=Ue.hexStringToUint8Array(e.passwordID),r=1+t.length,n=new Uint8Array(r);n[0]=l.cmdCode.SSM_OS3_PASSCODE_DELETE,n.set(t,1);let o=Te.hp.from(n).toString("base64"),a={topic:`stp${e.deviceID}cmd`,payload:o,op:l.cmdCode.SSM_OS3_PASSCODE_DELETE};await h(a)})(m[t])},onAdd:()=>{let t=i.filteredAccessControlDevices.filter((e=>Dh.canPasswordControl(e.deviceModel)&&!m[0].uuids.some((t=>t===e.deviceUUID))));c((0,qh.jsx)(vL,{loadingAble:!0,title:e("pages.sesameAccessControlDevice.index.SelectAuthenticationDevice"),setOpenModal:s,selectableRows:"multiple",handleClose:()=>s(!1),data:t,handleCheck:v,isWifi:!0})),s(!0)}})]})}},{router:"ir-type",component:function(){const e=hg(),{t:r}=Fv(),[n]=xv(),o=n.get("hub3DeviceId")||"",{gMediaType:a,gStripe:i}=(0,t.useContext)(VI),s=a.isMobile,l=[{id:"air",type:49152,name:r("pages.ir.list.airConditioner"),icon:(0,qh.jsx)(Nne,{})},{id:"tv",type:8192,name:r("pages.ir.list.tv"),icon:(0,qh.jsx)(Fne,{})},{id:"light",type:57344,name:r("pages.ir.list.light"),icon:(0,qh.jsx)(Bne,{})},{id:"fan",name:r("pages.ir.list.fan"),type:32768,icon:(0,qh.jsx)(Lne,{})},{id:"learn",type:65279,name:r("pages.ir.list.learn"),icon:(0,qh.jsx)(Une,{})}],c={display:"flex",alignItems:"center",px:2,py:2,borderBottom:"1px solid #f0f0f0",cursor:"pointer","&:hover":{backgroundColor:"rgba(0, 0, 0, 0.04)"},"&:last-child":{borderBottom:"none"}};return(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[!s&&(0,qh.jsx)(cE.A,{onClick:()=>e(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(Bh.A,{variant:"h6",sx:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3",ml:1},children:r("remoteControl.selectType","\u30ea\u30e2\u30b3\u30f3\u30bf\u30a4\u30d7\u3092\u9078\u629e")})]})}),(0,qh.jsx)(lE,{children:(0,qh.jsx)($T.A,{disablePadding:!0,children:l.map(((t,r)=>(0,qh.jsxs)(lO,{sx:c,onClick:()=>(t=>{localStorage.removeItem("formRemoteControlKey"),localStorage.removeItem(`remoteList_${t.type}_search`),localStorage.removeItem(`remoteList_${t.type}_searchTerm`);let r="/biz/access-control/remotes";"learn"===t.id&&(r="/biz/access-control/learn"),e({pathname:r,search:Bg({hub3DeviceId:o,irType:t.type,...i.isFromApp&&{fromType:"app"}}).toString()})})(t),children:[(0,qh.jsx)(ym,{sx:{mr:2,display:"flex",alignItems:"center"},children:t.icon}),(0,qh.jsx)(ym,{sx:{flex:1},children:(0,qh.jsx)(Bh.A,{variant:"body1",sx:{fontWeight:500},children:t.name})}),(0,qh.jsx)(cE.A,{sx:{p:1,color:"text.secondary",pointerEvents:"none"},children:(0,qh.jsx)(Sne,{})})]},t.id)))})})]})}},{router:"remotes",component:function(){const e=hg(),{t:r}=Fv(),[n]=xv(),{gAuth:o,gStripe:a,setSnackbarValue:i}=(0,t.useContext)(VI),s=n.get("hub3DeviceId")||"",l=n.get("irType"),c="formRemoteControlKey",u=`remoteList_${l}`,[d,f]=(0,t.useState)(""),{gMediaType:p}=(0,t.useContext)(VI),h=p.isMobile,[m,g]=(0,t.useState)({currentPage:1,pageSize:200,totalCount:0,hasMore:!0}),{remoteList:v,searchResults:y,isLoading:b,isLoadingMore:w,isSearching:x,getRemoteList:S,searchRemoteList:A,loadMoreRemotes:k,setRemoteList:C,setIsLoading:I,clearSearchResults:E,setSearchResults:D}=aL(0,a,i),T=(0,t.useRef)(null),O=(0,t.useRef)({}),M=(0,t.useRef)(!1),P=(0,t.useRef)(!1),j=(0,t.useRef)(!1),R=(0,t.useCallback)(((e,t)=>{try{const r={remoteList:e,pagination:t,timestamp:Date.now()};localStorage.setItem(u,JSON.stringify(r))}catch(r){console.warn("save list to cache failed:",r)}}),[u]),_=(0,t.useCallback)(((e,t)=>{try{const r={searchTerm:e,searchResults:t,timestamp:Date.now()};localStorage.setItem(`${u}_search`,JSON.stringify(r)),localStorage.setItem(`${u}_searchTerm`,e)}catch(r){console.warn("save search to cache failed:",r)}}),[u]),N=(0,t.useCallback)((()=>{try{const e=localStorage.getItem(u);if(e)return JSON.parse(e)}catch(e){console.warn("restore list from cache failed:",e)}return null}),[u]),L=(0,t.useCallback)((()=>{try{const e=localStorage.getItem(`${u}_search`);if(e)return JSON.parse(e)}catch(e){console.warn("restore search from cache failed:",e)}return null}),[u]);(0,t.useEffect)((()=>{if(l&&!M.current){var e;M.current=!0;const r=N();if(r&&(null===(e=r.remoteList)||void 0===e?void 0:e.length)>0){j.current=!0,C&&C(r.remoteList),r.pagination&&g({...r.pagination});if("true"===localStorage.getItem(c)){const e=L();var t;if(e&&e.searchTerm)f(e.searchTerm),(null===(t=e.searchResults)||void 0===t?void 0:t.length)>0&&D&&D(e.searchResults)}else f(""),E&&E();I&&I(!1)}else g({currentPage:1,pageSize:200,totalCount:0,hasMore:!0}),S(l,1,200,(e=>{if(e&&e.data){const t=e.data.pagination;g(t),R(e.data.data,t)}}))}}),[l,S,N,L,C,I,D,E,R]);const U=(0,t.useCallback)((()=>{if(!T.current||w||null===m||void 0===m||!m.hasMore||P.current||d.trim())return;const{scrollTop:e,scrollHeight:t,clientHeight:r}=T.current;(e+r)/t>.8&&(P.current=!0,k(l,m,(e=>{if(P.current=!1,e){const t=e.data.pagination;g(t),setTimeout((()=>{R(v,t)}),100)}})))}),[w,null===m||void 0===m?void 0:m.hasMore,k,l,d,v,R]);(0,t.useEffect)((()=>{const e=T.current;if(e)return e.addEventListener("scroll",U),()=>{e.removeEventListener("scroll",U)}}),[U]),(0,t.useEffect)((()=>{w||(P.current=!1)}),[w]);const B=(0,t.useCallback)((e=>{f(e);try{localStorage.setItem(`${u}_searchTerm`,e)}catch(t){console.warn("save search term failed:",t)}if(!e.trim())return E&&E(),localStorage.removeItem(`${u}_search`),void localStorage.removeItem(`${u}_searchTerm`);A(l,e,(e=>{}))}),[l,A,E,u]),{displayData:F,groupedData:z,alphabetList:W,isSearchingMode:H}=(0,t.useMemo)((()=>{if(d.trim().length>0)return{displayData:y||[],groupedData:{},alphabetList:[],isSearchingMode:!0};const e=(v||[]).reduce(((e,t)=>{const r=(t.direction||"OTHER").toUpperCase();return e[r]||(e[r]=[]),e[r].push({...t,index:e[r].length}),e}),{}),t=Object.keys(e).sort();return{displayData:v||[],groupedData:e,alphabetList:t,isSearchingMode:!1}}),[v,y,d]),Y=(0,t.useCallback)((t=>{d.trim()&&_(d,y),localStorage.setItem(c,!0);let r="",n=parseInt(l);r=49152===n?"/biz/access-control/remote-air":"/biz/access-control/remote-non-air";const o=t.alias?t.alias.split("\n")[0].trim():t.alias;let i={...t,type:n,alias:o};e({pathname:r,search:Bg({hub3DeviceId:s,remote:JSON.stringify(i),...a.isFromApp&&{fromType:"app"}}).toString()})}),[e,s,l,d,y,_]),V=(0,t.useCallback)(((e,t)=>(0,qh.jsx)(lO,{onClick:()=>Y(e),sx:{py:.5,px:0,cursor:"pointer","&:hover":{backgroundColor:"action.hover"}},children:(0,qh.jsx)(iD.A,{primary:e.alias||e.model,secondary:foe(e,r),primaryTypographyProps:{fontSize:"0.95rem",color:"text.primary"},secondaryTypographyProps:{fontSize:"0.8rem",color:"text.disabled"}})},t)),[Y,r]),G=()=>{localStorage.removeItem(c),localStorage.removeItem(`${u}_search`),localStorage.removeItem(`${u}_searchTerm`),e(-1)};return b&&!j.current?(0,qh.jsxs)(JI,{sx:{height:"100vh",display:"flex",flexDirection:"column"},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[!h&&(0,qh.jsx)(cE.A,{onClick:()=>G(),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(Bh.A,{variant:"h6",sx:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3",ml:1},children:r("pages.ir.remote.selectRemote")})]})}),(0,qh.jsx)(lE,{sx:{flex:1,display:"flex",alignItems:"center",justifyContent:"center"},children:(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"column",alignItems:"center",gap:2},children:[(0,qh.jsx)(AE,{}),(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",children:r("pages.ir.remote.loading")})]})})]}):(0,qh.jsxs)(JI,{sx:{height:"100vh",display:"flex",flexDirection:"column"},children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[!h&&(0,qh.jsx)(cE.A,{onClick:()=>G(),children:(0,qh.jsx)(ZL,{sx:{ml:-1}})}),(0,qh.jsx)(Bh.A,{variant:"h6",sx:{fontSize:"1.2em",fontWeight:"bold",lineHeight:"1.3",ml:1},children:r("pages.ir.remote.selectRemote")})]})}),(0,qh.jsxs)(lE,{sx:{flex:1,display:"flex",flexDirection:"column",pt:0},children:[(0,qh.jsx)(ym,{sx:{mb:2},children:(0,qh.jsx)(NN,{callSearch:B,initialValue:d})}),!d.trim()&&(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",sx:{mb:2,fontSize:"0.875rem",lineHeight:1.4},children:r("pages.ir.remote.searchHint")}),(0,qh.jsx)(ym,{sx:{flex:1,display:"flex",position:"relative"},children:(0,qh.jsxs)(ym,{ref:T,sx:{flex:1,overflowY:"auto",pr:H?0:1,maxHeight:"calc(100vh - 200px)",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},children:[x&&d.trim()&&0===y.length&&(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"center",py:2},children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,qh.jsx)(AE,{size:20}),(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",children:r("pages.ir.remote.searching")})]})}),0!==F.length||b||x?H?(0,qh.jsx)($T.A,{disablePadding:!0,children:F.map(((e,t)=>V(e,`search-${e.alias}-${t}`)))}):(0,qh.jsxs)(qh.Fragment,{children:[W.map((e=>(0,qh.jsxs)(ym,{children:[(0,qh.jsx)(Bh.A,{ref:t=>O.current[e]=t,sx:{fontSize:"0.95rem",fontWeight:"normal",color:"text.primary",py:1,px:0,mb:0},children:e}),(0,qh.jsx)($T.A,{disablePadding:!0,children:z[e].map(((t,r)=>V(t,`${e}-${t.alias}-${t.index}`)))})]},e))),m.hasMore&&!H&&(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"center",py:2},children:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,qh.jsx)(AE,{size:20}),(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",children:r("pages.ir.remote.loadingMore")})]})}),!m.hasMore&&v.length>0&&!H&&(0,qh.jsx)(ym,{sx:{display:"flex",justifyContent:"center",py:2},children:(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",children:r("pages.ir.remote.loadedAll",{count:v.length})})})]}):(0,qh.jsx)(ym,{sx:{textAlign:"center",py:4},children:(0,qh.jsx)(Bh.A,{variant:"body2",color:"text.secondary",children:r(d?"pages.ir.remote.noSearchResults":"pages.ir.remote.noRemoteData")})})]})})]})]})}},{router:"remote-air",component:poe},{router:"remote-non-air",component:goe},{router:"remote-match",component:hoe},{router:"learn",component:coe}]},{router:"/biz/cards",components:[{router:"",component:function(e){let{location:r}=e;const n=(0,t.useRef)(null),o=(0,t.useRef)(null),{t:a}=Fv(),{gManageDevice:i,gManageAuthData:c,setCustomModalOpen:u,setModalContent:d,gManageEmployee:f,gMediaType:p}=(0,t.useContext)(VI),h=hg(),[m,g]=(0,t.useState)(!1),[v,y]=(0,t.useState)([]),[b,w]=(0,t.useState)([]),[x,S]=(0,t.useState)(273),[A,k]=(0,t.useState)([]),C=(0,t.useRef)(null),[I,E]=(0,t.useState)([]),{sendCmd:D}=hI(),{uploadCardBatch:T,uploadState:O}=hae(D);let M=[],P=!1;(0,t.useEffect)((()=>{i.filteredAccessControlDevices.length>0&&c.fetchNfcCards()}),[i.filteredAccessControlDevices.length]),dI(l.cmdCode.SSM_OS3_CARD_MODE_SET,(async(e,t)=>{var r;t.op===l.cmdCode.SSM_OS3_CARD_MODE_SET&&(null===(r=n.current)||void 0===r||r.setReadCardContent(t.status))}));const j=async(e,t)=>{dI(l.cmdCode.SSM_OS3_CARD_CHANGE,_),M=[],A.forEach((t=>{e.forEach((e=>{M.push({cardID:t.cardID,deviceUUID:e.deviceUUID,name:t.name,processed:!1})}))})),R(t)},R=async e=>{if(P||0===M.length)return;const t=M.findIndex((e=>!e.processed));if(-1===t)return k([]),M=[],fI(l.cmdCode.SSM_OS3_CARD_CHANGE),e&&e(),u(!1),void S((e=>e+1));P=!0;const r=M[t];r.processed=!0;const n=Ue.buildPayloadCardAdd({cardID:r.cardID});let o={topic:`stp${r.deviceUUID}cmd`,payload:Te.hp.from(n).toString("base64"),op:l.cmdCode.SSM_OS3_CARD_ADD};await D(o)},_=(e,t)=>{if(P)try{const r=Ue.parseHexStrToCardInfo(t.c),n=r.cardID,o=M.find((t=>t.processed&&!t.completed&&t.cardID===n&&t.deviceUUID===e));if(o){const t={cardID:r.cardID,name:o.name||"",cardNameUUID:r.nameUUID||"",timestamp:(new Date).getTime(),cardType:r.cardType||"",stpDeviceUUID:e};c.updateCardName(t,(()=>{})),o.completed=!0,P=!1,setTimeout(R,200)}}catch(r){console.error("\u89e3\u6790\u56de\u8c03\u6570\u636e\u5931\u8d25:",r)}};(0,t.useEffect)((()=>{c&&Array.isArray(c.nfcCards)&&0!==c.nfcCards.length?w(N):w([])}),[c.nfcCards]);const N=(0,t.useMemo)((()=>{const e=new Map;return c.nfcCards.forEach((t=>{const r=e.get(t.cardID);r?t.timestamp<r.timestamp&&e.set(t.cardID,t):e.set(t.cardID,t)})),Array.from(e.values())}),[c.nfcCards]),L=(0,t.useMemo)((()=>i.filteredAccessControlDevices.filter((e=>{var t;return!1!==(null===(t=e.stateInfo)||void 0===t?void 0:t.wifiState)}))),[i.filteredAccessControlDevices]),U=async e=>{var t;t=async(t,r)=>{for(const n of t)await c.sendDelCardsCmd(n.deviceUUID,e),await new Promise((e=>setTimeout(e,200)));r&&r(!0),u(!1)},d((0,qh.jsx)(vL,{loadingAble:!0,title:a("pages.sesameAccessControlDevice.index.SelectAuthenticationDevice"),selectableRows:"multiple",setOpenModal:u,handleClose:()=>{u(!1)},data:L,handleCheck:(e,r)=>{t&&t(e,r)},location:r,isWifi:!0})),u(!0)},B=async e=>{let t=[],n=!1;var i;(e.forEach((e=>{if(e.id||e.ID||e.cardID){let r={cardID:e.id||e.ID||e.cardID,nameUUID:e.\u30ab\u30fc\u30c9\u540d||e.name||"",cardType:e.cardType||"02"};if(e.\u30e6\u30fc\u30b6\u30fc){let t=f.employees.Items.find((t=>t.subUUID===e.\u30e6\u30fc\u30b6\u30fc));t&&(r.memberID=t.subUUID)}r.cardID&&t.push(r)}else n=!0})),n)||(i=async e=>{try{for(const n of e){var r;const e=Ue.buildNameUUIDMappedDataList(t),a=await T({deviceUUID:n.deviceUUID,list:e}),i=a.list.map((e=>({...e,nameUUID:Ue.insertUUIDIsolationCharacter(e.nameUUID.toLowerCase())})));await new Promise(((e,t)=>{c.postCards({deviceUUID:a.deviceUUID,list:i,cb:t=>{e(t)}})})),null===(r=o.current)||void 0===r||r.handleClose()}}catch(n){console.error("\u5904\u7406\u8fc7\u7a0b\u4e2d\u51fa\u9519:",n)}},d((0,qh.jsx)(vL,{title:a("pages.sesameAccessControlDevice.index.SelectAuthenticationDevice"),selectableRows:"multiple",setOpenModal:u,handleClose:()=>{u(!1)},data:L,handleCheck:e=>{u(!1),i&&i(e)},location:r,isWifi:!0})),u(!0))},F=new Set,z=async(e,t)=>{if(v.length<1)return;if(!t||"object"!==typeof t||!t.c)return;const r=Ue.parseHexStrToCardInfo(t.c).cardID,n=new Set(v.map((e=>e.deviceUUID))),o=Array.from(n).sort().join("_"),a=`${r}_${o}`;if(F.has(a))return;F.add(a),E((e=>e.includes(r)?e:[...e,r]));const i=v.filter((t=>t.deviceUUID!==e));for(const s of i){const e=Ue.buildPayloadCardAdd({cardID:r});let t=Te.hp.from(e).toString("base64"),n={topic:`stp${s.deviceUUID}cmd`,payload:t,op:l.cmdCode.SSM_OS3_CARD_ADD};await D(n)}},W=(0,t.useMemo)((()=>I.length<1?[]:b.filter((e=>I.includes(e.cardID)))),[I,b]);(0,t.useEffect)((()=>()=>{F.clear()}),[]);const H=async e=>{for(const t of v)await D(Ue.buildPayloadModeSet({uuid:t.deviceUUID,type:s.card,insertOn:e}));E([]),F.clear(),e?dI(l.cmdCode.SSM_OS3_CARD_CHANGE,z):fI(l.cmdCode.SSM_OS3_CARD_CHANGE)},Y=(0,t.useMemo)((()=>(0,qh.jsx)(WM,{in:!0,children:(0,qh.jsx)(jae,{ref:n,isShowCsv:!p.isMobile,csvLoading:"Idle"!==O,mdatas:W,setTouchList:y,touchList:v,downData:b,setCsvData:e=>{B(e)},chooseOpenHold:m,setChooseOpenHold:g,location:r,goSet:async e=>{H(e)},addCard:e=>{const t={cardID:e.cardID,name:e.name,cardNameUUID:e.nameUUID,ownerSubUUID:e.memberID,timestamp:(new Date).getTime(),cardType:e.cardType||"",stpDeviceUUID:e.deviceID};c.updateCardName(t,(r=>{E((t=>t.filter((t=>t!==e.cardID)))),c.updateCardOwner(t,(()=>{})),r.success}))}})})),[p.isMobile,O,W,v,b,m,r]);return(0,qh.jsx)(XP,{ref:o,isMobile:p.isMobile,popupComponent:Y,onClose:()=>{H(!1),y([])},children:(0,qh.jsx)(dae,{isMobile:p.isMobile,data:b,callBind:e=>{d((0,qh.jsx)(vL,{loadingAble:!0,title:a("pages.sesameAccessControlDevice.index.SelectAuthenticationDevice"),selectableRows:"multiple",setOpenModal:u,handleClose:()=>{u(!1)},data:L,handleCheck:j,location:r,isWifi:!0})),u(!0)},refreshTb:x,columns:PU.cardColumns({isMobile:p.isMobile,gManageEmployee:f,click:()=>{},ref:C,listDevices:i.filteredAccessControlDevices}),callAdd:()=>{o.current.handleOpen()},callRowClick:e=>{h({pathname:"/biz/cards/details",search:Bg({did:b[e].cardID}).toString()})},callDelData:e=>{U(e)},callSelects:e=>{k(e)},callSearch:e=>{if(e){const t=N.filter((t=>{var r,n;const o=f.findEmployeeById(t.subUUID),a=null===o||void 0===o||null===(r=o.employeeName)||void 0===r?void 0:r.includes(e),i=Ue.formatCardID(t.cardID).includes(e.toLowerCase()),s=t.cardID.toLowerCase().includes(e.toLowerCase());return(null===(n=t.name)||void 0===n?void 0:n.includes(e))||a||i||s}));w(t)}else w(N)}})})}},{router:"details",component:function(){var e;const[r]=xv(),n=r.get("did")||"",{t:o}=Fv(),{gManageAuthData:a,gManageDevice:i,setCustomModalOpen:s,gManageEmployee:c,setModalContent:u,setSnackbarValue:d,gMediaType:f}=(0,t.useContext)(VI),p=hg(),[h,m]=(0,t.useState)(!1),g=(0,t.useRef)({deviceIDs:[],cb:null}),{sendCmd:v}=hI(),y=(0,t.useMemo)((()=>a.findCardsByCardID(n.toUpperCase().replace(/-/g,"")).sort(((e,t)=>e.timestamp-t.timestamp))),[a.nfcCards,n]),b=(0,t.useMemo)((()=>{var e,t;return{[fh]:null!==(e=c.findEmployeeById(null===(t=y[0])||void 0===t?void 0:t.subUUID).employeeName)&&void 0!==e?e:"-",[ph]:y.map((e=>({title:i.findTouchName(e.deviceID),value:e.name,rawData:e})))}}),[y]),w=(0,t.useMemo)((()=>y.length<1?{}:c.employees.Items.find((e=>e.subUUID===y[0].subUUID))),[c.employees,y]);(0,t.useEffect)((()=>(dI(l.cmdCode.SSM_OS3_CARD_CHANGE,(async(e,t)=>{if(!t)return;const r=Ue.parseHexStrToCardInfo(t.c);if(!r||y.length<1)return;const n=g.current.deviceIDs.indexOf(e);n>-1&&g.current.deviceIDs.splice(n,1),0===g.current.deviceIDs.length&&(g.current.cb&&g.current.cb(!0),s(!1));const o={cardID:r.cardID,name:y[0].name||"",cardNameUUID:r.nameUUID||"",timestamp:(new Date).getTime(),cardType:r.cardType||"",stpDeviceUUID:e};a.updateCardName(o,(()=>{}))})),()=>{fI(l.cmdCode.SSM_OS3_CARD_CHANGE)})),[]);const x=async(e,t)=>{g.current={deviceIDs:e.map((e=>e.deviceUUID)),cb:t};const r=y[0].cardID,n=Ue.buildPayloadCardAdd({cardID:r});for(const o of e){let t={topic:`stp${o.deviceUUID}cmd`,payload:Te.hp.from(n).toString("base64"),op:l.cmdCode.SSM_OS3_CARD_ADD};await v(t),e.length>1&&await new Promise((e=>setTimeout(e,500)))}};return(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center"},children:[(0,qh.jsx)(cE.A,{onClick:()=>p(-1),children:(0,qh.jsx)(ZL,{sx:{ml:-2}})}),(0,qh.jsx)(Bh.A,{variant:"h3",children:Ue.formatCardID(null===(e=y[0])||void 0===e?void 0:e.cardID)})]})}),(0,qh.jsx)(vae,{isMobile:f.isMobile,data:b,onEdit:(e,t,r,n)=>{if(e===fh)m(!0);else if(e===ph){const e=y[r]||{};if(t===(null===e||void 0===e?void 0:e.name))return void n(!0);const o={cardID:e.cardID,name:t,cardNameUUID:e.nameUUID||"",timestamp:(new Date).getTime(),cardType:e.cardType||"",stpDeviceUUID:e.deviceID};a.updateCardName(o,(e=>{e.errMsg?(d({open:!0,msg:e.errMsg}),n(!1)):n(!0)}))}},onDelete:(e,t)=>{(async e=>{let t=Ue.hexStringToUint8Array(e.cardID),r=1+t.length,n=new Uint8Array(r);n[0]=l.cmdCode.SSM_OS3_CARD_DELETE,n.set(t,1);let o=Te.hp.from(n).toString("base64"),a={topic:`stp${e.deviceID}cmd`,payload:o,op:l.cmdCode.SSM_OS3_CARD_DELETE};await v(a)})(y[t])},onAdd:()=>{let e=i.filteredAccessControlDevices.filter((e=>!y[0].uuids.some((t=>t===e.deviceUUID))));u((0,qh.jsx)(vL,{loadingAble:!0,title:o("pages.sesameAccessControlDevice.index.SelectAuthenticationDevice"),setOpenModal:s,selectableRows:"multiple",handleClose:()=>{s(!1)},data:e,handleCheck:x,isWifi:!0})),s(!0)}})]}),(0,qh.jsx)(Nae,{defaultVal:w,mOpen:h,handleClose:()=>m(!1),handleSure:(e,t)=>{const r={cardID:y[0].cardID,ownerSubUUID:(null===e||void 0===e?void 0:e.subUUID)||""};a.updateCardOwner(r,(e=>{m(!1),t(!0)}))}})]})}}]},{router:"/biz/history",components:[{router:"",component:kie},{router:"env-snapshot",component:zae}]},{router:"/biz/schedule-list",component:Iie},{router:"/biz/developer",component:function(){const{t:e}=Fv(),{gManageDevice:r,gManageGroup:n,gStripe:o,setModalContent:a,setCustomModalOpen:i,gDeveloper:s,setSnackbarValue:c,gMediaType:u}=(0,t.useContext)(VI),[d,f]=(0,t.useState)({UUID:"",secretKey:"",deviceModel:""}),[p,h]=(0,t.useState)({}),[m,g]=(0,t.useState)(!1),[v,y]=(0,t.useState)({anchorEl:null,selectIndex:null}),[b,w]=(0,t.useState)([]),x=(0,t.useRef)(null),[S,A]=(0,t.useState)(!1),k=(0,t.useCallback)((function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];o.getDevApiInfo(e)}),[o]);(0,t.useEffect)((()=>{const e=(o.customerInfo.isSesameApp?r.companyDevices:r.userDevices).filter((e=>Dh.isLockModel(e.deviceModel)));w(e)}),[r.userDevices,r.companyDevices,o.customerInfo.isSesameApp]),(0,t.useEffect)((()=>{k(!1),s.firmwares.length<1&&s.getDownloadFireware()}),[o.customerInfo.companyID]);const C=(0,am.Ay)((e=>{let{className:t,...r}=e;return(0,qh.jsx)(dU.A,{...r,classes:{popper:t}})}))({[`& .${Lae.A.tooltip}`]:{maxWidth:500}}),I={display:"flex",alignItems:"center"},E=[{name:"\u30c7\u30d0\u30a4\u30b9\u540d",label:"\u30c7\u30d0\u30a4\u30b9\u540d",options:{customBodyRenderLite:e=>s.firmwares[e].device}},{name:"\u30d0\u30fc\u30b8\u30e7\u30f3",label:"\u30d0\u30fc\u30b8\u30e7\u30f3",options:{customBodyRenderLite:e=>(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(Bh.A,{href:"#",sx:{color:"#000000",textDecoration:"none","&:hover":{textDecoration:"underline"},cursor:"pointer"},onClick:t=>{t.preventDefault(),y({anchorEl:t.currentTarget,selectIndex:e})},children:s.firmwares[e].v}),(0,qh.jsx)(jO.A,{elevation:1,sx:{"& .MuiPaper-root":{border:"1px solid #F1F1F1"}},MenuListProps:{disablePadding:!0},keepMounted:!0,anchorEl:v.anchorEl,open:Boolean(v.anchorEl),onClose:()=>y({anchorEl:null,selectIndex:null}),children:(0,qh.jsx)(RO.A,{onClick:()=>{const e=s.firmwares[v.selectIndex].downloadUrl;e&&window.open(e,"_blank"),y({anchorEl:null,selectIndex:null})},children:(0,qh.jsx)(iD.A,{primary:"\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9"})})})]})}}];return(0,qh.jsx)(qh.Fragment,{children:o.customerInfo.tag&&(0,qh.jsxs)(JI,{sx:{p:0},children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(Bh.A,{variant:"h2",sx:{p:"16px",pb:0},children:e("developer.ForDeveloper")})}),(0,qh.jsxs)(lE,{sx:{mt:2,p:"0px"},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",flexDirection:"row"},children:[(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(Bh.A,{variant:"h3",children:"API\u30ad\u30fc"})}),(0,qh.jsx)(lE,{children:(0,qh.jsxs)(ym,{className:"currentPlan",sx:{...I,flexWrap:"wrap",wordBreak:"break-all",gap:"6px"},children:[(0,qh.jsx)(Bh.A,{children:o.apiKey.apiKeyValue||""}),(0,qh.jsx)(dU.A,{title:"\u30b3\u30d4\u30fc",children:(0,qh.jsx)(cE.A,{size:"small",sx:{marginLeft:"6px"},onClick:()=>{navigator.clipboard.writeText(o.apiKey.apiKeyValue||"")},children:(0,qh.jsx)(Uae,{fontSize:"inherit"})})}),(0,qh.jsx)(dU.A,{title:"API\u30ad\u30fc\u306e\u5909\u66f4",children:(0,qh.jsx)(cE.A,{size:"small",sx:{animation:m?"rotate 1.5s linear infinite":"none","@keyframes rotate":{"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}},onClick:()=>{g(!0),k(!0),setTimeout((()=>{g(!1)}),1500)},children:(0,qh.jsx)(Bae,{fontSize:"medium"})})})]})})]}),(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(Bh.A,{variant:"h3",sx:{display:"inline-block"},children:"\u4eca\u6708\u306eAPI\u3054\u5229\u7528\u56de\u6570"})}),(0,qh.jsx)(lE,{children:(0,qh.jsx)(ym,{sx:{...I},children:(0,qh.jsx)(Bh.A,{children:`${o.apiKey.usedCount} \u56de`})})})]})]}),(0,qh.jsxs)(JI,{children:[(0,qh.jsx)(aE,{title:(0,qh.jsx)(Bh.A,{variant:"h3",children:"\u30c7\u30e2"})}),(0,qh.jsxs)(lE,{children:[(0,qh.jsxs)(ym,{sx:{...I,paddingTop:"6px"},children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{fontWeight:"normal"},children:"1.\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e"}),(0,qh.jsx)(C,{title:(0,qh.jsxs)("div",{children:["\u3010QR\u30b3\u30fc\u30c9\u3011QR\u30b3\u30fc\u30c9\u304b\u3089\u30c7\u30d0\u30a4\u30b9\u3092\u30a4\u30f3\u30dd\u30fc\u30c8",(0,qh.jsx)("br",{}),"\u3010\u500b\u4eba\u3067\u767b\u9332\u6e08\u306e\u30c7\u30d0\u30a4\u30b9\u3011\u500b\u4eba\u3067\u30bb\u30b5\u30df\u30a2\u30d7\u30ea\u306b\u767b\u9332\u6e08\u307f\u306e\u30c7\u30d0\u30a4\u30b9\u3092\u30a4\u30f3\u30dd\u30fc\u30c8"]}),placement:"right-start",children:(0,qh.jsx)(Fae,{sx:{color:"#cccccc",cursor:"pointer",ml:"5px"}})})]}),(0,qh.jsxs)(ym,{sx:{display:"flex",paddingTop:"6px"},children:[(0,qh.jsxs)(QI.A,{varient:"text",component:"label",startIcon:(0,qh.jsx)(zP,{}),children:["QR\u30b3\u30fc\u30c9\u3067\u8ffd\u52a0",(0,qh.jsx)("input",{type:"file",hidden:!0,ref:x,onChange:e=>{var t;e.target.files[0]&&(t=e.target.files[0],Ue.readQrcodeUrl(t,((e,t)=>{t?n.redeemQRToken(t,(e=>{if(!e.success)return void c({open:!0,msg:e.message});const t=null!==e&&void 0!==e&&e.success?null===e||void 0===e?void 0:e.data:null,r=t?Ue.parseDeviceKeyFromUrl(t):null;r?0===r.keyLevel?Dh.isSesameAccessControlDevice(r.deviceModel)?c({open:!0,msg:"\u30c7\u30d0\u30a4\u30b9\u6570\u306e\u4e0a\u9650\u306b\u9054\u3057\u307e\u3057\u305f\u3002\u30d7\u30e9\u30f3\u306e\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9\u304c\u5fc5\u8981\u3067\u3059\u3002"}):f({deviceUUID:r.deviceUUID,secretKey:r.secretKey,deviceModel:r.deviceModel}):c({open:!0,msg:'\u767b\u9332\u5931\u6557\u3001\u30c7\u30d0\u30a4\u30b9\u306e"\u30aa\u30fc\u30ca\u30fc"\u6a29\u9650\u304c\u5fc5\u8981\u3067\u3059'}):c({open:!0,msg:"\u8aad\u307f\u53d6\u308a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002QR\u30b3\u30fc\u30c9\u304c\u6b63\u3057\u3044\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002"})})):c({open:!0,msg:"\u8aad\u307f\u53d6\u308a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002QR\u30b3\u30fc\u30c9\u304c\u6b63\u3057\u3044\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002"})}))),x.current&&(x.current.value="")}})]}),(0,qh.jsx)(QI.A,{variant:"text",startIcon:(0,qh.jsx)(HP,{}),onClick:()=>{(async()=>{a((0,qh.jsx)(vL,{title:"\u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e",setOpenModal:i,enableFilter:!1,selectableRows:"single",handleClose:i(!1),data:b,handleCheck:e=>{const t=e[0];i(!1),h({}),f({deviceUUID:t.deviceUUID,secretKey:t.secretKey,deviceModel:t.deviceModel})}})),i(!0)})()},children:"\u500b\u4eba\u3067\u767b\u9332\u6e08\u306e\u30c7\u30d0\u30a4\u30b9\u304b\u3089\u8ffd\u52a0"})]})]}),(0,qh.jsx)(lE,{sx:{paddingBottom:"unset"},children:(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"space-between",alignItems:"flex-start"},children:[(0,qh.jsx)(GD.A,{size:"small",label:"\u30c7\u30d0\u30a4\u30b9UUID",variant:"filled",sx:{marginBottom:"10px",flexGrow:"1"},fullWidth:!0,value:d.deviceUUID||"",onChange:e=>{f({...d,deviceUUID:e.target.value})}}),(0,qh.jsx)(GD.A,{size:"small",label:"\u30c7\u30d0\u30a4\u30b9\u30b7\u30fc\u30af\u30ec\u30c3\u30c8\u30ad\u30fc",variant:"filled",fullWidth:!0,value:d.secretKey||"",onChange:e=>{f({...d,secretKey:e.target.value})},sx:{marginBottom:"10px",marginLeft:"10px",flexGrow:"1"}})]})}),d.deviceUUID&&d.secretKey&&(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsxs)(lE,{children:[(0,qh.jsx)(Bh.A,{variant:"h3",sx:{fontWeight:"normal",paddingTop:"8px"},children:"2.\u30c7\u30e2\u3092\u5b9f\u884c\u3059\u308b"}),(0,qh.jsxs)(ym,{sx:{display:"flex",marginTop:"6px"},children:[(0,qh.jsx)(QI.A,{sx:{marginRight:"10px",color:"#28aeb1"},disabled:!d.deviceUUID,variant:"text",onClick:()=>{A(!0),s.getIoTDeviceState(d.deviceUUID,(e=>{h(e.data),A(!1)}))},children:"\u30b9\u30c6\u30fc\u30bf\u30b9\u53d6\u5f97"}),(0,qh.jsx)(QI.A,{sx:{marginRight:"10px",color:"#28aeb1"},disabled:!d.deviceUUID,variant:"text",onClick:()=>{A(!0),s.getDeviceHistory(d.deviceUUID,(e=>{h(e.data),A(!1)}))},children:"\u5c65\u6b74\u53d6\u5f97"}),(0,qh.jsx)(QI.A,{sx:{marginRight:"10px",color:"#28aeb1"},disabled:!d.deviceUUID||!d.secretKey,variant:"text",onClick:()=>{let e=88;d.deviceModel===l.sesameDeviceModel.bot_2?e=89:d.deviceModel===l.sesameDeviceModel.ssm_bike2&&(e=83),A(!0),s.triggerDevice({device_id:d.deviceUUID,cmd:e,sescretKey:d.secretKey},(e=>{h(e.data),A(!1)}))},children:"\u30c7\u30d0\u30a4\u30b9\u64cd\u4f5c"})]})]}),(0,qh.jsx)(ny.A,{style:{height:"10em",overflow:"auto",padding:"8px",borderRadius:"6px",fontSize:"12px",color:"#999",wordBreak:"break-all",whiteSpace:"pre-wrap",overflowX:"auto",border:"1px solid #F1F1F1"},variant:"outlined",children:S?"...":JSON.stringify(p,null,2)})]})]}),(0,qh.jsx)(dae,{isMobile:u.isMobile,isAdd:!1,data:s.firmwares,isBind:!1,isDel:!1,isCsv:!1,isBack:!1,selectableRows:"none",text:"\u6700\u65b0\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2 \u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u4e00\u89a7",columns:E})]})]})})}},{router:"/device-history",component:EU,load:!0},{router:"/device-notify",component:use,load:!0},{router:"/device-setting",components:[{router:"",component:Dae},{router:"angle",component:function(){const[e]=xv();return(0,qh.jsx)(ise,{deviceUUID:e.get("deviceUUID")||""},e.get("deviceUUID"))}},{router:"credentials",component:function(){var e;const{t:r}=Fv(),{gManageDevice:n,gStripe:o}=(0,t.useContext)(VI),[a]=xv(),i=hg(),s=a.get("deviceUUID")||"",l=o.customerInfo.subUUID,c=a.get("kind")||"",u=n.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===s.toUpperCase()})),d=(null===u||void 0===u?void 0:u.deviceModel)||a.get("deviceModel"),f=ij(d).includes(c),{native:p,request:h,ready:m,session:g}=QL(s),v=null===p||void 0===p||null===(e=p.peripheral)||void 0===e?void 0:e.credentials,y=(null===v||void 0===v?void 0:v.session)===g&&v.kind===c?v:null,b=(null===y||void 0===y?void 0:y.items)||[],[w,x]=(0,t.useState)({}),[S,A]=(0,t.useState)(null),[k,C]=(0,t.useState)(!1),[I,E]=(0,t.useState)(""),[D,T]=(0,t.useState)(!1),[O,M]=(0,t.useState)(!1),[P,j]=(0,t.useState)(!1),R=(0,t.useRef)(!1),_=(0,t.useRef)(Promise.resolve()),N=(0,t.useRef)(-1),L=(0,t.useRef)(0),U=(0,t.useRef)(null);(0,t.useEffect)((()=>{(null!==y&&void 0!==y&&y.loadFailed||(null===y||void 0===y?void 0:y.failureRevision)>0)&&M(!0)}),[null===y||void 0===y?void 0:y.failureRevision,null===y||void 0===y?void 0:y.loadFailed]);const B="card"===c?1e3:100,F=e=>{const t=_.current.catch((()=>{})).then(e);return _.current=t,t};(0,t.useEffect)((()=>(R.current=!0,N.current=-1,x({}),()=>{R.current=!1,L.current++})),[g,c]),(0,t.useEffect)((()=>{if(!Fk||!m||null===p||void 0===p||!p.bleConnected||!f)return;let e=!0;const t=++L.current;return U.current=null,N.current=-1,M(!1),h("credentials",{kind:c}).catch((()=>{e&&M(!0)})),()=>{e=!1,L.current===t&&L.current++,Yk.notify("peripheralSettings",{deviceUUID:s,operation:"credentialsClose",session:g})}}),[m,null===p||void 0===p?void 0:p.bleConnected,g,f,c]),(0,t.useEffect)((()=>{if(!y||!1!==y.loading||y.loadFailed||!y.complete&&0===y.revision||y.revision===N.current||null===p||void 0===p||!p.bleConnected)return;N.current=y.revision;const e=L.current,t=y.items.map(gj);j(!0),F((async()=>{var r;if(!R.current||e!==L.current)return;const n=await async function(e){let{deviceUUID:t,account:r,kind:n,previous:o,items:a,isCurrent:i,send:s=uT}=e;const l=mj(n),c={},u=async(e,n)=>{if(!i())throw new Error("Credential session changed");const o=await s("biometrics",{op:`${l}_${e}`,items:n.map((e=>({...e,nameUUID:e.nameUUID||e.name,name:""})))},{deviceUUID:t,account:r});for(const t of(null===o||void 0===o?void 0:o.items)||[])c[t.credentialId.toUpperCase()]=t.name};if(null===o){const e=AL(a);await u("post",e.shift()||[]);for(const t of e)await u("put",t)}else{const e=new Map(o.map((e=>[e.credentialId,e]))),t=new Set(a.map((e=>e.credentialId))),r=a.filter((t=>JSON.stringify(e.get(t.credentialId))!==JSON.stringify(t))),n=o.filter((e=>!t.has(e.credentialId)));for(const o of AL(n))await u("delete",o);for(const o of AL(r))await u("put",o)}return c}({deviceUUID:s,account:l,kind:c,previous:null!==(r=U.current)&&void 0!==r?r:y.complete?null:[],items:t,isCurrent:()=>R.current&&e===L.current});R.current&&e===L.current&&(U.current=t,x((e=>({...e,...n}))))})).catch((()=>{R.current&&e===L.current&&(U.current=null,M(!0))})).finally((()=>{R.current&&j(!1)}))}),[null===y||void 0===y?void 0:y.complete,null===y||void 0===y?void 0:y.loading,null===y||void 0===y?void 0:y.loadFailed,null===y||void 0===y?void 0:y.revision,null===p||void 0===p?void 0:p.bleConnected]);const z=e=>w[e.credentialId.toUpperCase()]||gj(e).name||r(`peripheral.default_${c}`),W=async e=>{if(!D&&null!==p&&void 0!==p&&p.bleConnected){T(!0),M(!1);try{await e()}catch(t){R.current&&M(!0)}finally{R.current&&T(!1)}}},H={card:pD,fingerprint:HL,passcode:YL,face:VL,palm:GL}[c],Y=["sesame_face","sesame_face_2"].includes(d),V="fingerprint"===c?XL:"face"===c?Y?JL:$L:"palm"===c?Y?qL:eU:null;return f?(0,qh.jsxs)(ym,{sx:{height:"100vh",overflow:"auto",bgcolor:"background.default"},children:[(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",minHeight:48},children:[(0,qh.jsx)(cE.A,{onClick:()=>i(-1),"aria-label":r("peripheral.back"),children:(0,qh.jsx)(ZL,{})}),(0,qh.jsxs)(Bh.A,{sx:{flex:1,textAlign:"center"},children:[b.length,"/",B]}),(D||P||Fk&&(null===p||void 0===p?void 0:p.bleConnected)&&!1!==(null===y||void 0===y?void 0:y.loading)&&!O&&!(null!==y&&void 0!==y&&y.loadFailed))&&(0,qh.jsx)(AE,{size:20}),(0,qh.jsx)(cE.A,{disabled:!Fk||D||!(null!==p&&void 0!==p&&p.bleConnected)||!y||!1!==y.loading||y.loadFailed||1!==(null===y||void 0===y?void 0:y.mode)&&b.length>=B,"aria-label":r(1===(null===y||void 0===y?void 0:y.mode)?"peripheral.stopEnroll":"peripheral.enroll"),onClick:()=>W((()=>h("credentialMode",{value:1===(null===y||void 0===y?void 0:y.mode)?"fingerprint"===c?2:0:1}))),children:1===(null===y||void 0===y?void 0:y.mode)?(0,qh.jsx)(tT,{}):(0,qh.jsx)(ZT,{})})]}),Fk&&(0,qh.jsx)(KL,{deviceUUID:s}),!Fk&&(0,qh.jsx)(LL,{severity:"info",children:"Coming soon"}),O&&(0,qh.jsx)(LL,{severity:"error",action:(0,qh.jsx)(QI.A,{onClick:()=>{N.current=-1,M(!1),h("credentials",{kind:c}).then((()=>M(!1))).catch((()=>M(!0)))},children:r("peripheral.retry")}),children:r("lockSettings.failed")}),(0,qh.jsxs)(ym,{sx:{display:"fingerprint"===c?"flex":"block",alignItems:"center",bgcolor:"secondary.main"},children:[V&&(0,qh.jsx)(ym,{component:"img",src:V,alt:r(`accessCtl.auth.${hj[c]}`),sx:{display:"block",width:"fingerprint"===c?95:300,height:"fingerprint"===c?120:300,flexShrink:0,objectFit:"contain",mx:"auto",maxWidth:"100%"}}),(0,qh.jsx)(Bh.A,{sx:{p:2,whiteSpace:"pre-line"},children:r(`peripheral.hint_${c}`,{device:(null===u||void 0===u?void 0:u.deviceName)||d})})]}),(0,qh.jsx)($T.A,{children:b.map((e=>(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(lO,{onClick:()=>{A(e),E(z(e))},sx:{cursor:"pointer"},children:[(0,qh.jsx)(H,{sx:{fontSize:44,color:"text.secondary",mr:1}}),(0,qh.jsx)(iD.A,{primary:z(e),primaryTypographyProps:{sx:{fontSize:24,fontWeight:600,color:"text.secondary"}},secondary:vj(c,e.credentialId)})]}),(0,qh.jsx)(mM,{variant:"middle"})]},e.credentialId)))}),(0,qh.jsx)(QO,{anchor:"bottom",open:!!S&&!k,onClose:()=>!D&&A(null),children:(0,qh.jsxs)($T.A,{children:[(0,qh.jsx)(lO,{children:(0,qh.jsx)(iD.A,{sx:{textAlign:"center",color:"text.secondary"},primary:S?vj(c,S.credentialId):""})}),(0,qh.jsx)(lO,{onClick:()=>C(!0),sx:{color:"primary.main"},children:(0,qh.jsx)(iD.A,{sx:{textAlign:"center"},primary:r("peripheral.rename")})}),(0,qh.jsx)(lO,{onClick:()=>W((async()=>{await h("credentialDelete",{id:S.credentialId}),R.current&&A(null)})),sx:{color:"error.main",pointerEvents:D?"none":"auto"},children:(0,qh.jsx)(iD.A,{sx:{textAlign:"center"},primary:r("peripheral.delete")})}),(0,qh.jsx)(lO,{onClick:()=>!D&&A(null),children:(0,qh.jsx)(iD.A,{sx:{textAlign:"center"},primary:r("deviceMember.opt.cancel")})})]})}),(0,qh.jsxs)(aM,{open:k,onClose:()=>!D&&C(!1),fullWidth:!0,maxWidth:"xs",children:[(0,qh.jsx)(BL,{children:r("peripheral.rename")}),(0,qh.jsx)(uM,{children:(0,qh.jsx)(GD.A,{autoFocus:!0,fullWidth:!0,value:I,inputProps:{maxLength:256},onChange:e=>E(e.target.value)})}),(0,qh.jsxs)(WL,{children:[(0,qh.jsx)(QI.A,{disabled:D,onClick:()=>C(!1),children:r("deviceMember.opt.cancel")}),(0,qh.jsx)(QI.A,{disabled:D,onClick:()=>W((async()=>{const e=gj(S),t=e.nameUUID||crypto.randomUUID();e.nameUUID||await h("credentialRename",{id:e.credentialId,nameUUID:t});const[r,n]={card:["cardNameUUID","cardID"],fingerprint:["fingerPrintNameUUID","fingerPrintID"],passcode:["keyBoardPassCodeNameUUID","keyBoardPassCode"],face:["faceNameUUID","faceID"],palm:["palmNameUUID","palmID"]}[c];await F((()=>uT("biometrics",{op:`${mj(c)}_putname`,[r]:t,[n]:e.credentialId,name:I,..."card"===c?{cardType:e.type}:{type:e.type}},{deviceUUID:s,account:l}))),R.current&&(x((t=>({...t,[e.credentialId.toUpperCase()]:I}))),C(!1),A(null))})),children:r("deviceMember.opt.ok")})]})]})]}):(0,qh.jsx)(LL,{severity:"warning",children:r("peripheral.unsupported")})}},{router:"bot-script",component:function(){var e,r;const[n]=xv(),o=hg(),a=nR(rR(n_,{activationConstraint:{distance:5}}),rR(a_,{activationConstraint:{delay:350,tolerance:8}})),i=n.get("deviceUUID")||"",s=Number(n.get("index")),l=yj(i),{t:c}=Fv(),[u,d]=(0,t.useState)(null),[f,p]=(0,t.useState)(!1),[h,m]=(0,t.useState)(!1),[g,v]=(0,t.useState)(0),[y,b]=(0,t.useState)(null),[w,x]=(0,t.useState)(null),[S,A]=(0,t.useState)(null),k=(null===(e=l.scripts.find((e=>e.id===s)))||void 0===e?void 0:e.name)||`\ud83c\udfac ${s}`;(0,t.useEffect)((()=>{if(!l.connected||!Number.isInteger(s)||s<0||s>9)return;let e=!0;return p(!0),m(!1),Yk.request("botSettings",{deviceUUID:i,index:s,operation:"read"}).then((t=>{let{data:r}=t;e&&d(r)})).catch((()=>{e&&m(!0)})).finally((()=>{e&&p(!1)})),()=>{e=!1}}),[i,s,l.connected,g]);const C=async e=>{if(!f&&l.connected){p(!0),m(!1);try{const{data:t}=await Yk.request("botSettings",{deviceUUID:i,index:s,operation:"write",...e});d(e),A(t),await l.save(s,{...t,isDefault:1}),A(null)}catch(t){m(!0)}finally{p(!1)}}},I=(e,t)=>C({...u,actions:u.actions.map(((r,n)=>n===e?{...r,...t}:r))}),E=e=>255===e?c("botSettings.forever"):c("botSettings.seconds",{value:(e/10).toFixed(1)}),D=f||!l.connected||!u||!!S;return(0,qh.jsxs)(ym,{sx:bj,children:[(0,qh.jsx)(KL,{deviceUUID:i}),(0,qh.jsxs)(ym,{sx:{display:"flex",alignItems:"center",px:2,minHeight:48},children:[(0,qh.jsx)(cE.A,{disableRipple:!0,onClick:()=>o(-1),children:(0,qh.jsx)(ZL,{})}),(0,qh.jsxs)(QI.A,{disableRipple:!0,disabled:!u||f,onClick:()=>x(k.replace(/^\ud83c\udfac\s*/,"")),sx:{flex:1,color:"text.primary"},children:[k," \ud83d\udd8a (",null!==(r=null===u||void 0===u?void 0:u.actions.length)&&void 0!==r?r:0,"/20)"]}),(0,qh.jsx)(cE.A,{disableRipple:!0,"aria-label":c("botSettings.add"),disabled:D||u.actions.length>=20,onClick:()=>C({...u,actions:[...u.actions,{type:0,time:0}]}),children:(0,qh.jsx)(aU,{})})]}),(0,qh.jsx)(Bh.A,{sx:{bgcolor:"secondary.main",p:2,color:"text.secondary",whiteSpace:"pre-line"},children:c("botSettings.hint")}),h&&(0,qh.jsx)(LL,{severity:"error",action:(0,qh.jsx)(QI.A,{disabled:f,onClick:async()=>{if(S){p(!0);try{await l.save(s,{...S,isDefault:1}),A(null),m(!1)}catch(e){m(!0)}finally{p(!1)}}else v((e=>e+1))},children:c("lockSettings.retry")}),children:c("lockSettings.failed")}),(0,qh.jsx)(F_,{sensors:a,collisionDetection:dR,modifiers:[fN],onDragEnd:e=>{let{active:t,over:r}=e;!D&&r&&t.id!==r.id&&C({...u,actions:G_(u.actions,t.id,r.id)})},children:(0,qh.jsx)(eN,{items:(null===u||void 0===u?void 0:u.actions.map(((e,t)=>t)))||[],strategy:J_,children:null===u||void 0===u?void 0:u.actions.map(((e,t)=>{const r=lU[e.type];return(0,qh.jsxs)(uU,{position:t,disabled:D,onDelete:()=>C({...u,actions:u.actions.filter(((e,r)=>r!==t))}),children:[(0,qh.jsx)(cE.A,{disableRipple:!0,disabled:D,"aria-label":c(`botSettings.type${e.type}`),onClick:()=>I(t,{type:(e.type+1)%4}),children:(0,qh.jsx)(r,{})}),(0,qh.jsx)(QI.A,{disableRipple:!0,disabled:D,sx:{flex:1,justifyContent:"flex-start",color:"text.secondary",fontWeight:"bold",fontSize:17},onClick:()=>{b(t),e.time||I(t,{time:1})},children:E(e.time)}),(0,qh.jsx)(cE.A,{disableRipple:!0,disabled:D,"aria-label":c("pages.ir.remote.delete"),onClick:()=>C({...u,actions:u.actions.filter(((e,r)=>r!==t))}),children:(0,qh.jsx)(fD,{})})]},t)}))})}),(0,qh.jsx)(QO,{anchor:"bottom",open:null!==y,onClose:()=>b(null),children:null!==y&&(null===u||void 0===u?void 0:u.actions[y])&&(0,qh.jsx)(sU,{title:c("botSettings.duration"),visibleRows:7,values:cU,value:u.actions[y].time||1,label:E,disabled:D,onChange:e=>I(y,{time:e})})}),(0,qh.jsxs)(aM,{open:null!==w,onClose:()=>!f&&x(null),children:[(0,qh.jsx)(uM,{children:(0,qh.jsx)(GD.A,{autoFocus:!0,value:w||"",onChange:e=>x(e.target.value),inputProps:{maxLength:250}})}),(0,qh.jsxs)(WL,{children:[(0,qh.jsx)(QI.A,{disabled:f,onClick:()=>x(null),children:c("deviceMember.opt.cancel")}),(0,qh.jsx)(QI.A,{disabled:f,onClick:async()=>{p(!0);try{await l.save(s,{alias:`\ud83c\udfac ${w.replace(/^\ud83c\udfac\s*/,"").trim()}`}),x(null)}catch(e){m(!0)}finally{p(!1)}},children:"OK"})]})]})]})}},{router:"auto-unlock",component:function(){const{t:e}=Fv(),r=hg(),[n]=xv(),o=n.get("deviceUUID"),{setSnackbarValue:a}=(0,t.useContext)(VI),i=(0,t.useRef)(),s=(0,t.useRef)(),l=(0,t.useRef)(!1),[c,u]=(0,t.useState)({radius:150,autoUnlock:!1}),d=()=>{l.current&&a({open:!0,msg:e("lockSettings.failed"),severity:"error"})},f=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Yk.request("autoUnlockMap",{deviceUUID:o,operation:e,...t}).then((e=>{let{data:t}=e;l.current&&u(t)}))};return(0,t.useLayoutEffect)((()=>{l.current=!0;const e=i.current,t=s.current,r=[];for(let i=e.parentElement;i;i=i.parentElement)r.push([i,i.style.backgroundColor]),i.style.backgroundColor="transparent";const n=e=>{const{x:t,y:r,width:n,height:o}=e.getBoundingClientRect();return{left:t,top:r,width:n,height:o}},o=new ResizeObserver((()=>{if(!l.current||i.current!==e||!e.isConnected)return;const r=n(e);r.width&&r.height&&f("open",{rect:r,touchRect:n(t)}).catch(d)}));o.observe(e),o.observe(t);const a=Lk((e=>{let{type:t,data:r}=e;"devicePreferences"===t&&u(r)}));return()=>{l.current=!1,o.disconnect(),a(),r.forEach((e=>{let[t,r]=e;t.style.backgroundColor=r})),Yk.notify("autoUnlockMap",{operation:"close"})}}),[o]),(0,qh.jsxs)(ym,{sx:{...bj,height:"100dvh",display:"flex",flexDirection:"column"},children:[(0,qh.jsx)(ym,{sx:{display:"flex",alignItems:"center",minHeight:48,flexShrink:0,bgcolor:"background.paper"},children:(0,qh.jsx)(cE.A,{disableRipple:!0,onClick:()=>r(-1),children:(0,qh.jsx)(ZL,{})})}),(0,qh.jsxs)(lO,{sx:{bgcolor:"background.paper",flexShrink:0},children:[(0,qh.jsx)(iD.A,{primary:e("lockExtras.autoUnlock")}),(0,qh.jsx)(rB,{disableRipple:!0,checked:c.autoUnlock,onChange:(e,t)=>f("enable",{value:t}).catch(d)})]}),(0,qh.jsxs)(ym,{ref:i,sx:{flex:1,minHeight:0,display:"flex",flexDirection:"column",bgcolor:"transparent"},children:[(0,qh.jsx)(Bh.A,{sx:{px:2,py:1,color:"text.secondary",bgcolor:"transparent",fontSize:14,whiteSpace:"pre-line",maxHeight:"30vh",overflow:"auto",flexShrink:0},children:e("lockExtras.autoHint")}),(0,qh.jsx)(ym,{ref:s,sx:{flex:1,minHeight:0}}),(0,qh.jsxs)(ym,{sx:{px:3,pt:2,pb:5,flexShrink:0,bgcolor:"transparent"},children:[(0,qh.jsx)(iF,{sx:{color:"#d77e80"},"aria-label":e("lockExtras.radius",{value:c.radius}),min:20,max:500,step:.1,value:c.radius,valueLabelDisplay:"auto",valueLabelFormat:e=>Number(e.toFixed(1)),onChange:(e,t)=>{u((e=>({...e,radius:t}))),Yk.notify("autoUnlockMap",{deviceUUID:o,operation:"region",radius:t})},onChangeCommitted:(e,t)=>f("region",{radius:t,commit:!0}).catch(d)}),(0,qh.jsxs)(ym,{sx:{display:"flex",justifyContent:"space-between",color:"#d77e80"},children:[(0,qh.jsx)(Bh.A,{children:"20 m"}),(0,qh.jsx)(Bh.A,{children:"500 m"})]})]})]})]})}},{router:"index",component:hB},{router:"user",component:iB},{router:"rename",component:sse},{router:"share",component:lse},{router:"battery-trend",component:wne},{router:"factory-info",component:aie}],load:!0},{router:"/biz/wifi-module",components:[{router:"",component:gF},{router:"index",component:xne},{router:"ssm-upgrade",component:Kie}],load:!0}];function hse(){const{pathname:e}=dg(),{t:r}=Fv(),[n,o]=(0,t.useState)(0),[a,i]=(0,t.useState)(!1);return(0,t.useEffect)((()=>{if(!["/biz/wifi-module","/biz/wifi-module/index"].includes(e)&&("/"===e||!PT.includes(e)))return;let t=null,r=0;const n=()=>{t=null,r=0,o(0)},a=e=>{if(n(),1===e.touches.length&&!e.target.closest('input, textarea, .MuiModal-root, [role="dialog"], [role="slider"], [data-refresh-disabled="true"]')){for(let t=e.target;t instanceof Element;t=t.parentElement)if(t.scrollTop>0)return;window.scrollY>0||(t={x:e.touches[0].clientX,y:e.touches[0].clientY})}},s=e=>{if(!t||1!==e.touches.length)return;const a=e.touches[0].clientY-t.y,i=Math.abs(e.touches[0].clientX-t.x);a<0||i>Math.max(12,a)?n():(r=Math.min(a,100),r>12&&(e.cancelable&&e.preventDefault(),o(r)))},l=()=>{const e=r>=70;n(),e&&(i(!0),window.location.reload())};return document.addEventListener("touchstart",a,{passive:!0}),document.addEventListener("touchmove",s,{passive:!1}),document.addEventListener("touchend",l),document.addEventListener("touchcancel",n),()=>{document.removeEventListener("touchstart",a),document.removeEventListener("touchmove",s),document.removeEventListener("touchend",l),document.removeEventListener("touchcancel",n)}}),[e]),n||a?(0,qh.jsx)(ny.A,{sx:{position:"fixed",top:8,left:"calc(50% - 20px)",zIndex:1400,p:1,borderRadius:"50%",pointerEvents:"none"},children:(0,qh.jsx)(AE,{size:24,"aria-label":r("appHome.refreshing"),variant:a?"indeterminate":"determinate",value:Math.min(n/70*100,100)})}):null}function mse(e){let{children:r}=e;const{gStripe:n}=(0,t.useContext)(VI),{pathname:o}=dg(),{t:a}=Fv(),[i,s]=(0,t.useState)(!1),l=fC()||!1!==n.customerInfo.isAnonymous;return(0,t.useEffect)((()=>s(l)),[l,o]),l?(0,qh.jsx)(fy,{open:i,onClose:()=>s(!1),autoHideDuration:2e3,anchorOrigin:{vertical:"bottom",horizontal:"center"},sx:{bottom:{xs:72,sm:72},left:{xs:"50%",sm:"50%"},right:"auto",transform:"translateX(-50%)","& .MuiSnackbarContent-root":{minWidth:"unset",flexGrow:0,borderRadius:"20px",px:2,py:.5,whiteSpace:"nowrap"}},message:a("appHome.loginRequired")},o):r}const gse=(0,dD.A)((0,qh.jsx)("path",{d:"m13 5.83 1.88 1.88-1.6 1.6 1.41 1.41 3.02-3.02L12 2h-1v5.03l2 2zM5.41 4 4 5.41 10.59 12 5 17.59 6.41 19 11 14.41V22h1l4.29-4.29 2.3 2.29L20 18.59zM13 18.17v-3.76l1.88 1.88z"}),"BluetoothDisabled"),vse=(0,dD.A)((0,qh.jsx)("path",{d:"m7 12-2-2-2 2 2 2zm10.71-4.29L12 2h-1v7.59L6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 11 14.41V22h1l5.71-5.71-4.3-4.29zM13 5.83l1.88 1.88L13 9.59zm1.88 10.46L13 18.17v-3.76zM19 10l-2 2 2 2 2-2z"}),"BluetoothConnected");function yse(){const{t:e}=Fv(),{gManageDevice:r,gStripe:n}=(0,t.useContext)(VI),o=hg(),a=(0,t.useRef)(!1),i=(0,t.useRef)(null),[s,l]=(0,t.useState)(!1),[c,u]=(0,t.useState)({devices:[]}),[d,f]=(0,t.useState)(""),[p,h]=(0,t.useState)(""),m=async()=>{h(""),l(!0);try{await Yk.request("scanStart")}catch(o6){a.current&&h(o6.message)}finally{a.current&&l(!1)}};(0,t.useEffect)((()=>{a.current=!0;const e=Yk.onDiscovery(u);return m(),()=>{a.current=!1,e(),Yk.notify("scanStop")}}),[]);const g=async e=>{f(e.deviceUUID),h("");try{const t=await Yk.request("register",{deviceUUID:e.deviceUUID});if(await mB((e=>r.addSesameDevicesToBiz3([t.data],e))),fC()&&n.customerInfo.isAnonymous&&function(e,t){let{deviceUUID:r,deviceName:n,keyLevel:o,orderKey:a}=t;if(!e)return;const i=Ey();i.some((t=>t.subUUID===e&&t.deviceUUID===r))||Dy([...i,{subUUID:e,deviceUUID:r,deviceName:n,keyLevel:o,orderKey:a}])}(n.customerInfo.subUUID,t.data),await Yk.request("keysUploaded",{deviceUUID:e.deviceUUID}),$P(t.data.deviceModel)&&(await Yk.request("scripts",{deviceUUID:e.deviceUUID}),await nj(e.deviceUUID,[],0,!0)),r.getCompanyDevices(!0),a.current){o("/?appHome=1&fromType=app",{replace:!0});const r=["hub_3","hub_3_pro"].includes(t.data.deviceModel);if(JP(t.data.deviceModel)||r||aj(t.data.deviceModel)){const n=new URLSearchParams({appHome:"1",fromType:"app",deviceUUID:e.deviceUUID,deviceModel:t.data.deviceModel,keyLevel:"0",setup:"1"});o({pathname:r?"/biz/wifi-module/index":aj(t.data.deviceModel)?"/device-setting":"/device-setting/angle",search:n.toString()})}}}catch(o6){a.current&&h(o6.message)}finally{a.current&&f("")}};return(0,qh.jsxs)(ym,{sx:{minHeight:"100dvh",touchAction:"pan-y"},onTouchStart:e=>{i.current=0===window.scrollY?e.touches[0].clientY:null},onTouchEnd:e=>{null!==i.current&&e.changedTouches[0].clientY-i.current>70&&!d&&!s&&m(),i.current=null},children:[s&&(0,qh.jsx)(AE,{size:20}),(p||c.error)&&(0,qh.jsx)(LL,{severity:"error",children:p||c.error}),(0,qh.jsx)(KL,{scanStatus:c.status}),(0,qh.jsx)($T.A,{sx:{px:2},children:c.devices.map((e=>{const t=["ReadyToRegister","BleConnecting","DiscoverServices","BleLogining","Registering"].includes(e.status),r="BleClose"===c.status?gse:t?vse:mN,n=Number.isFinite(e.rssi)?Math.floor(10**((-e.rssi-62)/20)*100):null;return(0,qh.jsxs)(ym,{children:[(0,qh.jsxs)(aD,{disabled:Boolean(d),onClick:()=>g(e),sx:{py:3,px:0,display:"block"},children:[(0,qh.jsxs)(sm,{direction:"row",alignItems:"center",justifyContent:"space-between",spacing:1,children:[(0,qh.jsx)(Bh.A,{sx:{fontSize:22,fontWeight:600},children:e.name}),(0,qh.jsxs)(sm,{direction:"row",alignItems:"center",sx:{color:"primary.main",whiteSpace:"nowrap"},children:[(0,qh.jsx)(Bh.A,{variant:"caption",children:null===n?"":`${n} cm`}),(0,qh.jsx)(r,{fontSize:"small"})]})]}),(0,qh.jsxs)(sm,{direction:"row",justifyContent:"space-between",spacing:1,sx:{mt:1,color:"text.disabled"},children:[(0,qh.jsx)(Bh.A,{sx:{fontSize:10,overflowWrap:"anywhere"},children:e.deviceUUID}),(0,qh.jsx)(Bh.A,{sx:{fontSize:10,whiteSpace:"nowrap"},children:e.status})]}),d===e.deviceUUID&&(0,qh.jsx)(AE,{size:24})]}),(0,qh.jsx)(mM,{})]},e.deviceUUID)}))}),!c.devices.length&&(0,qh.jsx)(Bh.A,{color:"text.secondary",children:e("appHome.searching")})]})}function bse(e){let{children:r}=e;const{t:n}=Fv(),[o,a]=(0,t.useState)(!Ok),[i,s]=(0,t.useState)(!1),[l,c]=(0,t.useState)(0);return(0,t.useEffect)((()=>{if(o)return;let e=!0;return s(!1),async function(){if(Ok){const{language:e}=await mC();if(e){const t=/^zh(?:-|$)/i.test(e)?/-(?:Hant|TW|HK|MO)(?:-|$)/i.test(e)?"zh-TW":"zh-CN":e;await Kk.changeLanguage(t)}}cC=await gC()}().then((()=>{e&&a(!0)})).catch((()=>{e&&s(!0)})),()=>{e=!1}}),[o,l]),o?r:(0,qh.jsx)(sm,{spacing:2,sx:{p:4,alignItems:"center"},children:i?(0,qh.jsxs)(qh.Fragment,{children:[(0,qh.jsx)(LL,{severity:"error",children:n("appHome.networkError")}),(0,qh.jsx)(QI.A,{onClick:()=>c(l+1),children:n("appHome.retry")})]}):(0,qh.jsx)(AE,{})})}const wse=new Map,xse=new Set;function Sse(){var e;const r=hg(),n="1"===new URLSearchParams(window.location.search).get("background"),{t:o}=Fv(),a=dg(),s=(0,t.useContext)(VI),c=(0,t.useRef)({context:s,location:a});c.current={context:s,location:a};const u=new URLSearchParams(a.search),d=u.get("deviceUUID"),f=(null===(e=s.gManageDevice.companyDevices.find((e=>{var t;return(null===(t=e.deviceUUID)||void 0===t?void 0:t.toUpperCase())===(null===d||void 0===d?void 0:d.toUpperCase())})))||void 0===e?void 0:e.deviceModel)||u.get("deviceModel");QL(a.pathname.startsWith("/device-setting/")&&"/device-setting/credentials"!==a.pathname&&aj(f)?d:void 0,"wm_2"===f),(0,t.useEffect)((()=>{if(!Fk||n)return;mT.clear();const e=s.gStripe.customerInfo.subUUID;if(!e)return;const t=()=>mT.refresh(e).catch((()=>{}));t();const r=WC.onStatusChange((e=>{e===FC.CONNECTED&&t()})),o=Lk((e=>{let{type:r}=e;"resume"!==r&&"push"!==r||t()}));return()=>{r(),o(),mT.clear()}}),[s.gStripe.customerInfo.subUUID]);const p=(0,t.useRef)(null),h=(0,t.useRef)(new Set),m=(0,t.useRef)(!1);(0,t.useEffect)((()=>{if(Fk)return s.gAuth.loginState===l.loginState.loginOut?(m.current=!1,void Yk.notify("devices",{devices:[]})):void(s.gAuth.loginState!==l.loginState.login||s.gStripe.customerInfo.companyID||m.current||(m.current=!0,s.gStripe.getCustomerInfo("ch_CandyhouseMobile")))}),[s.gAuth.loginState,s.gStripe.customerInfo.companyID]),(0,t.useEffect)((()=>{if(!Fk)return;const e=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const o=new URL(e,window.location.origin);o.origin===window.location.origin?(o.searchParams.set("appHome","1"),o.searchParams.set("fromType","app"),o.searchParams.delete("token"),r({pathname:o.pathname,search:o.search},{replace:t})):Uk("openWebPage",{url:o.href}).catch(n)},t=()=>{var t,n,o;const a=c.current.location.pathname,i=null!==(t=null===(n=window.history.state)||void 0===n?void 0:n.idx)&&void 0!==t?t:0;"/app/register"===a||"/login"===a?e(RT(),!0):i>(null!==(o=p.current)&&void 0!==o?o:0)?r(-1):e(RT(),!0)},n=e=>c.current.context.setSnackbarValue({open:!0,msg:e.message||String(e)}),a=async()=>{const e=c.current.context;if(e.gAuth.loginState===l.loginState.login)try{const t=await gC();WC.connect(t),e.gManageDevice.getCompanyDevices(!0),fC()||!1!==e.gStripe.customerInfo.isAnonymous||e.gManageEmployee.getEmployees()}catch(t){n(t)}};let s;const u=Lk((r=>{let{type:u,data:d}=r;if("cloudRequest"===u){if("widgetCommand"===d.op){var f,p,h,m;const e=c.current.context.gManageDevice.companyDevices.find((e=>{var t;return e.deviceUUID.toUpperCase()===(null===(t=d.deviceUUID)||void 0===t?void 0:t.toUpperCase())})),t=null===(f=d.body)||void 0===f?void 0:f.operation;return e&&["toggle","lock","unlock"].includes(t)?void c.current.context.gIot.sendCommandToWM2({device_id:e.deviceUUID,sescretKey:e.secretKey,cmd:$P(e.deviceModel)?170+Number((null===(p=e.stateInfo)||void 0===p||null===(h=p.scriptList)||void 0===h||null===(m=h.find((e=>1===e.isDefault)))||void 0===m?void 0:m.actionIndex)||0):qP(e.deviceModel)?89:"lock"===t?82:"unlock"===t?83:88}).then((()=>Bk("cloudResponse",{requestId:d.requestId,success:!0}))).catch((()=>Bk("cloudResponse",{requestId:d.requestId,success:!1}))):void Bk("cloudResponse",{requestId:d.requestId,success:!1})}if(!["registerOs2","registerOs3","signGuestKey","history","firmware","battery"].includes(d.op))return void Bk("cloudResponse",{requestId:d.requestId,success:!1});uT(d.op,d.body,{deviceUUID:d.deviceUUID}).then((e=>Bk("cloudResponse",{requestId:d.requestId,success:!0,data:e}))).catch((()=>Bk("cloudResponse",{requestId:d.requestId,success:!1})))}else if("snapshot"===u)Yk.receiveSnapshot(d);else if("discovery"===u)Yk.receiveDiscovery(d);else if("navigate"===u)e(d);else if("back"===u)t();else if("resume"===u||"push"===u)a();else if("qrCancelled"===u)s=null;else if("qr"===u){const t=window[s];s=null,"function"===typeof t?t(d):(t=>{const r=c.current.context;try{const a=new URL(t),i=a.searchParams.get(Oe);if(a.searchParams.get("t")===Oe&&i)return fC()||r.gStripe.customerInfo.isAnonymous?void n(o("appHome.loginRequired")):void r.gManageEmployee.addEmployee([{friendID:i.toLowerCase(),companyID:r.gStripe.customerInfo.companyID}],(t=>{t.success?(r.gManageEmployee.getEmployees(),e("/contacts")):n(t.message||"Unable to add contact")}));if("sk"!==a.searchParams.get("t")||!a.searchParams.get("sk"))throw new Error}catch(a){return void n(o("appHome.unsupportedQr"))}r.gManageGroup.redeemQRToken(t,(t=>{if(!t.success)return void n(t.message||"QR redemption failed");let s;try{var c;const e=null===(c=new URL(t.data).searchParams.get("sk"))||void 0===c?void 0:c.replace(/ /g,"+");s=i[atob(e).charCodeAt(0)]}catch(a){}s?(r.gManageDevice.getCompanyDevices(!0),s===l.sesameDeviceModel.sesame_face_3?(r.gFace3.listFace3Devices(),e("/vision")):e("/")):n(o("appHome.unsupportedQr"))}))})(d)}else"error"===u&&n(d)})),d=t=>{let{detail:r}=t;try{const t=new URL(r);"/webview/open"===t.pathname?e(t.searchParams.get("url")):"/webview/notify"===t.pathname&&a()}catch(o){n(o)}},f=r=>{let{detail:o}=r;const i=e=>{var t,r;return null===(t=(r=window)[o.callbackName])||void 0===t?void 0:t.call(r,e)};switch(o.action){case"requestScanQRCode":s=o.callbackName,Uk("scanQr").catch(n);break;case"requestLogin":e("/login");break;case"requestSignOut":c.current.context.gAuth.handleSignout(i);break;case"requestRefreshApp":a(),i({success:!0});break;case"requestDestroySelf":t();break;case"requestOpenExternalURL":Uk("external",{url:o.url}).catch(n);break;case"requestAppVersion":Uk("appVersion").then((e=>i(e.data))).catch(n);break;case"requestPushToken":case"requestNotificationStatus":Uk("pushInfo").then((e=>i(e.data))).catch((e=>{i({success:!1}),n(e)}));break;case"requestNotificationSettings":Uk("notificationSettings").catch(n);break;case"requestActivePromotion":mT.refresh(c.current.context.gStripe.customerInfo.subUUID).then((e=>i({success:!0,...e}))).catch((()=>i({success:!1})));break;case"requestMarkPromotionRead":mT.markRead(o.promotionId,o.targetUrl).then((e=>i({success:!0,...e}))).catch((()=>i({success:!1})));break;case"requestAuthState":i({success:!0,signedIn:c.current.context.gAuth.loginState===l.loginState.login&&!fC()});break;default:i({success:!1,error:"This capability is not available in the web app yet"})}};return window.addEventListener("app-scheme",d),window.addEventListener("app-command",f),Yk.notify("ready"),()=>{u(),window.removeEventListener("app-scheme",d),window.removeEventListener("app-command",f)}}),[r,o]),(0,t.useEffect)((()=>{if(!Fk)return;const e=new URLSearchParams(a.search);"1"===e.get("appHome")&&"app"===e.get("fromType")||(e.set("appHome","1"),e.set("fromType","app"),r({pathname:a.pathname,search:e.toString()},{replace:!0}))}),[a.pathname,a.search,r]),(0,t.useEffect)((()=>{if(!Fk||n||!s.gStripe.customerInfo.subUUID)return;let e,t=!0,r=!1,a=0;const i=s.gStripe.customerInfo.subUUID,l=!0===s.gStripe.customerInfo.isAnonymous,u=()=>t&&c.current.context.gStripe.customerInfo.subUUID===i&&fC()===l,d=async()=>{if(!r&&u()){r=!0,clearTimeout(e);try{const{data:e}=await Uk("pushInfo");if(!u())return;if(l||await uT("bindPush",e.pushToken,{account:i}),!u())return;const t=await uT("subscribePush",{action:"subscribeToTopic",topicName:"app_announcements",pushToken:e.pushToken,appIdentifyId:e.appIdentifyId,platform:"android",env:e.env},{account:i,language:e.language}),r="string"===typeof(null===t||void 0===t?void 0:t.body)?JSON.parse(t.body):t;if(null===r||void 0===r||!r.success||!r.envId)throw new Error("Push subscription failed");if(!u())return;TI(r.envId),c.current.context.gStripe.setCustomerInfo((e=>e.subUUID===i?{...e,envId:r.envId}:e)),a=0}catch(t){u()&&(++a<3?e=setTimeout(d,5e3*a):c.current.context.setSnackbarValue({open:!0,msg:o("appHome.networkError")}))}finally{r=!1}}},f=()=>{a=0,d()};d();const p=Lk((e=>{let{type:t}=e;"resume"!==t&&"push"!==t||f()}));return window.addEventListener("online",f),()=>{t=!1,clearTimeout(e),p(),window.removeEventListener("online",f)}}),[s.gStripe.customerInfo.subUUID,s.gStripe.customerInfo.isAnonymous,o]);const g=(0,t.useRef)(!1);return(0,t.useEffect)((()=>{if(!Fk||!s.gManageDevice.devicesLoaded||!s.gStripe.customerInfo.companyID)return;const e=s.gStripe.customerInfo.subUUID,t=!0===s.gStripe.customerInfo.isAnonymous;t&&fC()&&function(e,t){if(!e)return;const r=Ey();Dy([...r.filter((t=>t.subUUID!==e||t.target)),...t.filter((t=>t.subUUID===e&&!r.some((r=>r.subUUID===e&&r.deviceUUID===t.deviceUUID&&r.target)))).map((t=>{let{deviceUUID:r,deviceName:n,keyLevel:o,orderKey:a}=t;return{subUUID:e,deviceUUID:r,deviceName:n,keyLevel:o,orderKey:a}}))])}(e,s.gManageDevice.companyDevices);let r=!0;const n=()=>c.current.context.gStripe.customerInfo.subUUID===e&&c.current.context.gAuth.loginState===l.loginState.login&&fC()===t,a=async()=>{if(r&&!g.current&&n()&&"/app/register"!==c.current.location.pathname){g.current=!0;try{const{data:r}=await Uk("localKeys");for(const e of r){if(!n())return;if(await mB((t=>c.current.context.gManageDevice.addSesameDevicesToBiz3([e],t))),!n())return;await Uk("keysUploaded",{deviceUUID:e.deviceUUID})}if(r.length&&n()&&c.current.context.gManageDevice.getCompanyDevices(!0),t||!n())return;const o=Ey().filter((t=>t.target===e&&t.subUUID!==e));for(const t of new Set(o.map((e=>e.subUUID)))){const r=o.filter((e=>e.subUUID===t)),a=[];for(const e of r){if(!n())return;const{data:t}=await Uk("deviceKey",{deviceUUID:e.deviceUUID});a.push({...t,deviceName:e.deviceName,keyLevel:e.keyLevel,orderKey:e.orderKey})}if(!n())return;const i=[];for(let o=0;o<a.length;o+=20){if(!n())return;const r=await uT("uploadKeys",a.slice(o,o+20),{account:e,guestIdentityId:t});i.push(...(null===r||void 0===r?void 0:r.uploaded)||[])}if(!n())return;if(!a.every((e=>i.includes(e.deviceUUID.toUpperCase()))))throw new Error("Device migration not confirmed");r.forEach(Ty),c.current.context.gManageDevice.getCompanyDevices(!0)}}catch(a){n()&&c.current.context.setSnackbarValue({open:!0,msg:o("appHome.networkError")})}finally{g.current=!1,r||window.dispatchEvent(new Event("app-keys-sync"))}}};a();const i=Lk((e=>{let{type:t}=e;"resume"===t&&a()}));return window.addEventListener("online",a),window.addEventListener("app-keys-sync",a),()=>{r=!1,i(),window.removeEventListener("online",a),window.removeEventListener("app-keys-sync",a)}}),[s.gManageDevice.devicesLoaded,s.gManageDevice.companyDevices,s.gStripe.customerInfo.companyID,s.gStripe.customerInfo.subUUID,s.gStripe.customerInfo.isAnonymous,a.pathname]),(0,t.useEffect)((()=>{if(Fk){var e,t,r;if(PT.includes(a.pathname))r=a.pathname,PT.includes(r)&&sessionStorage.setItem(jT,r),p.current=null!==(e=null===(t=window.history.state)||void 0===t?void 0:t.idx)&&void 0!==e?e:0;Yk.notify("route",{path:a.pathname})}}),[a.pathname]),(0,t.useEffect)((()=>{if(!Fk||!s.gManageDevice.devicesLoaded)return;let e=!0;const t=s.gStripe.customerInfo.subUUID;return Yk.request("devices",{devices:s.gManageDevice.companyDevices,historyTag:s.gStripe.customerInfo.envId}).then((()=>!(!e||c.current.context.gStripe.customerInfo.subUUID!==t)&&async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:uT,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:localStorage;if(!e||xse.has(e))return!1;const n=`orderKeyMigrated_${e}`;try{if("true"===r.getItem(n))return!1}catch(a){}if(wse.has(e))return wse.get(e);const o=(async()=>{await t("mergeDeviceOrder",{},{account:e}),xse.add(e);try{r.setItem(n,"true")}catch(a){}return!0})();wse.set(e,o);try{return await o}finally{wse.delete(e)}}(t))).then((e=>{e&&c.current.context.gStripe.customerInfo.subUUID===t&&!h.current.has(t)&&(h.current.add(t),c.current.context.gManageDevice.getCompanyDevices(!0))})).catch((()=>{})),()=>{e=!1}}),[s.gManageDevice.companyDevices,s.gManageDevice.devicesLoaded,s.gStripe.customerInfo.envId,s.gStripe.customerInfo.subUUID]),null}Uh.configure(SL);const Ase=()=>{const{gStripe:e}=(0,t.useContext)(VI),[r,n]=(0,t.useState)([]),o=dg();(0,t.useEffect)((()=>{window.scrollTo(0,0)}),[o.pathname]),(0,t.useEffect)((()=>{var t;const r=e.customerInfo;if(r&&(null===(t=r.access)||void 0===t?void 0:t.length)>0){const t=Dh.categoriesConf.map((t=>{let{router:r,id:n,_items:o}=t;return Dh.isContainPage(e.customerInfo.access,n,e.customerInfo.isSesameApp)?r.startsWith("/biz/access-control")?"/biz/access-control":r:null}));Fk&&t.push("/contacts","/me"),t.push(...pse.filter((e=>!!e.load))),n([...new Set(t.filter(Boolean))])}}),[e.customerInfo]);const a=e=>{if(Array.isArray(e))return e.map((e=>a(e)));{var t;const r=null!==(t=pse.find((t=>t.router===e)))&&void 0!==t?t:e;return r&&r.components?(0,qh.jsx)(Pg,{path:r.router,children:a(r.components)},r.router):(0,qh.jsx)(Pg,{path:r.router,element:Fk&&["/contacts","/contact-add"].includes(r.router)?(0,qh.jsx)(mse,{children:(0,qh.jsx)(r.component,{})}):(0,qh.jsx)(r.component,{})},r.router)}};return e.isPending?(0,qh.jsx)(MM,{}):(0,qh.jsxs)(qh.Fragment,{children:[Fk&&(0,qh.jsx)(hse,{}),(0,qh.jsxs)(Rg,{children:[(0,qh.jsx)(Pg,{path:"/login",element:(0,qh.jsx)(xL,{})}),(0,qh.jsxs)(Pg,{element:(0,qh.jsx)(MP,{}),children:[(0,qh.jsx)(Pg,{path:"/",element:(0,qh.jsx)(wL,{})}),Fk&&(0,qh.jsx)(Pg,{path:"/app/register",element:(0,qh.jsx)(yse,{})}),(0,qh.jsx)(Pg,{path:"/biz",element:(0,qh.jsx)(ZI,{})}),(e=>{if(Array.isArray(e)&&0!==e.length)return e.map((e=>a(e)))})(r),(0,qh.jsx)(Pg,{path:"/biz/settings",element:(0,qh.jsx)(sT,{})}),(0,qh.jsx)(Pg,{path:"*",element:(0,qh.jsx)(FP,{})})]})]})]})},kse=()=>(0,qh.jsx)(bse,{children:(0,qh.jsx)(mv,{children:(0,qh.jsx)(GI,{children:(0,qh.jsxs)(Cy.A,{theme:gy,children:[(0,qh.jsx)(BP,{}),(0,qh.jsx)(Sse,{}),(0,qh.jsx)(Ase,{})]})})})}),Cse=document.getElementById("root");o.createRoot(Cse).render((0,qh.jsx)(t.StrictMode,{children:(0,qh.jsx)(kse,{})}))})()})();
\ No newline at end of file
diff --git a/sesameApp/src/main/assets/biz/static/js/main.5b3a6865.js.LICENSE.txt b/sesameApp/src/main/assets/biz/static/js/main.5b3a6865.js.LICENSE.txt
new file mode 100644
index 0000000..dda3cf5
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/static/js/main.5b3a6865.js.LICENSE.txt
@@ -0,0 +1,260 @@
+/* @license
+Papa Parse
+v5.4.1
+https://github.com/mholt/PapaParse
+License: MIT
+*/
+
+/*!
+  react-datepicker v7.5.0
+  https://github.com/Hacker0x01/react-datepicker
+  Released under the MIT License.
+*/
+
+/*!
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+/*!
+ * JavaScript Cookie v2.2.1
+ * https://github.com/js-cookie/js-cookie
+ *
+ * Copyright 2006, 2015 Klaus Hartl & Fagner Brack
+ * Released under the MIT license
+ */
+
+/*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author   Feross Aboukhadijeh <http://feross.org>
+ * @license  MIT
+ */
+
+/*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author   Feross Aboukhadijeh <https://feross.org>
+ * @license  MIT
+ */
+
+/*!
+ * cookie
+ * Copyright(c) 2012-2014 Roman Shtylman
+ * Copyright(c) 2015 Douglas Christopher Wilson
+ * MIT Licensed
+ */
+
+/*!
+* tabbable 6.2.0
+* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
+*/
+
+/*!
+Amazon Kinesis Video Streams WebRTC SDK for JavaScript
+Copyright 2019-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+
+This product includes software developed at
+Amazon Web Services, Inc. (http://aws.amazon.com/).
+*/
+
+/*! *****************************************************************************
+Copyright (c) Microsoft Corporation.
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
+REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
+INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THIS SOFTWARE.
+***************************************************************************** */
+
+/*! decimal.js-light v2.5.1 https://github.com/MikeMcl/decimal.js-light/LICENCE */
+
+/*! https://mths.be/punycode v1.3.2 by @mathias */
+
+/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
+
+/*! sheetjs (C) 2013-present SheetJS -- http://sheetjs.com */
+
+/**
+ * @file Web Cryptography API shim
+ * @author Artem S Vybornov <vybornov@gmail.com>
+ * @license MIT
+ */
+
+/**
+ * @license
+ * Lodash <https://lodash.com/>
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
+ * Released under MIT license <https://lodash.com/license>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ */
+
+/**
+ * @license React
+ * react-dom.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * react-is.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * react-jsx-runtime.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * react.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * scheduler.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * use-sync-external-store-shim.production.js
+ *
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * use-sync-external-store-shim/with-selector.production.js
+ *
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * use-sync-external-store-with-selector.production.js
+ *
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @module BitMatrix
+ * @author nuintun
+ * @author Cosmo Wolfe
+ * @license https://raw.githubusercontent.com/cozmo/jsQR/master/LICENSE
+ */
+
+/**
+ * @module BitStream
+ * @author nuintun
+ * @author Cosmo Wolfe
+ * @license https://raw.githubusercontent.com/cozmo/jsQR/master/LICENSE
+ */
+
+/**
+ * @module GenericGF
+ * @author nuintun
+ * @author Cosmo Wolfe
+ * @license https://raw.githubusercontent.com/cozmo/jsQR/master/LICENSE
+ */
+
+/**
+ * @module GenericGFPoly
+ * @author nuintun
+ * @author Cosmo Wolfe
+ * @license https://raw.githubusercontent.com/cozmo/jsQR/master/LICENSE
+ */
+
+/**
+ * @module QRCode
+ * @author nuintun
+ * @author Cosmo Wolfe
+ * @license https://raw.githubusercontent.com/cozmo/jsQR/master/LICENSE
+ */
+
+/**
+ * @module QRCode
+ * @package @nuintun/qrcode
+ * @license MIT
+ * @version 3.4.0
+ * @author nuintun <nuintun@qq.com>
+ * @description A pure JavaScript QRCode encode and decode library.
+ * @see https://github.com/nuintun/qrcode#readme
+ */
+
+/**
+ * @module Version
+ * @author nuintun
+ * @author Cosmo Wolfe
+ * @license https://raw.githubusercontent.com/cozmo/jsQR/master/LICENSE
+ */
+
+/**
+ * @module extractor
+ * @author nuintun
+ * @author Cosmo Wolfe
+ * @license https://raw.githubusercontent.com/cozmo/jsQR/master/LICENSE
+ */
+
+/**
+ * @module index
+ * @author nuintun
+ * @author Cosmo Wolfe
+ * @license https://raw.githubusercontent.com/cozmo/jsQR/master/LICENSE
+ */
+
+/**
+ * @mui/styled-engine v6.1.9
+ *
+ * @license MIT
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/** @license React v16.13.1
+ * react-is.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
diff --git a/sesameApp/src/main/assets/biz/static/media/arrow.0b1bb0506b894eb647e0179d5b72f6ff.svg b/sesameApp/src/main/assets/biz/static/media/arrow.0b1bb0506b894eb647e0179d5b72f6ff.svg
new file mode 100644
index 0000000..1192bae
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/static/media/arrow.0b1bb0506b894eb647e0179d5b72f6ff.svg
@@ -0,0 +1,3 @@
+<svg width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M7.56217 4.12046L16.8333 11.6901L7.57558 19.2829" stroke="#C4C4C4" stroke-width="2.5"/>
+</svg>
diff --git a/sesameApp/src/main/assets/biz/static/media/face_tips.93d19c32a9027deb0dd9.png b/sesameApp/src/main/assets/biz/static/media/face_tips.93d19c32a9027deb0dd9.png
new file mode 100644
index 0000000..d76a308
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/face_tips.93d19c32a9027deb0dd9.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/facepro_tips.951dd4937368ae060f0e.png b/sesameApp/src/main/assets/biz/static/media/facepro_tips.951dd4937368ae060f0e.png
new file mode 100644
index 0000000..5daacc0
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/facepro_tips.951dd4937368ae060f0e.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/gif_finger.f47cf6fa5db051dc7697.gif b/sesameApp/src/main/assets/biz/static/media/gif_finger.f47cf6fa5db051dc7697.gif
new file mode 100644
index 0000000..2c81260
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/gif_finger.f47cf6fa5db051dc7697.gif differ
diff --git a/sesameApp/src/main/assets/biz/static/media/knob.9376c5afa509d20cdf6d.png b/sesameApp/src/main/assets/biz/static/media/knob.9376c5afa509d20cdf6d.png
new file mode 100644
index 0000000..6d70a2c
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/knob.9376c5afa509d20cdf6d.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/locked.5129de54382b91719c523d6eb7dd5f49.svg b/sesameApp/src/main/assets/biz/static/media/locked.5129de54382b91719c523d6eb7dd5f49.svg
new file mode 100644
index 0000000..d53ad64
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/static/media/locked.5129de54382b91719c523d6eb7dd5f49.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 22"><path d="M12.9036,7.1823L3.0001,7.1823A3,3 0,0 0,0.0001 10.1823L0.0001,18.0337A3,3 0,0 0,3.0001 21.0337L12.9036,21.0337A3,3 0,0 0,15.9036 18.0337L15.9036,10.1823A3,3 0,0 0,12.9036 7.1823z" fill="#CC4A44"/><path d="M7.6952,1L7.6952,1A4.1302,4.1302 0,0 0,3.5651 5.1302L3.5651,9.7473A4.1302,4.1302 0,0 0,7.6952 13.8775L7.6952,13.8775A4.1302,4.1302 0,0 0,11.8254 9.7473L11.8254,5.1302A4.1302,4.1302 0,0 0,7.6952 1z" fill="none" stroke="#CC4A44" stroke-width="2"/></svg>
diff --git a/sesameApp/src/main/assets/biz/static/media/palm_tips.ae60fa490afedfbd05d2.png b/sesameApp/src/main/assets/biz/static/media/palm_tips.ae60fa490afedfbd05d2.png
new file mode 100644
index 0000000..6448f26
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/palm_tips.ae60fa490afedfbd05d2.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/palmpro_tips.40280d3200c2aca566ec.png b/sesameApp/src/main/assets/biz/static/media/palmpro_tips.40280d3200c2aca566ec.png
new file mode 100644
index 0000000..d686412
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/palmpro_tips.40280d3200c2aca566ec.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_model_auto_01.d518eec82edeb8e6af5f.png b/sesameApp/src/main/assets/biz/static/media/png_air_model_auto_01.d518eec82edeb8e6af5f.png
new file mode 100644
index 0000000..64f50bb
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_model_auto_01.d518eec82edeb8e6af5f.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_model_cold_02.27b4f3e1758dd0b27af8.png b/sesameApp/src/main/assets/biz/static/media/png_air_model_cold_02.27b4f3e1758dd0b27af8.png
new file mode 100644
index 0000000..c04af3d
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_model_cold_02.27b4f3e1758dd0b27af8.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_model_dry_03.52d983b129236da82d77.png b/sesameApp/src/main/assets/biz/static/media/png_air_model_dry_03.52d983b129236da82d77.png
new file mode 100644
index 0000000..27bed82
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_model_dry_03.52d983b129236da82d77.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_model_hot_05.3073c23fda71454fc14c.png b/sesameApp/src/main/assets/biz/static/media/png_air_model_hot_05.3073c23fda71454fc14c.png
new file mode 100644
index 0000000..bfe42a6
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_model_hot_05.3073c23fda71454fc14c.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_model_wind_04.abd4dc20ea8f21374d54.png b/sesameApp/src/main/assets/biz/static/media/png_air_model_wind_04.abd4dc20ea8f21374d54.png
new file mode 100644
index 0000000..8d4a905
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_model_wind_04.abd4dc20ea8f21374d54.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_auto.b3db6a283d7fa76a791d.png b/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_auto.b3db6a283d7fa76a791d.png
new file mode 100644
index 0000000..9f0f4b1
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_auto.b3db6a283d7fa76a791d.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v1.79fdd6fd4367a1c45f50.png b/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v1.79fdd6fd4367a1c45f50.png
new file mode 100644
index 0000000..66c6cfd
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v1.79fdd6fd4367a1c45f50.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v2.73b6524d9fc6fc736505.png b/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v2.73b6524d9fc6fc736505.png
new file mode 100644
index 0000000..2101339
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v2.73b6524d9fc6fc736505.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v3.36aa6dfd51b9e42791fa.png b/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v3.36aa6dfd51b9e42791fa.png
new file mode 100644
index 0000000..e4c9755
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_wind_speed_v3.36aa6dfd51b9e42791fa.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_wind_vertical_v2.369996ae7d246d539407.png b/sesameApp/src/main/assets/biz/static/media/png_air_wind_vertical_v2.369996ae7d246d539407.png
new file mode 100644
index 0000000..c39e7ab
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_wind_vertical_v2.369996ae7d246d539407.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_air_wind_vertical_v3.fadae6c24cb3dc1a4e30.png b/sesameApp/src/main/assets/biz/static/media/png_air_wind_vertical_v3.fadae6c24cb3dc1a4e30.png
new file mode 100644
index 0000000..6eef823
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_air_wind_vertical_v3.fadae6c24cb3dc1a4e30.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_fan.c435dd5165febb6fbd71.png b/sesameApp/src/main/assets/biz/static/media/png_fan.c435dd5165febb6fbd71.png
new file mode 100644
index 0000000..baa6967
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_fan.c435dd5165febb6fbd71.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/png_ir_match.1dc7e8f70f4c8cd8fd2f.png b/sesameApp/src/main/assets/biz/static/media/png_ir_match.1dc7e8f70f4c8cd8fd2f.png
new file mode 100644
index 0000000..1754002
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/png_ir_match.1dc7e8f70f4c8cd8fd2f.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/site-icon.66c4e4529967fda91a5b.png b/sesameApp/src/main/assets/biz/static/media/site-icon.66c4e4529967fda91a5b.png
new file mode 100644
index 0000000..8440cfc
Binary files /dev/null and b/sesameApp/src/main/assets/biz/static/media/site-icon.66c4e4529967fda91a5b.png differ
diff --git a/sesameApp/src/main/assets/biz/static/media/unlocked.46651d2494fea7d9b8eb6d203c496a69.svg b/sesameApp/src/main/assets/biz/static/media/unlocked.46651d2494fea7d9b8eb6d203c496a69.svg
new file mode 100644
index 0000000..f49fcf4
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/static/media/unlocked.46651d2494fea7d9b8eb6d203c496a69.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22 22"><path d="M3,7.3732L12.9035,7.3732A3,3 0,0 1,15.9035 10.3732L15.9035,18.2247A3,3 0,0 1,12.9035 21.2247L3,21.2247A3,3 0,0 1,0 18.2247L0,10.3732A3,3 0,0 1,3 7.3732z" fill="#28AEB1"/><path d="M10.5168,15.8775V6.1302C10.5168,3.2969 12.8136,1 15.6469,1V1C18.4802,1 20.7771,3.2969 20.7771,6.1302V8.4388" fill="none" stroke="#28AEB1" stroke-width="2"/></svg>
diff --git a/sesameApp/src/main/assets/biz/static/media/vision.2e0ec6406814048f361af3f16b60f0e4.svg b/sesameApp/src/main/assets/biz/static/media/vision.2e0ec6406814048f361af3f16b60f0e4.svg
new file mode 100644
index 0000000..d10d42a
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/static/media/vision.2e0ec6406814048f361af3f16b60f0e4.svg
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 24 24" style="enable-background:new 0 0 24 24;" xml:space="preserve">
+<style type="text/css">
+	.st0{fill:none;}
+	.st1{fill:currentColor;}
+</style>
+<rect y="0" class="st0" width="24" height="24"/>
+<path class="st1" d="M12,20.2c-0.1,0-0.3-0.1-0.4-0.2l-3.1-3.1L8.3,17c-0.5,0.1-0.9,0.2-1.3,0.2c-3.1,0-5.7-2.5-5.7-5.7
+	c0-0.7,0.2-1.4,0.5-2.3C1.9,9,2.1,8.9,2.3,8.9c0.1,0,0.2,0,0.3,0C2.9,9.1,3,9.4,2.9,9.7c-0.2,0.6-0.3,1.1-0.3,1.8
+	c0,2.4,2,4.4,4.4,4.4s4.4-2,4.4-4.4S9.4,7.1,7,7.1S2.4,6.4,0.6,5l0,0l0,0C0.4,4.8,0.3,4.7,0.3,4.6c0-0.2,0-0.4,0.1-0.5l0,0l0,0
+	c0.1-0.2,0.3-0.2,0.4-0.2s0.3,0,0.4,0.1C2.8,5.2,4.8,5.8,7,5.8c1.9,0,3.6,0.9,4.7,2.6L12,8.9l0.3-0.5c1.1-1.6,2.8-2.6,4.7-2.6
+	c2.2,0,4.1-0.7,5.7-1.9c0.1-0.1,0.2-0.1,0.3-0.1c0.2,0,0.4,0.1,0.5,0.2c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2-0.1,0.3-0.2,0.4
+	C21.6,6.3,19.4,7,17,7s-4.4,2-4.4,4.4s2,4.4,4.4,4.4s4.4-2,4.4-4.4c0-0.6-0.1-1.2-0.3-1.8c-0.1-0.3,0-0.7,0.3-0.8c0.1,0,0.2,0,0.3,0
+	c0.2,0,0.5,0.1,0.5,0.3c0.3,0.9,0.5,1.6,0.5,2.3c0,3.1-2.5,5.7-5.7,5.7c-0.4,0-0.8-0.1-1.3-0.2l-0.2-0.1l-3,3.2
+	C12.3,20.2,12.2,20.2,12,20.2z M11.7,14.7c-0.4,0.6-0.9,1.1-1.5,1.5l-0.4,0.3l2.2,2.2l2.2-2.2l-0.4-0.3c-0.6-0.4-1.1-0.9-1.5-1.5
+	L12,14.2L11.7,14.7z"/>
+<path class="st1" d="M7,9.6c-1,0-1.9,0.8-1.9,1.9s0.8,1.9,1.9,1.9s1.9-0.8,1.9-1.9S8,9.6,7,9.6z M7.5,11.4c-0.3,0-0.6-0.3-0.6-0.6
+	s0.3-0.6,0.6-0.6s0.6,0.3,0.6,0.6S7.8,11.4,7.5,11.4z"/>
+<path class="st1" d="M17.1,9.6c-1,0-1.9,0.8-1.9,1.9s0.8,1.9,1.9,1.9s1.9-0.8,1.9-1.9S18.1,9.6,17.1,9.6z M16.6,11.4
+	c-0.3,0-0.6-0.3-0.6-0.6s0.3-0.6,0.6-0.6c0.3,0,0.6,0.3,0.6,0.6S16.9,11.4,16.6,11.4z"/>
+</svg>
diff --git a/sesameApp/src/main/assets/biz/version.json b/sesameApp/src/main/assets/biz/version.json
new file mode 100644
index 0000000..36204a3
--- /dev/null
+++ b/sesameApp/src/main/assets/biz/version.json
@@ -0,0 +1,5 @@
+{
+  "gitHash": "72339fee",
+  "buildTime": "2026-09-30",
+  "version": "1.0.0"
+}
\ No newline at end of file
diff --git a/sesameApp/src/main/java/co/candyhouse/app/SesameActivity.kt b/sesameApp/src/main/java/co/candyhouse/app/SesameActivity.kt
new file mode 100644
index 0000000..2b0c584
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/SesameActivity.kt
@@ -0,0 +1,596 @@
+package co.candyhouse.app
+
+import android.Manifest
+import android.annotation.SuppressLint
+import android.app.PendingIntent
+import android.bluetooth.BluetoothAdapter
+import android.content.Intent
+import android.content.pm.PackageManager
+import android.graphics.Bitmap
+import android.graphics.BitmapFactory
+import android.graphics.Color
+import android.net.Uri
+import android.nfc.NdefMessage
+import android.nfc.NdefRecord
+import android.nfc.NfcAdapter
+import android.nfc.Tag
+import android.nfc.tech.Ndef
+import android.nfc.tech.NdefFormatable
+import android.os.Build
+import android.os.Bundle
+import android.provider.Settings
+import android.view.Gravity
+import android.view.HapticFeedbackConstants
+import android.view.View
+import android.webkit.RenderProcessGoneDetail
+import android.webkit.ValueCallback
+import android.webkit.WebChromeClient
+import android.webkit.WebResourceError
+import android.webkit.WebResourceRequest
+import android.webkit.WebResourceResponse
+import android.webkit.WebView
+import android.webkit.WebViewClient
+import android.widget.FrameLayout
+import android.widget.ImageView
+import android.widget.LinearLayout
+import android.widget.ProgressBar
+import androidx.activity.ComponentActivity
+import androidx.activity.OnBackPressedCallback
+import androidx.core.app.NotificationManagerCompat
+import androidx.core.net.toUri
+import androidx.core.view.ViewCompat
+import androidx.core.view.WindowCompat
+import androidx.core.view.WindowInsetsCompat
+import co.candyhouse.app.ble.BleController
+import co.candyhouse.app.ble.BleRegistrationController
+import co.candyhouse.app.bridge.NativeRequestHandler
+import co.candyhouse.app.bridge.WebViewBridge
+import co.candyhouse.app.connecteddevice.AutoUnlockMap
+import co.candyhouse.app.connecteddevice.SesameConnectedDeviceService
+import co.candyhouse.app.data.KeyHandoff
+import co.candyhouse.app.internal.InternalTestBottomSheet
+import co.candyhouse.app.push.PushNotification
+import co.candyhouse.app.ui.AppMenu
+import co.candyhouse.app.ui.AppToolbar
+import co.candyhouse.app.util.AppEnvironment
+import co.candyhouse.app.util.BundledWebResources
+import co.candyhouse.app.util.WebResourceSettings
+import co.candyhouse.app.util.dp
+import co.candyhouse.app.util.openExternalUrl
+import co.candyhouse.app.util.qrcode.core.QRCodeView
+import co.candyhouse.app.util.qrcode.zxing.QRCodeDecoder
+import co.candyhouse.app.util.qrcode.zxing.ZXingView
+import co.candyhouse.app.util.toKeyJson
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHScanStatus
+import co.candyhouse.sesame.utils.L
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.SupervisorJob
+import kotlinx.coroutines.cancel
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
+import kotlinx.coroutines.withTimeout
+import org.json.JSONArray
+import org.json.JSONObject
+import kotlin.time.Duration.Companion.milliseconds
+
+/** One browser surface with native menu, QR scanner and internal BLE test controls. */
+class SesameActivity : ComponentActivity() {
+    private val scope = CoroutineScope(SupervisorJob() + Dispatchers.Main.immediate)
+    private lateinit var root: FrameLayout
+    private lateinit var web: WebView
+    private lateinit var toolbar: AppToolbar
+    private lateinit var webContainer: FrameLayout
+    private lateinit var pageProgress: ProgressBar
+    private lateinit var autoUnlockMap: AutoUnlockMap
+    private var nfcDevice: String? = null
+    private var nfcIntent: Intent? = null
+    private var webReady = false
+    private var pageLoading = false
+    private var pageLoadGeneration = 0L
+    private var currentRoute = "/"
+    private val tabPaths = setOf("/", "/vision", "/contacts", "/me/homepage")
+    private lateinit var ble: BleController
+    private val bleObserver: (JSONArray) -> Unit = { if (::bridge.isInitialized) emit("snapshot", it) }
+    private lateinit var registration: BleRegistrationController
+    private var scanner: ZXingView? = null
+    private var scannerOverlay: FrameLayout? = null
+    private var testSheet: InternalTestBottomSheet? = null
+    private var returnUrl: String? = null
+    private val actionMenu by lazy { AppMenu(this, { navigate("/app/register") }, ::scanQr, { navigate("/contact-add") }) }
+    private val keyHandoff by lazy { KeyHandoff(this) }
+    private lateinit var bridge: WebViewBridge
+    private var files: ValueCallback<Array<Uri>>? = null
+    private var registeredKey: JSONObject? = null
+    private var discovering = false
+    private val origin = BuildConfig.WEB_ORIGIN
+    private val entry get() = "$origin/?appHome=1&fromType=app"
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
+            override fun handleOnBackPressed() = handleBack()
+        })
+        (application as SesameApp).apply { activityPresent = true; stopBackgroundWeb() }
+        initializeBle()
+        createLayout()
+        autoUnlockMap = AutoUnlockMap(this, webContainer, { web }) { emit("devicePreferences", it) }
+        connectBridge()
+        createWebView()
+        observePush()
+        nfcIntent = intent.takeIf { it.action?.startsWith("android.nfc.action.") == true }
+        // Let WebView start loading before asking Firebase to refresh the installation token.
+        web.post { scope.launch { (application as SesameApp).subscriptionManager.refreshToken() } }
+    }
+
+    private fun initializeBle() {
+        ble = (application as SesameApp).ble
+        ble.observers.add(bleObserver)
+        registration = BleRegistrationController(scope, { emit("discovery", it) }, { byteArrayOf() }) {
+            keyHandoff.add(it.getKey())
+            registeredKey = it.getKey().toKeyJson().put("keyLevel", 0).put("deviceName", it.productModel.deviceModelName())
+        }
+    }
+
+    private fun createLayout() {
+        WindowCompat.setDecorFitsSystemWindows(window, false)
+        root = FrameLayout(this).apply { setBackgroundColor(Color.WHITE) }
+        ViewCompat.setOnApplyWindowInsetsListener(root) { view, insets ->
+            val safe = insets.getInsets(WindowInsetsCompat.Type.systemBars() or WindowInsetsCompat.Type.displayCutout() or WindowInsetsCompat.Type.ime())
+            view.setPadding(safe.left, safe.top, safe.right, safe.bottom)
+            WindowInsetsCompat.CONSUMED
+        }
+        setContentView(root)
+        ViewCompat.requestApplyInsets(root)
+        toolbar = AppToolbar(this, ::handleBack, ::showMenu) {
+            testSheet?.dismiss()
+            val wasBundled = WebResourceSettings.isBundled(this)
+            testSheet = InternalTestBottomSheet(this, scope, ble).also { sheet ->
+                sheet.setOnDismissListener {
+                    if (!isFinishing && wasBundled != WebResourceSettings.isBundled(this)) recreate()
+                }
+                sheet.show()
+            }
+        }
+        webContainer = FrameLayout(this)
+        val content = LinearLayout(this).apply {
+            orientation = LinearLayout.VERTICAL
+            addView(toolbar, LinearLayout.LayoutParams(-1, dp(48)))
+            addView(webContainer, LinearLayout.LayoutParams(-1, 0, 1f))
+        }
+        root.addView(content, FrameLayout.LayoutParams(-1, -1))
+        pageProgress = ProgressBar(this).apply { visibility = View.GONE }
+        root.addView(pageProgress, FrameLayout.LayoutParams(dp(40), dp(40), Gravity.CENTER))
+    }
+
+    private fun connectBridge() {
+        val push = (application as SesameApp).subscriptionManager
+        val requests = NativeRequestHandler(
+            context = applicationContext,
+            ble, registration, keyHandoff,
+            language = { resources.configuration.locales[0].toLanguageTag() },
+            requestBle = ::requestBle,
+            startDiscovery = { discovering = true; requestBle() },
+            stopDiscovery = { discovering = false; registration.stop() },
+            registeredKey = { registeredKey },
+            scanQr = ::scanQr,
+            showRoute = {
+                if (it != currentRoute) {
+                    nfcDevice = null; autoUnlockMap.close()
+                }
+                currentRoute = it
+                toolbar.showPage(root = it in tabPaths, home = it == "/")
+                updateToolbarVisibility()
+            },
+            pushInfo = {
+                JSONObject().put("pushToken", push.token()).put("appIdentifyId", push.installationId).put("env", JSONArray(AppEnvironment.collect(this)))
+                    .put("language", resources.configuration.locales[0].toLanguageTag()).put("enabled", NotificationManagerCompat.from(this).areNotificationsEnabled())
+            },
+            notificationSettings = {
+                val settings = if (Build.VERSION.SDK_INT >= 26) {
+                    Intent(Settings.ACTION_APP_NOTIFICATION_SETTINGS).putExtra(Settings.EXTRA_APP_PACKAGE, packageName)
+                } else Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, "package:$packageName".toUri())
+                startActivity(settings)
+            },
+            openWebPage = ::openWebPage,
+            openExternal = { openExternalUrl(it.toUri()) },
+            autoUnlockMap = autoUnlockMap::handle,
+            watchNfc = { nfcDevice = it },
+            haptic = { web.performHapticFeedback(HapticFeedbackConstants.CLOCK_TICK) }
+        )
+        bridge = WebViewBridge(origin, scope, requests::handle)
+        (application as SesameApp).bleBackend.requestCloud = bridge::requestCloud
+    }
+
+    private fun observePush() {
+        scope.launch { (application as SesameApp).subscriptionManager.changes.collect { emit("push") } }
+        if (Build.VERSION.SDK_INT >= 33 && checkSelfPermission(Manifest.permission.POST_NOTIFICATIONS) != PackageManager.PERMISSION_GRANTED) {
+            requestPermissions(arrayOf(Manifest.permission.POST_NOTIFICATIONS), 13)
+        }
+    }
+
+    @SuppressLint("SetJavaScriptEnabled")
+    private fun createWebView() {
+        web = WebView(this)
+        web.settings.apply {
+            javaScriptEnabled = true
+            userAgentString += " SesameAndroid/1"
+            domStorageEnabled = true
+            allowFileAccess = false
+            allowContentAccess = true
+            mediaPlaybackRequiresUserGesture = true
+        }
+        WebView.setWebContentsDebuggingEnabled(BuildConfig.DEBUG)
+        L.i("WebResources", "mode=${if (WebResourceSettings.isBundled(this)) "APK_BUNDLE" else "ONLINE"}; origin=$origin")
+        val bundledResources = if (WebResourceSettings.isBundled(this)) BundledWebResources(assets, origin) else null
+        web.webViewClient = object : WebViewClient() {
+            override fun shouldInterceptRequest(view: WebView, request: WebResourceRequest): WebResourceResponse? =
+                bundledResources?.intercept(request)
+
+            override fun shouldOverrideUrlLoading(view: WebView, request: WebResourceRequest): Boolean {
+                if (!request.isForMainFrame) return false
+                val uri = request.url
+                if (bridge.isTrusted(uri)) return false
+                if (returnUrl != null && uri.scheme == "https") return false
+                if (uri.scheme in setOf("https", "http", "mailto", "tel")) runCatching { openExternalUrl(uri) }
+                return true
+            }
+
+            override fun onPageStarted(view: WebView, url: String?, favicon: Bitmap?) {
+                autoUnlockMap.close()
+                ble.peripheralSettings.close()
+                if (returnUrl != null || pageLoading) beginPageLoading()
+                webReady = false
+                bridge.reset()
+                registration.close(); discovering = false
+            }
+
+            override fun onPageCommitVisible(view: WebView, url: String?) {
+                if (!pageLoading || view.url != url) return
+                val generation = pageLoadGeneration
+                view.postVisualStateCallback(generation, object : WebView.VisualStateCallback() {
+                    override fun onComplete(requestId: Long) {
+                        if (view === web && requestId == pageLoadGeneration) finishPageLoading()
+                    }
+                })
+            }
+
+            override fun onReceivedError(view: WebView, request: WebResourceRequest, error: WebResourceError) {
+                if (request.isForMainFrame && view === web) finishPageLoading()
+            }
+
+            override fun onReceivedHttpError(view: WebView, request: WebResourceRequest, response: WebResourceResponse) {
+                if (request.isForMainFrame && view === web) finishPageLoading()
+            }
+
+            override fun onPageFinished(view: WebView, url: String?) {
+                if (view !== web || view.url != url) return
+                webReady = true
+                if (bridge.isTrusted((url ?: "").toUri())) {
+                    returnUrl = null
+                    bridge.connect(view, url)
+                    nfcIntent?.let { handleNfc(it); nfcIntent = null }
+                }
+                openPendingNotification()
+            }
+
+            override fun onRenderProcessGone(view: WebView, detail: RenderProcessGoneDetail): Boolean {
+                bridge.reset()
+                webContainer.removeView(view); view.destroy()
+                returnUrl = null
+                toolbar.showPage(root = true, home = false)
+                createWebView()
+                finishPageLoading()
+                return true
+            }
+        }
+        web.webChromeClient = object : WebChromeClient() {
+            override fun onShowFileChooser(view: WebView, callback: ValueCallback<Array<Uri>>, params: FileChooserParams): Boolean {
+                files?.onReceiveValue(null); files = callback
+                return runCatching { startActivityForResult(params.createIntent(), 20); true }.getOrElse {
+                    files?.onReceiveValue(null); files = null; false
+                }
+            }
+        }
+        webContainer.addView(web, FrameLayout.LayoutParams(-1, -1))
+        web.loadUrl(entry)
+    }
+
+    private fun emit(type: String, data: Any = JSONObject()) = bridge.emit(type, data)
+
+    private fun navigate(path: String) = emit("navigate", path)
+    private fun showMenu() = actionMenu.show(toolbar.menu)
+
+    private var askedBle = false
+    private fun requestBle() {
+        val permissions =
+            if (Build.VERSION.SDK_INT >= 31) arrayOf(Manifest.permission.BLUETOOTH_SCAN, Manifest.permission.BLUETOOTH_CONNECT, Manifest.permission.ACCESS_FINE_LOCATION)
+            else arrayOf(Manifest.permission.ACCESS_FINE_LOCATION)
+        if (permissions.any { checkSelfPermission(it) != PackageManager.PERMISSION_GRANTED }) {
+            if (!askedBle || discovering) {
+                askedBle = true; requestPermissions(permissions, 10)
+            }
+            return
+        }
+        ble.resume()
+        if (discovering) {
+            if (CHBleManager.mScanning == CHScanStatus.BleClose) startActivityForResult(Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE), 11)
+            else registration.start()
+        }
+    }
+
+    private fun scanQr() {
+        if (checkSelfPermission(Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
+            requestPermissions(arrayOf(Manifest.permission.CAMERA), 12); return
+        }
+        if (scanner != null) return
+        val qrView = layoutInflater.inflate(R.layout.view_qr_scanner, root, false) as ZXingView
+        scanner = qrView
+        val overlay = FrameLayout(this).apply { setBackgroundColor(Color.BLACK) }
+        scannerOverlay = overlay
+        overlay.addView(qrView, FrameLayout.LayoutParams(-1, -1))
+        fun control(icon: Int, description: Int, gravityValue: Int, action: () -> Unit): ImageView {
+            val button = ImageView(this).apply {
+                setImageResource(icon); scaleType = ImageView.ScaleType.FIT_CENTER
+                setPadding(dp(22), dp(22), dp(22), dp(22))
+                contentDescription = getString(description)
+                setOnClickListener { action() }
+            }
+            overlay.addView(button, FrameLayout.LayoutParams(dp(80), dp(80), gravityValue))
+            return button
+        }
+        control(R.drawable.ic_icons_filled_close_white, R.string.close, Gravity.TOP or Gravity.END) {
+            closeScanner(); emit("qrCancelled")
+        }
+        val gallery = control(R.drawable.ic_icons_filled_album, R.string.gallery, Gravity.TOP or Gravity.CENTER_HORIZONTAL) {
+            startActivityForResult(Intent(Intent.ACTION_OPEN_DOCUMENT).apply { type = "image/*"; addCategory(Intent.CATEGORY_OPENABLE) }, 21)
+        }
+        qrView.addOnLayoutChangeListener { _, _, _, _, _, _, _, _, _ ->
+            val box = qrView.scanBoxView
+            val params = gallery.layoutParams as FrameLayout.LayoutParams
+            val textBottom = box.topOffset + box.rectHeight + box.tipTextMargin + (box.tipTextSl?.height ?: box.tipTextSize)
+            val top = (textBottom + dp(8)).coerceAtMost((overlay.height - dp(80)).coerceAtLeast(0))
+            if (params.topMargin != top) {
+                params.topMargin = top
+                gallery.layoutParams = params
+            }
+        }
+        root.addView(overlay, FrameLayout.LayoutParams(-1, -1))
+        qrView.apply {
+            setDelegate(object : QRCodeView.Delegate {
+                override fun onScanQRCodeSuccess(result: String) {
+                    closeScanner(); emit("qr", result)
+                }
+
+                override fun onCameraAmbientBrightnessChanged(isDark: Boolean) {}
+                override fun onScanQRCodeOpenCameraError() {
+                    closeScanner(); emit("error", "Unable to open camera")
+                }
+            })
+            startCamera(); startSpotAndShowRect()
+        }
+    }
+
+    private fun closeScanner() {
+        scanner?.onDestroy(); scanner = null
+        scannerOverlay?.let { root.removeView(it) }; scannerOverlay = null
+    }
+
+    private fun openWebPage(url: String) {
+        require(url.toUri().scheme == "https")
+        if (returnUrl == null) returnUrl = web.url?.takeIf { bridge.isTrusted(it.toUri()) } ?: entry
+        bridge.reset()
+        beginPageLoading()
+        toolbar.showPage(root = false, home = false)
+        web.loadUrl(url)
+    }
+
+    private fun returnToApp() {
+        val target = returnUrl ?: entry
+        returnUrl = null
+        beginPageLoading()
+        toolbar.showPage(root = currentRoute in tabPaths, home = currentRoute == "/")
+        web.loadUrl(target)
+    }
+
+    private fun beginPageLoading() {
+        pageLoadGeneration++
+        pageLoading = true
+        toolbar.visibility = View.INVISIBLE
+        web.visibility = View.INVISIBLE
+        pageProgress.visibility = View.VISIBLE
+    }
+
+    private fun finishPageLoading() {
+        pageLoading = false
+        pageProgress.visibility = View.GONE
+        web.visibility = View.VISIBLE
+        updateToolbarVisibility()
+    }
+
+    private fun updateToolbarVisibility() {
+        val h5Header = currentRoute in setOf(
+            "/device-setting",
+            "/device-setting/rename",
+            "/device-setting/angle",
+            "/device-setting/auto-unlock",
+            "/device-setting/bot-script",
+            "/device-setting/credentials"
+        ) || currentRoute == "/biz/devices/list-item" || currentRoute == "/device-history" ||
+                currentRoute == "/biz/access-control/region" || currentRoute == "/biz/wifi-module" || currentRoute == "/biz/wifi-module/index"
+        toolbar.visibility = if (returnUrl == null && h5Header) View.GONE else if (pageLoading) View.INVISIBLE else View.VISIBLE
+    }
+
+    override fun onNewIntent(intent: Intent) {
+        super.onNewIntent(intent)
+        setIntent(intent)
+        handleNfc(intent)
+        emit("push")
+        openPendingNotification()
+    }
+
+    private fun openPendingNotification() {
+        if (!webReady) return
+        PushNotification.consumeUrl(intent)?.let { runCatching { openWebPage(it) } }
+    }
+
+    private fun handleNfc(intent: Intent) {
+        if (intent.action !in setOf(
+                NfcAdapter.ACTION_TAG_DISCOVERED,
+                NfcAdapter.ACTION_NDEF_DISCOVERED,
+                NfcAdapter.ACTION_TECH_DISCOVERED
+            )
+        ) return
+        @Suppress("DEPRECATION") val tag = intent.getParcelableExtra<Tag>(NfcAdapter.EXTRA_TAG) ?: return
+        val tagId = tag.id.joinToString("") { "%02x".format(it.toInt() and 255) }
+        val app = application as SesameApp
+        nfcDevice?.let { id ->
+            app.devicePreferences.setNfc(id, tagId); emit("devicePreferences", app.devicePreferences.snapshot(id))
+            if (intent.action == NfcAdapter.ACTION_TAG_DISCOVERED) scope.launch(Dispatchers.IO) {
+                runCatching {
+                    val message = NdefMessage(arrayOf(NdefRecord.createTextRecord(null, "candynfc")))
+                    val ndef = Ndef.get(tag)
+                    if (ndef != null) {
+                        try {
+                            ndef.connect(); ndef.writeNdefMessage(message)
+                        } finally {
+                            ndef.close()
+                        }
+                    } else NdefFormatable.get(tag)?.let { format ->
+                        try {
+                            format.connect(); format.format(message)
+                        } finally {
+                            format.close()
+                        }
+                    }
+                }.onFailure { L.e("SesameNfc", "Tag formatting failed", it) }
+            }
+            return
+        }
+        scope.launch {
+            ble.restoreSaved(); requestBle()
+            ble.allDevices().filter { app.devicePreferences.nfc(it.deviceId.toString()).equals(tagId, true) }.forEach { device ->
+                launch {
+                    runCatching {
+                        withTimeout(12000.milliseconds) {
+                            while (device.deviceStatus.value != CHDeviceLoginStatus.logined && device.deviceId.toString()
+                                    .uppercase() !in app.bleBackend.gatewayDevices
+                            ) delay(500.milliseconds)
+                            if (device.deviceStatus.value == CHDeviceLoginStatus.logined) ble.handle(
+                                "home.command",
+                                JSONObject().put("deviceUUID", device.deviceId.toString())
+                            ) { _, _ -> }
+                            else app.bleBackend.requestCloud?.invoke("widgetCommand", JSONObject().put("operation", "toggle"), device.deviceId.toString())
+                        }
+                    }.onFailure { L.e("SesameNfc", "Tag operation failed", it) }
+                }
+            }
+        }
+    }
+
+    private fun decodeQrImage(uri: Uri) {
+        val currentScanner = scanner ?: return
+        scope.launch {
+            val result = withContext(Dispatchers.IO) {
+                runCatching {
+                    val bounds = BitmapFactory.Options().apply { inJustDecodeBounds = true }
+                    contentResolver.openInputStream(uri).use { BitmapFactory.decodeStream(it, null, bounds) }
+                    val options = BitmapFactory.Options().apply {
+                        inSampleSize = 1
+                        while (bounds.outWidth / inSampleSize > 2048 || bounds.outHeight / inSampleSize > 2048) inSampleSize *= 2
+                    }
+                    val bitmap = contentResolver.openInputStream(uri).use { BitmapFactory.decodeStream(it, null, options) }
+                        ?: error("Invalid image")
+                    try {
+                        QRCodeDecoder.syncDecodeQRCode(bitmap) ?: error("No QR code found")
+                    } finally {
+                        bitmap.recycle()
+                    }
+                }
+            }
+            if (scanner !== currentScanner) return@launch
+            result.onSuccess { closeScanner(); emit("qr", it) }
+                .onFailure { emit("error", getString(R.string.qr_not_found)) }
+        }
+    }
+
+    override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<String>, results: IntArray) {
+        super.onRequestPermissionsResult(requestCode, permissions, results)
+        if (requestCode == 14) {
+            autoUnlockMap.permissionResult(); return
+        }
+        if (requestCode == 13) {
+            SesameConnectedDeviceService.sync(this); return
+        }
+        if (results.isEmpty() || results.any { it != PackageManager.PERMISSION_GRANTED }) {
+            emit("error", "Permission denied"); return
+        }
+        if (requestCode == 10) requestBle() else if (requestCode == 12) scanQr()
+    }
+
+    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
+        super.onActivityResult(requestCode, resultCode, data)
+        if (requestCode == 21 && resultCode == RESULT_OK) data?.data?.let { decodeQrImage(it) }
+        if (requestCode == 20) {
+            files?.onReceiveValue(WebChromeClient.FileChooserParams.parseResult(resultCode, data)); files = null
+        }
+        if (requestCode == 11 && resultCode == RESULT_OK) requestBle()
+    }
+
+    override fun onResume() {
+        super.onResume(); if (::web.isInitialized) {
+            scanner?.apply { startCamera(); startSpotAndShowRect() }
+            autoUnlockMap.resume()
+            NfcAdapter.getDefaultAdapter(this)?.enableForegroundDispatch(
+                this,
+                PendingIntent.getActivity(
+                    this,
+                    0,
+                    Intent(this, SesameActivity::class.java).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP),
+                    PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_MUTABLE
+                ), null, null
+            )
+            SesameConnectedDeviceService.sync(this)
+            web.onResume(); if (askedBle) requestBle(); emit("resume")
+        }
+    }
+
+    override fun onPause() {
+        NfcAdapter.getDefaultAdapter(this)?.disableForegroundDispatch(this)
+        autoUnlockMap.pause()
+        actionMenu.dismiss()
+        testSheet?.dismiss(); testSheet = null
+        scanner?.stopCamera(); if (::ble.isInitialized) {
+            registration.stop(); ble.pause(); web.onPause()
+        }; super.onPause()
+    }
+
+    private fun handleBack() {
+        if (scanner != null) {
+            closeScanner(); emit("qrCancelled")
+        } else if (returnUrl != null) {
+            val history = web.copyBackForwardList()
+            val previous = history.getItemAtIndex(history.currentIndex - 1)?.url
+            if (previous != null && !bridge.isTrusted(previous.toUri())) web.goBack() else returnToApp()
+        } else if (currentRoute !in tabPaths) emit("back")
+        else finish()
+    }
+
+    override fun onDestroy() {
+        autoUnlockMap.close()
+        (application as SesameApp).bleBackend.requestCloud = null
+        pageLoadGeneration++
+        testSheet?.setOnDismissListener(null); testSheet?.dismiss(); closeScanner(); registration.close(); ble.peripheralSettings.close(); ble.observers.remove(bleObserver); ble.pause(); bridge.reset(); files?.onReceiveValue(
+            null
+        )
+        webContainer.removeView(web); web.destroy(); scope.cancel()
+        (application as SesameApp).apply {
+            activityPresent = false
+            if (SesameConnectedDeviceService.live != null) ensureBackgroundWeb() else ble.close()
+        }
+        super.onDestroy()
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/SesameApp.kt b/sesameApp/src/main/java/co/candyhouse/app/SesameApp.kt
new file mode 100644
index 0000000..7f67c69
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/SesameApp.kt
@@ -0,0 +1,51 @@
+package co.candyhouse.app
+
+import android.app.Application
+import co.candyhouse.app.ble.BleController
+import co.candyhouse.app.connecteddevice.BackgroundWebRuntime
+import co.candyhouse.app.connecteddevice.DevicePreferences
+import co.candyhouse.app.data.BleBackend
+import co.candyhouse.app.data.auth.LegacySession
+import co.candyhouse.app.data.local.DeviceKeyDatabase
+import co.candyhouse.app.push.TopicSubscriptionManager
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHBleSupport
+import com.google.firebase.crashlytics.FirebaseCrashlytics
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.SupervisorJob
+
+class SesameApp : Application() {
+    val runtimeScope = CoroutineScope(SupervisorJob() + Dispatchers.Main.immediate)
+    val ble by lazy { BleController(runtimeScope, bleBackend) {} }
+    val devicePreferences by lazy { DevicePreferences(this) }
+    lateinit var bleBackend: BleBackend
+        private set
+
+    lateinit var subscriptionManager: TopicSubscriptionManager
+        private set
+
+    var activityPresent = false
+    private var backgroundWeb: BackgroundWebRuntime? = null
+    fun ensureBackgroundWeb() {
+        if (!activityPresent && backgroundWeb == null) backgroundWeb = BackgroundWebRuntime(this)
+    }
+
+    fun stopBackgroundWeb() {
+        backgroundWeb?.close(); backgroundWeb = null; if (!activityPresent) bleBackend.requestCloud = null
+    }
+
+    override fun onCreate() {
+        super.onCreate()
+        FirebaseCrashlytics.getInstance().apply {
+            isCrashlyticsCollectionEnabled = !BuildConfig.DEBUG
+            if (BuildConfig.DEBUG) deleteUnsentReports()
+        }
+        LegacySession.initialize(this)
+        DeviceKeyDatabase.context = this
+        bleBackend = BleBackend(this)
+        CHBleSupport.initialize(bleBackend, DeviceKeyDatabase.Keys, BuildConfig.AWS_IDENTITY_POOL_ID)
+        CHBleManager(this)
+        subscriptionManager = TopicSubscriptionManager(this)
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ble/BleController.kt b/sesameApp/src/main/java/co/candyhouse/app/ble/BleController.kt
new file mode 100644
index 0000000..2b2ad6e
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ble/BleController.kt
@@ -0,0 +1,592 @@
+package co.candyhouse.app.ble
+
+import android.os.SystemClock
+import android.util.Log
+import co.candyhouse.app.BuildConfig
+import co.candyhouse.app.connecteddevice.AutoUnlockGeofenceManager
+import co.candyhouse.app.connecteddevice.SesameConnectedDeviceService
+import co.candyhouse.app.data.BleBackend
+import co.candyhouse.app.data.local.DeviceKeyDatabase
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHBleStatusDelegate
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHProductModel
+import co.candyhouse.sesame.ble.CHScanStatus
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.os2.bike.CHSesameBike
+import co.candyhouse.sesame.ble.os2.bot.CHSesameBot
+import co.candyhouse.sesame.ble.os2.sesame2.CHSesame2
+import co.candyhouse.sesame.ble.os3.bike2.CHSesameBike2
+import co.candyhouse.sesame.ble.os3.bot2.CHSesameBot2
+import co.candyhouse.sesame.ble.os3.hub3.CHHub3
+import co.candyhouse.sesame.ble.os3.hub3.CHHub3Delegate
+import co.candyhouse.sesame.ble.os3.sesame5.CHSesame5
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2MechSettings
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2NetWorkStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.suspendCancellableCoroutine
+import kotlinx.coroutines.sync.Mutex
+import kotlinx.coroutines.sync.withLock
+import kotlinx.coroutines.withTimeoutOrNull
+import org.json.JSONArray
+import org.json.JSONObject
+import java.nio.ByteBuffer
+import java.util.UUID
+import kotlin.time.Duration.Companion.milliseconds
+
+/** BLE state and commands only; the web app owns lists, ordering and navigation. */
+class BleController(
+    private val scope: CoroutineScope, private val backend: BleBackend,
+    private val publish: (JSONArray) -> Unit
+) {
+    private val devices = linkedMapOf<String, CHDevices>()
+    val peripheralSettings = PeripheralSettings(this, scope)
+    private val hubSessions = mutableMapOf<String, String>()
+
+    private class HubWifiScan {
+        val results = linkedMapOf<String, Short>()
+        val startedAt = SystemClock.elapsedRealtime()
+        var scanning = true
+        var failed = false
+        var commandPending = true
+        var endReceived = false
+        var timeout: Job? = null
+    }
+
+    private val hubWifi = mutableMapOf<String, HubWifiScan>()
+    private val hubDisconnects = mutableMapOf<String, Job>()
+    private val hubWatchStarted = mutableMapOf<String, Long>()
+    private var hubWifiUpdate: Job? = null
+
+    private class HubOta {
+        var progress = 0
+        var receivedProgress = false
+        var timeout: Job? = null
+    }
+
+    private val hubOta = mutableMapOf<String, HubOta>()
+    private val updates = Mutex()
+    private val appliedKeys = mutableMapOf<String, CHDevice>()
+    private var foreground = false
+    private var receivedCloudList = false
+    var background = false
+    var cloudRows = JSONArray()
+        private set
+    val observers = mutableSetOf<(JSONArray) -> Unit>()
+    fun allDevices(): List<CHDevices> = devices.values.toList()
+    suspend fun restoreSaved() {
+        if (devices.isNotEmpty() || receivedCloudList) return
+        val keys = suspendCancellableCoroutine<List<CHDevice>> { continuation ->
+            DeviceKeyDatabase.Keys.getAllDB { if (continuation.isActive) continuation.resumeWith(it) }
+        }
+        keys.forEach { key ->
+            CHBleManager.restoreDevice(key)?.let { device ->
+                appliedKeys[key.deviceUUID.uppercase()] = key
+                devices[key.deviceUUID.uppercase()] = device
+                device.delegate = delegate
+            }
+        }
+        snapshot()
+    }
+
+    private val scanDelegate = object : CHBleStatusDelegate {
+        override fun didScanChange(ss: CHScanStatus) {
+            scope.launch { snapshot() }
+        }
+    }
+    private val localPreferences get() = DeviceKeyDatabase.context.let { it.getSharedPreferences("${it.packageName}_preferences", 0) }
+    private fun historyBytes(value: String?) = runCatching {
+        val uuid = UUID.fromString(value)
+        ByteBuffer.allocate(16).putLong(uuid.mostSignificantBits).putLong(uuid.leastSignificantBits).array()
+    }.getOrDefault(ByteArray(16) { 0xff.toByte() })
+
+    private var history = historyBytes(localPreferences.getString("environmentId", null))
+    private val delegate = object : CHHub3Delegate {
+        override fun onBleDeviceStatusChanged(device: CHDevices, status: CHDeviceStatus) {
+            scope.launch(Dispatchers.Main) {
+                if (device is CHWifiModule2) {
+                    val id = device.deviceId.toString().uppercase()
+                    hubTrace(id, "ble_status=${status.name}")
+                    if (status.value != CHDeviceLoginStatus.logined) clearHubScan(id)
+                }
+                peripheralSettings.statusChanged(device, status)
+                connect(device)
+                if (device is CHSesameBot2 && status.value == CHDeviceLoginStatus.logined) {
+                    device.getScriptNameList { scope.launch(Dispatchers.Main) { snapshot() } }
+                }
+                snapshot()
+            }
+        }
+
+        override fun onSensorDetectIntervalReceive(device: CHDevices, intervalMs: Short) {
+            scope.launch { snapshot() }
+        }
+
+        override fun onBleTxPowerReceive(device: CHDevices, txPower: Byte) {
+            scope.launch { snapshot() }
+        }
+
+        override fun onLockUnlockSwitchPointReceive(device: CHDevices, point: Short) {
+            scope.launch { snapshot() }
+        }
+
+        override fun onSSM2KeysChanged(device: CHWifiModule2, ssm2keys: Map<String, String>) {
+            scope.launch(Dispatchers.Main) { snapshot() }
+        }
+
+        override fun onAPSettingChanged(device: CHWifiModule2, settings: CHWifiModule2MechSettings) {
+            scope.launch(Dispatchers.Main) { snapshot() }
+        }
+
+        override fun onScanWifiSID(device: CHWifiModule2, ssid: String, rssi: Short) {
+            scope.launch(Dispatchers.Main) {
+                val id = device.deviceId.toString().uppercase()
+                val scan = hubWifi[id]?.takeIf { it.scanning } ?: return@launch
+                val first = scan.results.isEmpty()
+                val old = scan.results[ssid]
+                if (old != null && old >= rssi) return@launch
+                scan.results[ssid] = rssi
+                if (first) {
+                    hubTrace(id, "wifi_first elapsed_ms=${SystemClock.elapsedRealtime() - scan.startedAt}")
+                    snapshot()
+                } else if (hubWifiUpdate == null) {
+                    hubWifiUpdate = scope.launch(Dispatchers.Main) {
+                        delay(100.milliseconds)
+                        hubWifiUpdate = null
+                        snapshot()
+                    }
+                }
+            }
+        }
+
+        override fun onWifiScanStarted(device: CHHub3) {
+            scope.launch(Dispatchers.Main) {
+                hubTrace(device.deviceId.toString().uppercase(), "wifi_start_marker")
+            }
+        }
+
+        override fun onWifiScanFinished(device: CHHub3) {
+            scope.launch(Dispatchers.Main) {
+                val id = device.deviceId.toString().uppercase()
+                hubWifi[id]?.takeIf { it.scanning }?.let { scan ->
+                    scan.endReceived = true
+                    hubTrace(id, "wifi_end_marker")
+                    if (!scan.commandPending) finishHubScan(id, scan, false, "end_marker")
+                }
+            }
+        }
+
+        override fun onOTAProgress(device: CHWifiModule2, percent: Byte) {
+            scope.launch(Dispatchers.Main) {
+                val id = device.deviceId.toString().uppercase()
+                val progress = percent.toInt() and 255
+                if (progress !in 0..100) return@launch
+                val ota = hubOta[id] ?: if (progress < 100) HubOta().also { hubOta[id] = it } else return@launch
+                ota.progress = progress
+                ota.receivedProgress = true
+                armHubOtaTimeout(id, ota)
+                hubTrace(id, "ota_progress=$progress")
+                snapshot()
+            }
+        }
+
+        override fun onMechStatus(device: CHDevices) {
+            scope.launch(Dispatchers.Main) { snapshot() }
+        }
+    }
+
+    fun accept(rows: JSONArray, historyTag: String?) {
+        scope.launch {
+            updates.withLock {
+                val keys = runCatching {
+                    (0 until rows.length()).map { index ->
+                        val row = rows.getJSONObject(index)
+                        require(CHProductModel.getByModel(row.getString("deviceModel")) != null)
+                        CHDevice(
+                            UUID.fromString(row.getString("deviceUUID")).toString(), row.getString("deviceModel"),
+                            row.optString("deviceName").toByteArray(), row.getString("keyIndex"),
+                            row.getString("secretKey"), row.getString("sesame2PublicKey")
+                        )
+                    }.also { require(it.map { key -> key.deviceUUID }.distinct().size == it.size) }
+                }.getOrNull() ?: return@withLock
+                val incoming = keys.map { it.deviceUUID.uppercase() }.toSet()
+                receivedCloudList = true
+                cloudRows = rows
+                // Keep unsent keys on disk; an H5 empty list must not erase legacy guest keys.
+                devices.keys.filter { it !in incoming }.forEach { id ->
+                    peripheralSettings.forget(id)
+                    clearHubSession(id)
+                    hubOta.remove(id)?.timeout?.cancel()
+                    appliedKeys.remove(id)
+                    devices.remove(id)?.let { it.delegate = null; it.disconnect {} }
+                }
+                if (!historyTag.isNullOrBlank()) {
+                    history = historyBytes(historyTag)
+                    localPreferences.edit().putString("environmentId", historyTag).apply()
+                } else if (rows.length() == 0) {
+                    history = historyBytes(null)
+                    localPreferences.edit().remove("environmentId").apply()
+                }
+                backend.gatewayDevices = (0 until rows.length()).map { rows.getJSONObject(it) }
+                    .filter { it.optJSONObject("stateInfo")?.optBoolean("wm2State") == true }
+                    .map { it.getString("deviceUUID").uppercase() }.toSet()
+                for (key in keys) {
+                    val previous = appliedKeys[key.deviceUUID.uppercase()]
+                    if (previous != null && previous.deviceModel == key.deviceModel && previous.keyIndex == key.keyIndex &&
+                        previous.secretKey == key.secretKey && previous.sesame2PublicKey == key.sesame2PublicKey &&
+                        previous.historyTag.contentEquals(key.historyTag)
+                    ) continue
+                    val stored = suspendCancellableCoroutine<Boolean> { continuation ->
+                        DeviceKeyDatabase.Keys.insert(key) { if (continuation.isActive) continuation.resumeWith(Result.success(it.isSuccess)) }
+                    }
+                    if (!stored) continue
+                    CHBleManager.restoreDevice(key)?.let { device ->
+                        appliedKeys[key.deviceUUID.uppercase()] = key
+                        devices[key.deviceUUID.uppercase()] = device
+                        device.delegate = delegate
+                        connect(device)
+                    }
+                }
+                snapshot()
+                val context = DeviceKeyDatabase.context
+                AutoUnlockGeofenceManager.sync(context)
+                SesameConnectedDeviceService.sync(context)
+            }
+        }
+    }
+
+    private fun connect(device: CHDevices) {
+        if ((foreground || background) && !BleFirmwareUpdate.active(device.deviceId.toString()) && (device is CHSesameLock || (foreground && peripheralSettings.shouldConnect(device)) || (foreground && device is CHWifiModule2 && hubSessions.containsKey(
+                device.deviceId.toString().uppercase()
+            ))) && device.deviceStatus == CHDeviceStatus.ReceivedAdV
+        ) device.connect {}
+    }
+
+    fun resume() {
+        CHBleManager.statusDelegate = scanDelegate
+        foreground = true; CHBleManager.enableScan {}; devices.values.forEach(::connect); snapshot()
+    }
+
+    fun startBackground() {
+        background = true
+        CHBleManager.statusDelegate = scanDelegate
+        runCatching { CHBleManager.enableScan {}; reconnect() }
+    }
+
+    fun stopBackground() {
+        background = false; if (!foreground) CHBleManager.disableScan {}
+    }
+
+    fun reconnect() {
+        devices.values.forEach(::connect)
+    }
+
+    fun pause() {
+        foreground = false; if (!background) CHBleManager.disableScan {}
+        // A grace connection is only useful while the app stays in the foreground.
+        hubDisconnects.keys.toList().forEach { id ->
+            clearHubSession(id)
+            devices[id]?.disconnect {}
+        }
+    }
+
+    fun close() {
+        peripheralSettings.close()
+        if (CHBleManager.statusDelegate === scanDelegate) CHBleManager.statusDelegate = null
+        background = false
+        (hubSessions.keys + hubDisconnects.keys + hubWifi.keys).toSet().forEach(::clearHubSession)
+        hubWifiUpdate?.cancel(); hubWifiUpdate = null
+        hubOta.values.forEach { it.timeout?.cancel() }; hubOta.clear()
+        pause(); devices.values.forEach { it.delegate = null; it.disconnect {} }; devices.clear(); appliedKeys.clear()
+        receivedCloudList = false; cloudRows = JSONArray(); backend.gatewayDevices = emptySet()
+    }
+
+    suspend fun saveModel(device: CHDevices) {
+        val id = device.deviceId.toString().uppercase()
+        val key = requireNotNull(appliedKeys[id]).copy(deviceModel = device.productModel.deviceModel())
+        suspendCancellableCoroutine<String> { continuation ->
+            DeviceKeyDatabase.Keys.insert(key) { if (continuation.isActive) continuation.resumeWith(it) }
+        }
+        appliedKeys[id] = key
+        snapshot()
+    }
+
+    fun device(id: String): CHDevices? = devices[id.uppercase()]
+
+    private fun hubTrace(id: String, event: String) {
+        if (BuildConfig.DEBUG) {
+            val elapsed = hubWatchStarted[id]?.let { SystemClock.elapsedRealtime() - it } ?: 0
+            Log.d("Hub3Timing", "hub=${id.takeLast(8)} watch_ms=$elapsed $event")
+        }
+    }
+
+    private fun clearHubScan(id: String) {
+        hubWifi.remove(id)?.timeout?.cancel()
+    }
+
+    private fun clearHubSession(id: String) {
+        hubDisconnects.remove(id)?.cancel()
+        hubSessions.remove(id)
+        hubWatchStarted.remove(id)
+        clearHubScan(id)
+    }
+
+    private fun finishHubScan(id: String, scan: HubWifiScan, failed: Boolean, reason: String) {
+        if (hubWifi[id] !== scan || !scan.scanning) return
+        scan.scanning = false
+        scan.failed = failed
+        scan.timeout?.cancel()
+        scan.timeout = null
+        hubTrace(id, "wifi_finished reason=$reason count=${scan.results.size} elapsed_ms=${SystemClock.elapsedRealtime() - scan.startedAt}")
+        snapshot()
+    }
+
+    private fun scanHubWifi(id: String, hub: CHWifiModule2, refresh: Boolean) {
+        check(hubSessions.containsKey(id) && hub.deviceStatus.value == CHDeviceLoginStatus.logined)
+        if (hubOta[id]?.progress?.let { it in 0..99 } == true) return
+        val previous = hubWifi[id]
+        if (previous?.scanning == true || previous?.commandPending == true || (!refresh && previous != null && !previous.failed &&
+                    SystemClock.elapsedRealtime() - previous.startedAt < 30000)
+        ) {
+            hubTrace(id, "wifi_reused scanning=${previous?.scanning}")
+            return
+        }
+        val scan = HubWifiScan()
+        hubWifi[id] = scan
+        hubTrace(id, "wifi_requested refresh=$refresh")
+        snapshot()
+        // Older firmware may not publish an end marker. Never start a second scan meanwhile.
+        scan.timeout = scope.launch(Dispatchers.Main) {
+            delay(15000.milliseconds)
+            finishHubScan(id, scan, scan.results.isEmpty() || scan.commandPending, "timeout")
+            if (scan.commandPending) {
+                // Reset an unacknowledged SDK command before allowing another physical scan.
+                hubTrace(id, "wifi_ack_timeout_disconnect")
+                hub.disconnect {}
+            }
+        }
+        hub.scanWifiSSID { result ->
+            scope.launch(Dispatchers.Main) {
+                if (hubWifi[id] !== scan) return@launch
+                scan.commandPending = false
+                hubTrace(id, "wifi_ack success=${result.isSuccess} elapsed_ms=${SystemClock.elapsedRealtime() - scan.startedAt}")
+                if (result.isFailure) finishHubScan(id, scan, true, "rejected")
+                else if (scan.endReceived) finishHubScan(id, scan, false, "end_marker")
+            }
+        }
+    }
+
+    private fun armHubOtaTimeout(id: String, ota: HubOta) {
+        ota.timeout?.cancel()
+        ota.timeout = null
+        if (ota.progress !in 0..99) return
+        ota.timeout = scope.launch(Dispatchers.Main) {
+            delay(180000.milliseconds)
+            if (hubOta[id] !== ota) return@launch
+            ota.progress = -7
+            hubTrace(id, "ota_timeout")
+            snapshot()
+        }
+    }
+
+    suspend fun hubSettings(json: JSONObject): JSONObject = withTimeoutOrNull(8000.milliseconds) {
+        val id = json.getString("deviceUUID").uppercase()
+        val hub = device(id) as? CHWifiModule2 ?: error("Unsupported WiFi device")
+        when (json.getString("operation")) {
+            "watch" -> {
+                hubDisconnects.remove(id)?.cancel()
+                hubSessions[id] = json.getString("session")
+                hubWatchStarted[id] = SystemClock.elapsedRealtime()
+                hubTrace(id, "watch connected=${hub.deviceStatus.value == CHDeviceLoginStatus.logined}")
+                connect(hub)
+            }
+
+            "unwatch" -> if (hubSessions[id] == json.getString("session")) {
+                hubSessions.remove(id)
+                hubDisconnects.remove(id)?.cancel()
+                hubTrace(id, "unwatch grace_ms=${if (foreground) 10000 else 0}")
+                hubDisconnects[id] = scope.launch(Dispatchers.Main) {
+                    if (foreground) delay(10000.milliseconds)
+                    hubTrace(id, "disconnect_after_unwatch")
+                    clearHubSession(id)
+                    hub.disconnect {}
+                }
+            }
+
+            "scan" -> scanHubWifi(id, hub, json.optBoolean("refresh"))
+            "ssid" -> {
+                check(hub.deviceStatus.value == CHDeviceLoginStatus.logined)
+                LockSettings.awaitResult<CHEmpty> { hub.setWifiSSID(json.getString("ssid"), it) }
+            }
+
+            "password" -> {
+                check(hub.deviceStatus.value == CHDeviceLoginStatus.logined)
+                LockSettings.awaitResult<CHEmpty> { hub.setWifiPassword(json.getString("password"), it) }
+            }
+
+            "connectWifi" -> {
+                require(hub.productModel == CHProductModel.WM2)
+                check(hub.deviceStatus.value == CHDeviceLoginStatus.logined)
+                LockSettings.awaitResult<CHEmpty>(hub::connectWifi)
+            }
+
+            "firmware" -> {
+                require(hub is CHHub3)
+                check(hub.deviceStatus.value == CHDeviceLoginStatus.logined)
+                if (hubOta[id]?.progress?.let { it in 0..99 } != true) {
+                    // WiFi scanning must not compete with OTA or disconnect it on a scan timeout.
+                    clearHubScan(id)
+                    val ota = HubOta()
+                    hubOta[id] = ota
+                    armHubOtaTimeout(id, ota)
+                    hubTrace(id, "ota_requested")
+                    // Like the original bridge, dispatch the command and follow OTA notifications.
+                    // A reboot can drop the command reply while the Hub continues downloading.
+                    hub.updateFirmwareBleOnly { result ->
+                        scope.launch(Dispatchers.Main) {
+                            if (hubOta[id] !== ota || ota.receivedProgress) return@launch
+                            if (result.isFailure) {
+                                ota.progress = -7
+                                armHubOtaTimeout(id, ota)
+                                hubTrace(id, "ota_rejected")
+                                snapshot()
+                            }
+                        }
+                    }
+                }
+            }
+
+            "firmwareFinish" -> if (hubOta[id]?.progress == 100) hubOta.remove(id)?.timeout?.cancel()
+            "version" -> {
+                check(hub.deviceStatus.value == CHDeviceLoginStatus.logined)
+                val version = LockSettings.awaitResult(hub::getVersionTag)
+                hubTrace(id, "version_read")
+                return@withTimeoutOrNull JSONObject().put("version", version)
+            }
+
+            else -> error("Unsupported Hub operation")
+        }
+        snapshot()
+        JSONObject()
+    } ?: error("Hub operation timed out")
+
+    fun testDevices(): List<CHDevices> = devices.values.toList()
+    fun deviceName(device: CHDevices): String = appliedKeys[device.deviceId.toString().uppercase()]?.historyTag?.toString(Charsets.UTF_8) ?: device.productModel.deviceModelName()
+    fun historyTag(): ByteArray = history.copyOf()
+
+    fun snapshot() {
+        val rows = JSONArray().apply {
+            devices.forEach { (id, device) ->
+                val connected = device.deviceStatus.value == CHDeviceLoginStatus.logined
+                val row = JSONObject().put("deviceUUID", id).put("bleConnected", connected)
+                    .put("scanStatus", CHBleManager.mScanning.name).put("connectionCount", CHBleManager.getConnectRSize())
+                    .put("bleStatus", device.deviceStatus.name).put("showBle", device is CHSesameLock)
+                    .put("position", if (connected && (device is CHSesame2 || device is CHSesame5)) device.mechStatus?.position else JSONObject.NULL)
+                    .put("batteryPercentage", if (connected) device.batteryPercentage else JSONObject.NULL)
+                row.put("settings", LockSettings.snapshot(device))
+                row.put("peripheral", peripheralSettings.snapshot(device))
+                if (device is CHWifiModule2) {
+                    val hub = JSONObject()
+                    if (connected) {
+                        device.mechSetting?.let { hub.put("wifiSsid", it.wifiSSID).put("wifiPwd", it.wifiPassWord) }
+                        (device.mechStatus as? CHWifiModule2NetWorkStatus)?.let {
+                            hub.put(
+                                "network", JSONObject().put("isAPWork", it.isAPWork == true)
+                                    .put("isNetwork", it.isNetWork == true).put("isIoTWork", it.isIOTWork == true)
+                                    .put("isBindingAPWork", it.isAPConnecting).put("isConnectingNetwork", it.isConnectingNet)
+                                    .put("isConnectingIoT", it.isConnectingIOT)
+                            )
+                        }
+                    }
+                    hubWifi[id]?.let { scan ->
+                        hub.put("wifiScanning", scan.scanning).put("wifiScanFailed", scan.failed)
+                        hub.put("wifiScan", JSONArray().apply {
+                            scan.results.forEach { (ssid, rssi) -> put(JSONObject().put("ssid", ssid).put("rssi", rssi.toInt())) }
+                        })
+                    }
+                    hubOta[id]?.let { hub.put("otaProgress", it.progress) }
+                    row.put("hub", hub)
+                }
+                if (device is CHSesameBot2) {
+                    row.put("scriptIndex", device.scripts.curIdx.toInt())
+                    row.put("scripts", JSONArray().apply {
+                        device.scripts.events.forEachIndexed { index, script ->
+                            put(JSONObject().put("id", index).put("name", String(script.name, Charsets.UTF_8)))
+                        }
+                    })
+                }
+                put(row)
+            }
+        }
+        publish(rows)
+        observers.toList().forEach { it(rows) }
+    }
+
+    suspend fun drop(id: String) {
+        updates.withLock {
+            peripheralSettings.forget(id.uppercase())
+            clearHubSession(id.uppercase())
+            hubOta.remove(id.uppercase())?.timeout?.cancel()
+            val device = devices.remove(id.uppercase())
+            appliedKeys.remove(id.uppercase())
+            if (device != null) {
+                device.delegate = null; LockSettings.awaitResult<CHEmpty>(device::dropKey)
+            } else suspendCancellableCoroutine<Int> { continuation -> DeviceKeyDatabase.Keys.deleteByDeviceId(id) { if (continuation.isActive) continuation.resumeWith(it) } }
+        }
+        cloudRows = JSONArray((0 until cloudRows.length()).map { cloudRows.getJSONObject(it) }.filterNot { it.optString("deviceUUID").equals(id, true) })
+        snapshot()
+    }
+
+    fun handle(action: String, json: JSONObject, reply: (Boolean, String?) -> Unit) {
+        val device = devices[json.optString("deviceUUID").uppercase()]
+            ?: run { reply(false, "Bluetooth device unavailable"); return }
+        if (device.deviceStatus.value != CHDeviceLoginStatus.logined) {
+            reply(false, "Bluetooth disconnected"); return
+        }
+        val result: CHResult<CHEmpty> = { reply(it.isSuccess, if (it.isFailure) "Bluetooth command failed" else null) }
+        if (action == "home.scripts") {
+            if (device is CHSesameBot2) device.getScriptNameList {
+                scope.launch { snapshot(); reply(it.isSuccess, if (it.isFailure) "Unable to read scripts" else null) }
+            } else reply(false, "Unsupported device")
+            return
+        }
+        when (device) {
+            is CHSesame5 -> when (json.optString("operation")) {
+                "lock" -> device.lock(historytag = history, result = result)
+                "unlock" -> device.unlock(historytag = history, result = result)
+                else -> device.toggle(historytag = history, result = result)
+            }
+
+            is CHSesame2 -> when (json.optString("operation")) {
+                "lock" -> device.lock(result = result)
+                "unlock" -> device.unlock(result = result)
+                else -> device.toggle(result = result)
+            }
+
+            is CHSesameBike -> device.unlock(result = result)
+            is CHSesameBike2 -> device.unlock(historytag = history, result = result)
+            is CHSesameBot -> device.click(result = result)
+            is CHSesameBot2 -> {
+                val cloud = (0 until cloudRows.length()).map { cloudRows.getJSONObject(it) }.firstOrNull { it.optString("deviceUUID").equals(device.deviceId.toString(), true) }
+                val scripts = cloud?.optJSONObject("stateInfo")?.optJSONArray("scriptList")
+                val defaultIndex =
+                    scripts?.let { list -> (0 until list.length()).map { list.getJSONObject(it) }.firstOrNull { it.optInt("isDefault") == 1 }?.optInt("actionIndex") }
+                val index = if (json.has("scriptIndex")) json.optInt("scriptIndex", -1) else defaultIndex ?: device.scripts.curIdx.toInt()
+                if (index !in 0..9) reply(false, "Invalid script index")
+                else device.click(index = index.toUByte(), historytag = history, result = result)
+            }
+
+            else -> reply(false, "Unsupported Bluetooth command")
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ble/BleFirmwareUpdate.kt b/sesameApp/src/main/java/co/candyhouse/app/ble/BleFirmwareUpdate.kt
new file mode 100644
index 0000000..fb1560f
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ble/BleFirmwareUpdate.kt
@@ -0,0 +1,167 @@
+package co.candyhouse.app.ble
+
+import android.app.Activity
+import android.content.Context
+import co.candyhouse.app.BuildConfig
+import co.candyhouse.app.SesameActivity
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.utils.L
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.SupervisorJob
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
+import no.nordicsemi.android.dfu.DfuBaseService
+import no.nordicsemi.android.dfu.DfuProgressListenerAdapter
+import no.nordicsemi.android.dfu.DfuServiceInitiator
+import no.nordicsemi.android.dfu.DfuServiceListenerHelper
+import org.json.JSONObject
+import java.io.File
+import java.net.URL
+import java.security.MessageDigest
+import java.util.zip.ZipFile
+import javax.net.ssl.HttpsURLConnection
+
+class FirmwareDfuService : DfuBaseService() {
+    override fun getNotificationTarget(): Class<out Activity> = SesameActivity::class.java
+    override fun isDebug() = BuildConfig.DEBUG
+}
+
+/** One application-scoped DFU session, surviving page navigation and Activity recreation. */
+object BleFirmwareUpdate {
+    private val scope = CoroutineScope(SupervisorJob() + Dispatchers.Main)
+    private val cachedFiles = mutableMapOf<String, File>()
+    private var sessionId = 0L
+    private var deviceId: String? = null
+    private var progress = 0
+    private var state = "idle"
+    fun active(id: String) = deviceId == id.uppercase() && state in setOf("downloading", "updating")
+    fun snapshot() = JSONObject().put("deviceUUID", deviceId).put("state", state).put("progress", progress).put("sessionId", sessionId)
+
+    fun start(context: Context, device: CHDevices, url: String, reconnect: () -> Unit): JSONObject {
+        check(state !in setOf("downloading", "updating"))
+        check(device.deviceStatus.value == CHDeviceLoginStatus.logined)
+        val source = URL(url)
+        require(source.protocol == "https" && source.host == "firmware.candyhouse.co" && source.port == -1 && source.userInfo == null)
+        require(source.path.endsWith(".zip") && (!source.path.removePrefix("/").contains("/") || source.path.startsWith("/dev/")))
+        val app = context.applicationContext
+        sessionId = System.currentTimeMillis()
+        deviceId = device.deviceId.toString().uppercase(); progress = 0; state = "downloading"
+        L.d("SesameFirmware", "session=$sessionId transport=ble start device=$deviceId")
+        val currentSession = sessionId
+        scope.launch {
+            val key = MessageDigest.getInstance("SHA-256").digest(url.toByteArray()).joinToString("") { "%02x".format(it) }
+            val file = File(app.cacheDir, "firmware-runtime-$key.zip")
+            val cached = cachedFiles[url]?.let { it.exists() && it.length() > 0 } == true
+            L.d("SesameFirmware", "session=$sessionId cache=${if (cached) "hit" else "miss"}")
+            var listener: DfuProgressListenerAdapter? = null
+            try {
+                if (!cached) withContext(Dispatchers.IO) {
+                    val connection = source.openConnection() as HttpsURLConnection
+                    connection.connectTimeout = 15000; connection.readTimeout = 15000; connection.instanceFollowRedirects = false
+                    try {
+                        check(connection.responseCode == 200)
+                        connection.inputStream.use { input ->
+                            file.outputStream().use { output ->
+                                val buffer = ByteArray(8192);
+                                var total = 0
+                                while (true) {
+                                    val size = input.read(buffer); if (size < 0) break; total += size; check(total <= 8 * 1024 * 1024); output.write(buffer, 0, size)
+                                }
+                            }
+                        }
+                        ZipFile(file).use { check(it.getEntry("manifest.json") != null) }
+                    } finally {
+                        connection.disconnect()
+                    }
+                }
+                cachedFiles[url] = file
+                check(device.deviceStatus.value == CHDeviceLoginStatus.logined)
+                val target = LockSettings.awaitResult(device::updateFirmware)
+                listener = object : DfuProgressListenerAdapter() {
+                    private fun stage(value: Int) {
+                        if (state != "updating" || currentSession != sessionId) return
+                        progress = value
+                        L.d("SesameFirmware", "session=$sessionId transport=ble stage=$value")
+                    }
+
+                    override fun onDeviceConnecting(address: String) {
+                        stage(-1)
+                    }
+
+                    override fun onDeviceConnected(address: String) {
+                        stage(-8)
+                    }
+
+                    override fun onDfuProcessStarting(address: String) {
+                        stage(-2)
+                    }
+
+                    override fun onDfuProcessStarted(address: String) {
+                        stage(-9)
+                    }
+
+                    override fun onEnablingDfuMode(address: String) {
+                        stage(-3)
+                    }
+
+                    override fun onFirmwareValidating(address: String) {
+                        stage(-4)
+                    }
+
+                    override fun onDeviceDisconnecting(address: String) {
+                        stage(-5)
+                    }
+
+                    override fun onDeviceDisconnected(address: String) {
+                        stage(-10)
+                    }
+
+                    override fun onProgressChanged(address: String, percent: Int, speed: Float, avgSpeed: Float, currentPart: Int, partsTotal: Int) {
+                        if (state != "updating" || currentSession != sessionId) return
+                        val total = ((currentPart - 1) * 100 + percent) / partsTotal.coerceAtLeast(1)
+                        if (total / 10 != progress / 10) L.d("SesameFirmware", "session=$sessionId transport=ble progress=$total part=$currentPart/$partsTotal")
+                        progress = total
+                    }
+
+                    override fun onDfuCompleted(address: String) {
+                        finish("completed")
+                    }
+
+                    override fun onDfuAborted(address: String) {
+                        finish("failed")
+                    }
+
+                    override fun onError(address: String, error: Int, errorType: Int, message: String?) {
+                        L.e("BleFirmwareUpdate", "DFU failed: code=$error type=$errorType"); finish("failed")
+                    }
+
+                    private fun finish(result: String) {
+                        if (state != "updating" || currentSession != sessionId) return
+                        state = result
+                        progress = if (result == "completed") -6 else -7
+                        L.d("SesameFirmware", "session=$sessionId transport=ble state=$result")
+                        DfuServiceListenerHelper.unregisterProgressListener(app, this)
+                        reconnect()
+                    }
+                }
+                DfuServiceListenerHelper.registerProgressListener(app, listener!!, target.address)
+                state = "updating"
+                DfuServiceInitiator(target.address).setZip(file.absolutePath)
+                    .setPacketsReceiptNotificationsEnabled(true).setPrepareDataObjectDelay(400)
+                    .setUnsafeExperimentalButtonlessServiceInSecureDfuEnabled(true)
+                    .setDisableNotification(false).setForeground(false)
+                    .start(app, FirmwareDfuService::class.java)
+            } catch (error: Exception) {
+                state = "failed"
+                if (cachedFiles[url] == null) file.delete()
+                L.d("SesameFirmware", "session=$sessionId transport=ble state=failed")
+                reconnect()
+                listener?.let { DfuServiceListenerHelper.unregisterProgressListener(app, it) }
+                L.e("BleFirmwareUpdate", "Firmware update failed", error)
+            }
+        }
+        return snapshot()
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ble/BleRegistrationController.kt b/sesameApp/src/main/java/co/candyhouse/app/ble/BleRegistrationController.kt
new file mode 100644
index 0000000..d2d591d
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ble/BleRegistrationController.kt
@@ -0,0 +1,141 @@
+package co.candyhouse.app.ble
+
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHBleManagerDelegate
+import co.candyhouse.sesame.ble.CHBleStatusDelegate
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceStatusDelegate
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHScanStatus
+import co.candyhouse.sesame.ble.os2.sesame2.CHSesame2
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.launch
+import org.json.JSONArray
+import org.json.JSONObject
+import kotlin.time.Duration.Companion.milliseconds
+
+/** Discovery and registration only; all rows, progress and errors are rendered by Biz. */
+class BleRegistrationController(
+    private val scope: CoroutineScope,
+    private val publish: (JSONObject) -> Unit,
+    private val historyTag: () -> ByteArray,
+    private val registered: (CHDevices) -> Unit
+) {
+    private val devices = linkedMapOf<String, CHDevices>()
+    private var active = false
+    private var previousScanDelegate: CHBleStatusDelegate? = null
+    private var registering: CHDevices? = null
+    private var previousDelegate: CHDeviceStatusDelegate? = null
+    private var complete: ((Boolean, String?) -> Unit)? = null
+    private var timeout: Job? = null
+    private val scanner = object : CHBleManagerDelegate {
+        override fun didDiscoverUnRegisteredCHDevices(found: List<CHDevices>) {
+            scope.launch(Dispatchers.Main) {
+                if (!active) return@launch
+                devices.clear()
+                found.filter { it.deviceId != null && it.rssi != null }.forEach { devices[it.deviceId.toString().uppercase()] = it }
+                if (registering == null) {
+                    devices.values.maxByOrNull { it.rssi ?: Int.MIN_VALUE }?.let { nearest ->
+                        if (nearest.deviceStatus == CHDeviceStatus.ReceivedAdV) nearest.connect { }
+                    }
+                }
+                publishDevices()
+            }
+        }
+    }
+    private val status = object : CHBleStatusDelegate {
+        override fun didScanChange(ss: CHScanStatus) {
+            previousScanDelegate?.didScanChange(ss)
+            scope.launch(Dispatchers.Main) { if (active) publishDevices() }
+        }
+    }
+
+    fun start() {
+        if (registering != null) return
+        val restarting = active
+        if (!restarting) previousScanDelegate = CHBleManager.statusDelegate
+        active = true
+        CHBleManager.delegate = scanner
+        CHBleManager.statusDelegate = status
+        if (restarting) CHBleManager.disableScan { CHBleManager.enableScan { } }
+        else CHBleManager.enableScan { }
+        publishDevices()
+    }
+
+    private fun publishDevices() {
+        publish(JSONObject().put("status", CHBleManager.mScanning.name).put("devices", JSONArray().apply {
+            devices.values.sortedByDescending { it.rssi }.forEach { device ->
+                put(
+                    JSONObject().put("deviceUUID", device.deviceId.toString().uppercase())
+                        .put("name", device.productModel.deviceModelName()).put("rssi", device.rssi)
+                        .put("status", device.deviceStatus.name)
+                )
+            }
+        }))
+    }
+
+    fun register(id: String, reply: (Boolean, String?) -> Unit) {
+        if (registering != null) {
+            reply(false, "Registration in progress"); return
+        }
+        val device = devices[id.uppercase()] ?: run { reply(false, "Device no longer available; scan again"); return }
+        registering = device
+        complete = reply
+        previousDelegate = device.delegate
+        var started = false
+        fun attempt() {
+            if (started || device.deviceStatus != CHDeviceStatus.ReadyToRegister || registering !== device) return
+            started = true
+            device.register { result ->
+                result.onSuccess { registered(device) }
+                scope.launch(Dispatchers.Main) {
+                    result.onSuccess {
+                        device.setHistoryTag(historyTag()) { }
+                        if (device is CHSesame2) device.configureLockPosition(0, 90) { }
+                        if (registering === device) finish(true, null)
+                    }.onFailure { if (registering === device) finish(false, "Registration failed") }
+                }
+            }
+        }
+        device.delegate = object : CHDeviceStatusDelegate {
+            override fun onBleDeviceStatusChanged(device: CHDevices, status: CHDeviceStatus) {
+                scope.launch(Dispatchers.Main) { attempt(); if (active) publishDevices() }
+            }
+        }
+        timeout = scope.launch { delay(60000.milliseconds); finish(false, "Registration timed out; check the device list before retrying") }
+        attempt()
+        if (!started) device.connect { result ->
+            scope.launch(Dispatchers.Main) { if (result.isFailure) finish(false, "Bluetooth connection failed") else attempt() }
+        }
+    }
+
+    private fun finish(success: Boolean, error: String?) {
+        timeout?.cancel()
+        registering?.delegate = previousDelegate
+        registering = null
+        previousDelegate = null
+        val callback = complete
+        complete = null
+        callback?.invoke(success, error)
+    }
+
+    fun stop() {
+        active = false
+        if (CHBleManager.delegate === scanner) CHBleManager.delegate = null
+        if (CHBleManager.statusDelegate === status) {
+            CHBleManager.statusDelegate = previousScanDelegate
+            previousScanDelegate?.didScanChange(CHBleManager.mScanning)
+        }
+        previousScanDelegate = null
+        devices.values.filter { !it.isRegistered && it.deviceStatus.value != CHDeviceLoginStatus.logined && it !== registering }.forEach { it.disconnect { } }
+        devices.clear()
+    }
+
+    fun close() {
+        stop(); finish(false, "Registration page closed")
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ble/BotSettings.kt b/sesameApp/src/main/java/co/candyhouse/app/ble/BotSettings.kt
new file mode 100644
index 0000000..e26b578
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ble/BotSettings.kt
@@ -0,0 +1,57 @@
+package co.candyhouse.app.ble
+
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.os3.bot2.CHSesameBot2
+import co.candyhouse.sesame.utils.CHEmpty
+import kotlinx.coroutines.withTimeout
+import org.json.JSONArray
+import org.json.JSONObject
+import kotlin.time.Duration.Companion.milliseconds
+
+/** Bot script byte protocol only; aliases, ordering and cloud persistence belong to Biz. */
+object BotSettings {
+    suspend fun handle(ble: BleController, json: JSONObject): JSONObject = withTimeout(8000.milliseconds) {
+        val device = ble.device(json.getString("deviceUUID")) as? CHSesameBot2 ?: error("Unsupported Bot")
+        check(device.deviceStatus.value == CHDeviceLoginStatus.logined)
+        val index = json.getInt("index"); require(index in 0..9)
+        when (json.getString("operation")) {
+            "read" -> {
+                val event = LockSettings.awaitResult { device.getCurrentScript(index.toUByte(), it) }
+                JSONObject().put("nameLength", event.nameLength.toInt())
+                    .put("name", JSONArray(event.name.map { it.toInt() and 255 }))
+                    .put("actions", JSONArray().apply {
+                        event.actions.orEmpty().forEach { put(JSONObject().put("type", it.action.value.toInt()).put("time", it.time.toInt())) }
+                    })
+            }
+
+            "select" -> {
+                LockSettings.awaitResult<CHEmpty> { device.selectScript(index.toUByte(), it) }
+                device.scripts.curIdx = index.toUByte()
+                ble.snapshot()
+                JSONObject()
+            }
+
+            "write" -> {
+                val name = json.getJSONArray("name");
+                val length = json.getInt("nameLength")
+                val actions = json.getJSONArray("actions")
+                require(length in 0..20 && name.length() in length..20 && actions.length() <= 20)
+                val payload = ByteArray(22 + actions.length() * 2)
+                payload[0] = length.toByte()
+                repeat(name.length()) { val value = name.getInt(it); require(value in 0..255); payload[1 + it] = value.toByte() }
+                payload[21] = actions.length().toByte()
+                repeat(actions.length()) { i ->
+                    val item = actions.getJSONObject(i);
+                    val type = item.getInt("type");
+                    val time = item.getInt("time")
+                    require(type in 0..3 && time in 0..255)
+                    payload[22 + i * 2] = type.toByte(); payload[23 + i * 2] = time.toByte()
+                }
+                LockSettings.awaitResult<CHEmpty> { device.sendClickScript(index.toUByte(), payload, it) }
+                JSONObject().put("actionData", payload.joinToString("") { "%02x".format(it.toInt() and 255) })
+            }
+
+            else -> error("Unsupported script operation")
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ble/DeviceLocation.kt b/sesameApp/src/main/java/co/candyhouse/app/ble/DeviceLocation.kt
new file mode 100644
index 0000000..196b2ea
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ble/DeviceLocation.kt
@@ -0,0 +1,41 @@
+package co.candyhouse.app.ble
+
+import android.Manifest
+import android.content.Context
+import android.content.pm.PackageManager
+import androidx.core.content.ContextCompat
+import com.google.android.gms.location.LocationServices
+import com.google.android.gms.location.Priority
+import com.google.android.gms.tasks.CancellationTokenSource
+import kotlinx.coroutines.suspendCancellableCoroutine
+import kotlinx.coroutines.withTimeoutOrNull
+import org.json.JSONObject
+import kotlin.coroutines.resume
+import kotlin.time.Duration.Companion.milliseconds
+
+/** One current location fix using existing permission; Biz owns when and where it is uploaded. */
+object DeviceLocation {
+    suspend fun current(context: Context): JSONObject? {
+        val granted = listOf(Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION)
+            .any { ContextCompat.checkSelfPermission(context, it) == PackageManager.PERMISSION_GRANTED }
+        if (!granted) return null
+        return withTimeoutOrNull(15000.milliseconds) {
+            suspendCancellableCoroutine { continuation ->
+                val cancellation = CancellationTokenSource()
+                continuation.invokeOnCancellation { cancellation.cancel() }
+                try {
+                    LocationServices.getFusedLocationProviderClient(context)
+                        .getCurrentLocation(Priority.PRIORITY_HIGH_ACCURACY, cancellation.token)
+                        .addOnCompleteListener { task ->
+                            if (continuation.isActive) {
+                                val location = if (task.isSuccessful) task.result else null
+                                continuation.resume(location?.let { JSONObject().put("longitude", it.longitude).put("latitude", it.latitude) })
+                            }
+                        }
+                } catch (_: SecurityException) {
+                    if (continuation.isActive) continuation.resume(null)
+                }
+            }
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ble/LockSettings.kt b/sesameApp/src/main/java/co/candyhouse/app/ble/LockSettings.kt
new file mode 100644
index 0000000..b1ca38f
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ble/LockSettings.kt
@@ -0,0 +1,161 @@
+package co.candyhouse.app.ble
+
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHProductModel
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.os2.sesame2.CHSesame2
+import co.candyhouse.sesame.ble.os3.sesame5.CHSesame5
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.L
+import kotlinx.coroutines.suspendCancellableCoroutine
+import kotlinx.coroutines.withTimeoutOrNull
+import org.json.JSONObject
+import kotlin.coroutines.resume
+import kotlin.coroutines.resumeWithException
+import kotlin.time.Duration.Companion.milliseconds
+
+/** BLE settings only. UI, cloud state and permissions remain in Biz. */
+object LockSettings {
+    suspend fun <T> awaitResult(call: (CHResult<T>) -> Unit): T = suspendCancellableCoroutine { continuation ->
+        call { result ->
+            if (continuation.isActive) result.fold({ continuation.resume(it.data) }, { continuation.resumeWithException(it) })
+        }
+    }
+
+    private suspend fun <T> readResult(call: (CHResult<T>) -> Unit): T =
+        withTimeoutOrNull(8000.milliseconds) { awaitResult(call) } ?: run {
+            L.d("LockSettings", "BLE settings read timed out")
+            error("BLE settings read timed out")
+        }
+
+    fun snapshot(device: CHDevices): JSONObject = JSONObject().apply {
+        put("productType", device.productModel.productType())
+        put("deviceModel", device.productModel.deviceModel())
+        put("deviceModelName", device.productModel.deviceModelName())
+        if (device.deviceStatus.value != CHDeviceLoginStatus.logined) return@apply
+        if (device.bleTxPower.toInt() != CHDevices.UNSET_BLE_TX_POWER_VALUE) put("bleTxPower", device.bleTxPower.toInt())
+        val setting = when (device) {
+            is CHSesame5 -> device.mechSetting?.let { it.lockPosition to it.unlockPosition }
+            is CHSesame2 -> device.mechSetting?.let { it.lockPosition to it.unlockPosition }
+            else -> null
+        }
+        setting?.let { put("lockPosition", it.first.toInt()); put("unlockPosition", it.second.toInt()) }
+        if (device is CHSesame5) {
+            device.mechSetting?.let { put("autoLockSeconds", it.autoLockSecond.toInt()) }
+            device.opsSetting?.let { put("sensorLockSeconds", it.opsLockSecond.toInt()) }
+            put("magnet", true)
+        }
+        put("position", device.mechStatus?.position?.toInt() ?: JSONObject.NULL)
+        if (device.hasLockUnlockSwitchPointSetting) put("switchPoint", device.lockUnlockSwitchPoint.toInt())
+        if (device.sensorDetectIntervalMs != CHDevices.UNSET_SENSOR_DETECT_INTERVAL_MS) put("sensorInterval", device.sensorDetectIntervalMs.toInt())
+    }
+
+    suspend fun handle(ble: BleController, json: JSONObject): JSONObject {
+        val device = requireNotNull(ble.device(json.getString("deviceUUID")))
+        require(device.deviceStatus.value == CHDeviceLoginStatus.logined)
+        val operation = json.getString("operation")
+        require(device is CHSesame2 || device is CHSesame5 || (device is CHSesameLock && operation == "txPower"))
+        when (operation) {
+            "txPower" -> {
+                require(device.bleTxPower.toInt() != CHDevices.UNSET_BLE_TX_POWER_VALUE)
+                val value = json.getInt("value")
+                require(value in -4..20)
+                readResult<CHEmpty> { device.setBleTxPower(value.toByte(), it) }
+            }
+
+            "read" -> {
+                val data = snapshot(device)
+                if (device is CHSesame2) data.put("autoLockSeconds", readResult(device::getAutolockSetting))
+                return data
+            }
+
+            "version" -> return JSONObject().put("version", readResult(device::getVersionTag))
+            "lockPosition", "unlockPosition" -> {
+                val position = requireNotNull(device.mechStatus).position
+                when (device) {
+                    is CHSesame5 -> {
+                        val settings = requireNotNull(device.mechSetting)
+                        awaitResult {
+                            device.configureLockPosition(
+                                if (operation == "lockPosition") position else settings.lockPosition,
+                                if (operation == "unlockPosition") position else settings.unlockPosition,
+                                it
+                            )
+                        }
+                    }
+
+                    is CHSesame2 -> {
+                        val settings = requireNotNull(device.mechSetting)
+                        awaitResult {
+                            device.configureLockPosition(
+                                if (operation == "lockPosition") position else settings.lockPosition,
+                                if (operation == "unlockPosition") position else settings.unlockPosition,
+                                it
+                            )
+                        }
+                    }
+                }
+            }
+
+            "autoLock" -> {
+                val seconds = json.getInt("value")
+                require(seconds in listOf(0, 3, 5, 7, 10, 15, 30, 60, 120, 180, 240, 300, 600, 900, 1800, 3600))
+                when (device) {
+                    is CHSesame5 -> awaitResult { device.autolock(seconds, it) }
+                    is CHSesame2 -> if (seconds == 0) awaitResult { device.disableAutolock(ble.historyTag(), it) } else awaitResult {
+                        device.enableAutolock(
+                            seconds,
+                            ble.historyTag(),
+                            it
+                        )
+                    }
+                }
+                ble.snapshot()
+                return snapshot(device).put("autoLockSeconds", seconds)
+            }
+
+            "sensorLock" -> {
+                require(device is CHSesame5)
+                val seconds = json.getInt("value")
+                require(seconds in listOf(65535, 0, 1, 2, 3, 4, 5, 7, 10, 15, 30, 60, 120, 180, 240, 300, 600, 900, 1800, 3600))
+                awaitResult { device.opSensorControl(seconds, it) }
+                ble.snapshot()
+                return snapshot(device).put("sensorLockSeconds", seconds)
+            }
+
+            "magnet" -> {
+                require(device is CHSesame5); awaitResult(device::magnet)
+            }
+
+            "switchPoint" -> {
+                require(device.hasLockUnlockSwitchPointSetting)
+                awaitResult<CHEmpty> { device.setLockUnlockSwitchPoint(requireNotNull(device.mechStatus).position, it) }
+            }
+
+            "slidingMode" -> {
+                require(device is CHSesame5)
+                val target = when (device.productModel) {
+                    CHProductModel.SS6Pro -> CHProductModel.SS6ProSlidingDoor
+                    CHProductModel.SS6ProSlidingDoor -> CHProductModel.SS6Pro
+                    else -> error("Unsupported product mode")
+                }
+                awaitResult<CHEmpty> { device.sendAdvProductTypeCommand(byteArrayOf(target.productType().toByte()), it) }
+                device.productModel = target
+                ble.saveModel(device)
+            }
+
+            "sensorInterval" -> {
+                require(device.sensorDetectIntervalMs != CHDevices.UNSET_SENSOR_DETECT_INTERVAL_MS)
+                val interval = json.getInt("value")
+                require(interval == 0 || (interval in 50..1000 && interval % 50 == 0))
+                awaitResult<CHEmpty> { device.setSensorDetectInterval(interval.toShort(), it) }
+            }
+
+            else -> error("Unsupported lock setting")
+        }
+        ble.snapshot()
+        return snapshot(device)
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ble/PeripheralSettings.kt b/sesameApp/src/main/java/co/candyhouse/app/ble/PeripheralSettings.kt
new file mode 100644
index 0000000..a7d524e
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ble/PeripheralSettings.kt
@@ -0,0 +1,547 @@
+package co.candyhouse.app.ble
+
+import androidx.lifecycle.Observer
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHProductModel
+import co.candyhouse.sesame.ble.CHSesameConnector
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.os3.biometric.CHSesameBiometricDevice
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.ble.os3.biometric.capability.card.CHCardCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.card.CHCardDelegate
+import co.candyhouse.sesame.ble.os3.biometric.capability.face.CHFaceCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.face.CHFaceDelegate
+import co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint.CHFingerPrintCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint.CHFingerPrintDelegate
+import co.candyhouse.sesame.ble.os3.biometric.capability.palm.CHPalmCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.palm.CHPalmDelegate
+import co.candyhouse.sesame.ble.os3.biometric.capability.passcode.CHPassCodeCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.passcode.CHPassCodeDelegate
+import co.candyhouse.sesame.ble.os3.biometric.capability.remoteNano.CHRemoteNanoCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.remoteNano.CHRemoteNanoDelegate
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHRemoteNanoTriggerSettings
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchFace
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.Event
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withTimeout
+import org.json.JSONArray
+import org.json.JSONObject
+import kotlin.time.Duration.Companion.milliseconds
+
+/** Device settings transport only; model policy, labels, radar conversion and cloud sync live in Biz. */
+class PeripheralSettings(private val ble: BleController, private val scope: CoroutineScope) {
+    private val sessions = mutableMapOf<String, String>()
+    private val departures = mutableMapOf<String, Job>()
+    private val setup = mutableSetOf<String>()
+    private val cleanup = mutableMapOf<String, () -> Unit>()
+    private val radar = mutableMapOf<String, Int>()
+    private val bindingWarnings = mutableMapOf<String, JSONObject>()
+    private var warningRevision = 0
+    private val closing = mutableMapOf<String, Job>()
+    private val credentials = mutableMapOf<String, CredentialSession>()
+    private val sleepy = setOf(CHProductModel.RemoteNano, CHProductModel.SSMOpenSensor)
+
+    fun registered(id: String) {
+        setup.add(id.uppercase())
+    }
+
+    fun statusChanged(device: CHDevices, status: CHDeviceStatus) {
+        if (status.value != CHDeviceLoginStatus.logined) closeCredentials(device.deviceId.toString().uppercase())
+        if (device.productModel in sleepy && status.value != CHDeviceLoginStatus.logined && status != CHDeviceStatus.ReadyToRegister) {
+            setup.remove(device.deviceId.toString().uppercase())
+        }
+    }
+
+    fun shouldConnect(device: CHDevices): Boolean {
+        val id = device.deviceId.toString().uppercase()
+        return sessions.containsKey(id) && (device.productModel !in sleepy || id in setup)
+    }
+
+    fun snapshot(device: CHDevices): JSONObject {
+        val id = device.deviceId.toString().uppercase()
+        return JSONObject().apply {
+            put("setup", id in setup)
+            put("sleeping", device.productModel in sleepy && id !in setup)
+            put("capabilities", JSONArray(capabilities(device)))
+            val keys = when (device) {
+                is CHSesameConnector -> device.ssm2KeysMap.keys
+                is CHWifiModule2 -> device.ssm2KeysMap.keys
+                else -> emptySet()
+            }
+            put("bound", JSONArray(keys.toList()))
+            radar[id]?.let { put("radar", it) }
+            bindingWarnings[id]?.let { put("bindingWarning", it) }
+            (device as? CHSesameBiometricDevice)?.triggerDelaySetting?.let { put("triggerDelay", it.triggerDelaySecond.toInt()) }
+            credentials[id]?.let { put("credentials", it.snapshot()) }
+        }
+    }
+
+    private fun capabilities(device: CHDevices): List<String> = when (device) {
+        is CHSesameBiometricDevice -> device.supportedCapabilities().map { it.name.lowercase() }
+        is CHFingerPrintCapable -> listOf("fingerprint")
+        else -> emptyList()
+    }
+
+    private fun observe(id: String, device: CHDevices) {
+        if (cleanup.containsKey(id) || device !is CHSesameBiometricDevice) return
+        val keys = device.getSSM2KeysLiveData()
+        val radarData = device.getRadarReceiveLiveData()
+        val slotFullData = device.getSSM2SlotFullLiveData()
+        val supportData = device.getSSM2SupportLiveDataLiveData()
+        fun warn(code: String) {
+            bindingWarnings[id] = JSONObject().put("code", code).put("revision", ++warningRevision)
+            ble.snapshot()
+        }
+
+        val slotObserver = Observer<Event<Boolean>> { if (it.getContentIfNotHandled() == true) warn("deviceFull") }
+        val supportObserver = Observer<Event<Boolean>> { if (it.getContentIfNotHandled() == false) warn("deviceUnsupported") }
+        val keyObserver = Observer<Map<String, ByteArray>> { ble.snapshot() }
+        val radarObserver = Observer<Event<ByteArray>> { event ->
+            val data = event.peekContent()
+            if (data.size >= 5) {
+                radar[id] = (1..4).fold(0) { value, i -> value or ((data[i].toInt() and 255) shl ((i - 1) * 8)) }
+                ble.snapshot()
+            }
+        }
+        keys?.observeForever(keyObserver); radarData?.observeForever(radarObserver)
+        slotFullData?.observeForever(slotObserver); supportData?.observeForever(supportObserver)
+        val nano = device as? CHRemoteNanoCapable
+        val nanoDelegate = object : CHRemoteNanoDelegate {
+            override fun onTriggerDelaySecondReceived(device: CHSesameConnector, setting: CHRemoteNanoTriggerSettings) {
+                scope.launch(Dispatchers.Main) { ble.snapshot() }
+            }
+        }
+        nano?.registerEventDelegate(device, nanoDelegate)
+        cleanup[id] = {
+            keys?.removeObserver(keyObserver); radarData?.removeObserver(radarObserver)
+            slotFullData?.removeObserver(slotObserver); supportData?.removeObserver(supportObserver)
+            nano?.unregisterEventDelegate(nanoDelegate)
+        }
+    }
+
+    fun forget(id: String) {
+        departures.remove(id)?.cancel(); sessions.remove(id); setup.remove(id)
+        closeCredentials(id); cleanup.remove(id)?.invoke(); radar.remove(id)
+        bindingWarnings.remove(id)
+    }
+
+    private fun closeCredentials(id: String) {
+        credentials.remove(id)?.close()?.let { closing[id] = it }
+    }
+
+    fun close() {
+        (sessions.keys + setup + credentials.keys).toSet().forEach { id ->
+            forget(id)
+            val device = ble.device(id)
+            scope.launch {
+                closing[id]?.join()
+                if (!sessions.containsKey(id) && device !is CHSesameLock) device?.disconnect {}
+            }
+        }
+    }
+
+    suspend fun handle(json: JSONObject): JSONObject = withTimeout(10000.milliseconds) {
+        val id = json.getString("deviceUUID").uppercase()
+        val device = requireNotNull(ble.device(id))
+        val op = json.getString("operation")
+        if (op == "watch") {
+            departures.remove(id)?.cancel()
+            sessions[id] = json.getString("session")
+            observe(id, device)
+            if (closing[id]?.isCompleted == true) closing.remove(id)
+            if (shouldConnect(device) && device.deviceStatus == CHDeviceStatus.ReceivedAdV) device.connect {}
+        } else if (op == "unwatch") {
+            if (sessions[id] == json.getString("session")) {
+                departures.remove(id)?.cancel()
+                // Allow navigation between the setting and its child pages without losing the registration connection.
+                departures[id] = scope.launch {
+                    delay(600.milliseconds)
+                    closeCredentials(id)
+                    closing[id]?.join()
+                    forget(id)
+                    if (device !is CHSesameLock) device.disconnect {}
+                    ble.snapshot()
+                }
+            }
+        } else if (op == "credentialsClose") {
+            if (credentials[id]?.token == json.getString("session")) closeCredentials(id)
+        } else {
+            check(device.deviceStatus.value == CHDeviceLoginStatus.logined)
+            check(device.productModel !in sleepy || id in setup)
+            when (op) {
+                "version" -> return@withTimeout JSONObject().put("version", LockSettings.awaitResult(device::getVersionTag))
+                "txPower" -> {
+                    val value = json.getInt("value"); require(value in -4..20)
+                    require(device.bleTxPower.toInt() != CHDevices.UNSET_BLE_TX_POWER_VALUE)
+                    LockSettings.awaitResult<CHEmpty> { device.setBleTxPower(value.toByte(), it) }
+                }
+
+                "radar" -> {
+                    val command = json.getInt("command");
+                    val value = json.getInt("value")
+                    require(command in setOf(0x33, 0x53) && value in 0..512)
+                    val payload = byteArrayOf(command.toByte()) + ByteArray(4) { (value shr (8 * it)).toByte() }
+                    LockSettings.awaitResult<CHEmpty> { (device as CHSesameConnector).setRadarSensitivity(payload, it) }
+                    radar[id] = value
+                }
+
+                "triggerDelay" -> {
+                    require(device.productModel == CHProductModel.RemoteNano)
+                    val value = json.getInt("value"); require(value in setOf(0, 10))
+                    LockSettings.awaitResult<CHEmpty> { (device as CHRemoteNanoCapable).setTriggerDelayTime(value.toUByte(), it) }
+                }
+
+                "bind", "unbind" -> {
+                    val target = json.getString("target")
+                    if (op == "bind") {
+                        val lock = requireNotNull(ble.device(target))
+                        LockSettings.awaitResult<CHEmpty> { cb ->
+                            when (device) {
+                                is CHWifiModule2 -> device.insertSesames(lock, cb)
+                                is CHSesameConnector -> device.insertSesame(lock, cb)
+                                else -> error("Unsupported binding")
+                            }
+                        }
+                    } else LockSettings.awaitResult<CHEmpty> { cb ->
+                        when (device) {
+                            is CHWifiModule2 -> device.removeSesame(target, cb)
+                            is CHSesameConnector -> device.removeSesame(target, cb)
+                            else -> error("Unsupported binding")
+                        }
+                    }
+                }
+
+                "credentials" -> {
+                    val kind = json.getString("kind")
+                    require(kind in capabilities(device))
+                    closeCredentials(id)
+                    closing.remove(id)?.join()
+                    val session = CredentialSession(device, kind, json.getString("session"))
+                    credentials[id] = session
+                    try {
+                        session.open()
+                    } catch (error: Throwable) {
+                        if (credentials[id] === session) closeCredentials(id)
+                        throw error
+                    }
+                }
+
+                "credentialMode", "credentialRename", "credentialDelete" -> {
+                    val session = requireNotNull(credentials[id])
+                    require(session.token == json.getString("session"))
+                    session.command(op, json)
+                }
+
+                else -> error("Unsupported peripheral operation")
+            }
+        }
+        ble.snapshot()
+        snapshot(device)
+    }
+
+    private inner class CredentialSession(val device: CHDevices, val kind: String, val token: String) {
+        private val host = device as CHCapabilityHost
+        private val items = linkedMapOf<String, JSONObject>()
+        private var revision = 0
+        private var failureRevision = 0
+        private var complete = false
+        private var loading = true
+        private var listStarted = false
+        private var mode = 0
+        private var closed = false
+        private var loadFailed = false
+        private var loadTimer: Job? = null
+        private var modeRead: Job? = null
+        private var detach: () -> Unit = {}
+        fun snapshot() = JSONObject().put("kind", kind).put("session", token).put("revision", revision)
+            .put("complete", complete).put("loading", loading).put("loadFailed", loadFailed).put("mode", mode).put("failureRevision", failureRevision)
+            .put("items", JSONArray(items.values.toList()))
+
+        private fun update(block: () -> Unit) {
+            scope.launch(Dispatchers.Main.immediate) {
+                if (!closed) {
+                    block(); ble.snapshot()
+                }
+            }
+        }
+
+        private fun waitForList() {
+            loadTimer?.cancel()
+            loadTimer = scope.launch {
+                delay(30000.milliseconds)
+                listFailed()
+            }
+        }
+
+        private fun listFailed() = update {
+            if (!complete) {
+                loading = false; loadFailed = true; loadTimer?.cancel()
+            }
+        }
+
+        private fun start() = update { listStarted = true; loading = true; complete = false; loadFailed = false; items.clear(); waitForList() }
+        private fun end() = update { loading = false; complete = true; loadFailed = false; loadTimer?.cancel(); revision++ }
+        private fun acknowledged() = update {
+            // Empty card/passcode reads can ACK without FIRST/LAST. Release the UI, but only
+            // LAST confirms a full list for cloud replacement; a later FIRST starts loading again.
+            if (!listStarted && !complete) {
+                loading = false; loadFailed = false; loadTimer?.cancel()
+            }
+        }
+
+        private fun readMode(read: suspend () -> Byte) {
+            modeRead = scope.launch {
+                runCatching { withTimeout(4000.milliseconds) { read() } }.onSuccess { changedMode(it) }
+            }
+        }
+
+        private fun receive(id: String, name: String, type: Byte, changed: Boolean = false) = update {
+            items[id] = JSONObject().put("credentialId", id).put("rawName", name).put("type", type.toInt() and 255)
+            if (changed) revision++ else if (!complete) {
+                listStarted = true; loading = true; waitForList()
+            }
+        }
+
+        private fun deleted(id: String) = update { items.remove(id); revision++ }
+        private fun failed() = update { failureRevision++ }
+        private fun changedMode(value: Byte) = update { mode = value.toInt() }
+        suspend fun open() {
+            // Mode reads must not block list requests. Only LAST confirms a full list for cloud sync.
+            waitForList()
+            when (kind) {
+                "card" -> {
+                    val capable = device as CHCardCapable
+                    val listener = object : CHCardDelegate {
+                        override fun onCardReceive(device: CHDevices, cardID: String, hexName: String, type: Byte) {
+                            receive(cardID, hexName, type)
+                        }
+
+                        override fun onCardChanged(device: CHDevices, cardID: String, hexName: String, type: Byte) {
+                            receive(cardID, hexName, type, true)
+                        }
+
+                        override fun onCardReceiveStart(device: CHDevices) {
+                            start()
+                        }
+
+                        override fun onCardReceiveEnd(device: CHDevices) {
+                            end()
+                        }
+
+                        override fun onCardModeChanged(device: CHDevices, mode: Byte) {
+                            changedMode(mode)
+                        }
+
+                        override fun onCardDelete(device: CHDevices, cardID: String) {
+                            deleted(cardID)
+                        }
+                    }
+                    capable.registerEventDelegate(host, listener)
+                    detach = { capable.unregisterEventDelegate(host, listener) }
+                    readMode { LockSettings.awaitResult(capable::cardModeGet) }
+                    capable.sendNfcCardsDataGetCmd(device.deviceId.toString().uppercase()) { result ->
+                        result.onSuccess { acknowledged() }.onFailure { listFailed() }
+                    }
+                }
+
+                "fingerprint" -> {
+                    val capable = device as CHFingerPrintCapable
+                    val listener = object : CHFingerPrintDelegate {
+                        override fun onFingerPrintReceive(device: CHDevices, ID: String, hexName: String, type: Byte) {
+                            receive(ID, hexName, type)
+                        }
+
+                        override fun onFingerPrintChanged(device: CHDevices, ID: String, hexName: String, type: Byte) {
+                            receive(ID, hexName, type, true)
+                        }
+
+                        override fun onFingerPrintReceiveStart(device: CHDevices) {
+                            start()
+                        }
+
+                        override fun onFingerPrintReceiveEnd(device: CHDevices) {
+                            end()
+                        }
+
+                        override fun onFingerModeChange(device: CHDevices, mode: Byte) {
+                            changedMode(mode)
+                        }
+
+                        override fun onFingerDelete(device: CHDevices, ID: String) {
+                            deleted(ID)
+                        }
+                    }
+                    capable.registerEventDelegate(host, listener)
+                    detach = { capable.unregisterEventDelegate(host, listener) }
+                    readMode { LockSettings.awaitResult(capable::fingerPrintModeGet) }
+                    capable.fingerPrints { result -> result.onFailure { listFailed() } }
+                }
+
+                "passcode" -> {
+                    val capable = device as CHPassCodeCapable
+                    val listener = object : CHPassCodeDelegate {
+                        override fun onKeyBoardReceive(device: CHDevices, ID: String, hexName: String, type: Byte) {
+                            receive(ID, hexName, type)
+                        }
+
+                        override fun onKeyBoardChanged(device: CHDevices, ID: String, hexName: String, type: Byte) {
+                            receive(ID, hexName, type, true)
+                        }
+
+                        override fun onKeyBoardReceiveStart(device: CHDevices) {
+                            start()
+                        }
+
+                        override fun onKeyBoardReceiveEnd(device: CHDevices) {
+                            end()
+                        }
+
+                        override fun onKeyBoardModeChange(device: CHDevices, mode: Byte) {
+                            changedMode(mode)
+                        }
+
+                        override fun onKeyBoardDelete(device: CHDevices, ID: String) {
+                            deleted(ID)
+                        }
+                    }
+                    capable.registerEventDelegate(host, listener)
+                    detach = { capable.unregisterEventDelegate(host, listener) }
+                    readMode { LockSettings.awaitResult(capable::keyBoardPassCodeModeGet) }
+                    capable.sendKeyBoardPassCodeDataGetCmd { result ->
+                        result.onSuccess { acknowledged() }.onFailure { listFailed() }
+                    }
+                }
+
+                "face" -> {
+                    val capable = device as CHFaceCapable
+                    val listener = object : CHFaceDelegate {
+                        override fun onFaceReceive(device: CHDevices, face: CHSesameTouchFace) {
+                            val item = face; receive(item.id, item.nameUUID, item.type)
+                        }
+
+                        override fun onFaceChanged(device: CHDevices, face: CHSesameTouchFace) {
+                            val item = face; receive(item.id, item.nameUUID, item.type, true)
+                        }
+
+                        override fun onFaceReceiveStart(device: CHDevices) {
+                            start()
+                        }
+
+                        override fun onFaceReceiveEnd(device: CHDevices) {
+                            end()
+                        }
+
+                        override fun onFaceModeChanged(device: CHDevices, mode: Byte) {
+                            changedMode(mode)
+                        }
+
+                        override fun onFaceDeleted(device: CHDevices, faceID: Byte, isSuccess: Boolean) {
+                            if (isSuccess) deleted("%02x".format(faceID.toInt() and 255)) else failed()
+                        }
+                    }
+                    capable.registerEventDelegate(host, listener)
+                    detach = { capable.unregisterEventDelegate(host, listener) }
+                    readMode { LockSettings.awaitResult(capable::faceModeGet) }
+                    capable.faceListGet { result -> result.onFailure { listFailed() } }
+                }
+
+                "palm" -> {
+                    val capable = device as CHPalmCapable
+                    val listener = object : CHPalmDelegate {
+                        override fun onPalmReceive(device: CHDevices, tochface: CHSesameTouchFace) {
+                            val item = tochface; receive(item.id, item.nameUUID, item.type)
+                        }
+
+                        override fun onPalmChanged(device: CHDevices, tochface: CHSesameTouchFace) {
+                            val item = tochface; receive(item.id, item.nameUUID, item.type, true)
+                        }
+
+                        override fun onPalmReceiveStart(device: CHDevices) {
+                            start()
+                        }
+
+                        override fun onPalmReceiveEnd(device: CHDevices) {
+                            end()
+                        }
+
+                        override fun onPalmModeChanged(device: CHDevices, mode: Byte) {
+                            changedMode(mode)
+                        }
+
+                        override fun onPalmDeleted(device: CHDevices, palmID: Byte, isSuccess: Boolean) {
+                            if (isSuccess) deleted("%02x".format(palmID.toInt() and 255)) else failed()
+                        }
+                    }
+                    capable.registerEventDelegate(host, listener)
+                    detach = { capable.unregisterEventDelegate(host, listener) }
+                    readMode { LockSettings.awaitResult(capable::palmModeGet) }
+                    capable.palmListGet { result -> result.onFailure { listFailed() } }
+                }
+            }
+        }
+
+        private suspend fun setMode(value: Int) {
+            modeRead?.cancel()
+            require(value == 1 || value == if (kind == "fingerprint") 2 else 0)
+            LockSettings.awaitResult<CHEmpty> { cb ->
+                when (kind) {
+                    "card" -> (device as CHCardCapable).cardModeSet(value.toByte(), cb)
+                    "fingerprint" -> (device as CHFingerPrintCapable).fingerPrintModeSet(value.toByte(), cb)
+                    "passcode" -> (device as CHPassCodeCapable).keyBoardPassCodeModeSet(value.toByte(), cb)
+                    "face" -> (device as CHFaceCapable).faceModeSet(value.toByte(), cb)
+                    "palm" -> (device as CHPalmCapable).palmModeSet(value.toByte(), cb)
+                }
+            }
+            mode = value
+        }
+
+        suspend fun command(op: String, json: JSONObject) {
+            if (op == "credentialMode") {
+                setMode(json.getInt("value")); return
+            }
+            val id = json.getString("id"); require(items.containsKey(id))
+            if (op == "credentialRename") {
+                val name = json.getString("nameUUID").replace("-", "")
+                require(name.matches(Regex("[0-9a-fA-F]{32}")))
+                LockSettings.awaitResult<CHEmpty> { cb ->
+                    when (kind) {
+                        "card" -> (device as CHCardCapable).cardChange(id, name, cb)
+                        "fingerprint" -> (device as CHFingerPrintCapable).fingerPrintsChange(id, name, cb)
+                        "passcode" -> (device as CHPassCodeCapable).keyBoardPassCodeChange(id, name, cb)
+                        else -> error("Name is managed in Biz")
+                    }
+                }
+                items[id]?.put("rawName", name)
+                revision++
+            } else {
+                LockSettings.awaitResult<CHEmpty> { cb ->
+                    when (kind) {
+                        "card" -> (device as CHCardCapable).cardDelete(id, cb)
+                        "fingerprint" -> (device as CHFingerPrintCapable).fingerPrintDelete(id, device.deviceId.toString(), cb)
+                        "passcode" -> (device as CHPassCodeCapable).keyBoardPassCodeDelete(id, device.deviceId.toString(), cb)
+                        "face" -> (device as CHFaceCapable).faceDelete(id, device.deviceId.toString(), cb)
+                        "palm" -> (device as CHPalmCapable).palmDelete(id, device.deviceId.toString(), cb)
+                    }
+                }
+                // Face/palm deletion completes on its device notification, not the initial command ACK.
+                if (kind !in setOf("face", "palm")) deleted(id)
+            }
+        }
+
+        fun close(): Job? {
+            if (closed) return null
+            closed = true; loadTimer?.cancel(); modeRead?.cancel(); detach()
+            return if (device.deviceStatus.value == CHDeviceLoginStatus.logined) scope.launch {
+                runCatching { withTimeout(4000.milliseconds) { setMode(if (kind == "fingerprint") 2 else 0) } }
+            } else null
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/bridge/NativeRequestHandler.kt b/sesameApp/src/main/java/co/candyhouse/app/bridge/NativeRequestHandler.kt
new file mode 100644
index 0000000..b0046c7
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/bridge/NativeRequestHandler.kt
@@ -0,0 +1,188 @@
+package co.candyhouse.app.bridge
+
+import android.content.Context
+import android.os.Build
+import co.candyhouse.app.BuildConfig
+import co.candyhouse.app.SesameApp
+import co.candyhouse.app.ble.BleController
+import co.candyhouse.app.ble.BleFirmwareUpdate
+import co.candyhouse.app.ble.BleRegistrationController
+import co.candyhouse.app.ble.BotSettings
+import co.candyhouse.app.ble.DeviceLocation
+import co.candyhouse.app.ble.LockSettings
+import co.candyhouse.app.connecteddevice.AutoUnlockGeofenceManager
+import co.candyhouse.app.connecteddevice.SesameConnectedDeviceService
+import co.candyhouse.app.data.KeyHandoff
+import co.candyhouse.app.data.auth.LegacySession
+import co.candyhouse.app.util.toKeyJson
+import co.candyhouse.sesame.utils.L
+import kotlinx.coroutines.CancellationException
+import org.json.JSONArray
+import org.json.JSONObject
+
+/** Routes H5 requests to native capabilities without owning an Activity or WebView. */
+class NativeRequestHandler(
+    private val context: Context,
+    private val ble: BleController,
+    private val registration: BleRegistrationController,
+    private val keyHandoff: KeyHandoff,
+    private val language: () -> String,
+    private val requestBle: () -> Unit,
+    private val startDiscovery: () -> Unit,
+    private val stopDiscovery: () -> Unit,
+    private val registeredKey: () -> JSONObject?,
+    private val scanQr: () -> Unit,
+    private val showRoute: (String) -> Unit,
+    private val pushInfo: suspend () -> JSONObject,
+    private val notificationSettings: () -> Unit,
+    private val openWebPage: (String) -> Unit,
+    private val openExternal: (String) -> Unit,
+    private val autoUnlockMap: (JSONObject) -> JSONObject = { error("Map requires an Activity") },
+    private val watchNfc: (String?) -> Unit = {},
+    private val haptic: () -> Unit = {}
+) {
+    suspend fun handle(json: JSONObject, respond: (Boolean, Any?, String?) -> Unit) {
+        fun reply(ok: Boolean, data: Any? = null, error: String? = null) = respond(ok, data, error)
+        runCatching {
+            when (json.optString("action")) {
+                "home.ready" -> {
+                    ble.snapshot(); reply(true)
+                }
+
+                "home.currentLocation" -> reply(true, DeviceLocation.current(context))
+
+                "home.appVersion" -> reply(
+                    true,
+                    JSONObject().put("versionName", BuildConfig.VERSION_NAME).put("versionCode", BuildConfig.VERSION_CODE).put(
+                        "display",
+                        "${BuildConfig.VERSION_NAME}(${BuildConfig.VERSION_CODE})-${BuildConfig.GIT_HASH}-${BuildConfig.BUILD_TYPE}-${Build.MODEL}:${Build.VERSION.SDK_INT}"
+                    )
+                )
+
+                "home.session" -> {
+                    val token = LegacySession.token()
+                    keyHandoff.initialize(token != null || LegacySession.retired())
+                    reply(
+                        true, JSONObject().put("token", token ?: JSONObject.NULL)
+                            .put("signedIn", token != null)
+                            .put("language", language())
+                            .put("guestIdentityId", LegacySession.guestIdentityId())
+                    )
+                }
+
+                "home.retireSession" -> {
+                    LegacySession.retire(); reply(true)
+                }
+
+                "home.devices" -> {
+                    ble.accept(json.getJSONArray("devices"), json.optString("historyTag"))
+                    if (json.getJSONArray("devices").length() > 0) requestBle()
+                    reply(true)
+                }
+
+                "home.localKeys" -> reply(true, JSONArray().apply {
+                    keyHandoff.pending().forEach { put(it.toKeyJson().put("deviceName", keyHandoff.name(it)).put("keyLevel", keyHandoff.level(it))) }
+                })
+
+                "home.deviceKey" -> reply(true, keyHandoff.key(json.getString("deviceUUID")).toKeyJson())
+
+                "home.keysUploaded" -> {
+                    keyHandoff.acknowledge(json.getString("deviceUUID")); reply(true)
+                }
+
+                "home.command", "home.scripts" -> ble.handle(json.getString("action"), json) { ok, error -> reply(ok, error = error) }
+                "home.firmwareTrace" -> {
+                    val transport = json.optString("transport")
+                    val phase = json.optString("phase")
+                    if (transport in setOf("ble", "gateway") && phase in setOf("start", "progress", "completed", "failed", "version")) {
+                        L.d("SesameFirmware", "transport=$transport phase=$phase progress=${json.optInt("progress", -1)}")
+                    }
+                    reply(true)
+                }
+
+                "home.firmwareStatus" -> reply(true, BleFirmwareUpdate.snapshot())
+                "home.firmwareStart" -> reply(
+                    true,
+                    BleFirmwareUpdate.start(context, requireNotNull(ble.device(json.getString("deviceUUID"))), json.getString("url"), ble::reconnect)
+                )
+
+                "home.firmwareInfo" -> reply(
+                    true,
+                    JSONObject().put("productType", requireNotNull(ble.device(json.getString("deviceUUID"))).productModel.productType())
+                        .put("firmwareDir", context.getSharedPreferences("firmware_dir_prefs", Context.MODE_PRIVATE).getString("firmware_dir", "prod"))
+                )
+
+                "home.devicePreferences" -> {
+                    val app = context.applicationContext as SesameApp
+                    val id = json.getString("deviceUUID")
+                    require(ble.device(id) != null)
+                    when (json.optString("operation")) {
+                        "widget" -> app.devicePreferences.setEnabled("wid", id, json.getBoolean("value"))
+                        "clearNfc" -> app.devicePreferences.setNfc(id, null)
+                        "watchNfc" -> watchNfc(id)
+                        "stopNfc" -> watchNfc(null)
+                    }
+                    SesameConnectedDeviceService.sync(context)
+                    reply(true, app.devicePreferences.snapshot(id))
+                }
+
+                "home.autoUnlockMap" -> reply(true, autoUnlockMap(json))
+                "home.haptic" -> {
+                    haptic(); reply(true)
+                }
+
+                "home.dropDevice" -> {
+                    val app = context.applicationContext as SesameApp
+                    val id = json.getString("deviceUUID")
+                    ble.drop(id); keyHandoff.acknowledge(id); app.devicePreferences.clear(id)
+                    AutoUnlockGeofenceManager.sync(context)
+                    SesameConnectedDeviceService.sync(context)
+                    reply(true)
+                }
+
+                "home.peripheralSettings" -> reply(true, ble.peripheralSettings.handle(json))
+                "home.hubSettings" -> reply(true, ble.hubSettings(json))
+                "home.botSettings" -> reply(true, BotSettings.handle(ble, json))
+                "home.lockSettings" -> reply(true, LockSettings.handle(ble, json))
+                "home.scanStart" -> {
+                    startDiscovery(); reply(true)
+                }
+
+                "home.scanStop" -> {
+                    stopDiscovery(); reply(true)
+                }
+
+                "home.register" -> registration.register(json.getString("deviceUUID")) { ok, error ->
+                    if (ok) ble.peripheralSettings.registered(json.getString("deviceUUID"))
+                    reply(ok, registeredKey(), error)
+                }
+
+                "home.scanQr" -> {
+                    scanQr(); reply(true)
+                }
+
+                "home.route" -> {
+                    showRoute(json.optString("path")); reply(true)
+                }
+
+                "home.pushInfo" -> reply(true, pushInfo())
+                "home.notificationSettings" -> {
+                    notificationSettings(); reply(true)
+                }
+
+                "home.openWebPage" -> {
+                    openWebPage(json.getString("url")); reply(true)
+                }
+
+                "home.external" -> {
+                    openExternal(json.getString("url")); reply(true)
+                }
+
+                else -> reply(false, error = "This native capability is not available in this version")
+            }
+        }.onFailure {
+            if (it is CancellationException) throw it
+            reply(false, null, "Native request failed; retry when connected")
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/bridge/WebViewBridge.kt b/sesameApp/src/main/java/co/candyhouse/app/bridge/WebViewBridge.kt
new file mode 100644
index 0000000..6790dbb
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/bridge/WebViewBridge.kt
@@ -0,0 +1,112 @@
+package co.candyhouse.app.bridge
+
+import android.net.Uri
+import android.os.Handler
+import android.os.Looper
+import android.webkit.WebMessage
+import android.webkit.WebMessagePort
+import android.webkit.WebView
+import androidx.core.net.toUri
+import kotlinx.coroutines.CompletableDeferred
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.SupervisorJob
+import kotlinx.coroutines.cancel
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
+import kotlinx.coroutines.withTimeout
+import org.json.JSONObject
+import java.util.UUID
+import kotlin.time.Duration.Companion.milliseconds
+
+/** Owns the trusted message channel and invalidates requests when its document changes. */
+class WebViewBridge(
+    origin: String,
+    private val scope: CoroutineScope,
+    private val handle: suspend (JSONObject, (Boolean, Any?, String?) -> Unit) -> Unit
+) {
+    private val originUri = origin.toUri()
+    private var port: WebMessagePort? = null
+    private val pending = mutableMapOf<String, CompletableDeferred<Any?>>()
+    private var generation = 0
+    private var documentScope: CoroutineScope? = null
+
+    fun isTrusted(uri: Uri): Boolean {
+        val defaultPort = if (originUri.scheme == "https") 443 else 80
+        return uri.scheme == originUri.scheme && uri.host == originUri.host &&
+                (if (uri.port == -1) defaultPort else uri.port) == (if (originUri.port == -1) defaultPort else originUri.port)
+    }
+
+    fun connect(view: WebView, url: String?) {
+        if (!isTrusted((url ?: "").toUri()) || port != null) return
+        val epoch = generation
+        val requests = CoroutineScope(scope.coroutineContext + SupervisorJob(scope.coroutineContext[Job]))
+        documentScope = requests
+        val channel = view.createWebMessageChannel()
+        port = channel[0]
+        channel[0].setWebMessageCallback(object : WebMessagePort.WebMessageCallback() {
+            override fun onMessage(source: WebMessagePort, message: WebMessage) {
+                if (epoch != generation || !isTrusted((view.url ?: "").toUri())) return
+                val json = runCatching { JSONObject(message.data ?: "") }.getOrNull() ?: return
+                if (json.optString("action") == "home.cloudResponse") {
+                    pending.remove(json.optString("requestId"))?.let { result ->
+                        if (json.optBoolean("success")) result.complete(json.opt("data").takeUnless { it == JSONObject.NULL })
+                        else result.completeExceptionally(IllegalStateException("Cloud operation failed"))
+                    }
+                    return
+                }
+                requests.launch {
+                    handle(json) { ok, data, error ->
+                        requests.launch {
+                            if (epoch == generation && isTrusted((view.url ?: "").toUri())) {
+                                emit(
+                                    "result", JSONObject().put("requestId", json.optString("requestId"))
+                                        .put("success", ok).put("data", data ?: JSONObject.NULL).put("error", error)
+                                )
+                            }
+                        }
+                    }
+                }
+            }
+        }, Handler(Looper.getMainLooper()))
+        val nonce = UUID.randomUUID().toString()
+        view.evaluateJavascript("window.__sesamePortNonce = ${JSONObject.quote(nonce)}") {
+            if (epoch == generation && isTrusted((view.url ?: "").toUri())) {
+                view.postWebMessage(WebMessage(nonce, arrayOf(channel[1])), originUri)
+            } else {
+                channel.forEach { it.close() }
+            }
+        }
+    }
+
+    fun emit(type: String, data: Any = JSONObject()) {
+        port?.postMessage(WebMessage(JSONObject().put("type", type).put("data", data).toString()))
+    }
+
+    suspend fun requestCloud(operation: String, body: JSONObject, deviceId: String?): Any? = withContext(Dispatchers.Main.immediate) {
+        check(port != null) { "Web page unavailable" }
+        val id = UUID.randomUUID().toString()
+        val response = CompletableDeferred<Any?>()
+        pending[id] = response
+        try {
+            emit(
+                "cloudRequest", JSONObject().put("requestId", id).put("op", operation)
+                    .put("body", body).put("deviceUUID", deviceId)
+            )
+            withTimeout(30000.milliseconds) { response.await() }
+        } finally {
+            pending.remove(id)
+        }
+    }
+
+    fun reset() {
+        pending.values.forEach { it.completeExceptionally(IllegalStateException("Web page changed")) }
+        pending.clear()
+        generation++
+        documentScope?.cancel()
+        documentScope = null
+        port?.close()
+        port = null
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/AutoUnlockGeofenceManager.kt b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/AutoUnlockGeofenceManager.kt
new file mode 100644
index 0000000..20793d7
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/AutoUnlockGeofenceManager.kt
@@ -0,0 +1,92 @@
+package co.candyhouse.app.connecteddevice
+
+import android.Manifest
+import android.app.PendingIntent
+import android.content.BroadcastReceiver
+import android.content.Context
+import android.content.Intent
+import android.content.pm.PackageManager
+import android.os.Build
+import androidx.core.content.ContextCompat
+import co.candyhouse.app.SesameApp
+import co.candyhouse.sesame.utils.L
+import com.google.android.gms.location.Geofence
+import com.google.android.gms.location.GeofencingEvent
+import com.google.android.gms.location.GeofencingRequest
+import com.google.android.gms.location.LocationServices
+import kotlinx.coroutines.launch
+import java.util.concurrent.atomic.AtomicInteger
+
+object AutoUnlockGeofenceManager {
+    private val generation = AtomicInteger()
+    private var lastConfiguration: String? = null
+    fun hasPermission(context: Context) = ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED &&
+            (Build.VERSION.SDK_INT < 29 || ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_BACKGROUND_LOCATION) == PackageManager.PERMISSION_GRANTED)
+
+    private fun pending(context: Context) = PendingIntent.getBroadcast(
+        context, 0, Intent(context, AutoUnlockGeofenceReceiver::class.java),
+        PendingIntent.FLAG_UPDATE_CURRENT or if (Build.VERSION.SDK_INT >= 31) PendingIntent.FLAG_MUTABLE else 0
+    )
+
+    fun sync(context: Context) {
+        val app = context.applicationContext as SesameApp
+        val configuration = app.ble.allDevices().filter { app.devicePreferences.enabled("nohand", it.deviceId.toString()) }.map {
+            val d = app.devicePreferences.snapshot(it.deviceId.toString()); "${it.deviceId}:${d.getDouble("latitude")}:${d.getDouble("longitude")}:${d.getDouble("radius")}"
+        }.sorted().joinToString(";") + hasPermission(context)
+        if (configuration == lastConfiguration) return
+        lastConfiguration = configuration
+        val epoch = generation.incrementAndGet()
+        val client = LocationServices.getGeofencingClient(context)
+        val intent = pending(context)
+        val fences = if (!hasPermission(context)) emptyList() else app.ble.allDevices().filter { app.devicePreferences.enabled("nohand", it.deviceId.toString()) }.mapNotNull {
+            val id = it.deviceId.toString();
+            val data = app.devicePreferences.snapshot(id)
+            val lat = data.getDouble("latitude");
+            val lng = data.getDouble("longitude")
+            if (lat == 0.0 && lng == 0.0) null else Geofence.Builder().setRequestId(id)
+                .setCircularRegion(lat, lng, data.getDouble("radius").toFloat()).setExpirationDuration(Geofence.NEVER_EXPIRE)
+                .setTransitionTypes(Geofence.GEOFENCE_TRANSITION_EXIT).build()
+        }.take(100)
+        client.removeGeofences(intent).addOnCompleteListener {
+            if (epoch != generation.get() || fences.isEmpty()) return@addOnCompleteListener
+            try {
+                client.addGeofences(GeofencingRequest.Builder().setInitialTrigger(GeofencingRequest.INITIAL_TRIGGER_EXIT).addGeofences(fences).build(), intent)
+                    .addOnFailureListener { lastConfiguration = null; L.e("AutoUnlockGeofence", "Registration failed", it) }
+            } catch (e: SecurityException) {
+                L.e("AutoUnlockGeofence", "Location permission unavailable", e)
+            }
+        }
+    }
+}
+
+class AutoUnlockGeofenceReceiver : BroadcastReceiver() {
+    override fun onReceive(context: Context, intent: Intent) {
+        val event = GeofencingEvent.fromIntent(intent) ?: return
+        if (event.hasError() || event.geofenceTransition != Geofence.GEOFENCE_TRANSITION_EXIT) return
+        val app = context.applicationContext as SesameApp
+        event.triggeringGeofences.orEmpty().forEach { if (app.devicePreferences.enabled("nohand", it.requestId)) app.devicePreferences.setEnabled("nohandg", it.requestId, true) }
+        val pending = goAsync()
+        app.runtimeScope.launch {
+            try {
+                app.ble.restoreSaved(); SesameConnectedDeviceService.sync(context)
+            } finally {
+                pending.finish()
+            }
+        }
+    }
+}
+
+class AutoUnlockBootReceiver : BroadcastReceiver() {
+    override fun onReceive(context: Context, intent: Intent) {
+        if (intent.action !in setOf(Intent.ACTION_BOOT_COMPLETED, Intent.ACTION_MY_PACKAGE_REPLACED)) return
+        val pending = goAsync();
+        val app = context.applicationContext as SesameApp
+        app.runtimeScope.launch {
+            try {
+                app.ble.restoreSaved(); AutoUnlockGeofenceManager.sync(context)
+            } finally {
+                pending.finish()
+            }
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/AutoUnlockMap.kt b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/AutoUnlockMap.kt
new file mode 100644
index 0000000..051a933
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/AutoUnlockMap.kt
@@ -0,0 +1,193 @@
+package co.candyhouse.app.connecteddevice
+
+import android.Manifest
+import android.annotation.SuppressLint
+import android.app.AlertDialog
+import android.content.Intent
+import android.content.pm.PackageManager
+import android.graphics.Color
+import android.graphics.RectF
+import android.net.Uri
+import android.provider.Settings
+import android.view.MotionEvent
+import android.webkit.WebView
+import android.widget.FrameLayout
+import androidx.activity.ComponentActivity
+import co.candyhouse.app.R
+import co.candyhouse.app.SesameApp
+import com.google.android.gms.location.LocationServices
+import com.google.android.gms.maps.CameraUpdateFactory
+import com.google.android.gms.maps.GoogleMap
+import com.google.android.gms.maps.MapView
+import com.google.android.gms.maps.model.BitmapDescriptorFactory
+import com.google.android.gms.maps.model.Circle
+import com.google.android.gms.maps.model.CircleOptions
+import com.google.android.gms.maps.model.LatLng
+import com.google.android.gms.maps.model.Marker
+import com.google.android.gms.maps.model.MarkerOptions
+import org.json.JSONObject
+import android.R as AndroidR
+
+/** The map is a native surface; its surrounding controls and routing belong to Biz. */
+class AutoUnlockMap(private val activity: ComponentActivity, private val container: FrameLayout, private val webView: () -> WebView, private val changed: (JSONObject) -> Unit) {
+    private val app get() = activity.application as SesameApp
+    private var view: MapView? = null
+    private var map: GoogleMap? = null
+    private val touchRect = RectF()
+    private var mapTopInset = 0
+    private var mapGesture = false
+    private var overlayWeb: WebView? = null
+    private var id: String? = null
+    private var pendingEnable = false
+    private var previewRadius: Double? = null
+    private var marker: Marker? = null
+    private var circle: Circle? = null
+    fun handle(json: JSONObject): JSONObject {
+        val operation = json.optString("operation")
+        if (operation == "close") {
+            close(); return JSONObject()
+        }
+        val uuid = json.getString("deviceUUID")
+        require(app.ble.device(uuid) != null)
+        if (operation == "open") {
+            if (id != uuid) {
+                close(); id = uuid
+                view = MapView(activity).also { v ->
+                    container.addView(v, 0); v.onCreate(null); v.onStart(); v.onResume()
+                    attachOverlay(v)
+                    v.getMapAsync { m ->
+                        if (view !== v) return@getMapAsync
+                        map = m; m.uiSettings.isMapToolbarEnabled = false
+                        m.setPadding(0, mapTopInset, 0, 0)
+                        m.setOnMapClickListener { point ->
+                            app.devicePreferences.setRegion(uuid, JSONObject().put("latitude", point.latitude).put("longitude", point.longitude))
+                            draw(); sync()
+                        }
+                        draw(true); locate()
+                    }
+                }
+            }
+            val touch = json.getJSONObject("touchRect")
+            val density = activity.resources.displayMetrics.density
+            touchRect.set(
+                (touch.getDouble("left") * density).toFloat(), (touch.getDouble("top") * density).toFloat(),
+                ((touch.getDouble("left") + touch.getDouble("width")) * density).toFloat(), ((touch.getDouble("top") + touch.getDouble("height")) * density).toFloat()
+            )
+            val rect = json.getJSONObject("rect");
+            val scale = activity.resources.displayMetrics.density
+            mapTopInset = (touchRect.top - rect.getDouble("top") * scale).toInt().coerceAtLeast(0)
+            map?.setPadding(0, mapTopInset, 0, 0)
+            view?.layoutParams = FrameLayout.LayoutParams((rect.getDouble("width") * scale).toInt(), (rect.getDouble("height") * scale).toInt()).apply {
+                leftMargin = (rect.getDouble("left") * scale).toInt(); topMargin = (rect.getDouble("top") * scale).toInt()
+            }
+        } else if (operation == "region") {
+            val radius = json.getDouble("radius")
+            require(radius.isFinite() && radius in 20.0..500.0)
+            if (json.optBoolean("commit")) {
+                app.devicePreferences.setRegion(uuid, json); previewRadius = null; draw(); sync()
+            } else {
+                previewRadius = radius; draw()
+            }
+        } else if (operation == "enable") {
+            if (!json.getBoolean("value")) {
+                pendingEnable = false; app.devicePreferences.setEnabled("nohand", uuid, false); app.devicePreferences.setEnabled("nohandg", uuid, false); sync()
+            } else if (AutoUnlockGeofenceManager.hasPermission(activity)) {
+                app.devicePreferences.setEnabled("nohand", uuid, true); sync()
+            } else {
+                pendingEnable = true
+                if (activity.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+                    activity.requestPermissions(arrayOf(Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION), 14)
+                } else showDisclosure()
+            }
+        }
+        return app.devicePreferences.snapshot(uuid)
+    }
+
+    @SuppressLint("ClickableViewAccessibility")
+    private fun attachOverlay(mapView: MapView) {
+        val web = webView()
+        overlayWeb = web
+        web.setBackgroundColor(Color.TRANSPARENT)
+        web.setOnTouchListener { _, event ->
+            if (event.actionMasked == MotionEvent.ACTION_DOWN) mapGesture = touchRect.contains(event.x, event.y)
+            if (!mapGesture) return@setOnTouchListener false
+            val forwarded = MotionEvent.obtain(event)
+            forwarded.offsetLocation(-mapView.left.toFloat(), -mapView.top.toFloat())
+            try {
+                mapView.dispatchTouchEvent(forwarded)
+            } finally {
+                forwarded.recycle()
+            }
+            if (event.actionMasked == MotionEvent.ACTION_UP || event.actionMasked == MotionEvent.ACTION_CANCEL) mapGesture = false
+            true
+        }
+    }
+
+    private fun showDisclosure() {
+        AlertDialog.Builder(activity).setTitle(R.string.auto_unlock_location_permission_title).setMessage(R.string.auto_unlock_location_permission_message)
+            .setNegativeButton(AndroidR.string.cancel) { _, _ -> pendingEnable = false }
+            .setOnCancelListener { pendingEnable = false }
+            .setPositiveButton(R.string.auto_unlock_location_permission_open_settings) { _, _ ->
+                activity.startActivity(Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, Uri.parse("package:${activity.packageName}")))
+            }.show()
+    }
+
+    fun permissionResult() {
+        if (activity.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+            pendingEnable = false; return
+        }
+        locate(); if (pendingEnable) {
+            if (AutoUnlockGeofenceManager.hasPermission(activity)) resume() else if (activity.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) showDisclosure() else pendingEnable =
+                false
+        }
+    }
+
+    fun resume() {
+        view?.onResume()
+        val uuid = id ?: return
+        if (pendingEnable && AutoUnlockGeofenceManager.hasPermission(activity)) {
+            pendingEnable = false; app.devicePreferences.setEnabled("nohand", uuid, true); sync()
+        }
+    }
+
+    fun pause() {
+        view?.onPause()
+    }
+
+    private fun sync() {
+        AutoUnlockGeofenceManager.sync(activity); SesameConnectedDeviceService.sync(activity); id?.let { changed(app.devicePreferences.snapshot(it)) }
+    }
+
+    private fun draw(move: Boolean = false) {
+        val uuid = id ?: return;
+        val m = map ?: return;
+        val data = app.devicePreferences.snapshot(uuid)
+        val point = LatLng(data.getDouble("latitude"), data.getDouble("longitude"))
+        marker?.remove(); circle?.remove()
+        marker = m.addMarker(MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.mipmap.ic_launcher_round)).anchor(0.5f, 0.5f).position(point))
+        circle = m.addCircle(CircleOptions().center(point).radius(previewRadius ?: data.getDouble("radius")).strokeWidth(0f).fillColor(0x30ff0000))
+        if (move) m.moveCamera(CameraUpdateFactory.newLatLngZoom(point, 17f))
+    }
+
+    private fun locate() {
+        if (activity.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+            activity.requestPermissions(arrayOf(Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION), 14); return
+        }
+        map?.isMyLocationEnabled = true
+        val uuid = id ?: return
+        LocationServices.getFusedLocationProviderClient(activity).lastLocation.addOnSuccessListener { location ->
+            if (id != uuid || location == null) return@addOnSuccessListener
+            val old = app.devicePreferences.snapshot(uuid)
+            if (old.getDouble("latitude") == 0.0 && old.getDouble("longitude") == 0.0) {
+                app.devicePreferences.setRegion(uuid, JSONObject().put("latitude", location.latitude).put("longitude", location.longitude)); draw(true); sync()
+            }
+        }
+    }
+
+    fun close() {
+        overlayWeb?.apply { setOnTouchListener(null); setBackgroundColor(Color.WHITE) }
+        overlayWeb = null; mapGesture = false; touchRect.setEmpty(); mapTopInset = 0
+        pendingEnable = false; previewRadius = null; view?.let { it.onPause(); it.onStop(); it.onDestroy(); container.removeView(it) }; view = null; map = null; id = null; marker =
+            null; circle = null
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/BackgroundWebRuntime.kt b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/BackgroundWebRuntime.kt
new file mode 100644
index 0000000..805f417
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/BackgroundWebRuntime.kt
@@ -0,0 +1,68 @@
+package co.candyhouse.app.connecteddevice
+
+import android.annotation.SuppressLint
+import android.graphics.Bitmap
+import android.webkit.WebResourceRequest
+import android.webkit.WebView
+import android.webkit.WebViewClient
+import co.candyhouse.app.BuildConfig
+import co.candyhouse.app.SesameApp
+import co.candyhouse.app.ble.BleRegistrationController
+import co.candyhouse.app.bridge.NativeRequestHandler
+import co.candyhouse.app.bridge.WebViewBridge
+import co.candyhouse.app.data.KeyHandoff
+import co.candyhouse.app.util.BundledWebResources
+import co.candyhouse.app.util.WebResourceSettings
+import kotlinx.coroutines.CompletableDeferred
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.SupervisorJob
+import kotlinx.coroutines.cancel
+import kotlinx.coroutines.withTimeout
+import org.json.JSONArray
+import org.json.JSONObject
+import kotlin.time.Duration.Companion.milliseconds
+
+/** Reuses Biz's authenticated WebSocket runtime while no Activity owns the cloud bridge. */
+@SuppressLint("SetJavaScriptEnabled")
+class BackgroundWebRuntime(private val app: SesameApp) {
+    private val scope = CoroutineScope(SupervisorJob() + Dispatchers.Main.immediate)
+    private val registration = BleRegistrationController(scope, {}, { byteArrayOf() }, {})
+    private val ready = CompletableDeferred<Unit>()
+    private val requests = NativeRequestHandler(
+        app, app.ble, registration, KeyHandoff(app),
+        language = { app.resources.configuration.locales[0].toLanguageTag() }, requestBle = {}, startDiscovery = {}, stopDiscovery = {},
+        registeredKey = { null }, scanQr = {}, showRoute = {}, pushInfo = { JSONObject() }, notificationSettings = {}, openWebPage = {}, openExternal = {})
+    private val bridge = WebViewBridge(BuildConfig.WEB_ORIGIN, scope) { json, reply ->
+        requests.handle(json, reply)
+        if (json.optString("action") == "home.devices") ready.complete(Unit)
+    }
+    private val observer: (JSONArray) -> Unit = { bridge.emit("snapshot", it) }
+    private val web = WebView(app)
+
+    init {
+        app.ble.observers.add(observer)
+        app.bleBackend.requestCloud = { op, body, id ->
+            withTimeout(30000.milliseconds) { ready.await() }
+            bridge.requestCloud(op, body, id)
+        }
+        web.settings.apply { javaScriptEnabled = true; domStorageEnabled = true; allowFileAccess = false; userAgentString += " SesameAndroid/1" }
+        val resources = if (WebResourceSettings.isBundled(app)) BundledWebResources(app.assets, BuildConfig.WEB_ORIGIN) else null
+        web.webViewClient = object : WebViewClient() {
+            override fun shouldOverrideUrlLoading(view: WebView, request: WebResourceRequest) = !bridge.isTrusted(request.url)
+            override fun shouldInterceptRequest(view: WebView, request: WebResourceRequest) = resources?.intercept(request)
+            override fun onPageStarted(view: WebView, url: String?, favicon: Bitmap?) {
+                bridge.reset()
+            }
+
+            override fun onPageFinished(view: WebView, url: String?) {
+                bridge.connect(view, url)
+            }
+        }
+        web.loadUrl("${BuildConfig.WEB_ORIGIN}/?appHome=1&fromType=app&background=1")
+    }
+
+    fun close() {
+        app.ble.observers.remove(observer); ready.cancel(); bridge.reset(); registration.close(); web.destroy(); scope.cancel()
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/DevicePreferences.kt b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/DevicePreferences.kt
new file mode 100644
index 0000000..04b7233
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/DevicePreferences.kt
@@ -0,0 +1,60 @@
+package co.candyhouse.app.connecteddevice
+
+import android.content.Context
+import androidx.core.app.NotificationManagerCompat
+import org.json.JSONObject
+import java.util.UUID
+
+/** Preserve the original installation's per-device preference keys. */
+class DevicePreferences(private val context: Context) {
+    private val prefs = context.getSharedPreferences("${context.packageName}_preferences", Context.MODE_PRIVATE)
+    private fun id(value: String) = UUID.fromString(value).toString()
+    fun enabled(prefix: String, uuid: String) = prefs.getBoolean(prefix + id(uuid), false)
+    fun setEnabled(prefix: String, uuid: String, value: Boolean) {
+        prefs.edit().putBoolean(prefix + id(uuid), value).apply()
+    }
+
+    fun nfc(uuid: String) = prefs.getString("nfc" + id(uuid), "") ?: ""
+    fun setNfc(uuid: String, value: String?) {
+        prefs.edit().putString("nfc" + id(uuid), value).apply()
+    }
+
+    fun snapshot(uuid: String) = JSONObject().apply {
+        val key = id(uuid)
+        put("nfc", nfc(uuid)); put("widget", enabled("wid", uuid)); put("autoUnlock", enabled("nohand", uuid))
+        put("latitude", prefs.getFloat("getNOHandLeft$key", 0f).toDouble())
+        put("longitude", prefs.getFloat("getNOHandRight$key", 0f).toDouble())
+        put("radius", prefs.getFloat("getNOHandRadius$key", 150f).coerceIn(20f, 500f).toDouble())
+        put("notificationsEnabled", NotificationManagerCompat.from(context).areNotificationsEnabled())
+    }
+
+    fun setRegion(uuid: String, data: JSONObject) {
+        val key = id(uuid);
+        val edit = prefs.edit()
+        if (data.has("latitude")) {
+            val value = data.getDouble("latitude"); require(value.isFinite() && value in -90.0..90.0); edit.putFloat("getNOHandLeft$key", value.toFloat())
+        }
+        if (data.has("longitude")) {
+            val value = data.getDouble("longitude"); require(value.isFinite() && value in -180.0..180.0); edit.putFloat("getNOHandRight$key", value.toFloat())
+        }
+        if (data.has("radius")) {
+            val value = data.getDouble("radius"); require(value.isFinite() && value in 20.0..500.0); edit.putFloat("getNOHandRadius$key", value.toFloat())
+        }
+        edit.apply()
+    }
+
+    fun clear(uuid: String) {
+        val key = id(uuid);
+        val edit = prefs.edit(); listOf(
+            "wid",
+            "nohand",
+            "nohandg",
+            "nfc",
+            "getNOHandLeft",
+            "getNOHandRight",
+            "getNOHandRadius",
+            "l",
+            ""
+        ).forEach { edit.remove(it + key) }; edit.apply()
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/SesameConnectedDeviceService.kt b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/SesameConnectedDeviceService.kt
new file mode 100644
index 0000000..091f143
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/connecteddevice/SesameConnectedDeviceService.kt
@@ -0,0 +1,272 @@
+package co.candyhouse.app.connecteddevice
+
+import android.app.Notification
+import android.app.NotificationChannel
+import android.app.NotificationManager
+import android.app.PendingIntent
+import android.app.Service
+import android.bluetooth.BluetoothAdapter
+import android.content.BroadcastReceiver
+import android.content.Context
+import android.content.Intent
+import android.content.IntentFilter
+import android.content.res.Configuration
+import android.graphics.Color
+import android.net.ConnectivityManager
+import android.net.Network
+import android.net.NetworkCapabilities
+import android.os.Build
+import android.os.IBinder
+import android.view.View
+import android.widget.RemoteViews
+import androidx.core.app.NotificationCompat
+import androidx.core.app.NotificationManagerCompat
+import androidx.core.content.ContextCompat
+import co.candyhouse.app.R
+import co.candyhouse.app.SesameActivity
+import co.candyhouse.app.SesameApp
+import co.candyhouse.app.ble.LockSettings
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.os2.bot.CHSesameBot
+import co.candyhouse.sesame.ble.os3.bot2.CHSesameBot2
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.L
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.SupervisorJob
+import kotlinx.coroutines.cancel
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withTimeout
+import org.json.JSONArray
+import org.json.JSONObject
+import kotlin.time.Duration.Companion.milliseconds
+
+class SesameConnectedDeviceService : Service() {
+    private val app get() = application as SesameApp
+    private val scope = CoroutineScope(SupervisorJob() + Dispatchers.Main.immediate)
+    private val shown = mutableSetOf<Int>()
+    private var updates: Job? = null
+    private var pendingCommands = 0
+    private var widgetChannel = CHANNEL
+    private val network by lazy { getSystemService(ConnectivityManager::class.java) }
+    private val networkCallback = object : ConnectivityManager.NetworkCallback() {
+        override fun onAvailable(network: Network) {
+            scope.launch { refresh() }
+        }
+
+        override fun onLost(network: Network) {
+            scope.launch { refresh() }
+        }
+
+        override fun onCapabilitiesChanged(network: Network, caps: NetworkCapabilities) {
+            scope.launch { refresh() }
+        }
+    }
+    private val observer: (JSONArray) -> Unit = { refresh() }
+    private val bluetooth = object : BroadcastReceiver() {
+        override fun onReceive(context: Context, intent: Intent) {
+            if (intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1) == BluetoothAdapter.STATE_ON) app.ble.startBackground(); refresh()
+        }
+    }
+
+    override fun onBind(intent: Intent?): IBinder? = null
+    override fun onCreate() {
+        super.onCreate(); live = this
+        if (Build.VERSION.SDK_INT >= 26) {
+            val manager = getSystemService(NotificationManager::class.java)
+            val oldChannel = manager.getNotificationChannel(CHANNEL)
+            // Early H5 builds created www as LOW. Android cannot raise an existing channel's importance.
+            // Keep user-selected settings; only migrate the unchanged, incorrectly created channel.
+            if (manager.getNotificationChannel(WIDGET_CHANNEL) != null ||
+                (Build.VERSION.SDK_INT >= 29 && oldChannel?.importance == NotificationManager.IMPORTANCE_LOW && !oldChannel.hasUserSetImportance())
+            ) widgetChannel = WIDGET_CHANNEL
+            manager.createNotificationChannel(NotificationChannel(widgetChannel, "sesame widget", NotificationManager.IMPORTANCE_HIGH).apply {
+                description = "sesame_widget"
+                enableVibration(true)
+                lockscreenVisibility = Notification.VISIBILITY_SECRET
+            })
+            manager.createNotificationChannel(NotificationChannel(SERVICE_CHANNEL, getString(R.string.sesame_widget), NotificationManager.IMPORTANCE_LOW))
+        }
+        network.registerDefaultNetworkCallback(networkCallback)
+        app.ble.observers.add(observer)
+        ContextCompat.registerReceiver(this, bluetooth, IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED), ContextCompat.RECEIVER_EXPORTED)
+    }
+
+    override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
+        try {
+            startForeground(
+                SERVICE_ID,
+                NotificationCompat.Builder(this, SERVICE_CHANNEL).setSmallIcon(R.drawable.ic_notification).setContentTitle(getString(R.string.Sesame)).setContentText(
+                    getString(
+                        if (app.ble.allDevices()
+                                .any { app.devicePreferences.enabled("wid", it.deviceId.toString()) }
+                        ) R.string.sesame_widget else R.string.auto_unlock_service_notification
+                    )
+                ).setOngoing(true).setSilent(true).setOnlyAlertOnce(true).setPriority(NotificationCompat.PRIORITY_LOW).build()
+            )
+        } catch (e: RuntimeException) {
+            L.e("SesameWidget", "Unable to start connected service", e); stopSelf(); return START_NOT_STICKY
+        }
+        scope.launch {
+            app.ble.restoreSaved(); app.ensureBackgroundWeb(); app.ble.startBackground()
+            val id = intent?.getStringExtra("deviceUUID");
+            val action = intent?.getStringExtra("operation")
+            if (action != null) {
+                val targets =
+                    app.ble.allDevices().filter { (id == null && app.devicePreferences.enabled("wid", it.deviceId.toString())) || it.deviceId.toString().equals(id, true) }
+                targets.forEach { device -> launch { command(device.deviceId.toString(), action) } }
+            }
+            refresh()
+        }
+        return START_STICKY
+    }
+
+    private suspend fun command(id: String, operation: String) {
+        pendingCommands++
+        try {
+            withTimeout(30000.milliseconds) {
+                runCatching {
+                    val device = requireNotNull(app.ble.device(id))
+                    if (device.deviceStatus.value == CHDeviceLoginStatus.logined) {
+                        LockSettings.awaitResult<CHEmpty> { result ->
+                            app.ble.handle("home.command", JSONObject().put("deviceUUID", id).put("operation", operation)) { ok, error ->
+                                if (ok) result(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+                                else result(Result.failure(IllegalStateException(error)))
+                            }
+                        }
+                    } else requireNotNull(app.bleBackend.requestCloud)("widgetCommand", JSONObject().put("operation", operation), id)
+                }.onFailure { L.e("SesameWidget", "Command failed device=$id", it) }
+            }
+        } finally {
+            pendingCommands--; refresh()
+        }
+    }
+
+    private fun refresh() {
+        val devices = app.ble.allDevices()
+        devices.filter {
+            app.devicePreferences.enabled("nohand", it.deviceId.toString()) && app.devicePreferences.enabled(
+                "nohandg",
+                it.deviceId.toString()
+            ) && it.deviceStatus.value == CHDeviceLoginStatus.logined && it.rssi != null
+        }.forEach { device ->
+            val id = device.deviceId.toString(); app.devicePreferences.setEnabled("nohandg", id, false)
+            if (device.deviceStatus != CHDeviceStatus.Unlocked) scope.launch { command(id, "unlock") }
+        }
+        if (updates?.isActive == true) return
+        updates = scope.launch {
+            delay(300.milliseconds)
+            val widgets = app.ble.allDevices().filter { it is CHSesameLock && app.devicePreferences.enabled("wid", it.deviceId.toString()) }
+            val manager = NotificationManagerCompat.from(this@SesameConnectedDeviceService)
+            val expected = widgets.map { it.deviceId.hashCode() }.toMutableSet().apply { if (widgets.size > 1) add(ALL_ID) }
+            (shown - expected).forEach { manager.cancel(it); shown.remove(it) }
+            if (manager.areNotificationsEnabled()) {
+                widgets.forEach { device ->
+                    manager.notify(device.deviceId.hashCode(), notification(device)); shown.add(device.deviceId.hashCode()); delay(300.milliseconds)
+                }
+                if (widgets.size > 1) {
+                    manager.notify(ALL_ID, allNotification()); shown.add(ALL_ID)
+                }
+            }
+            val armed =
+                app.ble.allDevices().any { app.devicePreferences.enabled("nohand", it.deviceId.toString()) && app.devicePreferences.enabled("nohandg", it.deviceId.toString()) }
+            if ((!manager.areNotificationsEnabled() || widgets.isEmpty()) && !armed && pendingCommands == 0) stopSelf()
+        }
+    }
+
+    private fun action(id: String?, operation: String): PendingIntent {
+        val intent = Intent(this, SesameConnectedDeviceService::class.java).setAction("$id:$operation").putExtra("operation", operation).putExtra("deviceUUID", id)
+        return PendingIntent.getService(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE)
+    }
+
+    private fun builder() =
+        NotificationCompat.Builder(this, widgetChannel).setSmallIcon(R.drawable.ic_notification).setStyle(NotificationCompat.DecoratedCustomViewStyle()).setOngoing(true)
+            .setOnlyAlertOnce(true)
+            .setContentIntent(PendingIntent.getActivity(this, 0, Intent(this, SesameActivity::class.java), PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE))
+
+    private fun notification(device: CHDevices): Notification {
+        val id = device.deviceId.toString()
+        val cloud = (0 until app.ble.cloudRows.length()).map { app.ble.cloudRows.getJSONObject(it) }.firstOrNull { it.optString("deviceUUID").equals(id, true) }
+        val connected = device.deviceStatus.value == CHDeviceLoginStatus.logined
+        val online = network.getNetworkCapabilities(network.activeNetwork)?.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED) == true && cloud?.optJSONObject("stateInfo")
+            ?.optBoolean("wm2State") == true
+        val status = if (connected) device.deviceStatus.name.lowercase() else if (online) cloud?.optJSONObject("stateInfo")
+            ?.optString("CHSesame2Status") else device.deviceStatus.name.lowercase()
+        val icon = if (device is CHSesameBot || device is CHSesameBot2) when (status) {
+            "locked", "unlocked", "moved" -> R.drawable.swtich_unlocked
+            "receivedadv", "bleconnecting" -> R.drawable.swtich_receive_ble
+            "discoverservices", "waitingforauth" -> R.drawable.swtich_waitgatt
+            "blelogining", "registering" -> R.drawable.swtich_logining
+            else -> R.drawable.swtich_no_ble
+        } else when (status) {
+            "locked" -> R.drawable.icon_lock
+            "unlocked", "moved" -> R.drawable.icon_unlock
+            "receivedadv", "bleconnecting" -> R.drawable.icon_receiveblee
+            "discoverservices", "waitingforauth" -> R.drawable.icon_waitgatt
+            "blelogining", "registering" -> R.drawable.icon_logining
+            "nosettings" -> R.drawable.icon_nosetting
+            else -> R.drawable.icon_nosignal
+        }
+        val views = RemoteViews(packageName, R.layout.cell_weget_unlock).apply {
+            setTextViewText(R.id.title, cloud?.optString("deviceName") ?: app.ble.deviceName(device))
+            setImageViewResource(R.id.toggle, icon)
+            setTextColor(
+                R.id.title,
+                if (resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES) Color.WHITE else Color.BLACK
+            )
+            setOnClickPendingIntent(R.id.toggle, action(id, "toggle"))
+            setImageViewResource(R.id.bl_img, if (connected) R.drawable.ic_bluetooth else R.drawable.ic_bluetooth_grey)
+            setImageViewResource(R.id.wifi_img, if (online) R.drawable.ic_wifi_blue else R.drawable.ic_wifi_grey)
+            setImageViewResource(R.id.hand_img, if (app.devicePreferences.enabled("nohandg", id)) R.drawable.ic_autounlock_active else R.drawable.ic_autounlock)
+            setViewVisibility(R.id.hand_img, if (app.devicePreferences.enabled("nohand", id)) View.VISIBLE else View.GONE)
+        }
+        return builder().setCustomContentView(views).setCustomBigContentView(views).build()
+    }
+
+    private fun allNotification(): Notification {
+        val views = RemoteViews(packageName, R.layout.cell_weget).apply {
+            setOnClickPendingIntent(R.id.lock_all, action(null, "lock")); setOnClickPendingIntent(
+            R.id.unlock_all,
+            action(null, "unlock")
+        )
+        }
+        return builder().setCustomContentView(views).build()
+    }
+
+    override fun onDestroy() {
+        live = null; app.ble.observers.remove(observer); app.ble.stopBackground(); unregisterReceiver(bluetooth); network.unregisterNetworkCallback(networkCallback)
+        shown.forEach { NotificationManagerCompat.from(this).cancel(it) }; app.stopBackgroundWeb()
+        if (!app.activityPresent) app.ble.close()
+        scope.cancel(); super.onDestroy()
+    }
+
+    companion object {
+        private const val CHANNEL = "www"
+        private const val WIDGET_CHANNEL = "SesameLockWidgetChannel"
+        private const val SERVICE_CHANNEL = "SesameConnectedDeviceChannel"
+        private const val SERVICE_ID = 9011
+        private const val ALL_ID = 9012
+        var live: SesameConnectedDeviceService? = null; private set
+        fun sync(context: Context) {
+            val app = context.applicationContext as SesameApp
+            val needed = app.ble.allDevices().any {
+                val id = it.deviceId.toString(); (app.devicePreferences.enabled("wid", id) && NotificationManagerCompat.from(context)
+                .areNotificationsEnabled()) || (app.devicePreferences.enabled("nohand", id) && app.devicePreferences.enabled("nohandg", id))
+            }
+            if (!needed) {
+                context.stopService(Intent(context, SesameConnectedDeviceService::class.java)); return
+            }
+            try {
+                ContextCompat.startForegroundService(context, Intent(context, SesameConnectedDeviceService::class.java))
+            } catch (e: RuntimeException) {
+                L.e("SesameWidget", "Connected service unavailable", e)
+            }
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/data/BleBackend.kt b/sesameApp/src/main/java/co/candyhouse/app/data/BleBackend.kt
new file mode 100644
index 0000000..f51eb19
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/data/BleBackend.kt
@@ -0,0 +1,79 @@
+package co.candyhouse.app.data
+
+import android.content.Context
+import android.net.ConnectivityManager
+import android.net.NetworkCapabilities
+import co.candyhouse.sesame.ble.CHBleHost
+import co.candyhouse.sesame.ble.CHRegistrationResult
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.L
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.SupervisorJob
+import kotlinx.coroutines.launch
+import org.json.JSONObject
+import java.util.UUID
+
+/** BLE server handshakes are delegated to the trusted Biz page, which owns cloud transport. */
+class BleBackend(private val context: Context) : CHBleHost {
+    private val scope = CoroutineScope(SupervisorJob() + Dispatchers.IO)
+
+    @Volatile
+    var gatewayDevices: Set<String> = emptySet()
+    override fun isNetworkAvailable(): Boolean {
+        val manager = context.getSystemService(ConnectivityManager::class.java)
+        return manager.getNetworkCapabilities(manager.activeNetwork)
+            ?.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) == true
+    }
+
+    override fun shouldUploadHistory(deviceId: String) = deviceId.uppercase() !in gatewayDevices
+    private fun id(value: String) = value.also { UUID.fromString(it) }
+
+    @Volatile
+    var requestCloud: (suspend (String, JSONObject, String?) -> Any?)? = null
+
+    private fun <T> request(operation: String, body: JSONObject, result: CHResult<T>, deviceId: String? = null, decode: (Any?) -> T) {
+        val transport = requestCloud
+        scope.launch {
+            result(runCatching {
+                checkNotNull(transport) { "Web page unavailable" }
+                CHResultState.CHResultStateNetworks(decode(transport(operation, body, deviceId)))
+            })
+        }
+    }
+
+    override fun signGuestKey(deviceId: String, token: String, secretKey: String, onResponse: CHResult<String>) =
+        request("signGuestKey", JSONObject().put("deviceId", deviceId).put("token", token).put("secretKey", secretKey), onResponse) {
+            it as String
+        }
+
+    override fun updateDeviceFirmwareVersion(deviceUUID: String, versionTag: String, onResponse: CHResult<Any>) =
+        request<Any>("firmware", JSONObject().put("versionTag", versionTag), { result ->
+            L.d("SesameFirmware", "version upload ${if (result.isSuccess) "success" else "failed"} device=$deviceUUID")
+            onResponse(result)
+        }, id(deviceUUID)) { Unit }
+
+    override fun postSS2History(deviceID: String, hisHex: String, onResponse: CHResult<Any>) =
+        request("history", JSONObject().put("s", deviceID).put("v", hisHex), onResponse) { Unit }
+
+    override fun postOS3History(deviceID: String, hisHex: String, onResponse: CHResult<Any>) =
+        request("history", JSONObject().put("s", deviceID).put("v", hisHex).put("t", "5"), onResponse) { Unit }
+
+    override fun postBatteryData(deviceID: String, payloadString: String, onResponse: CHResult<Any>) =
+        request("battery", JSONObject().put("payload", payloadString), onResponse, id(deviceID)) { Unit }
+
+    override fun registerOs2(deviceId: String, appKey: String, nonce: String, registrationKey: String, productType: String, onResponse: CHResult<CHRegistrationResult>) =
+        request(
+            "registerOs2", JSONObject().put(
+                "s1", JSONObject()
+                    .put("ak", appKey).put("n", nonce).put("e", registrationKey).put("t", productType)
+            ), onResponse, id(deviceId)
+        ) {
+            val response = it as JSONObject
+            CHRegistrationResult(response.getString("sig1"), response.getString("st"), response.getString("pubkey"))
+        }
+
+    override fun registerOs3(deviceId: String, productType: String, publicKey: String, onResponse: CHResult<Any>) =
+        request("registerOs3", JSONObject().put("t", productType).put("pk", publicKey), onResponse, id(deviceId)) { Unit }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/data/KeyHandoff.kt b/sesameApp/src/main/java/co/candyhouse/app/data/KeyHandoff.kt
new file mode 100644
index 0000000..d0e5e7f
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/data/KeyHandoff.kt
@@ -0,0 +1,40 @@
+package co.candyhouse.app.data
+
+import android.content.Context
+import androidx.core.content.edit
+import co.candyhouse.app.data.local.DeviceKeyDatabase
+import co.candyhouse.sesame.ble.CHDevice
+import kotlinx.coroutines.suspendCancellableCoroutine
+
+/** Unsent guest/registration keys survive refresh and failed web uploads. */
+class KeyHandoff(context: Context) {
+    private val preferences = context.getSharedPreferences("key_handoff", 0)
+    private val legacy = context.getSharedPreferences("${context.packageName}_preferences", 0)
+    suspend fun initialize(hasLegacyUser: Boolean) {
+        if (preferences.getBoolean("initialized", false)) return
+        val keys = all()
+        preferences.edit {
+            putBoolean("initialized", true)
+                .putStringSet("pending", if (hasLegacyUser) emptySet() else keys.map { it.deviceUUID.lowercase() }.toSet())
+        }
+    }
+
+    @Synchronized
+    fun add(key: CHDevice) {
+        preferences.edit { putStringSet("pending", pendingIds() + key.deviceUUID.lowercase()) }
+    }
+
+    @Synchronized
+    fun acknowledge(id: String) {
+        preferences.edit { putStringSet("pending", pendingIds() - id.lowercase()) }
+    }
+
+    private fun pendingIds() = preferences.getStringSet("pending", emptySet()).orEmpty().toSet()
+    suspend fun pending() = all().filter { it.deviceUUID.lowercase() in pendingIds() }
+    suspend fun key(id: String) = all().first { it.deviceUUID.equals(id, ignoreCase = true) }
+    fun name(key: CHDevice) = legacy.getString(key.deviceUUID.lowercase(), key.deviceModel) ?: key.deviceModel
+    fun level(key: CHDevice) = legacy.getInt("l${key.deviceUUID.lowercase()}", 0)
+    private suspend fun all(): List<CHDevice> = suspendCancellableCoroutine { continuation ->
+        DeviceKeyDatabase.Keys.getAllDB { if (continuation.isActive) continuation.resumeWith(it) }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/data/auth/LegacySession.kt b/sesameApp/src/main/java/co/candyhouse/app/data/auth/LegacySession.kt
new file mode 100644
index 0000000..040fa11
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/data/auth/LegacySession.kt
@@ -0,0 +1,97 @@
+package co.candyhouse.app.data.auth
+
+import android.annotation.SuppressLint
+import android.content.Context
+import androidx.core.content.edit
+import co.candyhouse.app.BuildConfig
+import co.candyhouse.app.util.AppIdentity
+import com.amplifyframework.auth.cognito.AWSCognitoAuthPlugin
+import com.amplifyframework.auth.cognito.AWSCognitoAuthSession
+import com.amplifyframework.core.AmplifyConfiguration
+import com.amplifyframework.kotlin.core.Amplify
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.sync.Mutex
+import kotlinx.coroutines.sync.withLock
+import kotlinx.coroutines.withContext
+import org.json.JSONObject
+import com.amplifyframework.core.Amplify as CoreAmplify
+
+/** Existing Cognito storage is retained only for upgrade-session handoff. */
+@SuppressLint("StaticFieldLeak")
+object LegacySession {
+    private lateinit var context: Context
+    private val configurationLock = Mutex()
+    private var configured = false
+
+    fun initialize(context: Context) {
+        this.context = context.applicationContext
+    }
+
+    private suspend fun ensureConfigured() = withContext(Dispatchers.IO) {
+        configurationLock.withLock {
+            if (!configured) {
+                CoreAmplify.addPlugin(AWSCognitoAuthPlugin())
+                CoreAmplify.configure(AmplifyConfiguration.fromJson(configuration()), context)
+                configured = true
+            }
+        }
+    }
+
+    fun retired() = context.getSharedPreferences("web_session", 0).getBoolean("retired", false)
+
+    suspend fun token(): String? {
+        if (retired()) return null
+        ensureConfigured()
+        if (retired()) return null
+        val session = Amplify.Auth.fetchAuthSession() as AWSCognitoAuthSession
+        return if (!retired() && session.isSignedIn) requireNotNull(session.userPoolTokensResult.value?.idToken) { "User session unavailable" } else null
+    }
+
+    fun guestIdentityId(): String = AppIdentity.get(context)
+
+    suspend fun retire() {
+        context.getSharedPreferences("web_session", 0).edit { putBoolean("retired", true) }
+        ensureConfigured()
+        Amplify.Auth.signOut()
+    }
+
+    private fun configuration(): JSONObject {
+        return JSONObject(
+            """
+                {
+                  "Version": "1.0",
+                  "auth": {
+                    "plugins": {
+                      "awsCognitoAuthPlugin": {
+                        "IdentityManager": {
+                          "Default": {}
+                        },
+                        "CredentialsProvider": {
+                          "CognitoIdentity": {
+                            "Default": {
+                              "PoolId": "${BuildConfig.AWS_IDENTITY_POOL_ID}",
+                              "Region": "ap-northeast-1"
+                            }
+                          }
+                        },
+                        "CognitoUserPool": {
+                          "Default": {
+                            "PoolId": "${BuildConfig.AWS_USER_POOL_ID}",
+                            "AppClientId": "${BuildConfig.AWS_APP_CLIENT_ID}",
+                            "Region": "ap-northeast-1"
+                          }
+                        },
+                        "Auth": {
+                          "Default": {
+                            "authenticationFlowType": "CUSTOM_AUTH"
+                          }
+                        }
+                      }
+                    }
+                  }
+                }
+                """.trimIndent()
+        )
+    }
+
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/data/local/DeviceKeyDatabase.kt b/sesameApp/src/main/java/co/candyhouse/app/data/local/DeviceKeyDatabase.kt
new file mode 100644
index 0000000..099d7ca
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/data/local/DeviceKeyDatabase.kt
@@ -0,0 +1,71 @@
+package co.candyhouse.app.data.local
+
+import android.annotation.SuppressLint
+import android.content.Context
+import androidx.room.Dao
+import androidx.room.Database
+import androidx.room.Insert
+import androidx.room.OnConflictStrategy
+import androidx.room.Query
+import androidx.room.Room
+import androidx.room.RoomDatabase
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHKeyPersistence
+import co.candyhouse.sesame.utils.HttpResponseCallback
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.SupervisorJob
+import kotlinx.coroutines.launch
+import java.util.UUID
+
+@Database(entities = [DeviceKeyEntity::class], version = 29, exportSchema = false)
+internal abstract class DeviceKeyDatabase : RoomDatabase() {
+    abstract fun deviceDao(): DeviceKeyDao
+
+    companion object {
+        @SuppressLint("StaticFieldLeak")
+        @Volatile
+        private var instance: DeviceKeyDatabase? = null
+
+        @SuppressLint("StaticFieldLeak")
+        lateinit var context: Context
+        private fun database(): DeviceKeyDatabase = instance ?: synchronized(this) {
+            instance ?: Room.databaseBuilder(context, DeviceKeyDatabase::class.java, "word_database")
+                .build().also { instance = it }
+        }
+    }
+
+    object Keys : CHKeyPersistence {
+        private val scope = CoroutineScope(Dispatchers.IO + SupervisorJob())
+        private val dao get() = database().deviceDao()
+        fun getAllDB(onResponse: HttpResponseCallback<List<CHDevice>>) {
+            scope.launch { onResponse(runCatching { dao.getAll().map { it.toKey() } }) }
+        }
+
+        override fun insert(device: CHDevice, onResponse: HttpResponseCallback<String>) {
+            scope.launch {
+                onResponse(runCatching {
+                    UUID.fromString(device.deviceUUID)
+                    dao.insert(DeviceKeyEntity.from(device.copy(deviceUUID = device.deviceUUID.lowercase())))
+                    ""
+                })
+            }
+        }
+
+        override fun deleteByDeviceId(deviceId: String, onResponse: HttpResponseCallback<Int>) {
+            scope.launch { onResponse(runCatching { dao.deleteByUUID(deviceId.lowercase()) }) }
+        }
+    }
+}
+
+@Dao
+internal interface DeviceKeyDao {
+    @Insert(onConflict = OnConflictStrategy.REPLACE)
+    suspend fun insert(device: DeviceKeyEntity)
+
+    @Query("SELECT * FROM CHDevice")
+    suspend fun getAll(): List<DeviceKeyEntity>
+
+    @Query("DELETE FROM CHDevice WHERE deviceUUID = :uuid")
+    suspend fun deleteByUUID(uuid: String): Int
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/data/local/DeviceKeyEntity.kt b/sesameApp/src/main/java/co/candyhouse/app/data/local/DeviceKeyEntity.kt
new file mode 100644
index 0000000..d31b1be
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/data/local/DeviceKeyEntity.kt
@@ -0,0 +1,24 @@
+package co.candyhouse.app.data.local
+
+import androidx.room.Entity
+import androidx.room.PrimaryKey
+import co.candyhouse.sesame.ble.CHDevice
+
+@Entity(tableName = "CHDevice")
+internal data class DeviceKeyEntity(
+    @PrimaryKey val deviceUUID: String,
+    val deviceModel: String,
+    val historyTag: ByteArray?,
+    val keyIndex: String,
+    val secretKey: String,
+    val sesame2PublicKey: String
+) {
+    fun toKey() = CHDevice(deviceUUID, deviceModel, historyTag, keyIndex, secretKey, sesame2PublicKey)
+
+    companion object {
+        fun from(key: CHDevice) = DeviceKeyEntity(
+            key.deviceUUID, key.deviceModel, key.historyTag,
+            key.keyIndex, key.secretKey, key.sesame2PublicKey
+        )
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/internal/InternalTestBottomSheet.kt b/sesameApp/src/main/java/co/candyhouse/app/internal/InternalTestBottomSheet.kt
new file mode 100644
index 0000000..c0eb728
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/internal/InternalTestBottomSheet.kt
@@ -0,0 +1,240 @@
+package co.candyhouse.app.internal
+
+import android.app.Dialog
+import android.content.Context
+import android.content.res.ColorStateList
+import android.graphics.Color
+import android.os.SystemClock
+import android.view.Gravity
+import android.view.LayoutInflater
+import android.view.View
+import android.view.Window
+import android.view.WindowManager
+import android.widget.Button
+import android.widget.LinearLayout
+import android.widget.RadioButton
+import android.widget.Switch
+import android.widget.TextView
+import androidx.core.graphics.drawable.toDrawable
+import androidx.core.view.ViewCompat
+import androidx.core.view.WindowInsetsCompat
+import co.candyhouse.app.R
+import co.candyhouse.app.SesameApp
+import co.candyhouse.app.ble.BleController
+import co.candyhouse.app.util.WebResourceSettings
+import co.candyhouse.app.util.dp
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceStatusDelegate
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.os3.bot2.CHSesameBot2
+import co.candyhouse.sesame.ble.os3.sesame5.CHSesame5
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.isActive
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.yield
+import kotlin.time.Duration.Companion.milliseconds
+
+/** Native-only internal stress test. Keeps the existing counter and per-lock interval preferences. */
+class InternalTestBottomSheet(context: Context, private val scope: CoroutineScope, private val ble: BleController) : Dialog(context) {
+    private val prefs = context.getSharedPreferences("lock_toggle_test_prefs", Context.MODE_PRIVATE)
+    private val locks = ble.testDevices().filter { testActionFor(it) != null }
+    private var selected = locks.find { it.deviceId.toString() == prefs.getString("selected_id", null) } ?: locks.firstOrNull()
+    private var count = prefs.getInt("toggle_count", 0)
+    private var job: Job? = null
+    private var testSessionId = 0
+    private var previous: CHDeviceStatusDelegate? = null
+    private var testDelegate: CHDeviceStatusDelegate? = null
+    private val content = LayoutInflater.from(context).inflate(R.layout.view_internal_test, null)
+    private val stats = content.findViewById<TextView>(R.id.tvStats)
+    private val subtitle = content.findViewById<TextView>(R.id.tvSubtitle)
+    private val options = content.findViewById<LinearLayout>(R.id.lockRows)
+    private val start = content.findViewById<Button>(R.id.btnStart)
+    private val stop = content.findViewById<Button>(R.id.btnStop)
+    private val reset = content.findViewById<Button>(R.id.btnReset)
+
+    init {
+        requestWindowFeature(Window.FEATURE_NO_TITLE)
+        content.setBackgroundResource(R.drawable.bg_bottom_sheet_rounded)
+        content.clipToOutline = true
+        ViewCompat.setOnApplyWindowInsetsListener(content) { view, insets ->
+            val safe = insets.getInsets(WindowInsetsCompat.Type.navigationBars() or WindowInsetsCompat.Type.displayCutout())
+            view.setPadding(context.dp(16) + safe.left, context.dp(12), context.dp(16) + safe.right, context.dp(24) + safe.bottom)
+            insets
+        }
+        setContentView(content)
+        content.findViewById<View>(R.id.btnClose).setOnClickListener { dismiss() }
+        start.setOnClickListener { startTest() }
+        stop.setOnClickListener { stopTest() }
+        reset.setOnClickListener {
+            if (job == null) {
+                count = 0
+                prefs.edit().apply { putInt("toggle_count", 0); remove("selected_id"); locks.forEach { remove("interval_${it.deviceId}") } }.apply()
+                selected = locks.firstOrNull(); render()
+            }
+        }
+        val firmware = context.getSharedPreferences("firmware_dir_prefs", Context.MODE_PRIVATE)
+        fun showFirmware(prod: Boolean) {
+            content.findViewById<TextView>(R.id.tvFirmwareProd).alpha = if (prod) 1f else 0.45f
+            content.findViewById<TextView>(R.id.tvFirmwareDev).alpha = if (prod) 0.45f else 1f
+        }
+        content.findViewById<Switch>(R.id.switchFirmwareDir).apply {
+            isChecked = firmware.getString("firmware_dir", "prod") == "prod"
+            showFirmware(isChecked)
+            thumbTintList = ColorStateList.valueOf(0xff28aeb1.toInt())
+            trackTintList = ColorStateList.valueOf(0xffbfe8e9.toInt())
+            setOnCheckedChangeListener { _, checked ->
+                firmware.edit().putString("firmware_dir", if (checked) "prod" else "dev").apply()
+                showFirmware(checked)
+            }
+        }
+        fun showWebResources(bundled: Boolean) {
+            content.findViewById<TextView>(R.id.tvWebOffline).alpha = if (bundled) 1f else 0.45f
+            content.findViewById<TextView>(R.id.tvWebOnline).alpha = if (bundled) 0.45f else 1f
+        }
+        content.findViewById<Switch>(R.id.switchWebResources).apply {
+            isChecked = WebResourceSettings.isBundled(context)
+            showWebResources(isChecked)
+            thumbTintList = ColorStateList.valueOf(0xff28aeb1.toInt())
+            trackTintList = ColorStateList.valueOf(0xffbfe8e9.toInt())
+            setOnCheckedChangeListener { _, checked ->
+                WebResourceSettings.setBundled(context, checked)
+                showWebResources(checked)
+            }
+        }
+        content.findViewById<TextView>(R.id.appIdentifyId).apply {
+            text = (context.applicationContext as SesameApp).subscriptionManager.installationId
+            setTextIsSelectable(true)
+        }
+        render()
+    }
+
+    override fun show() {
+        super.show()
+        ViewCompat.requestApplyInsets(content)
+        window?.apply {
+            setBackgroundDrawable(Color.TRANSPARENT.toDrawable())
+            setDimAmount(0.35f)
+            addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND)
+            setGravity(Gravity.BOTTOM)
+            setLayout(-1, context.resources.displayMetrics.heightPixels - context.dp(40))
+        }
+    }
+
+    private fun interval(device: CHDevices) = prefs.getInt("interval_${device.deviceId}", 1).coerceAtLeast(1)
+
+    private fun render() {
+        val running = job != null
+        subtitle.text = "${selected?.let(ble::deviceName) ?: "未选择"}, ${selected?.let(::interval) ?: 1}s toggle"
+        stats.text = "开关锁次数: $count 次"
+        options.removeAllViews()
+        locks.forEach { device ->
+            val row = LayoutInflater.from(context).inflate(R.layout.item_lock_single_select, options, false)
+            val chosen = selected === device
+            val radio = row.findViewById<RadioButton>(R.id.rbSelected)
+            radio.isChecked = chosen; radio.isEnabled = !running
+            row.findViewById<TextView>(R.id.tvName).text = ble.deviceName(device)
+            row.findViewById<TextView>(R.id.tvSec).apply {
+                text = "${interval(device)}s"; visibility = if (chosen) View.VISIBLE else View.INVISIBLE
+            }
+            fun select() {
+                if (!running) {
+                    if (selected !== device) {
+                        count = 0
+                        prefs.edit().putInt("toggle_count", 0).apply()
+                    }
+                    selected = device; prefs.edit().putString("selected_id", device.deviceId.toString()).apply(); render()
+                }
+            }
+            radio.setOnClickListener { select() }; row.setOnClickListener { select() }
+            row.alpha = if (running) 0.6f else 1f
+            listOf(R.id.btnMinus to -1, R.id.btnPlus to 1).forEach { (id, delta) ->
+                row.findViewById<Button>(id).apply {
+                    isEnabled = !running && chosen; alpha = if (isEnabled) 1f else 0.3f
+                    setOnClickListener {
+                        prefs.edit().putInt("interval_${device.deviceId}", (interval(device) + delta).coerceAtLeast(1)).apply(); render()
+                    }
+                }
+            }
+            options.addView(row)
+        }
+        start.isEnabled = !running; stop.isEnabled = running; reset.isEnabled = !running
+        start.alpha = if (running) 0.5f else 1f
+        stop.alpha = if (running) 1f else 0.5f
+        reset.alpha = if (running) 0.5f else 1f
+    }
+
+    private class TestAction(
+        val countOnStatusChange: Boolean,
+        val run: (ByteArray?, () -> Unit) -> Unit
+    )
+
+    private fun testActionFor(device: CHDevices): TestAction? = when (device) {
+        is CHSesame5 -> TestAction(countOnStatusChange = true) { historyTag, _ ->
+            device.toggle(historytag = historyTag) {}
+        }
+
+        is CHSesameBot2 -> TestAction(countOnStatusChange = false) { historyTag, onSuccess ->
+            device.click(historytag = historyTag) { result -> result.onSuccess { onSuccess() } }
+        }
+
+        else -> null
+    }
+
+    private fun recordToggle(device: CHDevices, sessionId: Int) {
+        scope.launch(Dispatchers.Main.immediate) {
+            if (job == null || testSessionId != sessionId || selected !== device) return@launch
+            count++; prefs.edit().putInt("toggle_count", count).apply(); render()
+        }
+    }
+
+    private fun startTest() {
+        if (job != null) return
+        val device = selected ?: return
+        val action = testActionFor(device) ?: return
+        val sessionId = ++testSessionId
+        previous = device.delegate
+        val originalDelegate = previous
+        var last = device.deviceStatus
+        val delegate = object : CHDeviceStatusDelegate by (previous ?: object : CHDeviceStatusDelegate {}) {
+            override fun onBleDeviceStatusChanged(device: CHDevices, status: CHDeviceStatus) {
+                originalDelegate?.onBleDeviceStatusChanged(device, status)
+                scope.launch(Dispatchers.Main.immediate) {
+                    if (action.countOnStatusChange && job != null && testSessionId == sessionId && selected === device && status != last) {
+                        last = status
+                        if (status == CHDeviceStatus.Locked || status == CHDeviceStatus.Unlocked) {
+                            recordToggle(device, sessionId)
+                        }
+                    }
+                }
+            }
+        }
+        testDelegate = delegate; device.delegate = delegate
+        window?.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
+        job = scope.launch {
+            var next = SystemClock.elapsedRealtime()
+            while (isActive) {
+                next += interval(device) * 1000L
+                action.run(ble.historyTag()) { recordToggle(device, sessionId) }
+                val wait = next - SystemClock.elapsedRealtime()
+                if (wait > 0) delay(wait.milliseconds) else yield()
+            }
+        }
+        render()
+    }
+
+    private fun stopTest() {
+        testSessionId += 1
+        job?.cancel(); job = null
+        selected?.let { if (it.delegate === testDelegate) it.delegate = previous }
+        previous = null; testDelegate = null
+        window?.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
+        render()
+    }
+
+    override fun dismiss() {
+        stopTest(); super.dismiss()
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/push/PushNotification.kt b/sesameApp/src/main/java/co/candyhouse/app/push/PushNotification.kt
new file mode 100644
index 0000000..7e83d75
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/push/PushNotification.kt
@@ -0,0 +1,100 @@
+package co.candyhouse.app.push
+
+import android.app.NotificationChannel
+import android.app.NotificationManager
+import android.app.PendingIntent
+import android.content.Context
+import android.content.Intent
+import android.graphics.Bitmap
+import android.graphics.BitmapFactory
+import android.os.Build
+import android.os.SystemClock
+import androidx.core.app.NotificationCompat
+import androidx.core.app.NotificationManagerCompat
+import androidx.core.net.toUri
+import co.candyhouse.app.R
+import co.candyhouse.app.SesameActivity
+import java.io.ByteArrayOutputStream
+import java.net.HttpURLConnection
+import java.net.URL
+
+/** Platform notification rendering; promotion content and destination are supplied by the server. */
+object PushNotification {
+    fun show(context: Context, title: String, body: String?, url: String?, imageUrl: String?, action: String?, announcement: Boolean) {
+        val manager = context.getSystemService(NotificationManager::class.java)
+        val channel = if (announcement) "announcement_channel" else "sesame_notifications"
+        if (Build.VERSION.SDK_INT >= 26) manager.createNotificationChannel(
+            NotificationChannel(channel, context.getString(R.string.Sesame), NotificationManager.IMPORTANCE_HIGH)
+        )
+        if (!NotificationManagerCompat.from(context).areNotificationsEnabled()) return
+        val id = (System.currentTimeMillis() and 0x7fffffff).toInt()
+        val intent = Intent(context, SesameActivity::class.java).apply {
+            flags = Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP
+            putExtra("pushUrl", url)
+            putExtra("messageAction", action)
+        }
+        val pending = PendingIntent.getActivity(context, id, intent, PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE)
+        val builder = NotificationCompat.Builder(context, channel)
+            .setSmallIcon(R.drawable.ic_notification).setColor(0xff28aeb1.toInt())
+            .setContentTitle(title).setContentText(body)
+            .setStyle(NotificationCompat.BigTextStyle().bigText(body))
+            .setContentIntent(pending).setAutoCancel(true)
+            .setPriority(NotificationCompat.PRIORITY_HIGH).setDefaults(NotificationCompat.DEFAULT_ALL)
+        if (announcement) builder.setGroup("group_marketing")
+        // Deliver text immediately; an unavailable image must not suppress the promotion.
+        manager.notify(id, builder.build())
+        imageUrl?.let(::loadImage)?.let { bitmap ->
+            builder.setLargeIcon(bitmap).setOnlyAlertOnce(true).setStyle(
+                NotificationCompat.BigPictureStyle().bigPicture(bitmap).bigLargeIcon(null as Bitmap?).setSummaryText(body)
+            )
+            manager.notify(id, builder.build())
+        }
+    }
+
+    /** Supports our data pushes, Firebase background notification extras, and old pending intents. */
+    fun consumeUrl(intent: Intent): String? {
+        val legacy = intent.data?.takeIf { it.scheme == "candyhouse" && it.host == "open" }
+        val url = intent.getStringExtra("pushUrl") ?: intent.getStringExtra("url") ?: legacy?.getQueryParameter("url")
+        val action = intent.getStringExtra("messageAction") ?: legacy?.getQueryParameter("action")
+        intent.removeExtra("pushUrl")
+        intent.removeExtra("url")
+        intent.removeExtra("messageAction")
+        if (legacy != null) intent.data = null
+        return url?.takeIf { (action.isNullOrBlank() || action == "open_webview") && it.toUri().scheme == "https" }
+    }
+
+    private fun loadImage(url: String): Bitmap? = runCatching {
+        require(url.toUri().scheme == "https")
+        val connection = URL(url).openConnection() as HttpURLConnection
+        try {
+            connection.connectTimeout = 2000
+            connection.readTimeout = 2000
+            // Bound both download size and decoded dimensions; no extra image-loading dependency.
+            val deadline = SystemClock.elapsedRealtime() + 4000
+            val bytes = connection.inputStream.use { input ->
+                val output = ByteArrayOutputStream()
+                val buffer = ByteArray(8192)
+                while (true) {
+                    require(SystemClock.elapsedRealtime() < deadline)
+                    val count = input.read(buffer)
+                    if (count < 0) break
+                    require(output.size() + count <= 4 * 1024 * 1024)
+                    output.write(buffer, 0, count)
+                }
+                output.toByteArray()
+            }
+            require(bytes.size <= 4 * 1024 * 1024)
+            val bounds = BitmapFactory.Options().apply { inJustDecodeBounds = true }
+            BitmapFactory.decodeByteArray(bytes, 0, bytes.size, bounds)
+            val options = BitmapFactory.Options().apply {
+                inSampleSize = 1
+                while (bounds.outWidth / inSampleSize > 1024 || bounds.outHeight / inSampleSize > 1024) {
+                    inSampleSize = inSampleSize * 2
+                }
+            }
+            BitmapFactory.decodeByteArray(bytes, 0, bytes.size, options)
+        } finally {
+            connection.disconnect()
+        }
+    }.getOrNull()
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/push/SesameFirebaseMessagingService.kt b/sesameApp/src/main/java/co/candyhouse/app/push/SesameFirebaseMessagingService.kt
new file mode 100644
index 0000000..d743109
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/push/SesameFirebaseMessagingService.kt
@@ -0,0 +1,25 @@
+package co.candyhouse.app.push
+
+import co.candyhouse.app.R
+import co.candyhouse.app.SesameApp
+import com.google.firebase.messaging.FirebaseMessagingService
+import com.google.firebase.messaging.RemoteMessage
+
+class SesameFirebaseMessagingService : FirebaseMessagingService() {
+    override fun onNewToken(token: String) {
+        (application as SesameApp).subscriptionManager.onNewToken(token)
+    }
+
+    override fun onMessageReceived(message: RemoteMessage) {
+        (application as SesameApp).subscriptionManager.notifyChange()
+        val data = message.data
+        val announcement = data["messageType"] == "announcement"
+        val title = if (announcement) data["title"] ?: message.notification?.title ?: getString(R.string.Sesame)
+        else data["alertTitle"] ?: data["title"] ?: message.notification?.title ?: return
+        PushNotification.show(
+            this, title, data["body"] ?: message.notification?.body, data["url"],
+            if (announcement) data["imageUrl"] ?: message.notification?.imageUrl?.toString() else null,
+            data["messageAction"], announcement
+        )
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/push/TopicSubscriptionManager.kt b/sesameApp/src/main/java/co/candyhouse/app/push/TopicSubscriptionManager.kt
new file mode 100644
index 0000000..2b84d8b
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/push/TopicSubscriptionManager.kt
@@ -0,0 +1,44 @@
+package co.candyhouse.app.push
+
+import android.content.Context
+import androidx.core.content.edit
+import co.candyhouse.app.util.AppIdentity
+import co.candyhouse.sesame.utils.L
+import com.google.firebase.messaging.FirebaseMessaging
+import kotlinx.coroutines.flow.MutableSharedFlow
+import kotlinx.coroutines.flow.asSharedFlow
+import kotlinx.coroutines.suspendCancellableCoroutine
+import kotlin.coroutines.resume
+import kotlin.coroutines.resumeWithException
+
+/** Exposes the FCM token; Biz owns registration and subscription requests. */
+class TopicSubscriptionManager(context: Context) {
+    private val prefs = context.getSharedPreferences("push_subscription", Context.MODE_PRIVATE)
+    val installationId = AppIdentity.get(context)
+    private val events = MutableSharedFlow<Unit>(extraBufferCapacity = 1)
+    val changes = events.asSharedFlow()
+
+    fun refreshToken() {
+        FirebaseMessaging.getInstance().token.addOnSuccessListener(::onNewToken)
+    }
+
+    fun onNewToken(token: String) {
+        L.d("SesamePush", "appIdentifyId=$installationId")
+        L.d("SesamePush", "FCM token=$token")
+        val changed = prefs.getString("token", null) != token
+        prefs.edit { putString("token", token) }
+        if (changed) events.tryEmit(Unit)
+    }
+
+    suspend fun token(): String = suspendCancellableCoroutine { continuation ->
+        FirebaseMessaging.getInstance().token.addOnSuccessListener {
+            if (continuation.isActive) continuation.resume(it)
+        }.addOnFailureListener {
+            if (continuation.isActive) continuation.resumeWithException(it)
+        }
+    }
+
+    fun notifyChange() {
+        events.tryEmit(Unit)
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ui/AppMenu.kt b/sesameApp/src/main/java/co/candyhouse/app/ui/AppMenu.kt
new file mode 100644
index 0000000..125ff4c
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ui/AppMenu.kt
@@ -0,0 +1,64 @@
+package co.candyhouse.app.ui
+
+import android.content.Context
+import android.graphics.Color
+import android.graphics.drawable.GradientDrawable
+import android.view.Gravity
+import android.view.View
+import android.widget.ImageView
+import android.widget.LinearLayout
+import android.widget.PopupWindow
+import android.widget.TextView
+import androidx.core.graphics.drawable.toDrawable
+import co.candyhouse.app.R
+import co.candyhouse.app.util.dp
+
+class AppMenu(private val context: Context, private val register: () -> Unit, private val scan: () -> Unit, private val contact: () -> Unit) {
+    private var actionMenu: PopupWindow? = null
+    fun dismiss() {
+        actionMenu?.dismiss()
+    }
+
+    fun show(anchor: View) {
+        dismiss()
+        val menuColor = Color.rgb(68, 68, 68)
+        val content = LinearLayout(context).apply { orientation = LinearLayout.VERTICAL }
+        content.addView(ImageView(context).apply {
+            setImageResource(R.drawable.arrow)
+            setColorFilter(menuColor)
+        }, LinearLayout.LayoutParams(context.dp(12), context.dp(12)).apply {
+            gravity = Gravity.END
+            marginEnd = context.dp(18)
+        })
+        val items = LinearLayout(context).apply {
+            orientation = LinearLayout.VERTICAL
+            background = GradientDrawable().apply { setColor(menuColor); cornerRadius = context.dp(4).toFloat() }
+        }
+        content.addView(items)
+        val popup = PopupWindow(content, context.dp(180), -2, true).apply {
+            setBackgroundDrawable(Color.TRANSPARENT.toDrawable())
+            isOutsideTouchable = true
+        }
+
+        fun addItem(title: Int, icon: Int, action: () -> Unit) {
+            items.addView(TextView(context).apply {
+                setText(title)
+                textSize = 15f
+                setTextColor(Color.WHITE)
+                gravity = Gravity.CENTER_VERTICAL
+                setPadding(context.dp(24), context.dp(18), context.dp(16), context.dp(18))
+                compoundDrawablePadding = context.dp(10)
+                val drawable = context.getDrawable(icon)?.apply { setBounds(0, 0, context.dp(24), context.dp(24)) }
+                setCompoundDrawablesRelative(drawable, null, null, null)
+                setOnClickListener { popup.dismiss(); action() }
+            }, LinearLayout.LayoutParams(-1, -2))
+        }
+        addItem(R.string.add_new_device, R.drawable.ic_cube, register)
+        addItem(R.string.scan_the_qr_code, R.drawable.ic_qr_code_scan, scan)
+        addItem(R.string.add_contacts, R.drawable.ic_add_contact, contact)
+        actionMenu = popup
+        popup.setOnDismissListener { actionMenu = null }
+        popup.showAsDropDown(anchor, 0, 0, Gravity.END)
+    }
+
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/ui/AppToolbar.kt b/sesameApp/src/main/java/co/candyhouse/app/ui/AppToolbar.kt
new file mode 100644
index 0000000..a4fb5d3
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/ui/AppToolbar.kt
@@ -0,0 +1,44 @@
+package co.candyhouse.app.ui
+
+import android.annotation.SuppressLint
+import android.content.Context
+import android.graphics.Color
+import android.view.Gravity
+import android.view.View
+import android.widget.FrameLayout
+import android.widget.ImageView
+import android.widget.TextView
+import co.candyhouse.app.R
+import co.candyhouse.app.util.dp
+
+@SuppressLint("ViewConstructor")
+class AppToolbar(context: Context, onBack: () -> Unit, onMenu: () -> Unit, onInternalTest: () -> Unit) : FrameLayout(context) {
+    val menu = TextView(context).apply {
+        text = "⊕"; textSize = 32f; gravity = Gravity.CENTER; setTextColor(Color.BLACK)
+        contentDescription = context.getString(R.string.add_new_device)
+        setOnClickListener { onMenu() }
+    }
+    private val back = ImageView(context).apply {
+        setImageResource(R.drawable.ic_arrow); rotation = 180f; scaleType = ImageView.ScaleType.CENTER
+        contentDescription = context.getString(R.string.back)
+        setOnClickListener { onBack() }
+    }
+    private val testTrigger = View(context).apply {
+        contentDescription = "内部测试"
+        setOnLongClickListener { onInternalTest(); true }
+    }
+
+    init {
+        setBackgroundColor(Color.WHITE)
+        addView(back, LayoutParams(context.dp(48), -1, Gravity.START))
+        addView(menu, LayoutParams(context.dp(48), -1, Gravity.END).apply { marginEnd = context.dp(8) })
+        addView(testTrigger, LayoutParams(context.dp(120), -1, Gravity.CENTER_HORIZONTAL))
+        showPage(root = true, home = false)
+    }
+
+    fun showPage(root: Boolean, home: Boolean) {
+        back.visibility = if (root) GONE else VISIBLE
+        menu.visibility = if (root) VISIBLE else GONE
+        testTrigger.visibility = if (home) VISIBLE else GONE
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/AppEnvironment.kt b/sesameApp/src/main/java/co/candyhouse/app/util/AppEnvironment.kt
new file mode 100644
index 0000000..ea33f7d
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/AppEnvironment.kt
@@ -0,0 +1,149 @@
+package co.candyhouse.app.util
+
+import android.Manifest
+import android.bluetooth.BluetoothAdapter
+import android.bluetooth.BluetoothManager
+import android.content.Context
+import android.content.Intent
+import android.content.IntentFilter
+import android.content.pm.PackageManager
+import android.net.ConnectivityManager
+import android.net.NetworkCapabilities
+import android.os.BatteryManager
+import android.os.Build
+import androidx.core.app.NotificationManagerCompat
+import androidx.core.content.ContextCompat
+import co.candyhouse.app.BuildConfig
+import java.text.SimpleDateFormat
+import java.util.Locale
+import java.util.TimeZone
+
+/**
+ * 采集尽可能完整的 App 环境信息,拍平为一层 `key=value` 有序数组上报。
+ *
+ * 对齐 iOS AppEnvironment:每项是单键对象 `[{"key": value}, ...]`,数组顺序即字段顺序。
+ */
+object AppEnvironment {
+
+    /**
+     * 采集全部环境信息。
+     * @return 有序数组,每项是单键对象 `[{"key": value}, ...]`。
+     */
+    fun collect(context: Context): List<Map<String, Any>> {
+        val pairs = mutableListOf<Pair<String, Any>>()
+        pairs += appInfo()
+        pairs += deviceInfo(context)
+        pairs += permissionInfo(context)
+        val ms = System.currentTimeMillis()
+        pairs += "collectedAt" to formatTime(ms)
+        return pairs.map { mapOf(it.first to it.second) }
+    }
+
+    // MARK: - App
+
+    private fun appInfo(): List<Pair<String, Any>> {
+        val locale = Locale.getDefault()
+        return listOf(
+            "displayName" to "Sesame",
+            "version" to BuildConfig.VERSION_NAME,
+            "build" to BuildConfig.VERSION_CODE,
+            "language" to locale.toLanguageTag(),
+            "region" to (locale.country ?: ""),
+            "bundleId" to BuildConfig.APPLICATION_ID
+        )
+    }
+
+    // MARK: - Device / System
+
+    private fun deviceInfo(context: Context): List<Pair<String, Any>> {
+        val metrics = context.resources.displayMetrics
+        val isTablet =
+            context.resources.configuration.smallestScreenWidthDp >= 600
+        return listOf(
+            "systemName" to "Android",
+            "systemVersion" to Build.VERSION.RELEASE,
+            "model" to "${Build.MANUFACTURER} ${Build.MODEL}",
+            "deviceType" to if (isTablet) "pad" else "phone",
+            "screenWidth" to metrics.widthPixels,
+            "screenHeight" to metrics.heightPixels,
+            "screenScale" to metrics.density,
+            "timeZone" to TimeZone.getDefault().id,
+            "batteryLevel" to batteryLevelPercent(context)
+        )
+    }
+
+    /** 电量百分比 0–100;读取失败返回 -1。 */
+    private fun batteryLevelPercent(context: Context): Int {
+        return try {
+            val intent = context.registerReceiver(null, IntentFilter(Intent.ACTION_BATTERY_CHANGED))
+            val level = intent?.getIntExtra(BatteryManager.EXTRA_LEVEL, -1) ?: -1
+            val scale = intent?.getIntExtra(BatteryManager.EXTRA_SCALE, -1) ?: -1
+            if (level < 0 || scale <= 0) -1 else ((level * 100f) / scale).toInt()
+        } catch (_: Exception) {
+            -1
+        }
+    }
+
+    // MARK: - Permissions / Capabilities
+
+    private fun permissionInfo(context: Context): List<Pair<String, Any>> {
+        return listOf(
+            "notification" to notificationString(context),
+            "bluetooth" to bluetoothString(context),
+            "location" to locationString(context),
+            "network" to networkTypeString(context)
+        )
+    }
+
+    private fun notificationString(context: Context): String {
+        return if (NotificationManagerCompat.from(context).areNotificationsEnabled()) "authorized" else "denied"
+    }
+
+    /** 蓝牙真实状态(电源开关 + 授权)。 */
+    private fun bluetoothString(context: Context): String {
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S &&
+            ContextCompat.checkSelfPermission(context, Manifest.permission.BLUETOOTH_CONNECT)
+            != PackageManager.PERMISSION_GRANTED
+        ) {
+            return "unauthorized"
+        }
+        val manager = context.getSystemService(Context.BLUETOOTH_SERVICE) as? BluetoothManager
+        val adapter: BluetoothAdapter? = manager?.adapter
+        return when {
+            adapter == null -> "unsupported"
+            adapter.isEnabled -> "poweredOn"
+            else -> "poweredOff"
+        }
+    }
+
+    /** 对齐 iOS 授权范围(不关注精度 fine/coarse):always / whenInUse / denied。 */
+    private fun locationString(context: Context): String {
+        val fine = ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION) ==
+                PackageManager.PERMISSION_GRANTED
+        val coarse = ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_COARSE_LOCATION) ==
+                PackageManager.PERMISSION_GRANTED
+        if (!fine && !coarse) return "denied"
+        // Android 10(Q) 起后台定位为独立权限;Q 以下前台授予即等价 always
+        val background = Build.VERSION.SDK_INT < Build.VERSION_CODES.Q ||
+                ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_BACKGROUND_LOCATION) ==
+                PackageManager.PERMISSION_GRANTED
+        return if (background) "always" else "whenInUse"
+    }
+
+    private fun networkTypeString(context: Context): String {
+        val cm = context.getSystemService(Context.CONNECTIVITY_SERVICE) as? ConnectivityManager
+            ?: return "unknown"
+        val network = cm.activeNetwork ?: return "none"
+        val caps = cm.getNetworkCapabilities(network) ?: return "none"
+        return when {
+            caps.hasTransport(NetworkCapabilities.TRANSPORT_WIFI) -> "wifi"
+            caps.hasTransport(NetworkCapabilities.TRANSPORT_ETHERNET) -> "wifi"
+            caps.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR) -> "cellular"
+            else -> "none"
+        }
+    }
+
+    private fun formatTime(ms: Long): String {
+        return SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault()).format(ms)
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/AppIdentity.kt b/sesameApp/src/main/java/co/candyhouse/app/util/AppIdentity.kt
new file mode 100644
index 0000000..b6b4da7
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/AppIdentity.kt
@@ -0,0 +1,23 @@
+package co.candyhouse.app.util
+
+import android.annotation.SuppressLint
+import android.content.Context
+import android.provider.Settings
+import androidx.core.content.edit
+import java.util.UUID
+
+object AppIdentity {
+    @SuppressLint("HardwareIds")
+    @Synchronized
+    fun get(context: Context): String {
+        val legacy = context.getSharedPreferences("${context.packageName}_preferences", 0)
+        val push = context.getSharedPreferences("push_subscription", 0)
+        val saved = legacy.getString("appIdentifyId", null)?.takeIf { it.isNotBlank() }
+            ?: push.getString("installationId", null)?.takeIf { it.isNotBlank() }
+        val androidId = Settings.Secure.getString(context.contentResolver, Settings.Secure.ANDROID_ID)
+            ?.trim()?.takeUnless { it.isBlank() || it in setOf("unknown", "null", "9774d56d682e549c") }
+        val identity = saved ?: "ap-northeast-1:${androidId ?: UUID.randomUUID()}"
+        legacy.edit { putString("appIdentifyId", identity) }
+        return identity
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/BundledWebResources.kt b/sesameApp/src/main/java/co/candyhouse/app/util/BundledWebResources.kt
new file mode 100644
index 0000000..d551a78
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/BundledWebResources.kt
@@ -0,0 +1,51 @@
+package co.candyhouse.app.util
+
+import android.content.res.AssetManager
+import android.net.Uri
+import android.webkit.MimeTypeMap
+import android.webkit.WebResourceRequest
+import android.webkit.WebResourceResponse
+import co.candyhouse.sesame.utils.L
+import java.io.ByteArrayInputStream
+import java.io.IOException
+
+/** Serves the packaged SPA at its configured origin; cloud and external URLs remain online. */
+internal class BundledWebResources(private val assets: AssetManager, origin: String) {
+    private val originUri = Uri.parse(origin)
+
+    fun intercept(request: WebResourceRequest): WebResourceResponse? {
+        val uri = request.url
+        if (uri.scheme != originUri.scheme || uri.host != originUri.host || uri.port != originUri.port) return null
+        if (request.method != "GET") return error(405, "Method Not Allowed")
+
+        val path = uri.path.orEmpty().removePrefix("/")
+        if (path.split('/').any { it == ".." || it == "." } || '\\' in path) return error(404, "Not Found")
+        // BrowserRouter routes (including reload/logout) use the same local document.
+        val resource = if (request.isForMainFrame) "index.html" else path
+        val stream = try {
+            assets.open("biz/$resource")
+        } catch (_: IOException) {
+            L.e("WebResources", "APK resource missing; status=404; remoteFallback=false")
+            // Never fall back to the remote deployment for missing bundle resources.
+            return error(404, "Not Found")
+        }
+        if (resource == "index.html" || resource.startsWith("static/") && (resource.endsWith(".js") || resource.endsWith(".css"))) {
+            L.i("WebResources", "source=APK; resource=assets/biz/$resource; status=200")
+        }
+        val mime = when (resource.substringAfterLast('.', "").lowercase()) {
+            "js", "mjs" -> "application/javascript"
+            "json", "map" -> "application/json"
+            "svg" -> "image/svg+xml"
+            "wasm" -> "application/wasm"
+            else -> MimeTypeMap.getSingleton().getMimeTypeFromExtension(resource.substringAfterLast('.').lowercase())
+                ?: "application/octet-stream"
+        }
+        return WebResourceResponse(mime, "UTF-8", 200, "OK", headers, stream)
+    }
+
+    private fun error(status: Int, reason: String) = WebResourceResponse(
+        "text/plain", "UTF-8", status, reason, headers, ByteArrayInputStream(reason.toByteArray())
+    )
+
+    private val headers = mapOf("Cache-Control" to "no-store", "X-Sesame-Resource" to "apk")
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/ContextExtensions.kt b/sesameApp/src/main/java/co/candyhouse/app/util/ContextExtensions.kt
new file mode 100644
index 0000000..3aa4d98
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/ContextExtensions.kt
@@ -0,0 +1,12 @@
+package co.candyhouse.app.util
+
+import android.content.Context
+import android.content.Intent
+import android.net.Uri
+
+fun Context.dp(value: Int) = (value * resources.displayMetrics.density).toInt()
+
+fun Context.openExternalUrl(uri: Uri) {
+    require(uri.scheme in setOf("https", "http", "mailto", "tel"))
+    startActivity(Intent(Intent.ACTION_VIEW, uri))
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/DeviceKeyExtensions.kt b/sesameApp/src/main/java/co/candyhouse/app/util/DeviceKeyExtensions.kt
new file mode 100644
index 0000000..977da5a
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/DeviceKeyExtensions.kt
@@ -0,0 +1,8 @@
+package co.candyhouse.app.util
+
+import co.candyhouse.sesame.ble.CHDevice
+import org.json.JSONObject
+
+fun CHDevice.toKeyJson(): JSONObject = JSONObject().put("deviceUUID", deviceUUID.uppercase())
+    .put("deviceModel", deviceModel).put("keyIndex", keyIndex).put("secretKey", secretKey)
+    .put("sesame2PublicKey", sesame2PublicKey)
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/WebResourceSettings.kt b/sesameApp/src/main/java/co/candyhouse/app/util/WebResourceSettings.kt
new file mode 100644
index 0000000..0399587
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/WebResourceSettings.kt
@@ -0,0 +1,12 @@
+package co.candyhouse.app.util
+
+import android.content.Context
+
+/** Shared by foreground and background WebViews; offline resources are the default. */
+object WebResourceSettings {
+    private fun prefs(context: Context) = context.getSharedPreferences("web_resource_prefs", Context.MODE_PRIVATE)
+    fun isBundled(context: Context) = prefs(context).getBoolean("bundled", true)
+    fun setBundled(context: Context, bundled: Boolean) {
+        prefs(context).edit().putBoolean("bundled", bundled).apply()
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BGQRCodeUtil.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BGQRCodeUtil.java
new file mode 100644
index 0000000..c1231b9
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BGQRCodeUtil.java
@@ -0,0 +1,206 @@
+package co.candyhouse.app.util.qrcode.core;
+
+import android.R;
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.graphics.Canvas;
+import android.graphics.Matrix;
+import android.graphics.Paint;
+import android.graphics.Point;
+import android.graphics.PorterDuff;
+import android.graphics.PorterDuffColorFilter;
+import android.graphics.Rect;
+import android.graphics.RectF;
+import android.util.TypedValue;
+import android.view.Display;
+import android.view.MotionEvent;
+import android.view.WindowManager;
+
+import co.candyhouse.sesame.utils.L;
+
+public class BGQRCodeUtil {
+    private static boolean debug;
+
+    public static void setDebug(boolean debug) {
+        BGQRCodeUtil.debug = debug;
+    }
+
+    public static boolean isDebug() {
+        return debug;
+    }
+
+    public static void d(String msg) {
+        d("BGAQRCode", msg);
+    }
+
+    public static void printRect(String prefix, Rect rect) {
+        d("BGAQRCodeFocusArea", prefix + " centerX:" + rect.centerX() + " centerY:" + rect.centerY() + " width:" + rect.width() + " height:" + rect.height()
+                + " rectHalfWidth:" + rect.width() / 2 + " rectHalfHeight:" + rect.height() / 2
+                + " left:" + rect.left + " top:" + rect.top + " right:" + rect.right + " bottom:" + rect.bottom);
+    }
+
+    public static void d(String tag, String msg) {
+        if (debug) {
+            L.d(tag, msg);
+        }
+    }
+
+    public static void e(String msg) {
+        if (debug) {
+            L.e("BGAQRCode", msg);
+        }
+    }
+
+    /**
+     * 是否为竖屏
+     */
+    public static boolean isPortrait(Context context) {
+        Point screenResolution = getScreenResolution(context);
+        return screenResolution.y > screenResolution.x;
+    }
+
+    static Point getScreenResolution(Context context) {
+        WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
+        Display display = wm.getDefaultDisplay();
+        Point screenResolution = new Point();
+        display.getSize(screenResolution);
+        return screenResolution;
+    }
+
+    public static int getStatusBarHeight(Context context) {
+        TypedArray typedArray = context.getTheme().obtainStyledAttributes(new int[]{
+                R.attr.windowFullscreen
+        });
+        boolean windowFullscreen = typedArray.getBoolean(0, false);
+        typedArray.recycle();
+
+        if (windowFullscreen) {
+            return 0;
+        }
+
+        int height = 0;
+        int resourceId = context.getResources().getIdentifier("status_bar_height", "dimen", "android");
+        if (resourceId > 0) {
+            height = context.getResources().getDimensionPixelSize(resourceId);
+        }
+        return height;
+    }
+
+    public static int dp2px(Context context, float dpValue) {
+        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dpValue, context.getResources().getDisplayMetrics());
+    }
+
+    public static int sp2px(Context context, float spValue) {
+        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, spValue, context.getResources().getDisplayMetrics());
+    }
+
+    static Bitmap adjustPhotoRotation(Bitmap inputBitmap, int orientationDegree) {
+        if (inputBitmap == null) {
+            return null;
+        }
+
+        Matrix matrix = new Matrix();
+        matrix.setRotate(orientationDegree, (float) inputBitmap.getWidth() / 2, (float) inputBitmap.getHeight() / 2);
+        float outputX, outputY;
+        if (orientationDegree == 90) {
+            outputX = inputBitmap.getHeight();
+            outputY = 0;
+        } else {
+            outputX = inputBitmap.getHeight();
+            outputY = inputBitmap.getWidth();
+        }
+
+        final float[] values = new float[9];
+        matrix.getValues(values);
+        float x1 = values[Matrix.MTRANS_X];
+        float y1 = values[Matrix.MTRANS_Y];
+        matrix.postTranslate(outputX - x1, outputY - y1);
+        Bitmap outputBitmap = Bitmap.createBitmap(inputBitmap.getHeight(), inputBitmap.getWidth(), Bitmap.Config.ARGB_8888);
+        Paint paint = new Paint();
+        Canvas canvas = new Canvas(outputBitmap);
+        canvas.drawBitmap(inputBitmap, matrix, paint);
+        return outputBitmap;
+    }
+
+    static Bitmap makeTintBitmap(Bitmap inputBitmap, int tintColor) {
+        if (inputBitmap == null) {
+            return null;
+        }
+
+        Bitmap outputBitmap = Bitmap.createBitmap(inputBitmap.getWidth(), inputBitmap.getHeight(), inputBitmap.getConfig());
+        Canvas canvas = new Canvas(outputBitmap);
+        Paint paint = new Paint();
+        paint.setColorFilter(new PorterDuffColorFilter(tintColor, PorterDuff.Mode.SRC_IN));
+        canvas.drawBitmap(inputBitmap, 0, 0, paint);
+        return outputBitmap;
+    }
+
+    /**
+     * 计算对焦和测光区域
+     *
+     * @param coefficient        比率
+     * @param originFocusCenterX 对焦中心点X
+     * @param originFocusCenterY 对焦中心点Y
+     * @param originFocusWidth   对焦宽度
+     * @param originFocusHeight  对焦高度
+     * @param previewViewWidth   预览宽度
+     * @param previewViewHeight  预览高度
+     */
+    static Rect calculateFocusMeteringArea(float coefficient,
+                                           float originFocusCenterX, float originFocusCenterY,
+                                           int originFocusWidth, int originFocusHeight,
+                                           int previewViewWidth, int previewViewHeight) {
+
+        int halfFocusAreaWidth = (int) (originFocusWidth * coefficient / 2);
+        int halfFocusAreaHeight = (int) (originFocusHeight * coefficient / 2);
+
+        int centerX = (int) (originFocusCenterX / previewViewWidth * 2000 - 1000);
+        int centerY = (int) (originFocusCenterY / previewViewHeight * 2000 - 1000);
+
+        RectF rectF = new RectF(BGQRCodeUtil.clamp(centerX - halfFocusAreaWidth, -1000, 1000),
+                BGQRCodeUtil.clamp(centerY - halfFocusAreaHeight, -1000, 1000),
+                BGQRCodeUtil.clamp(centerX + halfFocusAreaWidth, -1000, 1000),
+                BGQRCodeUtil.clamp(centerY + halfFocusAreaHeight, -1000, 1000));
+        return new Rect(Math.round(rectF.left), Math.round(rectF.top),
+                Math.round(rectF.right), Math.round(rectF.bottom));
+    }
+
+    static int clamp(int value, int min, int max) {
+        return Math.min(Math.max(value, min), max);
+    }
+
+    /**
+     * 计算手指间距
+     */
+    static float calculateFingerSpacing(MotionEvent event) {
+        float x = event.getX(0) - event.getX(1);
+        float y = event.getY(0) - event.getY(1);
+        return (float) Math.sqrt(x * x + y * y);
+    }
+
+    /**
+     * 将本地图片文件转换成可解码二维码的 Bitmap。为了避免图片太大,这里对图片进行了压缩。感谢 https://github.com/devilsen 提的 PR
+     *
+     * @param picturePath 本地图片文件路径
+     */
+    public static Bitmap getDecodeAbleBitmap(String picturePath) {
+        try {
+            BitmapFactory.Options options = new BitmapFactory.Options();
+            options.inJustDecodeBounds = true;
+            BitmapFactory.decodeFile(picturePath, options);
+            int sampleSize = options.outHeight / 400;
+            if (sampleSize <= 0) {
+                sampleSize = 1;
+            }
+            options.inSampleSize = sampleSize;
+            options.inJustDecodeBounds = false;
+
+            return BitmapFactory.decodeFile(picturePath, options);
+        } catch (Exception e) {
+            e.printStackTrace();
+            return null;
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BGScanResult.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BGScanResult.java
new file mode 100644
index 0000000..7714693
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BGScanResult.java
@@ -0,0 +1,17 @@
+package co.candyhouse.app.util.qrcode.core;
+
+import android.graphics.PointF;
+
+public class BGScanResult {
+    String result;
+    PointF[] resultPoints;
+
+    public BGScanResult(String result) {
+        this.result = result;
+    }
+
+    public BGScanResult(String result, PointF[] resultPoints) {
+        this.result = result;
+        this.resultPoints = resultPoints;
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BarcodeType.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BarcodeType.java
new file mode 100644
index 0000000..a43f31b
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/BarcodeType.java
@@ -0,0 +1,36 @@
+package co.candyhouse.app.util.qrcode.core;
+
+public enum BarcodeType {
+    /**
+     * 所有格式
+     */
+    ALL,
+    /**
+     * 所有一维条码格式
+     */
+    ONE_DIMENSION,
+    /**
+     * 所有二维条码格式
+     */
+    TWO_DIMENSION,
+    /**
+     * 仅 QR_CODE
+     */
+    ONLY_QR_CODE,
+    /**
+     * 仅 CODE_128
+     */
+    ONLY_CODE_128,
+    /**
+     * 仅 EAN_13
+     */
+    ONLY_EAN_13,
+    /**
+     * 高频率格式,包括 QR_CODE、ISBN13、UPC_A、EAN_13、CODE_128
+     */
+    HIGH_FREQUENCY,
+    /**
+     * 自定义格式
+     */
+    CUSTOM
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/CameraConfigurationManager.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/CameraConfigurationManager.java
new file mode 100755
index 0000000..0c3c730
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/CameraConfigurationManager.java
@@ -0,0 +1,209 @@
+package co.candyhouse.app.util.qrcode.core;
+
+import android.content.Context;
+import android.graphics.Point;
+import android.hardware.Camera;
+import android.view.Display;
+import android.view.Surface;
+import android.view.WindowManager;
+
+import java.util.Collection;
+import java.util.List;
+
+final class CameraConfigurationManager {
+    private final Context mContext;
+    private Point mCameraResolution;
+    private Point mPreviewResolution;
+
+    CameraConfigurationManager(Context context) {
+        mContext = context;
+    }
+
+    void initFromCameraParameters(Camera camera) {
+        Point screenResolution = BGQRCodeUtil.getScreenResolution(mContext);
+        Point screenResolutionForCamera = new Point();
+        screenResolutionForCamera.x = screenResolution.x;
+        screenResolutionForCamera.y = screenResolution.y;
+
+        if (BGQRCodeUtil.isPortrait(mContext)) {
+            screenResolutionForCamera.x = screenResolution.y;
+            screenResolutionForCamera.y = screenResolution.x;
+        }
+
+        mPreviewResolution = getPreviewResolution(camera.getParameters(), screenResolutionForCamera);
+
+        if (BGQRCodeUtil.isPortrait(mContext)) {
+            mCameraResolution = new Point(mPreviewResolution.y, mPreviewResolution.x);
+        } else {
+            mCameraResolution = mPreviewResolution;
+        }
+    }
+
+    private static boolean autoFocusAble(Camera camera) {
+        List<String> supportedFocusModes = camera.getParameters().getSupportedFocusModes();
+        String focusMode = findSettableValue(supportedFocusModes, Camera.Parameters.FOCUS_MODE_AUTO);
+        return focusMode != null;
+    }
+
+    Point getCameraResolution() {
+        return mCameraResolution;
+    }
+
+    void setDesiredCameraParameters(Camera camera) {
+        Camera.Parameters parameters = camera.getParameters();
+        parameters.setPreviewSize(mPreviewResolution.x, mPreviewResolution.y);
+
+        // https://github.com/googlesamples/android-vision/blob/master/visionSamples/barcode-reader/app/src/main/java/com/google/android/gms/samples/vision/barcodereader/ui/camera/CameraSource.java
+        int[] previewFpsRange = selectPreviewFpsRange(camera, 60.0f);
+        if (previewFpsRange != null) {
+            parameters.setPreviewFpsRange(
+                    previewFpsRange[Camera.Parameters.PREVIEW_FPS_MIN_INDEX],
+                    previewFpsRange[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]);
+        }
+
+        camera.setDisplayOrientation(getDisplayOrientation());
+        camera.setParameters(parameters);
+    }
+
+    /**
+     * Selects the most suitable preview frames per second range, given the desired frames per
+     * second.
+     *
+     * @param camera            the camera to select a frames per second range from
+     * @param desiredPreviewFps the desired frames per second for the camera preview frames
+     * @return the selected preview frames per second range
+     */
+    private int[] selectPreviewFpsRange(Camera camera, float desiredPreviewFps) {
+        // The camera API uses integers scaled by a factor of 1000 instead of floating-point frame
+        // rates.
+        int desiredPreviewFpsScaled = (int) (desiredPreviewFps * 1000.0f);
+
+        // The method for selecting the best range is to minimize the sum of the differences between
+        // the desired value and the upper and lower bounds of the range.  This may select a range
+        // that the desired value is outside of, but this is often preferred.  For example, if the
+        // desired frame rate is 29.97, the range (30, 30) is probably more desirable than the
+        // range (15, 30).
+        int[] selectedFpsRange = null;
+        int minDiff = Integer.MAX_VALUE;
+        List<int[]> previewFpsRangeList = camera.getParameters().getSupportedPreviewFpsRange();
+        for (int[] range : previewFpsRangeList) {
+            int deltaMin = desiredPreviewFpsScaled - range[Camera.Parameters.PREVIEW_FPS_MIN_INDEX];
+            int deltaMax = desiredPreviewFpsScaled - range[Camera.Parameters.PREVIEW_FPS_MAX_INDEX];
+            int diff = Math.abs(deltaMin) + Math.abs(deltaMax);
+            if (diff < minDiff) {
+                selectedFpsRange = range;
+                minDiff = diff;
+            }
+        }
+        return selectedFpsRange;
+    }
+
+    void openFlashlight(Camera camera) {
+        doSetTorch(camera, true);
+    }
+
+    void closeFlashlight(Camera camera) {
+        doSetTorch(camera, false);
+    }
+
+    private void doSetTorch(Camera camera, boolean newSetting) {
+        Camera.Parameters parameters = camera.getParameters();
+        String flashMode;
+        /** 是否支持闪光灯 */
+        if (newSetting) {
+            flashMode = findSettableValue(parameters.getSupportedFlashModes(), Camera.Parameters.FLASH_MODE_TORCH, Camera.Parameters.FLASH_MODE_ON);
+        } else {
+            flashMode = findSettableValue(parameters.getSupportedFlashModes(), Camera.Parameters.FLASH_MODE_OFF);
+        }
+        if (flashMode != null) {
+            parameters.setFlashMode(flashMode);
+        }
+        camera.setParameters(parameters);
+    }
+
+    private static String findSettableValue(Collection<String> supportedValues, String... desiredValues) {
+        String result = null;
+        if (supportedValues != null) {
+            for (String desiredValue : desiredValues) {
+                if (supportedValues.contains(desiredValue)) {
+                    result = desiredValue;
+                    break;
+                }
+            }
+        }
+        return result;
+    }
+
+    private int getDisplayOrientation() {
+        Camera.CameraInfo info = new Camera.CameraInfo();
+        Camera.getCameraInfo(Camera.CameraInfo.CAMERA_FACING_BACK, info);
+        WindowManager wm = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
+        if (wm == null) {
+            return 0;
+        }
+        Display display = wm.getDefaultDisplay();
+
+        int rotation = display.getRotation();
+        int degrees = 0;
+        switch (rotation) {
+            case Surface.ROTATION_0:
+                degrees = 0;
+                break;
+            case Surface.ROTATION_90:
+                degrees = 90;
+                break;
+            case Surface.ROTATION_180:
+                degrees = 180;
+                break;
+            case Surface.ROTATION_270:
+                degrees = 270;
+                break;
+        }
+
+        int result;
+        if (info.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
+            result = (info.orientation + degrees) % 360;
+            result = (360 - result) % 360;
+        } else {
+            result = (info.orientation - degrees + 360) % 360;
+        }
+        return result;
+    }
+
+    private static Point getPreviewResolution(Camera.Parameters parameters, Point screenResolution) {
+        Point previewResolution =
+                findBestPreviewSizeValue(parameters.getSupportedPreviewSizes(), screenResolution);
+        if (previewResolution == null) {
+            previewResolution = new Point((screenResolution.x >> 3) << 3, (screenResolution.y >> 3) << 3);
+        }
+        return previewResolution;
+    }
+
+    private static Point findBestPreviewSizeValue(List<Camera.Size> supportSizeList, Point screenResolution) {
+        int bestX = 0;
+        int bestY = 0;
+        int diff = Integer.MAX_VALUE;
+        for (Camera.Size previewSize : supportSizeList) {
+
+            int newX = previewSize.width;
+            int newY = previewSize.height;
+
+            int newDiff = Math.abs(newX - screenResolution.x) + Math.abs(newY - screenResolution.y);
+            if (newDiff == 0) {
+                bestX = newX;
+                bestY = newY;
+                break;
+            } else if (newDiff < diff) {
+                bestX = newX;
+                bestY = newY;
+                diff = newDiff;
+            }
+
+        }
+
+        if (bestX > 0 && bestY > 0) {
+            return new Point(bestX, bestY);
+        }
+        return null;
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/CameraPreview.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/CameraPreview.java
new file mode 100644
index 0000000..b273fd4
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/CameraPreview.java
@@ -0,0 +1,315 @@
+package co.candyhouse.app.util.qrcode.core;
+
+import android.content.Context;
+import android.content.pm.PackageManager;
+import android.graphics.Point;
+import android.graphics.Rect;
+import android.hardware.Camera;
+import android.view.MotionEvent;
+import android.view.SurfaceHolder;
+import android.view.SurfaceView;
+
+import java.util.Collections;
+
+public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback {
+    private Camera mCamera;
+    private boolean mPreviewing = false;
+    private boolean mSurfaceCreated = false;
+    private boolean mIsTouchFocusing = false;
+    private float mOldDist = 1f;
+    private CameraConfigurationManager mCameraConfigurationManager;
+    private Delegate mDelegate;
+
+    public CameraPreview(Context context) {
+        super(context);
+        getHolder().addCallback(this);
+    }
+
+    void setCamera(Camera camera) {
+        mCamera = camera;
+        if (mCamera != null) {
+            mCameraConfigurationManager = new CameraConfigurationManager(getContext());
+            mCameraConfigurationManager.initFromCameraParameters(mCamera);
+
+            if (mPreviewing) {
+                requestLayout();
+            } else {
+                showCameraPreview();
+            }
+        }
+    }
+
+    public void setDelegate(Delegate delegate) {
+        mDelegate = delegate;
+    }
+
+    @Override
+    public void surfaceCreated(SurfaceHolder surfaceHolder) {
+        mSurfaceCreated = true;
+    }
+
+    @Override
+    public void surfaceChanged(SurfaceHolder surfaceHolder, int format, int width, int height) {
+        if (surfaceHolder.getSurface() == null) {
+            return;
+        }
+        stopCameraPreview();
+        showCameraPreview();
+    }
+
+    @Override
+    public void surfaceDestroyed(SurfaceHolder surfaceHolder) {
+        mSurfaceCreated = false;
+        stopCameraPreview();
+    }
+
+    public void reactNativeShowCameraPreview() {
+        if (getHolder() == null || getHolder().getSurface() == null) {
+            return;
+        }
+
+        stopCameraPreview();
+        showCameraPreview();
+    }
+
+    private void showCameraPreview() {
+        if (mCamera != null) {
+            try {
+                mPreviewing = true;
+                SurfaceHolder surfaceHolder = getHolder();
+                surfaceHolder.setKeepScreenOn(true);
+                mCamera.setPreviewDisplay(surfaceHolder);
+
+                mCameraConfigurationManager.setDesiredCameraParameters(mCamera);
+                mCamera.startPreview();
+                if (mDelegate != null) {
+                    mDelegate.onStartPreview();
+                }
+                startContinuousAutoFocus();
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    void stopCameraPreview() {
+        if (mCamera != null) {
+            try {
+                mPreviewing = false;
+                mCamera.cancelAutoFocus();
+                mCamera.setOneShotPreviewCallback(null);
+                mCamera.stopPreview();
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    void openFlashlight() {
+        if (flashLightAvailable()) {
+            mCameraConfigurationManager.openFlashlight(mCamera);
+        }
+    }
+
+    void closeFlashlight() {
+        if (flashLightAvailable()) {
+            mCameraConfigurationManager.closeFlashlight(mCamera);
+        }
+    }
+
+    private boolean flashLightAvailable() {
+        return isPreviewing() && getContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
+    }
+
+    void onScanBoxRectChanged(Rect scanRect) {
+        if (mCamera == null || scanRect == null || scanRect.left <= 0 || scanRect.top <= 0) {
+            return;
+        }
+        int centerX = scanRect.centerX();
+        int centerY = scanRect.centerY();
+        int rectHalfWidth = scanRect.width() / 2;
+        int rectHalfHeight = scanRect.height() / 2;
+
+        BGQRCodeUtil.printRect("转换前", scanRect);
+
+        if (BGQRCodeUtil.isPortrait(getContext())) {
+            int temp = centerX;
+            centerX = centerY;
+            centerY = temp;
+
+            temp = rectHalfWidth;
+            rectHalfWidth = rectHalfHeight;
+            rectHalfHeight = temp;
+        }
+        scanRect = new Rect(centerX - rectHalfWidth, centerY - rectHalfHeight, centerX + rectHalfWidth, centerY + rectHalfHeight);
+        BGQRCodeUtil.printRect("转换后", scanRect);
+
+        BGQRCodeUtil.d("扫码框发生变化触发对焦测光");
+        handleFocusMetering(scanRect.centerX(), scanRect.centerY(), scanRect.width(), scanRect.height());
+    }
+
+    @Override
+    public boolean onTouchEvent(MotionEvent event) {
+        if (!isPreviewing()) {
+            return super.onTouchEvent(event);
+        }
+
+        if (event.getPointerCount() == 1 && (event.getAction() & MotionEvent.ACTION_MASK) == MotionEvent.ACTION_UP) {
+            if (mIsTouchFocusing) {
+                return true;
+            }
+            mIsTouchFocusing = true;
+            BGQRCodeUtil.d("手指触摸触发对焦测光");
+            float centerX = event.getX();
+            float centerY = event.getY();
+            if (BGQRCodeUtil.isPortrait(getContext())) {
+                float temp = centerX;
+                centerX = centerY;
+                centerY = temp;
+            }
+            int focusSize = BGQRCodeUtil.dp2px(getContext(), 120);
+            handleFocusMetering(centerX, centerY, focusSize, focusSize);
+        }
+
+        if (event.getPointerCount() == 2) {
+            switch (event.getAction() & MotionEvent.ACTION_MASK) {
+                case MotionEvent.ACTION_POINTER_DOWN:
+                    mOldDist = BGQRCodeUtil.calculateFingerSpacing(event);
+                    break;
+                case MotionEvent.ACTION_MOVE:
+                    float newDist = BGQRCodeUtil.calculateFingerSpacing(event);
+                    if (newDist > mOldDist) {
+                        handleZoom(true, mCamera);
+                    } else if (newDist < mOldDist) {
+                        handleZoom(false, mCamera);
+                    }
+                    break;
+            }
+        }
+        return true;
+    }
+
+    private static void handleZoom(boolean isZoomIn, Camera camera) {
+        Camera.Parameters params = camera.getParameters();
+        if (params.isZoomSupported()) {
+            int zoom = params.getZoom();
+            if (isZoomIn && zoom < params.getMaxZoom()) {
+                BGQRCodeUtil.d("放大");
+                zoom++;
+            } else if (!isZoomIn && zoom > 0) {
+                BGQRCodeUtil.d("缩小");
+                zoom--;
+            } else {
+                BGQRCodeUtil.d("既不放大也不缩小");
+            }
+            params.setZoom(zoom);
+            camera.setParameters(params);
+        } else {
+            BGQRCodeUtil.d("不支持缩放");
+        }
+    }
+
+    private void handleFocusMetering(float originFocusCenterX, float originFocusCenterY,
+                                     int originFocusWidth, int originFocusHeight) {
+        try {
+            boolean isNeedUpdate = false;
+            Camera.Parameters focusMeteringParameters = mCamera.getParameters();
+            Camera.Size size = focusMeteringParameters.getPreviewSize();
+            if (focusMeteringParameters.getMaxNumFocusAreas() > 0) {
+                BGQRCodeUtil.d("支持设置对焦区域");
+                isNeedUpdate = true;
+                Rect focusRect = BGQRCodeUtil.calculateFocusMeteringArea(1f,
+                        originFocusCenterX, originFocusCenterY,
+                        originFocusWidth, originFocusHeight,
+                        size.width, size.height);
+                BGQRCodeUtil.printRect("对焦区域", focusRect);
+                focusMeteringParameters.setFocusAreas(Collections.singletonList(new Camera.Area(focusRect, 1000)));
+                focusMeteringParameters.setFocusMode(Camera.Parameters.FOCUS_MODE_MACRO);
+            } else {
+                BGQRCodeUtil.d("不支持设置对焦区域");
+            }
+
+            if (focusMeteringParameters.getMaxNumMeteringAreas() > 0) {
+                BGQRCodeUtil.d("支持设置测光区域");
+                isNeedUpdate = true;
+                Rect meteringRect = BGQRCodeUtil.calculateFocusMeteringArea(1.5f,
+                        originFocusCenterX, originFocusCenterY,
+                        originFocusWidth, originFocusHeight,
+                        size.width, size.height);
+                BGQRCodeUtil.printRect("测光区域", meteringRect);
+                focusMeteringParameters.setMeteringAreas(Collections.singletonList(new Camera.Area(meteringRect, 1000)));
+            } else {
+                BGQRCodeUtil.d("不支持设置测光区域");
+            }
+
+            if (isNeedUpdate) {
+                mCamera.cancelAutoFocus();
+                mCamera.setParameters(focusMeteringParameters);
+                mCamera.autoFocus(new Camera.AutoFocusCallback() {
+                    public void onAutoFocus(boolean success, Camera camera) {
+                        if (success) {
+                            BGQRCodeUtil.d("对焦测光成功");
+                        } else {
+                            BGQRCodeUtil.e("对焦测光失败");
+                        }
+                        startContinuousAutoFocus();
+                    }
+                });
+            } else {
+                mIsTouchFocusing = false;
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            BGQRCodeUtil.e("对焦测光失败:" + e.getMessage());
+            startContinuousAutoFocus();
+        }
+    }
+
+    /**
+     * 连续对焦
+     */
+    private void startContinuousAutoFocus() {
+        mIsTouchFocusing = false;
+        if (mCamera == null) {
+            return;
+        }
+        try {
+            Camera.Parameters parameters = mCamera.getParameters();
+            // 连续对焦
+            parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE);
+            mCamera.setParameters(parameters);
+            // 要实现连续的自动对焦,这一句必须加上
+            mCamera.cancelAutoFocus();
+        } catch (Exception e) {
+            BGQRCodeUtil.e("连续对焦失败");
+        }
+    }
+
+    boolean isPreviewing() {
+        return mCamera != null && mPreviewing && mSurfaceCreated;
+    }
+
+    @Override
+    public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+        int width = getDefaultSize(getSuggestedMinimumWidth(), widthMeasureSpec);
+        int height = getDefaultSize(getSuggestedMinimumHeight(), heightMeasureSpec);
+        if (mCameraConfigurationManager != null && mCameraConfigurationManager.getCameraResolution() != null) {
+            Point cameraResolution = mCameraConfigurationManager.getCameraResolution();
+            // 取出来的cameraResolution高宽值与屏幕的高宽顺序是相反的
+            int cameraPreviewWidth = cameraResolution.x;
+            int cameraPreviewHeight = cameraResolution.y;
+            if (width * 1f / height < cameraPreviewWidth * 1f / cameraPreviewHeight) {
+                float ratio = cameraPreviewHeight * 1f / cameraPreviewWidth;
+                width = (int) (height / ratio + 0.5f);
+            } else {
+                float ratio = cameraPreviewWidth * 1f / cameraPreviewHeight;
+                height = (int) (width / ratio + 0.5f);
+            }
+        }
+        super.onMeasure(MeasureSpec.makeMeasureSpec(width, MeasureSpec.EXACTLY), MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY));
+    }
+
+    interface Delegate {
+        void onStartPreview();
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/ProcessDataTask.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/ProcessDataTask.java
new file mode 100644
index 0000000..675dc85
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/ProcessDataTask.java
@@ -0,0 +1,148 @@
+package co.candyhouse.app.util.qrcode.core;
+
+import android.graphics.Bitmap;
+import android.hardware.Camera;
+import android.os.AsyncTask;
+import android.text.TextUtils;
+
+import java.lang.ref.WeakReference;
+
+class ProcessDataTask extends AsyncTask<Void, Void, BGScanResult> {
+    private Camera mCamera;
+    private byte[] mData;
+    private boolean mIsPortrait;
+    private String mPicturePath;
+    private Bitmap mBitmap;
+    private WeakReference<QRCodeView> mQRCodeViewRef;
+    private static long sLastStartTime = 0;
+
+    ProcessDataTask(Camera camera, byte[] data, QRCodeView qrCodeView, boolean isPortrait) {
+        mCamera = camera;
+        mData = data;
+        mQRCodeViewRef = new WeakReference<>(qrCodeView);
+        mIsPortrait = isPortrait;
+    }
+
+    ProcessDataTask(String picturePath, QRCodeView qrCodeView) {
+        mPicturePath = picturePath;
+        mQRCodeViewRef = new WeakReference<>(qrCodeView);
+    }
+
+    ProcessDataTask(Bitmap bitmap, QRCodeView qrCodeView) {
+        mBitmap = bitmap;
+        mQRCodeViewRef = new WeakReference<>(qrCodeView);
+    }
+
+    ProcessDataTask perform() {
+        executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
+        return this;
+    }
+
+    void cancelTask() {
+        if (getStatus() != Status.FINISHED) {
+            cancel(true);
+        }
+    }
+
+    @Override
+    protected void onCancelled() {
+        super.onCancelled();
+        mQRCodeViewRef.clear();
+        mBitmap = null;
+        mData = null;
+    }
+
+    private BGScanResult processData(QRCodeView qrCodeView) {
+        if (mData == null) {
+            return null;
+        }
+
+        int width = 0;
+        int height = 0;
+        byte[] data = mData;
+        try {
+            Camera.Parameters parameters = mCamera.getParameters();
+            Camera.Size size = parameters.getPreviewSize();
+            width = size.width;
+            height = size.height;
+
+            if (mIsPortrait) {
+                data = new byte[mData.length];
+                for (int y = 0; y < height; y++) {
+                    for (int x = 0; x < width; x++) {
+                        data[x * height + height - y - 1] = mData[x + y * width];
+                    }
+                }
+                int tmp = width;
+                width = height;
+                height = tmp;
+            }
+
+            return qrCodeView.processData(data, width, height, false);
+        } catch (Exception e1) {
+            e1.printStackTrace();
+            try {
+                if (width != 0 && height != 0) {
+                    BGQRCodeUtil.d("识别失败重试");
+                    return qrCodeView.processData(data, width, height, true);
+                } else {
+                    return null;
+                }
+            } catch (Exception e2) {
+                e2.printStackTrace();
+                return null;
+            }
+        }
+    }
+
+    @Override
+    protected BGScanResult doInBackground(Void... params) {
+        QRCodeView qrCodeView = mQRCodeViewRef.get();
+        if (qrCodeView == null) {
+            return null;
+        }
+
+        if (mPicturePath != null) {
+            return qrCodeView.processBitmapData(BGQRCodeUtil.getDecodeAbleBitmap(mPicturePath));
+        } else if (mBitmap != null) {
+
+            BGScanResult result = qrCodeView.processBitmapData(mBitmap);
+            mBitmap = null;
+            return result;
+        } else {
+            if (BGQRCodeUtil.isDebug()) {
+                BGQRCodeUtil.d("两次任务执行的时间间隔:" + (System.currentTimeMillis() - sLastStartTime));
+                sLastStartTime = System.currentTimeMillis();
+            }
+            long startTime = System.currentTimeMillis();
+
+            BGScanResult scanResult = processData(qrCodeView);
+
+            if (BGQRCodeUtil.isDebug()) {
+                long time = System.currentTimeMillis() - startTime;
+                if (scanResult != null && !TextUtils.isEmpty(scanResult.result)) {
+                    BGQRCodeUtil.d("识别成功时间为:" + time);
+                } else {
+                    BGQRCodeUtil.e("识别失败时间为:" + time);
+                }
+            }
+
+            return scanResult;
+        }
+    }
+
+    @Override
+    protected void onPostExecute(BGScanResult result) {
+        QRCodeView qrCodeView = mQRCodeViewRef.get();
+        if (qrCodeView == null) {
+            return;
+        }
+
+        if (mPicturePath != null || mBitmap != null) {
+            mBitmap = null;
+            qrCodeView.onPostParseBitmapOrPicture(result);
+        } else {
+            qrCodeView.onPostParseData(result);
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/QRCodeView.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/QRCodeView.java
new file mode 100644
index 0000000..fe93f52
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/QRCodeView.java
@@ -0,0 +1,565 @@
+package co.candyhouse.app.util.qrcode.core;
+
+import android.animation.Animator;
+import android.animation.AnimatorListenerAdapter;
+import android.animation.ValueAnimator;
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.Canvas;
+import android.graphics.Paint;
+import android.graphics.PointF;
+import android.graphics.Rect;
+import android.hardware.Camera;
+import android.os.AsyncTask;
+import android.text.TextUtils;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.RelativeLayout;
+
+import co.candyhouse.app.R;
+
+public abstract class QRCodeView extends RelativeLayout implements Camera.PreviewCallback {
+    private static final int NO_CAMERA_ID = -1;
+    protected Camera mCamera;
+    protected CameraPreview mCameraPreview;
+    protected ScanBoxView mScanBoxView;
+    protected Delegate mDelegate;
+    protected boolean mSpotAble = false;
+    protected ProcessDataTask mProcessDataTask;
+    protected int mCameraId = Camera.CameraInfo.CAMERA_FACING_BACK;
+    private PointF[] mLocationPoints;
+    private Paint mPaint;
+    protected BarcodeType mBarcodeType = BarcodeType.HIGH_FREQUENCY;
+    private long mLastPreviewFrameTime = 0;
+    private ValueAnimator mAutoZoomAnimator;
+    private long mLastAutoZoomTime = 0;
+
+    private long mLastAmbientBrightnessRecordTime = System.currentTimeMillis();
+    private int mAmbientBrightnessDarkIndex = 0;
+    private static final long[] AMBIENT_BRIGHTNESS_DARK_LIST = new long[]{255, 255, 255, 255};
+    private static final int AMBIENT_BRIGHTNESS_WAIT_SCAN_TIME = 150;
+    private static final int AMBIENT_BRIGHTNESS_DARK = 60;
+
+    public QRCodeView(Context context, AttributeSet attributeSet) {
+        this(context, attributeSet, 0);
+    }
+
+    public QRCodeView(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+        initView(context, attrs);
+        setupReader();
+    }
+
+    private void initView(Context context, AttributeSet attrs) {
+        mCameraPreview = new CameraPreview(context);
+
+        mCameraPreview.setDelegate(new CameraPreview.Delegate() {
+            @Override
+            public void onStartPreview() {
+                setOneShotPreviewCallback();
+            }
+        });
+
+        mScanBoxView = new ScanBoxView(context);
+        mScanBoxView.init(this, attrs);
+        mCameraPreview.setId(R.id.bgaqrcode_camera_preview);
+        addView(mCameraPreview);
+        RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(
+                RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT);
+        addView(mScanBoxView, layoutParams);
+
+        mPaint = new Paint();
+        mPaint.setColor(getScanBoxView().getCornerColor());
+        mPaint.setStyle(Paint.Style.FILL);
+    }
+
+    private void setOneShotPreviewCallback() {
+        if (mSpotAble && mCameraPreview.isPreviewing()) {
+            try {
+                mCamera.setOneShotPreviewCallback(this);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    protected abstract void setupReader();
+
+    public void setDelegate(Delegate delegate) {
+        mDelegate = delegate;
+    }
+
+    public CameraPreview getCameraPreview() {
+        return mCameraPreview;
+    }
+
+    public ScanBoxView getScanBoxView() {
+        return mScanBoxView;
+    }
+
+    public void showScanRect() {
+        if (mScanBoxView != null) {
+            mScanBoxView.setVisibility(View.VISIBLE);
+        }
+    }
+
+    public void hiddenScanRect() {
+        if (mScanBoxView != null) {
+            mScanBoxView.setVisibility(View.GONE);
+        }
+    }
+
+    public void startCamera() {
+        startCamera(mCameraId);
+    }
+
+    public void startCamera(int cameraFacing) {
+        if (mCamera != null || Camera.getNumberOfCameras() == 0) {
+            return;
+        }
+        int ultimateCameraId = findCameraIdByFacing(cameraFacing);
+        if (ultimateCameraId != NO_CAMERA_ID) {
+            startCameraById(ultimateCameraId);
+            return;
+        }
+
+        if (cameraFacing == Camera.CameraInfo.CAMERA_FACING_BACK) {
+            ultimateCameraId = findCameraIdByFacing(Camera.CameraInfo.CAMERA_FACING_FRONT);
+        } else if (cameraFacing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
+            ultimateCameraId = findCameraIdByFacing(Camera.CameraInfo.CAMERA_FACING_BACK);
+        }
+        if (ultimateCameraId != NO_CAMERA_ID) {
+            startCameraById(ultimateCameraId);
+        }
+    }
+
+    private int findCameraIdByFacing(int cameraFacing) {
+        Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
+        for (int cameraId = 0; cameraId < Camera.getNumberOfCameras(); cameraId++) {
+            try {
+                Camera.getCameraInfo(cameraId, cameraInfo);
+                if (cameraInfo.facing == cameraFacing) {
+                    return cameraId;
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+        return NO_CAMERA_ID;
+    }
+
+    private void startCameraById(int cameraId) {
+        try {
+            mCameraId = cameraId;
+            mCamera = Camera.open(cameraId);
+            mCameraPreview.setCamera(mCamera);
+        } catch (Exception e) {
+            e.printStackTrace();
+            if (mDelegate != null) {
+                mDelegate.onScanQRCodeOpenCameraError();
+            }
+        }
+    }
+
+    /**
+     * 关闭摄像头预览,并且隐藏扫描框
+     */
+    public void stopCamera() {
+        try {
+            stopSpotAndHiddenRect();
+            if (mCamera != null) {
+                mCameraPreview.stopCameraPreview();
+                mCameraPreview.setCamera(null);
+                mCamera.release();
+                mCamera = null;
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    public void startSpot() {
+        mSpotAble = true;
+        startCamera();
+        setOneShotPreviewCallback();
+    }
+
+    public void stopSpot() {
+        mSpotAble = false;
+
+        if (mProcessDataTask != null) {
+            mProcessDataTask.cancelTask();
+            mProcessDataTask = null;
+        }
+
+        if (mCamera != null) {
+            try {
+                mCamera.setOneShotPreviewCallback(null);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    public void stopSpotAndHiddenRect() {
+        stopSpot();
+        hiddenScanRect();
+    }
+
+    /**
+     * 显示扫描框,并开始识别
+     */
+    public void startSpotAndShowRect() {
+        startSpot();
+        showScanRect();
+    }
+
+    public void openFlashlight() {
+        postDelayed(new Runnable() {
+            @Override
+            public void run() {
+                mCameraPreview.openFlashlight();
+            }
+        }, mCameraPreview.isPreviewing() ? 0 : 500);
+    }
+
+    public void closeFlashlight() {
+        mCameraPreview.closeFlashlight();
+    }
+
+    /**
+     * 销毁二维码扫描控件
+     */
+    public void onDestroy() {
+        stopCamera();
+        mDelegate = null;
+    }
+
+    /**
+     * 切换成扫描条码样式
+     */
+    public void changeToScanBarcodeStyle() {
+        if (!mScanBoxView.getIsBarcode()) {
+            mScanBoxView.setIsBarcode(true);
+        }
+    }
+
+    /**
+     * 切换成扫描二维码样式
+     */
+    public void changeToScanQRCodeStyle() {
+        if (mScanBoxView.getIsBarcode()) {
+            mScanBoxView.setIsBarcode(false);
+        }
+    }
+
+    /**
+     * 当前是否为条码扫描样式
+     */
+    public boolean getIsScanBarcodeStyle() {
+        return mScanBoxView.getIsBarcode();
+    }
+
+    @Override
+    public void onPreviewFrame(final byte[] data, final Camera camera) {
+        if (BGQRCodeUtil.isDebug()) {
+            BGQRCodeUtil.d("两次 onPreviewFrame 时间间隔:" + (System.currentTimeMillis() - mLastPreviewFrameTime));
+            mLastPreviewFrameTime = System.currentTimeMillis();
+        }
+
+        if (mCameraPreview != null && mCameraPreview.isPreviewing()) {
+            try {
+                handleAmbientBrightness(data, camera);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+
+        if (!mSpotAble || (mProcessDataTask != null && (mProcessDataTask.getStatus() == AsyncTask.Status.PENDING
+                || mProcessDataTask.getStatus() == AsyncTask.Status.RUNNING))) {
+            return;
+        }
+
+        mProcessDataTask = new ProcessDataTask(camera, data, this, BGQRCodeUtil.isPortrait(getContext())).perform();
+    }
+
+    private void handleAmbientBrightness(byte[] data, Camera camera) {
+        if (mCameraPreview == null || !mCameraPreview.isPreviewing()) {
+            return;
+        }
+        long currentTime = System.currentTimeMillis();
+        if (currentTime - mLastAmbientBrightnessRecordTime < AMBIENT_BRIGHTNESS_WAIT_SCAN_TIME) {
+            return;
+        }
+        mLastAmbientBrightnessRecordTime = currentTime;
+
+        int width = camera.getParameters().getPreviewSize().width;
+        int height = camera.getParameters().getPreviewSize().height;
+        // 像素点的总亮度
+        long pixelLightCount = 0L;
+        // 像素点的总数
+        long pixelCount = width * height;
+        // 采集步长,因为没有必要每个像素点都采集,可以跨一段采集一个,减少计算负担,必须大于等于1。
+        int step = 10;
+        // data.length - allCount * 1.5f 的目的是判断图像格式是不是 YUV420 格式,只有是这种格式才相等
+        //因为 int 整形与 float 浮点直接比较会出问题,所以这么比
+        if (Math.abs(data.length - pixelCount * 1.5f) < 0.00001f) {
+            for (int i = 0; i < pixelCount; i += step) {
+                // 如果直接加是不行的,因为 data[i] 记录的是色值并不是数值,byte 的范围是 +127 到 —128,
+                // 而亮度 FFFFFF 是 11111111 是 -127,所以这里需要先转为无符号 unsigned long 参考 Byte.toUnsignedLong()
+                pixelLightCount += ((long) data[i]) & 0xffL;
+            }
+            // 平均亮度
+            long cameraLight = pixelLightCount / (pixelCount / step);
+            // 更新历史记录
+            int lightSize = AMBIENT_BRIGHTNESS_DARK_LIST.length;
+            AMBIENT_BRIGHTNESS_DARK_LIST[mAmbientBrightnessDarkIndex = mAmbientBrightnessDarkIndex % lightSize] = cameraLight;
+            mAmbientBrightnessDarkIndex++;
+            boolean isDarkEnv = true;
+            // 判断在时间范围 AMBIENT_BRIGHTNESS_WAIT_SCAN_TIME * lightSize 内是不是亮度过暗
+            for (long ambientBrightness : AMBIENT_BRIGHTNESS_DARK_LIST) {
+                if (ambientBrightness > AMBIENT_BRIGHTNESS_DARK) {
+                    isDarkEnv = false;
+                    break;
+                }
+            }
+            BGQRCodeUtil.d("摄像头环境亮度为:" + cameraLight);
+            if (mDelegate != null) {
+                mDelegate.onCameraAmbientBrightnessChanged(isDarkEnv);
+            }
+        }
+    }
+
+    /**
+     * 解析本地图片二维码。返回二维码图片里的内容 或 null
+     *
+     * @param picturePath 要解析的二维码图片本地路径
+     */
+    public void decodeQRCode(String picturePath) {
+        mProcessDataTask = new ProcessDataTask(picturePath, this).perform();
+    }
+
+    /**
+     * 解析 Bitmap 二维码。返回二维码图片里的内容 或 null
+     *
+     * @param bitmap 要解析的二维码图片
+     */
+    public void decodeQRCode(Bitmap bitmap) {
+        mProcessDataTask = new ProcessDataTask(bitmap, this).perform();
+    }
+
+    protected abstract BGScanResult processData(byte[] data, int width, int height, boolean isRetry);
+
+    protected abstract BGScanResult processBitmapData(Bitmap bitmap);
+
+    void onPostParseData(BGScanResult scanResult) {
+        if (!mSpotAble) {
+            return;
+        }
+        String result = scanResult == null ? null : scanResult.result;
+        if (TextUtils.isEmpty(result)) {
+            try {
+                if (mCamera != null) {
+                    mCamera.setOneShotPreviewCallback(QRCodeView.this);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        } else {
+            mSpotAble = false;
+            try {
+                if (mDelegate != null) {
+                    mDelegate.onScanQRCodeSuccess(result);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    void onPostParseBitmapOrPicture(BGScanResult scanResult) {
+        if (mDelegate != null) {
+            String result = scanResult == null ? null : scanResult.result;
+            mDelegate.onScanQRCodeSuccess(result);
+        }
+    }
+
+    void onScanBoxRectChanged(Rect rect) {
+        mCameraPreview.onScanBoxRectChanged(rect);
+    }
+
+    @Override
+    protected void dispatchDraw(Canvas canvas) {
+        super.dispatchDraw(canvas);
+
+
+        if (!isShowLocationPoint() || mLocationPoints == null) {
+            return;
+        }
+
+        for (PointF pointF : mLocationPoints) {
+            canvas.drawCircle(pointF.x, pointF.y, 10, mPaint);
+        }
+        mLocationPoints = null;
+        postInvalidateDelayed(2000);
+    }
+
+    protected boolean isShowLocationPoint() {
+        return mScanBoxView != null && mScanBoxView.isShowLocationPoint();
+    }
+
+    protected boolean isAutoZoom() {
+        return mScanBoxView != null && mScanBoxView.isAutoZoom();
+    }
+
+    protected boolean transformToViewCoordinates(final PointF[] pointArr, final Rect scanBoxAreaRect, final boolean isNeedAutoZoom, final String result) {
+        if (pointArr == null || pointArr.length == 0) {
+            return false;
+        }
+
+        try {
+            // 不管横屏还是竖屏,size.width 大于 size.height
+            Camera.Size size = mCamera.getParameters().getPreviewSize();
+            boolean isMirrorPreview = mCameraId == Camera.CameraInfo.CAMERA_FACING_FRONT;
+            int statusBarHeight = BGQRCodeUtil.getStatusBarHeight(getContext());
+
+            PointF[] transformedPoints = new PointF[pointArr.length];
+            int index = 0;
+            for (PointF qrPoint : pointArr) {
+                transformedPoints[index] = transform(qrPoint.x, qrPoint.y, size.width, size.height, isMirrorPreview, statusBarHeight, scanBoxAreaRect);
+                index++;
+            }
+            mLocationPoints = transformedPoints;
+            postInvalidate();
+
+            if (isNeedAutoZoom) {
+                return handleAutoZoom(transformedPoints, result);
+            }
+            return false;
+        } catch (Exception e) {
+            mLocationPoints = null;
+            e.printStackTrace();
+            return false;
+        }
+    }
+
+    private boolean handleAutoZoom(PointF[] locationPoints, final String result) {
+        if (mCamera == null || mScanBoxView == null) {
+            return false;
+        }
+        if (locationPoints == null || locationPoints.length < 1) {
+            return false;
+        }
+        if (mAutoZoomAnimator != null && mAutoZoomAnimator.isRunning()) {
+            return true;
+        }
+        if (System.currentTimeMillis() - mLastAutoZoomTime < 1200) {
+            return true;
+        }
+        Camera.Parameters parameters = mCamera.getParameters();
+        if (!parameters.isZoomSupported()) {
+            return false;
+        }
+
+        float point1X = locationPoints[0].x;
+        float point1Y = locationPoints[0].y;
+        float point2X = locationPoints[1].x;
+        float point2Y = locationPoints[1].y;
+        float xLen = Math.abs(point1X - point2X);
+        float yLen = Math.abs(point1Y - point2Y);
+        int len = (int) Math.sqrt(xLen * xLen + yLen * yLen);
+
+        int scanBoxWidth = mScanBoxView.getRectWidth();
+        if (len > scanBoxWidth / 4) {
+            return false;
+        }
+        final int maxZoom = parameters.getMaxZoom();
+        final int zoomStep = maxZoom / 4;
+        final int zoom = parameters.getZoom();
+        post(new Runnable() {
+            @Override
+            public void run() {
+                startAutoZoom(zoom, Math.min(zoom + zoomStep, maxZoom), result);
+            }
+        });
+        return true;
+    }
+
+    private void startAutoZoom(int oldZoom, int newZoom, final String result) {
+        mAutoZoomAnimator = ValueAnimator.ofInt(oldZoom, newZoom);
+        mAutoZoomAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
+            @Override
+            public void onAnimationUpdate(ValueAnimator animation) {
+                if (mCameraPreview == null || !mCameraPreview.isPreviewing()) {
+                    return;
+                }
+                int zoom = (int) animation.getAnimatedValue();
+                Camera.Parameters parameters = mCamera.getParameters();
+                parameters.setZoom(zoom);
+                mCamera.setParameters(parameters);
+            }
+        });
+        mAutoZoomAnimator.addListener(new AnimatorListenerAdapter() {
+            @Override
+            public void onAnimationEnd(Animator animation) {
+                onPostParseData(new BGScanResult(result));
+            }
+        });
+        mAutoZoomAnimator.setDuration(600);
+        mAutoZoomAnimator.setRepeatCount(0);
+        mAutoZoomAnimator.start();
+        mLastAutoZoomTime = System.currentTimeMillis();
+    }
+
+    @Override
+    protected void onDetachedFromWindow() {
+        super.onDetachedFromWindow();
+        if (mAutoZoomAnimator != null) {
+            mAutoZoomAnimator.cancel();
+        }
+    }
+
+    private PointF transform(float originX, float originY, float cameraPreviewWidth, float cameraPreviewHeight, boolean isMirrorPreview, int statusBarHeight,
+                             final Rect scanBoxAreaRect) {
+        int viewWidth = getWidth();
+        int viewHeight = getHeight();
+
+        PointF result;
+        float scaleX;
+        float scaleY;
+
+        if (BGQRCodeUtil.isPortrait(getContext())) {
+            scaleX = viewWidth / cameraPreviewHeight;
+            scaleY = viewHeight / cameraPreviewWidth;
+            result = new PointF((cameraPreviewHeight - originX) * scaleX, (cameraPreviewWidth - originY) * scaleY);
+            result.y = viewHeight - result.y;
+            result.x = viewWidth - result.x;
+
+            if (scanBoxAreaRect == null) {
+                result.y += statusBarHeight;
+            }
+        } else {
+            scaleX = viewWidth / cameraPreviewWidth;
+            scaleY = viewHeight / cameraPreviewHeight;
+            result = new PointF(originX * scaleX, originY * scaleY);
+            if (isMirrorPreview) {
+                result.x = viewWidth - result.x;
+            }
+        }
+
+        if (scanBoxAreaRect != null) {
+            result.y += scanBoxAreaRect.top;
+            result.x += scanBoxAreaRect.left;
+        }
+
+        return result;
+    }
+
+    public interface Delegate {
+        void onScanQRCodeSuccess(String result);
+
+        void onCameraAmbientBrightnessChanged(boolean isDark);
+
+        void onScanQRCodeOpenCameraError();
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/ScanBoxView.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/ScanBoxView.java
new file mode 100644
index 0000000..e42c713
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/core/ScanBoxView.java
@@ -0,0 +1,963 @@
+package co.candyhouse.app.util.qrcode.core;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.graphics.Canvas;
+import android.graphics.Color;
+import android.graphics.Paint;
+import android.graphics.Rect;
+import android.graphics.RectF;
+import android.graphics.drawable.BitmapDrawable;
+import android.graphics.drawable.Drawable;
+import android.text.Layout;
+import android.text.StaticLayout;
+import android.text.TextPaint;
+import android.text.TextUtils;
+import android.util.AttributeSet;
+import android.view.View;
+
+import co.candyhouse.app.R;
+
+public class ScanBoxView extends View {
+    private int mMoveStepDistance;
+    private int mAnimDelayTime;
+
+    private Rect mFramingRect;
+    private float mScanLineTop;
+    private float mScanLineLeft;
+    private Paint mPaint;
+    private TextPaint mTipPaint;
+
+    private int mMaskColor;
+    private int mCornerColor;
+    private int mCornerLength;
+    private int mCornerSize;
+    private int mRectWidth;
+    private int mRectHeight;
+    private int mBarcodeRectHeight;
+    private int mTopOffset;
+    private int mScanLineSize;
+    private int mScanLineColor;
+    private int mScanLineMargin;
+    private boolean mIsShowDefaultScanLineDrawable;
+    private Drawable mCustomScanLineDrawable;
+    private Bitmap mScanLineBitmap;
+    private int mBorderSize;
+    private int mBorderColor;
+    private int mAnimTime;
+    private float mVerticalBias;
+    private int mCornerDisplayType;
+    private int mToolbarHeight;
+    private boolean mIsBarcode;
+    private String mQRCodeTipText;
+    private String mBarCodeTipText;
+    private String mTipText;
+    private int mTipTextSize;
+    private int mTipTextColor;
+    private boolean mIsTipTextBelowRect;
+    private int mTipTextMargin;
+    private boolean mIsShowTipTextAsSingleLine;
+    private int mTipBackgroundColor;
+    private boolean mIsShowTipBackground;
+    private boolean mIsScanLineReverse;
+    private boolean mIsShowDefaultGridScanLineDrawable;
+    private Drawable mCustomGridScanLineDrawable;
+    private Bitmap mGridScanLineBitmap;
+    private float mGridScanLineBottom;
+    private float mGridScanLineRight;
+
+    private Bitmap mOriginQRCodeScanLineBitmap;
+    private Bitmap mOriginBarCodeScanLineBitmap;
+    private Bitmap mOriginQRCodeGridScanLineBitmap;
+    private Bitmap mOriginBarCodeGridScanLineBitmap;
+
+
+    private float mHalfCornerSize;
+    private StaticLayout mTipTextSl;
+    private int mTipBackgroundRadius;
+
+    private boolean mIsOnlyDecodeScanBoxArea;
+    private boolean mIsShowLocationPoint;
+    private boolean mIsAutoZoom;
+
+    private QRCodeView mQRCodeView;
+
+    public ScanBoxView(Context context) {
+        super(context);
+        mPaint = new Paint();
+        mPaint.setAntiAlias(true);
+        mMaskColor = Color.parseColor("#33FFFFFF");
+        mCornerColor = Color.WHITE;
+        mCornerLength = BGQRCodeUtil.dp2px(context, 20);
+        mCornerSize = BGQRCodeUtil.dp2px(context, 3);
+        mScanLineSize = BGQRCodeUtil.dp2px(context, 1);
+        mScanLineColor = Color.WHITE;
+        //        mTopOffset = BGQRCodeUtil.dp2px(context, 90);
+        mRectWidth = BGQRCodeUtil.dp2px(context, 230);
+        mBarcodeRectHeight = BGQRCodeUtil.dp2px(context, 140);
+        mScanLineMargin = 0;
+        mIsShowDefaultScanLineDrawable = false;
+        mCustomScanLineDrawable = null;
+        mScanLineBitmap = null;
+        mBorderSize = BGQRCodeUtil.dp2px(context, 1);
+        mBorderColor = Color.WHITE;
+        mAnimTime = 1000;
+        mVerticalBias = -1;
+        mCornerDisplayType = 1;
+        mToolbarHeight = 0;
+        mIsBarcode = false;
+        mMoveStepDistance = BGQRCodeUtil.dp2px(context, 3);
+        mTipText = null;
+        mTipTextSize = BGQRCodeUtil.sp2px(context, 14);
+        mTipTextColor = Color.WHITE;
+        mIsTipTextBelowRect = false;
+        mTipTextMargin = BGQRCodeUtil.dp2px(context, 20);
+        mIsShowTipTextAsSingleLine = false;
+        mTipBackgroundColor = Color.parseColor("#00000000");
+        mIsShowTipBackground = false;
+        mIsScanLineReverse = false;
+        mIsShowDefaultGridScanLineDrawable = false;
+
+        mTipPaint = new TextPaint();
+        mTipPaint.setAntiAlias(true);
+
+        mTipBackgroundRadius = BGQRCodeUtil.dp2px(context, 4);
+
+        mIsOnlyDecodeScanBoxArea = false;
+        mIsShowLocationPoint = false;
+        mIsAutoZoom = false;
+    }
+
+    void init(QRCodeView qrCodeView, AttributeSet attrs) {
+        mQRCodeView = qrCodeView;
+
+        TypedArray typedArray = getContext().obtainStyledAttributes(attrs, R.styleable.QRCodeView);
+        final int count = typedArray.getIndexCount();
+        for (int i = 0; i < count; i++) {
+            initCustomAttr(typedArray.getIndex(i), typedArray);
+        }
+        typedArray.recycle();
+
+        afterInitCustomAttrs();
+    }
+
+    private void initCustomAttr(int attr, TypedArray typedArray) {
+        if (attr == R.styleable.QRCodeView_qrcv_topOffset) {
+            mTopOffset = typedArray.getDimensionPixelSize(attr, mTopOffset);
+        } else if (attr == R.styleable.QRCodeView_qrcv_cornerSize) {
+            mCornerSize = typedArray.getDimensionPixelSize(attr, mCornerSize);
+        } else if (attr == R.styleable.QRCodeView_qrcv_cornerLength) {
+            mCornerLength = typedArray.getDimensionPixelSize(attr, mCornerLength);
+        } else if (attr == R.styleable.QRCodeView_qrcv_scanLineSize) {
+            mScanLineSize = typedArray.getDimensionPixelSize(attr, mScanLineSize);
+        } else if (attr == R.styleable.QRCodeView_qrcv_rectWidth) {
+            mRectWidth = typedArray.getDimensionPixelSize(attr, mRectWidth);
+        } else if (attr == R.styleable.QRCodeView_qrcv_maskColor) {
+            mMaskColor = typedArray.getColor(attr, mMaskColor);
+        } else if (attr == R.styleable.QRCodeView_qrcv_cornerColor) {
+            mCornerColor = typedArray.getColor(attr, mCornerColor);
+        } else if (attr == R.styleable.QRCodeView_qrcv_scanLineColor) {
+            mScanLineColor = typedArray.getColor(attr, mScanLineColor);
+        } else if (attr == R.styleable.QRCodeView_qrcv_scanLineMargin) {
+            mScanLineMargin = typedArray.getDimensionPixelSize(attr, mScanLineMargin);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isShowDefaultScanLineDrawable) {
+            mIsShowDefaultScanLineDrawable = typedArray.getBoolean(attr, mIsShowDefaultScanLineDrawable);
+        } else if (attr == R.styleable.QRCodeView_qrcv_customScanLineDrawable) {
+            mCustomScanLineDrawable = typedArray.getDrawable(attr);
+        } else if (attr == R.styleable.QRCodeView_qrcv_borderSize) {
+            mBorderSize = typedArray.getDimensionPixelSize(attr, mBorderSize);
+        } else if (attr == R.styleable.QRCodeView_qrcv_borderColor) {
+            mBorderColor = typedArray.getColor(attr, mBorderColor);
+        } else if (attr == R.styleable.QRCodeView_qrcv_animTime) {
+            mAnimTime = typedArray.getInteger(attr, mAnimTime);
+        } else if (attr == R.styleable.QRCodeView_qrcv_verticalBias) {
+            mVerticalBias = typedArray.getFloat(attr, mVerticalBias);
+        } else if (attr == R.styleable.QRCodeView_qrcv_cornerDisplayType) {
+            mCornerDisplayType = typedArray.getInteger(attr, mCornerDisplayType);
+        } else if (attr == R.styleable.QRCodeView_qrcv_toolbarHeight) {
+            mToolbarHeight = typedArray.getDimensionPixelSize(attr, mToolbarHeight);
+        } else if (attr == R.styleable.QRCodeView_qrcv_barcodeRectHeight) {
+            mBarcodeRectHeight = typedArray.getDimensionPixelSize(attr, mBarcodeRectHeight);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isBarcode) {
+            mIsBarcode = typedArray.getBoolean(attr, mIsBarcode);
+        } else if (attr == R.styleable.QRCodeView_qrcv_barCodeTipText) {
+            mBarCodeTipText = typedArray.getString(attr);
+        } else if (attr == R.styleable.QRCodeView_qrcv_qrCodeTipText) {
+            mQRCodeTipText = typedArray.getString(attr);
+        } else if (attr == R.styleable.QRCodeView_qrcv_tipTextSize) {
+            mTipTextSize = typedArray.getDimensionPixelSize(attr, mTipTextSize);
+        } else if (attr == R.styleable.QRCodeView_qrcv_tipTextColor) {
+            mTipTextColor = typedArray.getColor(attr, mTipTextColor);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isTipTextBelowRect) {
+            mIsTipTextBelowRect = typedArray.getBoolean(attr, mIsTipTextBelowRect);
+        } else if (attr == R.styleable.QRCodeView_qrcv_tipTextMargin) {
+            mTipTextMargin = typedArray.getDimensionPixelSize(attr, mTipTextMargin);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isShowTipTextAsSingleLine) {
+            mIsShowTipTextAsSingleLine = typedArray.getBoolean(attr, mIsShowTipTextAsSingleLine);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isShowTipBackground) {
+            mIsShowTipBackground = typedArray.getBoolean(attr, mIsShowTipBackground);
+        } else if (attr == R.styleable.QRCodeView_qrcv_tipBackgroundColor) {
+            mTipBackgroundColor = typedArray.getColor(attr, mTipBackgroundColor);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isScanLineReverse) {
+            mIsScanLineReverse = typedArray.getBoolean(attr, mIsScanLineReverse);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isShowDefaultGridScanLineDrawable) {
+            mIsShowDefaultGridScanLineDrawable = typedArray.getBoolean(attr, mIsShowDefaultGridScanLineDrawable);
+        } else if (attr == R.styleable.QRCodeView_qrcv_customGridScanLineDrawable) {
+            mCustomGridScanLineDrawable = typedArray.getDrawable(attr);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isOnlyDecodeScanBoxArea) {
+            mIsOnlyDecodeScanBoxArea = typedArray.getBoolean(attr, mIsOnlyDecodeScanBoxArea);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isShowLocationPoint) {
+            mIsShowLocationPoint = typedArray.getBoolean(attr, mIsShowLocationPoint);
+        } else if (attr == R.styleable.QRCodeView_qrcv_isAutoZoom) {
+            mIsAutoZoom = typedArray.getBoolean(attr, mIsAutoZoom);
+        }
+    }
+
+    private void afterInitCustomAttrs() {
+        if (mCustomGridScanLineDrawable != null) {
+            mOriginQRCodeGridScanLineBitmap = ((BitmapDrawable) mCustomGridScanLineDrawable).getBitmap();
+        }
+        if (mOriginQRCodeGridScanLineBitmap == null) {
+            mOriginQRCodeGridScanLineBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.qrcode_default_grid_scan_line);
+            mOriginQRCodeGridScanLineBitmap = BGQRCodeUtil.makeTintBitmap(mOriginQRCodeGridScanLineBitmap, mScanLineColor);
+        }
+        mOriginBarCodeGridScanLineBitmap = BGQRCodeUtil.adjustPhotoRotation(mOriginQRCodeGridScanLineBitmap, 90);
+        mOriginBarCodeGridScanLineBitmap = BGQRCodeUtil.adjustPhotoRotation(mOriginBarCodeGridScanLineBitmap, 90);
+        mOriginBarCodeGridScanLineBitmap = BGQRCodeUtil.adjustPhotoRotation(mOriginBarCodeGridScanLineBitmap, 90);
+
+
+        if (mCustomScanLineDrawable != null) {
+            mOriginQRCodeScanLineBitmap = ((BitmapDrawable) mCustomScanLineDrawable).getBitmap();
+        }
+        if (mOriginQRCodeScanLineBitmap == null) {
+            mOriginQRCodeScanLineBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.qrcode_default_scan_line);
+            mOriginQRCodeScanLineBitmap = BGQRCodeUtil.makeTintBitmap(mOriginQRCodeScanLineBitmap, mScanLineColor);
+        }
+        mOriginBarCodeScanLineBitmap = BGQRCodeUtil.adjustPhotoRotation(mOriginQRCodeScanLineBitmap, 90);
+
+        mTopOffset += mToolbarHeight;
+        mHalfCornerSize = 1.0f * mCornerSize / 2;
+
+        mTipPaint.setTextSize(mTipTextSize);
+        mTipPaint.setColor(mTipTextColor);
+
+        setIsBarcode(mIsBarcode);
+    }
+
+    @Override
+    public void onDraw(Canvas canvas) {
+        if (mFramingRect == null) {
+            return;
+        }
+
+        drawMask(canvas);
+
+        drawBorderLine(canvas);
+
+        drawCornerLine(canvas);
+
+        drawScanLine(canvas);
+
+        drawTipText(canvas);
+
+        moveScanLine();
+    }
+
+    /**
+     * 画遮罩层
+     */
+    private void drawMask(Canvas canvas) {
+        int width = canvas.getWidth();
+        int height = canvas.getHeight();
+
+        if (mMaskColor != Color.TRANSPARENT) {
+            mPaint.setStyle(Paint.Style.FILL);
+            mPaint.setColor(mMaskColor);
+            canvas.drawRect(0, 0, width, mFramingRect.top, mPaint);
+            canvas.drawRect(0, mFramingRect.top, mFramingRect.left, mFramingRect.bottom + 1, mPaint);
+            canvas.drawRect(mFramingRect.right + 1, mFramingRect.top, width, mFramingRect.bottom + 1, mPaint);
+            canvas.drawRect(0, mFramingRect.bottom + 1, width, height, mPaint);
+        }
+    }
+
+    /**
+     * 画边框线
+     */
+    private void drawBorderLine(Canvas canvas) {
+        if (mBorderSize > 0) {
+            mPaint.setStyle(Paint.Style.STROKE);
+            mPaint.setColor(mBorderColor);
+            mPaint.setStrokeWidth(mBorderSize);
+            canvas.drawRect(mFramingRect, mPaint);
+        }
+    }
+
+    /**
+     * 画四个直角的线
+     */
+    private void drawCornerLine(Canvas canvas) {
+        if (mHalfCornerSize > 0) {
+            mPaint.setStyle(Paint.Style.STROKE);
+            mPaint.setColor(mCornerColor);
+            mPaint.setStrokeWidth(mCornerSize);
+            if (mCornerDisplayType == 1) {
+                canvas.drawLine(mFramingRect.left - mHalfCornerSize, mFramingRect.top, mFramingRect.left - mHalfCornerSize + mCornerLength, mFramingRect.top,
+                        mPaint);
+                canvas.drawLine(mFramingRect.left, mFramingRect.top - mHalfCornerSize, mFramingRect.left, mFramingRect.top - mHalfCornerSize + mCornerLength,
+                        mPaint);
+                canvas.drawLine(mFramingRect.right + mHalfCornerSize, mFramingRect.top, mFramingRect.right + mHalfCornerSize - mCornerLength, mFramingRect.top,
+                        mPaint);
+                canvas.drawLine(mFramingRect.right, mFramingRect.top - mHalfCornerSize, mFramingRect.right, mFramingRect.top - mHalfCornerSize + mCornerLength,
+                        mPaint);
+
+                canvas.drawLine(mFramingRect.left - mHalfCornerSize, mFramingRect.bottom, mFramingRect.left - mHalfCornerSize + mCornerLength,
+                        mFramingRect.bottom, mPaint);
+                canvas.drawLine(mFramingRect.left, mFramingRect.bottom + mHalfCornerSize, mFramingRect.left,
+                        mFramingRect.bottom + mHalfCornerSize - mCornerLength, mPaint);
+                canvas.drawLine(mFramingRect.right + mHalfCornerSize, mFramingRect.bottom, mFramingRect.right + mHalfCornerSize - mCornerLength,
+                        mFramingRect.bottom, mPaint);
+                canvas.drawLine(mFramingRect.right, mFramingRect.bottom + mHalfCornerSize, mFramingRect.right,
+                        mFramingRect.bottom + mHalfCornerSize - mCornerLength, mPaint);
+            } else if (mCornerDisplayType == 2) {
+                canvas.drawLine(mFramingRect.left, mFramingRect.top + mHalfCornerSize, mFramingRect.left + mCornerLength, mFramingRect.top + mHalfCornerSize,
+                        mPaint);
+                canvas.drawLine(mFramingRect.left + mHalfCornerSize, mFramingRect.top, mFramingRect.left + mHalfCornerSize, mFramingRect.top + mCornerLength,
+                        mPaint);
+                canvas.drawLine(mFramingRect.right, mFramingRect.top + mHalfCornerSize, mFramingRect.right - mCornerLength, mFramingRect.top + mHalfCornerSize,
+                        mPaint);
+                canvas.drawLine(mFramingRect.right - mHalfCornerSize, mFramingRect.top, mFramingRect.right - mHalfCornerSize, mFramingRect.top + mCornerLength,
+                        mPaint);
+
+                canvas.drawLine(mFramingRect.left, mFramingRect.bottom - mHalfCornerSize, mFramingRect.left + mCornerLength,
+                        mFramingRect.bottom - mHalfCornerSize, mPaint);
+                canvas.drawLine(mFramingRect.left + mHalfCornerSize, mFramingRect.bottom, mFramingRect.left + mHalfCornerSize,
+                        mFramingRect.bottom - mCornerLength, mPaint);
+                canvas.drawLine(mFramingRect.right, mFramingRect.bottom - mHalfCornerSize, mFramingRect.right - mCornerLength,
+                        mFramingRect.bottom - mHalfCornerSize, mPaint);
+                canvas.drawLine(mFramingRect.right - mHalfCornerSize, mFramingRect.bottom, mFramingRect.right - mHalfCornerSize,
+                        mFramingRect.bottom - mCornerLength, mPaint);
+            }
+        }
+    }
+
+    /**
+     * 画扫描线
+     */
+    private void drawScanLine(Canvas canvas) {
+        if (mIsBarcode) {
+            if (mGridScanLineBitmap != null) {
+                RectF dstGridRectF = new RectF(mFramingRect.left + mHalfCornerSize + 0.5f, mFramingRect.top + mHalfCornerSize + mScanLineMargin,
+                        mGridScanLineRight, mFramingRect.bottom - mHalfCornerSize - mScanLineMargin);
+
+                Rect srcGridRect = new Rect((int) (mGridScanLineBitmap.getWidth() - dstGridRectF.width()), 0, mGridScanLineBitmap.getWidth(),
+                        mGridScanLineBitmap.getHeight());
+
+                if (srcGridRect.left < 0) {
+                    srcGridRect.left = 0;
+                    dstGridRectF.left = dstGridRectF.right - srcGridRect.width();
+                }
+
+                canvas.drawBitmap(mGridScanLineBitmap, srcGridRect, dstGridRectF, mPaint);
+            } else if (mScanLineBitmap != null) {
+                RectF lineRect = new RectF(mScanLineLeft, mFramingRect.top + mHalfCornerSize + mScanLineMargin, mScanLineLeft + mScanLineBitmap.getWidth(),
+                        mFramingRect.bottom - mHalfCornerSize - mScanLineMargin);
+                canvas.drawBitmap(mScanLineBitmap, null, lineRect, mPaint);
+            } else {
+                mPaint.setStyle(Paint.Style.FILL);
+                mPaint.setColor(mScanLineColor);
+                canvas.drawRect(mScanLineLeft, mFramingRect.top + mHalfCornerSize + mScanLineMargin, mScanLineLeft + mScanLineSize,
+                        mFramingRect.bottom - mHalfCornerSize - mScanLineMargin, mPaint);
+            }
+        } else {
+            if (mGridScanLineBitmap != null) {
+                RectF dstGridRectF = new RectF(mFramingRect.left + mHalfCornerSize + mScanLineMargin, mFramingRect.top + mHalfCornerSize + 0.5f,
+                        mFramingRect.right - mHalfCornerSize - mScanLineMargin, mGridScanLineBottom);
+
+                Rect srcRect = new Rect(0, (int) (mGridScanLineBitmap.getHeight() - dstGridRectF.height()), mGridScanLineBitmap.getWidth(),
+                        mGridScanLineBitmap.getHeight());
+
+                if (srcRect.top < 0) {
+                    srcRect.top = 0;
+                    dstGridRectF.top = dstGridRectF.bottom - srcRect.height();
+                }
+
+                canvas.drawBitmap(mGridScanLineBitmap, srcRect, dstGridRectF, mPaint);
+            } else if (mScanLineBitmap != null) {
+                RectF lineRect = new RectF(mFramingRect.left + mHalfCornerSize + mScanLineMargin, mScanLineTop,
+                        mFramingRect.right - mHalfCornerSize - mScanLineMargin, mScanLineTop + mScanLineBitmap.getHeight());
+                canvas.drawBitmap(mScanLineBitmap, null, lineRect, mPaint);
+            } else {
+                mPaint.setStyle(Paint.Style.FILL);
+                mPaint.setColor(mScanLineColor);
+                canvas.drawRect(mFramingRect.left + mHalfCornerSize + mScanLineMargin, mScanLineTop, mFramingRect.right - mHalfCornerSize - mScanLineMargin,
+                        mScanLineTop + mScanLineSize, mPaint);
+            }
+        }
+    }
+
+    /**
+     * 画提示文本
+     */
+    private void drawTipText(Canvas canvas) {
+        if (TextUtils.isEmpty(mTipText) || mTipTextSl == null) {
+            return;
+        }
+
+        if (mIsTipTextBelowRect) {
+            if (mIsShowTipBackground) {
+                mPaint.setColor(mTipBackgroundColor);
+                mPaint.setStyle(Paint.Style.FILL);
+                if (mIsShowTipTextAsSingleLine) {
+                    Rect tipRect = new Rect();
+                    mTipPaint.getTextBounds(mTipText, 0, mTipText.length(), tipRect);
+                    float left = (canvas.getWidth() - tipRect.width()) / 2 - mTipBackgroundRadius;
+                    canvas.drawRoundRect(
+                            new RectF(left, mFramingRect.bottom + mTipTextMargin - mTipBackgroundRadius, left + tipRect.width() + 2 * mTipBackgroundRadius,
+                                    mFramingRect.bottom + mTipTextMargin + mTipTextSl.getHeight() + mTipBackgroundRadius), mTipBackgroundRadius,
+                            mTipBackgroundRadius, mPaint);
+                } else {
+                    canvas.drawRoundRect(new RectF(mFramingRect.left, mFramingRect.bottom + mTipTextMargin - mTipBackgroundRadius, mFramingRect.right,
+                                    mFramingRect.bottom + mTipTextMargin + mTipTextSl.getHeight() + mTipBackgroundRadius), mTipBackgroundRadius,
+                            mTipBackgroundRadius,
+                            mPaint);
+                }
+            }
+
+            canvas.save();
+            if (mIsShowTipTextAsSingleLine) {
+                canvas.translate(0, mFramingRect.bottom + mTipTextMargin);
+            } else {
+                canvas.translate(mFramingRect.left + mTipBackgroundRadius, mFramingRect.bottom + mTipTextMargin);
+            }
+            mTipTextSl.draw(canvas);
+            canvas.restore();
+        } else {
+            if (mIsShowTipBackground) {
+                mPaint.setColor(mTipBackgroundColor);
+                mPaint.setStyle(Paint.Style.FILL);
+
+                if (mIsShowTipTextAsSingleLine) {
+                    Rect tipRect = new Rect();
+                    mTipPaint.getTextBounds(mTipText, 0, mTipText.length(), tipRect);
+                    float left = (canvas.getWidth() - tipRect.width()) / 2 - mTipBackgroundRadius;
+                    canvas.drawRoundRect(new RectF(left, mFramingRect.top - mTipTextMargin - mTipTextSl.getHeight() - mTipBackgroundRadius,
+                                    left + tipRect.width() + 2 * mTipBackgroundRadius, mFramingRect.top - mTipTextMargin + mTipBackgroundRadius),
+                            mTipBackgroundRadius,
+                            mTipBackgroundRadius, mPaint);
+                } else {
+                    canvas.drawRoundRect(
+                            new RectF(mFramingRect.left, mFramingRect.top - mTipTextMargin - mTipTextSl.getHeight() - mTipBackgroundRadius, mFramingRect.right,
+                                    mFramingRect.top - mTipTextMargin + mTipBackgroundRadius), mTipBackgroundRadius, mTipBackgroundRadius, mPaint);
+                }
+            }
+
+            canvas.save();
+            if (mIsShowTipTextAsSingleLine) {
+                canvas.translate(0, mFramingRect.top - mTipTextMargin - mTipTextSl.getHeight());
+            } else {
+                canvas.translate(mFramingRect.left + mTipBackgroundRadius, mFramingRect.top - mTipTextMargin - mTipTextSl.getHeight());
+            }
+            mTipTextSl.draw(canvas);
+            canvas.restore();
+        }
+    }
+
+    /**
+     * 移动扫描线的位置
+     */
+    private void moveScanLine() {
+        if (mIsBarcode) {
+            if (mGridScanLineBitmap == null) {
+                // 处理非网格扫描图片的情况
+                mScanLineLeft += mMoveStepDistance;
+                int scanLineSize = mScanLineSize;
+                if (mScanLineBitmap != null) {
+                    scanLineSize = mScanLineBitmap.getWidth();
+                }
+
+                if (mIsScanLineReverse) {
+                    if (mScanLineLeft + scanLineSize > mFramingRect.right - mHalfCornerSize || mScanLineLeft < mFramingRect.left + mHalfCornerSize) {
+                        mMoveStepDistance = -mMoveStepDistance;
+                    }
+                } else {
+                    if (mScanLineLeft + scanLineSize > mFramingRect.right - mHalfCornerSize) {
+                        mScanLineLeft = mFramingRect.left + mHalfCornerSize + 0.5f;
+                    }
+                }
+            } else {
+                // 处理网格扫描图片的情况
+                mGridScanLineRight += mMoveStepDistance;
+                if (mGridScanLineRight > mFramingRect.right - mHalfCornerSize) {
+                    mGridScanLineRight = mFramingRect.left + mHalfCornerSize + 0.5f;
+                }
+            }
+        } else {
+            if (mGridScanLineBitmap == null) {
+                // 处理非网格扫描图片的情况
+                mScanLineTop += mMoveStepDistance;
+                int scanLineSize = mScanLineSize;
+                if (mScanLineBitmap != null) {
+                    scanLineSize = mScanLineBitmap.getHeight();
+                }
+
+                if (mIsScanLineReverse) {
+                    if (mScanLineTop + scanLineSize > mFramingRect.bottom - mHalfCornerSize || mScanLineTop < mFramingRect.top + mHalfCornerSize) {
+                        mMoveStepDistance = -mMoveStepDistance;
+                    }
+                } else {
+                    if (mScanLineTop + scanLineSize > mFramingRect.bottom - mHalfCornerSize) {
+                        mScanLineTop = mFramingRect.top + mHalfCornerSize + 0.5f;
+                    }
+                }
+            } else {
+                // 处理网格扫描图片的情况
+                mGridScanLineBottom += mMoveStepDistance;
+                if (mGridScanLineBottom > mFramingRect.bottom - mHalfCornerSize) {
+                    mGridScanLineBottom = mFramingRect.top + mHalfCornerSize + 0.5f;
+                }
+            }
+
+        }
+        postInvalidateDelayed(mAnimDelayTime, mFramingRect.left, mFramingRect.top, mFramingRect.right, mFramingRect.bottom);
+    }
+
+    @Override
+    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
+        super.onSizeChanged(w, h, oldw, oldh);
+        calFramingRect();
+    }
+
+    private void calFramingRect() {
+        int leftOffset = (getWidth() - mRectWidth) / 2;
+        mFramingRect = new Rect(leftOffset, mTopOffset, leftOffset + mRectWidth, mTopOffset + mRectHeight);
+
+        if (mIsBarcode) {
+            mGridScanLineRight = mScanLineLeft = mFramingRect.left + mHalfCornerSize + 0.5f;
+        } else {
+            mGridScanLineBottom = mScanLineTop = mFramingRect.top + mHalfCornerSize + 0.5f;
+        }
+
+        if (mQRCodeView != null && isOnlyDecodeScanBoxArea()) {
+            mQRCodeView.onScanBoxRectChanged(new Rect(mFramingRect));
+        }
+    }
+
+    public Rect getScanBoxAreaRect(int previewHeight) {
+        if (mIsOnlyDecodeScanBoxArea && getVisibility() == View.VISIBLE) {
+            Rect rect = new Rect(mFramingRect);
+            float ratio = 1.0f * previewHeight / getMeasuredHeight();
+
+            float centerX = rect.exactCenterX() * ratio;
+            float centerY = rect.exactCenterY() * ratio;
+
+            float halfWidth = rect.width() / 2f;
+            float halfHeight = rect.height() / 2f;
+            float newHalfWidth = halfWidth * ratio;
+            float newHalfHeight = halfHeight * ratio;
+
+            rect.left = (int) (centerX - newHalfWidth);
+            rect.right = (int) (centerX + newHalfWidth);
+            rect.top = (int) (centerY - newHalfHeight);
+            rect.bottom = (int) (centerY + newHalfHeight);
+            return rect;
+        } else {
+            return null;
+        }
+    }
+
+    public void setIsBarcode(boolean isBarcode) {
+        mIsBarcode = isBarcode;
+        refreshScanBox();
+    }
+
+    private void refreshScanBox() {
+        if (mCustomGridScanLineDrawable != null || mIsShowDefaultGridScanLineDrawable) {
+            if (mIsBarcode) {
+                mGridScanLineBitmap = mOriginBarCodeGridScanLineBitmap;
+            } else {
+                mGridScanLineBitmap = mOriginQRCodeGridScanLineBitmap;
+            }
+        } else if (mCustomScanLineDrawable != null || mIsShowDefaultScanLineDrawable) {
+            if (mIsBarcode) {
+                mScanLineBitmap = mOriginBarCodeScanLineBitmap;
+            } else {
+                mScanLineBitmap = mOriginQRCodeScanLineBitmap;
+            }
+        }
+
+        if (mIsBarcode) {
+            mTipText = mBarCodeTipText;
+            mRectHeight = mBarcodeRectHeight;
+            mAnimDelayTime = (int) ((1.0f * mAnimTime * mMoveStepDistance) / mRectWidth);
+        } else {
+            mTipText = mQRCodeTipText;
+            mRectHeight = mRectWidth;
+            mAnimDelayTime = (int) ((1.0f * mAnimTime * mMoveStepDistance) / mRectHeight);
+        }
+
+        if (!TextUtils.isEmpty(mTipText)) {
+            if (mIsShowTipTextAsSingleLine) {
+                mTipTextSl = new StaticLayout(mTipText, mTipPaint, BGQRCodeUtil.getScreenResolution(getContext()).x, Layout.Alignment.ALIGN_CENTER, 1.0f, 0,
+                        true);
+            } else {
+                mTipTextSl = new StaticLayout(mTipText, mTipPaint, mRectWidth - 2 * mTipBackgroundRadius, Layout.Alignment.ALIGN_CENTER, 1.0f, 0, true);
+            }
+        }
+
+        if (mVerticalBias != -1) {
+            int screenHeight = BGQRCodeUtil.getScreenResolution(getContext()).y - BGQRCodeUtil.getStatusBarHeight(getContext());
+            if (mToolbarHeight == 0) {
+                mTopOffset = +(int) ((screenHeight) / mVerticalBias - mRectHeight / 2);
+            } else {
+                mTopOffset = mToolbarHeight + (int) ((screenHeight - mToolbarHeight) / mVerticalBias - mRectHeight / 2);
+            }
+        }
+
+        calFramingRect();
+
+        postInvalidate();
+    }
+
+    public boolean getIsBarcode() {
+        return mIsBarcode;
+    }
+
+    public int getMaskColor() {
+        return mMaskColor;
+    }
+
+    public void setMaskColor(int maskColor) {
+        mMaskColor = maskColor;
+        refreshScanBox();
+    }
+
+    public int getCornerColor() {
+        return mCornerColor;
+    }
+
+    public void setCornerColor(int cornerColor) {
+        mCornerColor = cornerColor;
+        refreshScanBox();
+    }
+
+    public int getCornerLength() {
+        return mCornerLength;
+    }
+
+    public void setCornerLength(int cornerLength) {
+        mCornerLength = cornerLength;
+        refreshScanBox();
+    }
+
+    public int getCornerSize() {
+        return mCornerSize;
+    }
+
+    public void setCornerSize(int cornerSize) {
+        mCornerSize = cornerSize;
+        refreshScanBox();
+    }
+
+    public int getRectWidth() {
+        return mRectWidth;
+    }
+
+    public void setRectWidth(int rectWidth) {
+        mRectWidth = rectWidth;
+        refreshScanBox();
+    }
+
+    public int getRectHeight() {
+        return mRectHeight;
+    }
+
+    public void setRectHeight(int rectHeight) {
+        mRectHeight = rectHeight;
+        refreshScanBox();
+    }
+
+    public int getBarcodeRectHeight() {
+        return mBarcodeRectHeight;
+    }
+
+    public void setBarcodeRectHeight(int barcodeRectHeight) {
+        mBarcodeRectHeight = barcodeRectHeight;
+        refreshScanBox();
+    }
+
+    public int getTopOffset() {
+        return mTopOffset;
+    }
+
+    public void setTopOffset(int topOffset) {
+        mTopOffset = topOffset;
+        refreshScanBox();
+    }
+
+    public int getScanLineSize() {
+        return mScanLineSize;
+    }
+
+    public void setScanLineSize(int scanLineSize) {
+        mScanLineSize = scanLineSize;
+        refreshScanBox();
+    }
+
+    public int getScanLineColor() {
+        return mScanLineColor;
+    }
+
+    public void setScanLineColor(int scanLineColor) {
+        mScanLineColor = scanLineColor;
+        refreshScanBox();
+    }
+
+    public int getScanLineMargin() {
+        return mScanLineMargin;
+    }
+
+    public void setScanLineMargin(int scanLineMargin) {
+        mScanLineMargin = scanLineMargin;
+        refreshScanBox();
+    }
+
+    public boolean isShowDefaultScanLineDrawable() {
+        return mIsShowDefaultScanLineDrawable;
+    }
+
+    public void setShowDefaultScanLineDrawable(boolean showDefaultScanLineDrawable) {
+        mIsShowDefaultScanLineDrawable = showDefaultScanLineDrawable;
+        refreshScanBox();
+    }
+
+    public Drawable getCustomScanLineDrawable() {
+        return mCustomScanLineDrawable;
+    }
+
+    public void setCustomScanLineDrawable(Drawable customScanLineDrawable) {
+        mCustomScanLineDrawable = customScanLineDrawable;
+        refreshScanBox();
+    }
+
+    public Bitmap getScanLineBitmap() {
+        return mScanLineBitmap;
+    }
+
+    public void setScanLineBitmap(Bitmap scanLineBitmap) {
+        mScanLineBitmap = scanLineBitmap;
+        refreshScanBox();
+    }
+
+    public int getBorderSize() {
+        return mBorderSize;
+    }
+
+    public void setBorderSize(int borderSize) {
+        mBorderSize = borderSize;
+        refreshScanBox();
+    }
+
+    public int getBorderColor() {
+        return mBorderColor;
+    }
+
+    public void setBorderColor(int borderColor) {
+        mBorderColor = borderColor;
+        refreshScanBox();
+    }
+
+    public int getAnimTime() {
+        return mAnimTime;
+    }
+
+    public void setAnimTime(int animTime) {
+        mAnimTime = animTime;
+        refreshScanBox();
+    }
+
+    public float getVerticalBias() {
+        return mVerticalBias;
+    }
+
+    public void setVerticalBias(float verticalBias) {
+        mVerticalBias = verticalBias;
+        refreshScanBox();
+    }
+
+    public int getToolbarHeight() {
+        return mToolbarHeight;
+    }
+
+    public void setToolbarHeight(int toolbarHeight) {
+        mToolbarHeight = toolbarHeight;
+        refreshScanBox();
+    }
+
+    public String getQRCodeTipText() {
+        return mQRCodeTipText;
+    }
+
+    public void setQRCodeTipText(String qrCodeTipText) {
+        mQRCodeTipText = qrCodeTipText;
+        refreshScanBox();
+    }
+
+    public String getBarCodeTipText() {
+        return mBarCodeTipText;
+    }
+
+    public void setBarCodeTipText(String barCodeTipText) {
+        mBarCodeTipText = barCodeTipText;
+        refreshScanBox();
+    }
+
+    public String getTipText() {
+        return mTipText;
+    }
+
+    public void setTipText(String tipText) {
+        if (mIsBarcode) {
+            mBarCodeTipText = tipText;
+        } else {
+            mQRCodeTipText = tipText;
+        }
+        refreshScanBox();
+    }
+
+    public int getTipTextColor() {
+        return mTipTextColor;
+    }
+
+    public void setTipTextColor(int tipTextColor) {
+        mTipTextColor = tipTextColor;
+        mTipPaint.setColor(mTipTextColor);
+        refreshScanBox();
+    }
+
+    public int getTipTextSize() {
+        return mTipTextSize;
+    }
+
+    public void setTipTextSize(int tipTextSize) {
+        mTipTextSize = tipTextSize;
+        mTipPaint.setTextSize(mTipTextSize);
+        refreshScanBox();
+    }
+
+    public boolean isTipTextBelowRect() {
+        return mIsTipTextBelowRect;
+    }
+
+    public void setTipTextBelowRect(boolean tipTextBelowRect) {
+        mIsTipTextBelowRect = tipTextBelowRect;
+        refreshScanBox();
+    }
+
+    public int getTipTextMargin() {
+        return mTipTextMargin;
+    }
+
+    public void setTipTextMargin(int tipTextMargin) {
+        mTipTextMargin = tipTextMargin;
+        refreshScanBox();
+    }
+
+    public boolean isShowTipTextAsSingleLine() {
+        return mIsShowTipTextAsSingleLine;
+    }
+
+    public void setShowTipTextAsSingleLine(boolean showTipTextAsSingleLine) {
+        mIsShowTipTextAsSingleLine = showTipTextAsSingleLine;
+        refreshScanBox();
+    }
+
+    public boolean isShowTipBackground() {
+        return mIsShowTipBackground;
+    }
+
+    public void setShowTipBackground(boolean showTipBackground) {
+        mIsShowTipBackground = showTipBackground;
+        refreshScanBox();
+    }
+
+    public int getTipBackgroundColor() {
+        return mTipBackgroundColor;
+    }
+
+    public void setTipBackgroundColor(int tipBackgroundColor) {
+        mTipBackgroundColor = tipBackgroundColor;
+        refreshScanBox();
+    }
+
+    public boolean isScanLineReverse() {
+        return mIsScanLineReverse;
+    }
+
+    public void setScanLineReverse(boolean scanLineReverse) {
+        mIsScanLineReverse = scanLineReverse;
+        refreshScanBox();
+    }
+
+    public boolean isShowDefaultGridScanLineDrawable() {
+        return mIsShowDefaultGridScanLineDrawable;
+    }
+
+    public void setShowDefaultGridScanLineDrawable(boolean showDefaultGridScanLineDrawable) {
+        mIsShowDefaultGridScanLineDrawable = showDefaultGridScanLineDrawable;
+        refreshScanBox();
+    }
+
+    public float getHalfCornerSize() {
+        return mHalfCornerSize;
+    }
+
+    public void setHalfCornerSize(float halfCornerSize) {
+        mHalfCornerSize = halfCornerSize;
+        refreshScanBox();
+    }
+
+    public StaticLayout getTipTextSl() {
+        return mTipTextSl;
+    }
+
+    public void setTipTextSl(StaticLayout tipTextSl) {
+        mTipTextSl = tipTextSl;
+        refreshScanBox();
+    }
+
+    public int getTipBackgroundRadius() {
+        return mTipBackgroundRadius;
+    }
+
+    public void setTipBackgroundRadius(int tipBackgroundRadius) {
+        mTipBackgroundRadius = tipBackgroundRadius;
+        refreshScanBox();
+    }
+
+    public boolean isOnlyDecodeScanBoxArea() {
+        return mIsOnlyDecodeScanBoxArea;
+    }
+
+    public void setOnlyDecodeScanBoxArea(boolean onlyDecodeScanBoxArea) {
+        mIsOnlyDecodeScanBoxArea = onlyDecodeScanBoxArea;
+        calFramingRect();
+    }
+
+    public boolean isShowLocationPoint() {
+        return mIsShowLocationPoint;
+    }
+
+    public void setShowLocationPoint(boolean showLocationPoint) {
+        mIsShowLocationPoint = showLocationPoint;
+    }
+
+    public boolean isAutoZoom() {
+        return mIsAutoZoom;
+    }
+
+    public void setAutoZoom(boolean autoZoom) {
+        mIsAutoZoom = autoZoom;
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/zxing/QRCodeDecoder.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/zxing/QRCodeDecoder.java
new file mode 100644
index 0000000..84c2019
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/zxing/QRCodeDecoder.java
@@ -0,0 +1,173 @@
+package co.candyhouse.app.util.qrcode.zxing;
+
+import android.graphics.Bitmap;
+
+import com.google.zxing.BarcodeFormat;
+import com.google.zxing.BinaryBitmap;
+import com.google.zxing.DecodeHintType;
+import com.google.zxing.MultiFormatReader;
+import com.google.zxing.RGBLuminanceSource;
+import com.google.zxing.Result;
+import com.google.zxing.common.GlobalHistogramBinarizer;
+import com.google.zxing.common.HybridBinarizer;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.EnumMap;
+import java.util.List;
+import java.util.Map;
+
+import co.candyhouse.app.util.qrcode.core.BGQRCodeUtil;
+
+public class QRCodeDecoder {
+    static final Map<DecodeHintType, Object> ALL_HINT_MAP = new EnumMap<>(DecodeHintType.class);
+
+    static {
+        List<BarcodeFormat> allFormatList = new ArrayList<>();
+        allFormatList.add(BarcodeFormat.AZTEC);
+        allFormatList.add(BarcodeFormat.CODABAR);
+        allFormatList.add(BarcodeFormat.CODE_39);
+        allFormatList.add(BarcodeFormat.CODE_93);
+        allFormatList.add(BarcodeFormat.CODE_128);
+        allFormatList.add(BarcodeFormat.DATA_MATRIX);
+        allFormatList.add(BarcodeFormat.EAN_8);
+        allFormatList.add(BarcodeFormat.EAN_13);
+        allFormatList.add(BarcodeFormat.ITF);
+        allFormatList.add(BarcodeFormat.MAXICODE);
+        allFormatList.add(BarcodeFormat.PDF_417);
+        allFormatList.add(BarcodeFormat.QR_CODE);
+        allFormatList.add(BarcodeFormat.RSS_14);
+        allFormatList.add(BarcodeFormat.RSS_EXPANDED);
+        allFormatList.add(BarcodeFormat.UPC_A);
+        allFormatList.add(BarcodeFormat.UPC_E);
+        allFormatList.add(BarcodeFormat.UPC_EAN_EXTENSION);
+
+        // 可能的编码格式
+        ALL_HINT_MAP.put(DecodeHintType.POSSIBLE_FORMATS, allFormatList);
+        // 花更多的时间用于寻找图上的编码,优化准确性,但不优化速度
+        ALL_HINT_MAP.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
+        // 复杂模式,开启 PURE_BARCODE 模式(带图片 LOGO 的解码方案)
+        //        ALL_HINT_MAP.put(DecodeHintType.PURE_BARCODE, Boolean.TRUE);
+        // 编码字符集
+        ALL_HINT_MAP.put(DecodeHintType.CHARACTER_SET, "utf-8");
+    }
+
+    static final Map<DecodeHintType, Object> ONE_DIMENSION_HINT_MAP = new EnumMap<>(DecodeHintType.class);
+
+    static {
+        List<BarcodeFormat> oneDimenFormatList = new ArrayList<>();
+        oneDimenFormatList.add(BarcodeFormat.CODABAR);
+        oneDimenFormatList.add(BarcodeFormat.CODE_39);
+        oneDimenFormatList.add(BarcodeFormat.CODE_93);
+        oneDimenFormatList.add(BarcodeFormat.CODE_128);
+        oneDimenFormatList.add(BarcodeFormat.EAN_8);
+        oneDimenFormatList.add(BarcodeFormat.EAN_13);
+        oneDimenFormatList.add(BarcodeFormat.ITF);
+        oneDimenFormatList.add(BarcodeFormat.PDF_417);
+        oneDimenFormatList.add(BarcodeFormat.RSS_14);
+        oneDimenFormatList.add(BarcodeFormat.RSS_EXPANDED);
+        oneDimenFormatList.add(BarcodeFormat.UPC_A);
+        oneDimenFormatList.add(BarcodeFormat.UPC_E);
+        oneDimenFormatList.add(BarcodeFormat.UPC_EAN_EXTENSION);
+
+        ONE_DIMENSION_HINT_MAP.put(DecodeHintType.POSSIBLE_FORMATS, oneDimenFormatList);
+        ONE_DIMENSION_HINT_MAP.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
+        ONE_DIMENSION_HINT_MAP.put(DecodeHintType.CHARACTER_SET, "utf-8");
+    }
+
+    static final Map<DecodeHintType, Object> TWO_DIMENSION_HINT_MAP = new EnumMap<>(DecodeHintType.class);
+
+    static {
+        List<BarcodeFormat> twoDimenFormatList = new ArrayList<>();
+        twoDimenFormatList.add(BarcodeFormat.AZTEC);
+        twoDimenFormatList.add(BarcodeFormat.DATA_MATRIX);
+        twoDimenFormatList.add(BarcodeFormat.MAXICODE);
+        twoDimenFormatList.add(BarcodeFormat.QR_CODE);
+
+        TWO_DIMENSION_HINT_MAP.put(DecodeHintType.POSSIBLE_FORMATS, twoDimenFormatList);
+        TWO_DIMENSION_HINT_MAP.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
+        TWO_DIMENSION_HINT_MAP.put(DecodeHintType.CHARACTER_SET, "utf-8");
+    }
+
+    static final Map<DecodeHintType, Object> QR_CODE_HINT_MAP = new EnumMap<>(DecodeHintType.class);
+
+    static {
+        QR_CODE_HINT_MAP.put(DecodeHintType.POSSIBLE_FORMATS, Collections.singletonList(BarcodeFormat.QR_CODE));
+        QR_CODE_HINT_MAP.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
+        QR_CODE_HINT_MAP.put(DecodeHintType.CHARACTER_SET, "utf-8");
+    }
+
+    static final Map<DecodeHintType, Object> CODE_128_HINT_MAP = new EnumMap<>(DecodeHintType.class);
+
+    static {
+        CODE_128_HINT_MAP.put(DecodeHintType.POSSIBLE_FORMATS, Collections.singletonList(BarcodeFormat.CODE_128));
+        CODE_128_HINT_MAP.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
+        CODE_128_HINT_MAP.put(DecodeHintType.CHARACTER_SET, "utf-8");
+    }
+
+    static final Map<DecodeHintType, Object> EAN_13_HINT_MAP = new EnumMap<>(DecodeHintType.class);
+
+    static {
+        EAN_13_HINT_MAP.put(DecodeHintType.POSSIBLE_FORMATS, Collections.singletonList(BarcodeFormat.EAN_13));
+        EAN_13_HINT_MAP.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
+        EAN_13_HINT_MAP.put(DecodeHintType.CHARACTER_SET, "utf-8");
+    }
+
+    static final Map<DecodeHintType, Object> HIGH_FREQUENCY_HINT_MAP = new EnumMap<>(DecodeHintType.class);
+
+    static {
+        List<BarcodeFormat> highFrequencyFormatList = new ArrayList<>();
+        highFrequencyFormatList.add(BarcodeFormat.QR_CODE);
+        highFrequencyFormatList.add(BarcodeFormat.UPC_A);
+        highFrequencyFormatList.add(BarcodeFormat.EAN_13);
+        highFrequencyFormatList.add(BarcodeFormat.CODE_128);
+
+        HIGH_FREQUENCY_HINT_MAP.put(DecodeHintType.POSSIBLE_FORMATS, highFrequencyFormatList);
+        HIGH_FREQUENCY_HINT_MAP.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
+        HIGH_FREQUENCY_HINT_MAP.put(DecodeHintType.CHARACTER_SET, "utf-8");
+    }
+
+    private QRCodeDecoder() {
+    }
+
+    /**
+     * 同步解析本地图片二维码。该方法是耗时操作,请在子线程中调用。
+     *
+     * @param picturePath 要解析的二维码图片本地路径
+     * @return 返回二维码图片里的内容 或 null
+     */
+    public static String syncDecodeQRCode(String picturePath) {
+        return syncDecodeQRCode(BGQRCodeUtil.getDecodeAbleBitmap(picturePath));
+    }
+
+    /**
+     * 同步解析bitmap二维码。该方法是耗时操作,请在子线程中调用。
+     *
+     * @param bitmap 要解析的二维码图片
+     * @return 返回二维码图片里的内容 或 null
+     */
+    public static String syncDecodeQRCode(Bitmap bitmap) {
+        Result result;
+        RGBLuminanceSource source = null;
+        try {
+            int width = bitmap.getWidth();
+            int height = bitmap.getHeight();
+            int[] pixels = new int[width * height];
+            bitmap.getPixels(pixels, 0, width, 0, 0, width, height);
+            source = new RGBLuminanceSource(width, height, pixels);
+            result = new MultiFormatReader().decode(new BinaryBitmap(new HybridBinarizer(source)), ALL_HINT_MAP);
+            return result.getText();
+        } catch (Exception e) {
+            e.printStackTrace();
+            if (source != null) {
+                try {
+                    result = new MultiFormatReader().decode(new BinaryBitmap(new GlobalHistogramBinarizer(source)), ALL_HINT_MAP);
+                    return result.getText();
+                } catch (Throwable e2) {
+                    e2.printStackTrace();
+                }
+            }
+            return null;
+        }
+    }
+}
diff --git a/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/zxing/ZXingView.java b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/zxing/ZXingView.java
new file mode 100644
index 0000000..133ec2f
--- /dev/null
+++ b/sesameApp/src/main/java/co/candyhouse/app/util/qrcode/zxing/ZXingView.java
@@ -0,0 +1,136 @@
+package co.candyhouse.app.util.qrcode.zxing;
+
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.PointF;
+import android.graphics.Rect;
+import android.text.TextUtils;
+import android.util.AttributeSet;
+
+import com.google.zxing.BarcodeFormat;
+import com.google.zxing.BinaryBitmap;
+import com.google.zxing.DecodeHintType;
+import com.google.zxing.MultiFormatReader;
+import com.google.zxing.PlanarYUVLuminanceSource;
+import com.google.zxing.Result;
+import com.google.zxing.ResultPoint;
+import com.google.zxing.common.GlobalHistogramBinarizer;
+import com.google.zxing.common.HybridBinarizer;
+
+import java.util.Map;
+
+import co.candyhouse.app.util.qrcode.core.BGScanResult;
+import co.candyhouse.app.util.qrcode.core.BarcodeType;
+import co.candyhouse.app.util.qrcode.core.QRCodeView;
+
+public class ZXingView extends QRCodeView {
+    private MultiFormatReader mMultiFormatReader;
+    private Map<DecodeHintType, Object> mHintMap;
+
+    public ZXingView(Context context, AttributeSet attributeSet) {
+        this(context, attributeSet, 0);
+    }
+
+    public ZXingView(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+    }
+
+    @Override
+    protected void setupReader() {
+        mMultiFormatReader = new MultiFormatReader();
+
+        if (mBarcodeType == BarcodeType.ONE_DIMENSION) {
+            mMultiFormatReader.setHints(QRCodeDecoder.ONE_DIMENSION_HINT_MAP);
+        } else if (mBarcodeType == BarcodeType.TWO_DIMENSION) {
+            mMultiFormatReader.setHints(QRCodeDecoder.TWO_DIMENSION_HINT_MAP);
+        } else if (mBarcodeType == BarcodeType.ONLY_QR_CODE) {
+            mMultiFormatReader.setHints(QRCodeDecoder.QR_CODE_HINT_MAP);
+        } else if (mBarcodeType == BarcodeType.ONLY_CODE_128) {
+            mMultiFormatReader.setHints(QRCodeDecoder.CODE_128_HINT_MAP);
+        } else if (mBarcodeType == BarcodeType.ONLY_EAN_13) {
+            mMultiFormatReader.setHints(QRCodeDecoder.EAN_13_HINT_MAP);
+        } else if (mBarcodeType == BarcodeType.HIGH_FREQUENCY) {
+            mMultiFormatReader.setHints(QRCodeDecoder.HIGH_FREQUENCY_HINT_MAP);
+        } else if (mBarcodeType == BarcodeType.CUSTOM) {
+            mMultiFormatReader.setHints(mHintMap);
+        } else {
+            mMultiFormatReader.setHints(QRCodeDecoder.ALL_HINT_MAP);
+        }
+    }
+
+
+    public void setType(BarcodeType barcodeType, Map<DecodeHintType, Object> hintMap) {
+        mBarcodeType = barcodeType;
+        mHintMap = hintMap;
+
+        if (mBarcodeType == BarcodeType.CUSTOM && (mHintMap == null || mHintMap.isEmpty())) {
+            throw new RuntimeException("barcodeType 为 BarcodeType.CUSTOM 时 hintMap 不能为空");
+        }
+        setupReader();
+    }
+
+    @Override
+    protected BGScanResult processBitmapData(Bitmap bitmap) {
+        return new BGScanResult(QRCodeDecoder.syncDecodeQRCode(bitmap));
+    }
+
+    @Override
+    protected BGScanResult processData(byte[] data, int width, int height, boolean isRetry) {
+        Result rawResult = null;
+        Rect scanBoxAreaRect = null;
+
+        try {
+            PlanarYUVLuminanceSource source;
+            scanBoxAreaRect = mScanBoxView.getScanBoxAreaRect(height);
+            if (scanBoxAreaRect != null) {
+                source = new PlanarYUVLuminanceSource(data, width, height, scanBoxAreaRect.left, scanBoxAreaRect.top, scanBoxAreaRect.width(),
+                        scanBoxAreaRect.height(), false);
+            } else {
+                source = new PlanarYUVLuminanceSource(data, width, height, 0, 0, width, height, false);
+            }
+
+            rawResult = mMultiFormatReader.decodeWithState(new BinaryBitmap(new GlobalHistogramBinarizer(source)));
+            if (rawResult == null) {
+                rawResult = mMultiFormatReader.decodeWithState(new BinaryBitmap(new HybridBinarizer(source)));
+                if (rawResult != null) {
+                    //                    BGAQRCodeUtil.d("GlobalHistogramBinarizer 没识别到,HybridBinarizer 能识别到");
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            mMultiFormatReader.reset();
+        }
+
+        if (rawResult == null) {
+            return null;
+        }
+
+        String result = rawResult.getText();
+        if (TextUtils.isEmpty(result)) {
+            return null;
+        }
+
+        BarcodeFormat barcodeFormat = rawResult.getBarcodeFormat();
+
+        boolean isNeedAutoZoom = isNeedAutoZoom(barcodeFormat);
+        if (isShowLocationPoint() || isNeedAutoZoom) {
+            ResultPoint[] resultPoints = rawResult.getResultPoints();
+            final PointF[] pointArr = new PointF[resultPoints.length];
+            int pointIndex = 0;
+            for (ResultPoint resultPoint : resultPoints) {
+                pointArr[pointIndex] = new PointF(resultPoint.getX(), resultPoint.getY());
+                pointIndex++;
+            }
+
+            if (transformToViewCoordinates(pointArr, scanBoxAreaRect, isNeedAutoZoom, result)) {
+                return null;
+            }
+        }
+        return new BGScanResult(result);
+    }
+
+    private boolean isNeedAutoZoom(BarcodeFormat barcodeFormat) {
+        return isAutoZoom() && barcodeFormat == BarcodeFormat.QR_CODE;
+    }
+}
diff --git a/sesameApp/src/main/res/drawable/app_icon.png b/sesameApp/src/main/res/drawable/app_icon.png
new file mode 100644
index 0000000..f603988
Binary files /dev/null and b/sesameApp/src/main/res/drawable/app_icon.png differ
diff --git a/sesameApp/src/main/res/drawable/arrow.xml b/sesameApp/src/main/res/drawable/arrow.xml
new file mode 100644
index 0000000..102166f
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/arrow.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="58.000000dp"
+    android:height="50.000000dp"
+    android:viewportWidth="58.000000"
+    android:viewportHeight="50.000000">
+
+    <group
+        android:translateY="50.000000"
+        android:scaleX="0.100000"
+        android:scaleY="-0.100000">
+        <path
+            android:fillColor="#000000"
+            android:strokeWidth="1"
+            android:pathData="M144 248 l-141 -243 143 -3 c79 -1 209 -1 288 0 l143 3 -141 243 c-77 133 -143 242 -146 242 -3 0 -69 -109 -146 -242z" />
+    </group>
+</vector>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/drawable/bg_bottom_sheet_rounded.xml b/sesameApp/src/main/res/drawable/bg_bottom_sheet_rounded.xml
new file mode 100644
index 0000000..804ebad
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/bg_bottom_sheet_rounded.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android">
+    <solid android:color="@android:color/white" />
+    <corners
+        android:topLeftRadius="30dp"
+        android:topRightRadius="30dp" />
+</shape>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/drawable/ic_add_contact.xml b/sesameApp/src/main/res/drawable/ic_add_contact.xml
new file mode 100644
index 0000000..eaeec14
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_add_contact.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="26dp"
+    android:height="26dp"
+    android:viewportWidth="1024"
+    android:viewportHeight="1024">
+    <path
+        android:pathData="M327.8,524.2c-30.1,-35.7 -54.6,-102.4 -54.6,-149.1v-70c0,-90.5 73.5,-163.8 163.8,-163.8 90.5,0 163.8,73.4 163.8,163.8v70c0,46.7 -24.6,113.6 -54.6,149.2l-14.8,17.5c-24.2,28.7 -16.6,65.1 17.2,81.5l231.8,113.1c25.2,12.3 45.6,44.8 45.6,73.1v28.1c0,22.6 -18.5,40.9 -41,40.9L89,878.5a40.9,40.9 0,0 1,-41 -40.9v-28.1c0,-28.1 20.4,-60.8 45.6,-73.1l231.8,-113.2c33.6,-16.4 41.5,-52.7 17.2,-81.5l-14.8,-17.6zM836.4,458.7h112.6v61.4h-112.6v112.6h-61.4v-112.6h-112.6v-61.4h112.6v-112.6h61.4v112.6z"
+        android:fillColor="#ffffff"
+        android:fillAlpha="0.9" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_arrow.xml b/sesameApp/src/main/res/drawable/ic_arrow.xml
new file mode 100644
index 0000000..3ab4076
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_arrow.xml
@@ -0,0 +1,11 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="20dp"
+    android:height="21dp"
+    android:viewportWidth="20"
+    android:viewportHeight="21">
+    <path
+        android:pathData="M7.5622,4.1205L16.8333,11.6901L7.5756,19.2829"
+        android:strokeWidth="1.5"
+        android:fillColor="#00000000"
+        android:strokeColor="#000000" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_autounlock.xml b/sesameApp/src/main/res/drawable/ic_autounlock.xml
new file mode 100644
index 0000000..b4393f1
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_autounlock.xml
@@ -0,0 +1,18 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="15dp"
+    android:height="11dp"
+    android:viewportWidth="15"
+    android:viewportHeight="11">
+    <path
+        android:pathData="M6.7143,1.4636C6.6229,1.4636 6.536,1.4728 6.4491,1.4956V1.1892C6.4491,0.5946 5.9642,0.1143 5.3742,0.1143C5.1547,0.1143 4.9489,0.183 4.7751,0.2973C4.583,0.1143 4.3222,0 4.0341,0C3.5447,0 3.1285,0.3293 3.0004,0.7821C2.8861,0.741 2.7671,0.7181 2.6391,0.7181C2.0445,0.7181 1.5642,1.2029 1.5642,1.7929V3.5767C1.4362,3.5264 1.2944,3.499 1.148,3.499C0.5168,3.499 0,4.0112 0,4.647V6.7875C0,8.146 0.8279,10.7759 3.9609,10.9909C4.0524,10.9954 4.1439,11 4.2353,11C6.1975,11 7.7892,9.4449 7.7892,7.5331V2.543C7.7938,1.9484 7.3089,1.4636 6.7143,1.4636ZM4.2353,10.4008C4.1576,10.4008 4.0798,10.3963 4.0021,10.3917C1.1069,10.195 0.6037,7.6703 0.6037,6.7875V4.647C0.6037,4.3451 0.8462,4.1027 1.148,4.1027C1.4499,4.1027 1.6923,4.3451 1.6923,4.647V6.3027H2.168V1.7975C2.168,1.5368 2.3784,1.3218 2.6437,1.3218C2.9044,1.3218 3.1193,1.5322 3.1193,1.7975V5.0861H3.5676V1.084C3.5676,0.8233 3.778,0.6083 4.0432,0.6083C4.3039,0.6083 4.5189,0.8187 4.5189,1.084V5.0861H4.9123V1.1983C4.9123,0.9376 5.1227,0.7227 5.3879,0.7227C5.6487,0.7227 5.8636,0.9331 5.8636,1.1983V5.0861H6.257V2.5476C6.257,2.2869 6.4674,2.0719 6.7326,2.0719C6.9934,2.0719 7.2083,2.2823 7.2083,2.5476V7.5422C7.19,9.0195 5.9917,10.4008 4.2353,10.4008Z"
+        android:fillColor="#BDBDBD" />
+    <path
+        android:pathData="M13.2626,9.5731C15.3704,7.5066 15.364,4.1593 13.2499,2.0928C13.1233,1.9691 12.9208,1.9691 12.7942,2.0928C12.6676,2.2166 12.6676,2.4145 12.7942,2.5383C14.6551,4.3573 14.6551,7.3024 12.8068,9.1214C12.6739,9.239 12.6676,9.437 12.7878,9.5669C12.9081,9.6968 13.1107,9.703 13.2436,9.5855C13.2499,9.5917 13.2562,9.5855 13.2626,9.5731Z"
+        android:fillColor="#BDBDBD" />
+    <path
+        android:pathData="M11.6158,3.1619C11.4959,3.0396 11.3041,3.0396 11.1842,3.1619C11.0643,3.2842 11.0643,3.4799 11.1842,3.6022C12.3952,4.8377 12.3952,6.8377 11.1842,8.067C11.0643,8.1893 11.0643,8.385 11.1842,8.5074C11.3041,8.6297 11.4959,8.6297 11.6158,8.5074C13.0606,7.0334 13.0606,4.6359 11.6158,3.1619Z"
+        android:fillColor="#BDBDBD" />
+    <path
+        android:pathData="M10.3922,4.2343C10.2666,4.1089 10.0656,4.1089 9.9399,4.2343C9.8143,4.3597 9.8143,4.5603 9.9399,4.6857C10.6246,5.369 10.6246,6.4786 9.9399,7.1619C9.8143,7.2873 9.8143,7.4879 9.9399,7.6133C10.0656,7.7387 10.2666,7.7387 10.3922,7.6133C11.3282,6.6855 11.3282,5.1684 10.3922,4.2343Z"
+        android:fillColor="#BDBDBD" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_autounlock_active.xml b/sesameApp/src/main/res/drawable/ic_autounlock_active.xml
new file mode 100644
index 0000000..aaa1f21
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_autounlock_active.xml
@@ -0,0 +1,18 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="15dp"
+    android:height="11dp"
+    android:viewportWidth="15"
+    android:viewportHeight="11">
+    <path
+        android:pathData="M6.7143,1.4636C6.6229,1.4636 6.536,1.4728 6.4491,1.4956V1.1892C6.4491,0.5946 5.9642,0.1143 5.3742,0.1143C5.1547,0.1143 4.9489,0.183 4.7751,0.2973C4.583,0.1143 4.3222,0 4.0341,0C3.5447,0 3.1285,0.3293 3.0004,0.7821C2.8861,0.741 2.7671,0.7181 2.6391,0.7181C2.0445,0.7181 1.5642,1.2029 1.5642,1.7929V3.5767C1.4362,3.5264 1.2944,3.499 1.148,3.499C0.5168,3.499 0,4.0112 0,4.647V6.7875C0,8.146 0.8279,10.7759 3.9609,10.9909C4.0524,10.9954 4.1439,11 4.2353,11C6.1975,11 7.7892,9.4449 7.7892,7.5331V2.543C7.7938,1.9484 7.3089,1.4636 6.7143,1.4636ZM4.2353,10.4008C4.1576,10.4008 4.0798,10.3963 4.0021,10.3917C1.1069,10.195 0.6037,7.6703 0.6037,6.7875V4.647C0.6037,4.3451 0.8462,4.1027 1.148,4.1027C1.4499,4.1027 1.6923,4.3451 1.6923,4.647V6.3027H2.168V1.7975C2.168,1.5368 2.3784,1.3218 2.6437,1.3218C2.9044,1.3218 3.1193,1.5322 3.1193,1.7975V5.0861H3.5676V1.084C3.5676,0.8233 3.778,0.6083 4.0432,0.6083C4.3039,0.6083 4.5189,0.8187 4.5189,1.084V5.0861H4.9123V1.1983C4.9123,0.9376 5.1227,0.7227 5.3879,0.7227C5.6487,0.7227 5.8636,0.9331 5.8636,1.1983V5.0861H6.257V2.5476C6.257,2.2869 6.4674,2.0719 6.7326,2.0719C6.9934,2.0719 7.2083,2.2823 7.2083,2.5476V7.5422C7.19,9.0195 5.9917,10.4008 4.2353,10.4008Z"
+        android:fillColor="#28ADB2" />
+    <path
+        android:pathData="M13.2626,9.5731C15.3704,7.5066 15.364,4.1593 13.2499,2.0928C13.1233,1.9691 12.9208,1.9691 12.7942,2.0928C12.6676,2.2166 12.6676,2.4145 12.7942,2.5383C14.6551,4.3573 14.6551,7.3024 12.8068,9.1214C12.6739,9.239 12.6676,9.437 12.7878,9.5669C12.9081,9.6968 13.1107,9.703 13.2436,9.5855C13.2499,9.5917 13.2562,9.5855 13.2626,9.5731Z"
+        android:fillColor="#28ADB2" />
+    <path
+        android:pathData="M11.6158,3.1619C11.4959,3.0396 11.3041,3.0396 11.1842,3.1619C11.0643,3.2842 11.0643,3.4799 11.1842,3.6022C12.3952,4.8377 12.3952,6.8377 11.1842,8.067C11.0643,8.1893 11.0643,8.385 11.1842,8.5074C11.3041,8.6297 11.4959,8.6297 11.6158,8.5074C13.0606,7.0334 13.0606,4.6359 11.6158,3.1619Z"
+        android:fillColor="#28ADB2" />
+    <path
+        android:pathData="M10.3922,4.2343C10.2666,4.1089 10.0656,4.1089 9.9399,4.2343C9.8143,4.3597 9.8143,4.5603 9.9399,4.6857C10.6246,5.369 10.6246,6.4786 9.9399,7.1619C9.8143,7.2873 9.8143,7.4879 9.9399,7.6133C10.0656,7.7387 10.2666,7.7387 10.3922,7.6133C11.3282,6.6855 11.3282,5.1684 10.3922,4.2343Z"
+        android:fillColor="#28ADB2" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_bluetooth.xml b/sesameApp/src/main/res/drawable/ic_bluetooth.xml
new file mode 100644
index 0000000..78d1133
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_bluetooth.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="12dp"
+    android:height="20dp"
+    android:viewportWidth="12"
+    android:viewportHeight="20">
+    <path
+        android:pathData="M11.2479,6.1055C11.3239,6.0276 11.3237,5.9033 11.2475,5.8257L5.8696,0.349C5.7442,0.2212 5.5269,0.3101 5.5269,0.4891V7.5416C5.5269,7.721 5.3091,7.8096 5.1838,7.6813L2.3122,4.7392C2.235,4.6601 2.1084,4.6586 2.0293,4.7357L1.1004,5.6427C1.0213,5.7198 1.0198,5.8464 1.097,5.9254L4.9378,9.8605C5.0136,9.9382 5.0136,10.0622 4.9378,10.1399L1.097,14.0748C1.0199,14.1539 1.0214,14.2805 1.1005,14.3577L2.0294,15.2643C2.1084,15.3414 2.235,15.3399 2.3122,15.2609L5.1838,12.3187C5.3091,12.1904 5.527,12.279 5.527,12.4584V19.5109C5.527,19.6899 5.7442,19.7787 5.8697,19.651L11.2475,14.174C11.3237,14.0964 11.3239,13.972 11.2479,13.8942L7.5834,10.1398C7.5076,10.0621 7.5076,9.9381 7.5834,9.8604L11.2479,6.1055ZM7.5678,15.4981C7.4423,15.6258 7.2251,15.537 7.2251,15.3579V12.695C7.2251,12.5157 7.4429,12.427 7.5682,12.5553L8.8717,13.8909C8.9477,13.9687 8.9475,14.093 8.8713,14.1707L7.5678,15.4981ZM8.8713,5.8293C8.9475,5.9069 8.9477,6.0313 8.8717,6.1091L7.5683,7.4447C7.443,7.573 7.2251,7.4843 7.2251,7.305V4.642C7.2251,4.463 7.4424,4.3742 7.5678,4.5019L8.8713,5.8293Z"
+        android:fillColor="#28ADB2" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_bluetooth_grey.xml b/sesameApp/src/main/res/drawable/ic_bluetooth_grey.xml
new file mode 100644
index 0000000..470153b
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_bluetooth_grey.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="12dp"
+    android:height="20dp"
+    android:viewportWidth="12"
+    android:viewportHeight="20">
+    <path
+        android:pathData="M11.2479,6.1055C11.3239,6.0276 11.3237,5.9033 11.2475,5.8257L5.8696,0.349C5.7442,0.2212 5.5269,0.3101 5.5269,0.4891V7.5416C5.5269,7.721 5.3091,7.8096 5.1838,7.6813L2.3122,4.7392C2.235,4.6601 2.1084,4.6586 2.0293,4.7357L1.1004,5.6427C1.0213,5.7198 1.0198,5.8464 1.097,5.9254L4.9378,9.8605C5.0136,9.9382 5.0136,10.0622 4.9378,10.1399L1.097,14.0748C1.0199,14.1539 1.0214,14.2805 1.1005,14.3577L2.0294,15.2643C2.1084,15.3414 2.235,15.3399 2.3122,15.2609L5.1838,12.3187C5.3091,12.1904 5.527,12.279 5.527,12.4584V19.5109C5.527,19.6899 5.7442,19.7787 5.8697,19.651L11.2475,14.174C11.3237,14.0964 11.3239,13.972 11.2479,13.8942L7.5834,10.1398C7.5076,10.0621 7.5076,9.9381 7.5834,9.8604L11.2479,6.1055ZM7.5678,15.4981C7.4423,15.6258 7.2251,15.537 7.2251,15.3579V12.695C7.2251,12.5157 7.4429,12.427 7.5682,12.5553L8.8717,13.8909C8.9477,13.9687 8.9475,14.093 8.8713,14.1707L7.5678,15.4981ZM8.8713,5.8293C8.9475,5.9069 8.9477,6.0313 8.8717,6.1091L7.5683,7.4447C7.443,7.573 7.2251,7.4843 7.2251,7.305V4.642C7.2251,4.463 7.4424,4.3742 7.5678,4.5019L8.8713,5.8293Z"
+        android:fillColor="#BDBDBD" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_cube.xml b/sesameApp/src/main/res/drawable/ic_cube.xml
new file mode 100644
index 0000000..153b56d
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_cube.xml
@@ -0,0 +1,31 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:pathData="M3.5195,0L0.707,0C0.3164,0 0.0039,0.3164 0.0039,0.7031L0.0039,3.5625C0.0039,3.9492 0.3164,4.2656 0.707,4.2656C1.0938,4.2656 1.4102,3.9492 1.4102,3.5625L1.4102,1.4063L3.5195,1.4063C3.9063,1.4063 4.2227,1.0898 4.2227,0.7031C4.2227,0.3164 3.9063,0 3.5195,0ZM3.5195,0"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M23.293,0L20.4805,0C20.0938,0 19.7773,0.3164 19.7773,0.7031C19.7773,1.0898 20.0938,1.4063 20.4805,1.4063L22.5898,1.4063L22.5898,3.5625C22.5898,3.9492 22.9063,4.2656 23.293,4.2656C23.6836,4.2656 23.9961,3.9492 23.9961,3.5625L23.9961,0.7031C23.9961,0.3164 23.6836,0 23.293,0ZM23.293,0"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M3.5195,22.5859L1.4102,22.5859L1.4102,20.4336C1.4102,20.043 1.0938,19.7305 0.707,19.7305C0.3164,19.7305 0.0039,20.043 0.0039,20.4336L0.0039,23.2891C0.0039,23.6797 0.3164,23.9922 0.707,23.9922L3.5195,23.9922C3.9063,23.9922 4.2227,23.6797 4.2227,23.2891C4.2227,22.9023 3.9063,22.5859 3.5195,22.5859ZM3.5195,22.5859"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M23.293,19.7305C22.9063,19.7305 22.5898,20.043 22.5898,20.4336L22.5898,22.5859L20.4805,22.5859C20.0938,22.5859 19.7773,22.9023 19.7773,23.2891C19.7773,23.6797 20.0938,23.9922 20.4805,23.9922L23.293,23.9922C23.6836,23.9922 23.9961,23.6797 23.9961,23.2891L23.9961,20.4336C23.9961,20.043 23.6836,19.7305 23.293,19.7305ZM23.293,19.7305"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M22.1406,5.7656L12.3516,0.0938C12.1328,-0.0313 11.8672,-0.0313 11.6484,0.0938L1.8555,5.7656C1.6367,5.8906 1.5039,6.125 1.5039,6.375C1.5039,6.375 1.5039,6.3789 1.5039,6.3789L1.5039,17.625C1.5039,17.8789 1.6406,18.1133 1.8594,18.2383L11.6484,23.9063C11.7539,23.9648 11.8789,24 12,24C12.125,24 12.25,23.9648 12.3516,23.9063L22.1367,18.2383C22.1367,18.2383 22.1367,18.2344 22.1406,18.2344C22.3672,18.0703 22.4883,17.9336 22.4922,17.6328C22.4922,17.6289 22.4922,17.6289 22.4922,17.625L22.4922,6.3789C22.4922,6.3789 22.4922,6.375 22.4922,6.375C22.4922,6.125 22.3594,5.8906 22.1406,5.7656ZM11.2969,22.0781L3.6172,17.6289L9.5391,14.2344C9.875,14.0391 9.9922,13.6094 9.7969,13.2734C9.6055,12.9375 9.1758,12.8203 8.8398,13.0117L2.9102,16.4102L2.9102,7.5898L11.2969,12.4063ZM12,11.1875L3.6172,6.3711L12,1.5156L20.3828,6.3711ZM21.0898,16.4102L15.1602,13.0117C14.8242,12.8203 14.3945,12.9375 14.2031,13.2734C14.0078,13.6094 14.125,14.0391 14.4609,14.2344L20.3828,17.6289L12.7031,22.0781L12.7031,12.4063L21.0898,7.5898ZM21.0898,16.4102"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_icons_filled_album.xml b/sesameApp/src/main/res/drawable/ic_icons_filled_album.xml
new file mode 100644
index 0000000..6080ab0
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_icons_filled_album.xml
@@ -0,0 +1,11 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:pathData="M20.5,14.1361L20.5,5.5L3.5,5.5L3.5,13.8496L8.1992,10.0493C8.6618,9.6752 9.4046,9.6933 9.8505,10.0851L14.3269,14.0182L16.6091,12.0775C17.0713,11.6844 17.8067,11.6924 18.2554,12.0951L20.5,14.1361ZM2.9918,4L21.0082,4C21.5447,4 22,4.4811 22,5.0746L22,18.9254C22,19.5212 21.556,20 21.0082,20L2.9918,20C2.4553,20 2,19.5189 2,18.9254L2,5.0746C2,4.4788 2.444,4 2.9918,4Z"
+        android:strokeWidth="1"
+        android:fillColor="@android:color/white"
+        android:fillType="evenOdd" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_icons_filled_close.xml b/sesameApp/src/main/res/drawable/ic_icons_filled_close.xml
new file mode 100644
index 0000000..8586bcb
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_icons_filled_close.xml
@@ -0,0 +1,12 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:pathData="M12,10.5858L17.6569,4.9289L19.0711,6.3431L13.4142,12L19.0711,17.6569L17.6569,19.0711L12,13.4142L6.3431,19.0711L4.9289,17.6569L10.5858,12L4.9289,6.3431L6.3431,4.9289L12,10.5858Z"
+        android:strokeWidth="1"
+        android:fillColor="#000000"
+        android:fillType="evenOdd"
+        android:strokeColor="#00000000" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_icons_filled_close_white.xml b/sesameApp/src/main/res/drawable/ic_icons_filled_close_white.xml
new file mode 100644
index 0000000..809a256
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_icons_filled_close_white.xml
@@ -0,0 +1,12 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:pathData="M12,10.5858L17.6569,4.9289L19.0711,6.3431L13.4142,12L19.0711,17.6569L17.6569,19.0711L12,13.4142L6.3431,19.0711L4.9289,17.6569L10.5858,12L4.9289,6.3431L6.3431,4.9289L12,10.5858Z"
+        android:strokeWidth="1"
+        android:fillColor="@android:color/white"
+        android:fillType="evenOdd"
+        android:strokeColor="#00000000" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_notification.png b/sesameApp/src/main/res/drawable/ic_notification.png
new file mode 100644
index 0000000..e89e4b8
Binary files /dev/null and b/sesameApp/src/main/res/drawable/ic_notification.png differ
diff --git a/sesameApp/src/main/res/drawable/ic_qr_code_scan.xml b/sesameApp/src/main/res/drawable/ic_qr_code_scan.xml
new file mode 100644
index 0000000..b08b8cc
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_qr_code_scan.xml
@@ -0,0 +1,51 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:pathData="M21.4063,0L18.0469,0C17.6602,0 17.3438,0.3164 17.3438,0.7031C17.3438,1.0898 17.6602,1.4063 18.0469,1.4063L21.4063,1.4063C22.0625,1.4063 22.5938,1.9375 22.5938,2.5938L22.5938,5.9531C22.5938,6.3398 22.9102,6.6563 23.2969,6.6563C23.6836,6.6563 24,6.3398 24,5.9531L24,2.5938C24,1.1641 22.8359,0 21.4063,0ZM21.4063,0"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M0.7031,6.6563C1.0898,6.6563 1.4063,6.3398 1.4063,5.9531L1.4063,2.5938C1.4063,1.9375 1.9375,1.4063 2.5938,1.4063L5.9531,1.4063C6.3398,1.4063 6.6563,1.0898 6.6563,0.7031C6.6563,0.3164 6.3398,0 5.9531,0L2.5938,0C1.1641,0 0,1.1641 0,2.5938L0,5.9531C0,6.3398 0.3164,6.6563 0.7031,6.6563ZM0.7031,6.6563"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M5.9531,22.5938L2.5938,22.5938C1.9375,22.5938 1.4063,22.0625 1.4063,21.4063L1.4063,18.0469C1.4063,17.6602 1.0898,17.3438 0.7031,17.3438C0.3164,17.3438 0,17.6602 0,18.0469L0,21.4063C0,22.8359 1.1641,24 2.5938,24L5.9531,24C6.3398,24 6.6563,23.6836 6.6563,23.2969C6.6563,22.9102 6.3398,22.5938 5.9531,22.5938ZM5.9531,22.5938"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M23.2969,17.3438C22.9102,17.3438 22.5938,17.6602 22.5938,18.0469L22.5938,21.4063C22.5938,22.0625 22.0625,22.5938 21.4063,22.5938L18.0469,22.5938C17.6602,22.5938 17.3438,22.9102 17.3438,23.2969C17.3438,23.6836 17.6602,24 18.0469,24L21.4063,24C22.8359,24 24,22.8359 24,21.4063L24,18.0469C24,17.6602 23.6836,17.3438 23.2969,17.3438ZM23.2969,17.3438"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M16.0156,5.1563L18.2461,5.1563C18.5508,5.1563 18.7969,5.4023 18.7969,5.707L18.7969,7.9375C18.7969,8.3281 19.1133,8.6406 19.5,8.6406C19.8867,8.6406 20.2031,8.3281 20.2031,7.9375L20.2031,5.707C20.2031,4.6289 19.3242,3.75 18.2461,3.75L16.0156,3.75C15.625,3.75 15.3125,4.0664 15.3125,4.4531C15.3125,4.8398 15.625,5.1563 16.0156,5.1563ZM16.0156,5.1563"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M3.7969,5.707L3.7969,7.9375C3.7969,8.3281 4.1133,8.6406 4.5,8.6406C4.8867,8.6406 5.2031,8.3281 5.2031,7.9375L5.2031,5.707C5.2031,5.4023 5.4492,5.1563 5.7539,5.1563L7.9844,5.1563C8.375,5.1563 8.6875,4.8398 8.6875,4.4531C8.6875,4.0664 8.375,3.75 7.9844,3.75L5.7539,3.75C4.6758,3.75 3.7969,4.6289 3.7969,5.707ZM3.7969,5.707"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M7.9844,18.75L5.7539,18.75C5.4492,18.75 5.2031,18.5039 5.2031,18.1992L5.2031,15.9688C5.2031,15.5781 4.8867,15.2656 4.5,15.2656C4.1133,15.2656 3.7969,15.5781 3.7969,15.9688L3.7969,18.1992C3.7969,19.2773 4.6758,20.1563 5.7539,20.1563L7.9844,20.1563C8.375,20.1563 8.6875,19.8398 8.6875,19.4531C8.6875,19.0664 8.375,18.75 7.9844,18.75ZM7.9844,18.75"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M20.2031,18.1992L20.2031,15.9688C20.2031,15.5781 19.8867,15.2656 19.5,15.2656C19.1133,15.2656 18.7969,15.5781 18.7969,15.9688L18.7969,18.1992C18.7969,18.5039 18.5508,18.75 18.2461,18.75L16.0156,18.75C15.625,18.75 15.3125,19.0664 15.3125,19.4531C15.3125,19.8398 15.625,20.1563 16.0156,20.1563L18.2461,20.1563C19.3242,20.1563 20.2031,19.2773 20.2031,18.1992ZM20.2031,18.1992"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M0.0469,12C0.0469,12.3867 0.3633,12.7031 0.75,12.7031L23.25,12.7031C23.6367,12.7031 23.9531,12.3867 23.9531,12C23.9531,11.6133 23.6367,11.2969 23.25,11.2969L0.75,11.2969C0.3633,11.2969 0.0469,11.6133 0.0469,12ZM0.0469,12"
+        android:fillColor="#ffffff"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_wifi_blue.xml b/sesameApp/src/main/res/drawable/ic_wifi_blue.xml
new file mode 100644
index 0000000..8be7bec
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_wifi_blue.xml
@@ -0,0 +1,26 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="25dp"
+    android:height="25dp"
+    android:viewportWidth="25"
+    android:viewportHeight="25">
+    <path
+        android:pathData="M12.4961,17.6914C11.3008,17.6914 10.3281,18.6602 10.3281,19.8477C10.3281,21.0391 11.3008,22.0078 12.4961,22.0078C13.6914,22.0078 14.6602,21.0391 14.6602,19.8477C14.6602,18.6602 13.6914,17.6914 12.4961,17.6914ZM12.4961,17.6914"
+        android:fillColor="#28ADB2"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M17.7813,14.75C16.3711,13.3398 14.4922,12.5625 12.4961,12.5625C10.5039,12.5625 8.6328,13.332 7.2227,14.7344C6.6523,15.3008 6.6484,16.2266 7.2188,16.793C7.4961,17.0703 7.8633,17.2227 8.2539,17.2227C8.6445,17.2227 9.0078,17.0703 9.2852,16.7969C10.1445,15.9414 11.2813,15.4727 12.4961,15.4727C13.7109,15.4727 14.8555,15.9453 15.7148,16.8047C15.9883,17.0781 16.3555,17.2305 16.7461,17.2305C17.1367,17.2305 17.5039,17.082 17.7773,16.8086C18.3477,16.2383 18.3516,15.3164 17.7813,14.75ZM17.7813,14.75"
+        android:fillColor="#28ADB2"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M24.5742,7.9805C21.3477,4.7617 17.0586,2.9922 12.4961,2.9922C7.9375,2.9922 3.6523,4.7578 0.4258,7.9688C-0.1406,8.5352 -0.1406,9.457 0.4258,10.0273C0.7031,10.3008 1.0703,10.4531 1.4609,10.4531C1.8516,10.4531 2.2148,10.3008 2.4922,10.0273C5.1641,7.3672 8.7188,5.9023 12.4961,5.9023C16.2773,5.9023 19.832,7.3711 22.5078,10.0352C22.7813,10.3125 23.1484,10.4648 23.5391,10.4648C23.9297,10.4648 24.2969,10.3125 24.5742,10.0391C25.1406,9.4688 25.1445,8.5469 24.5742,7.9805ZM24.5742,7.9805"
+        android:fillColor="#28ADB2"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M21.0898,11.4492C18.7969,9.1563 15.7422,7.8984 12.4961,7.8984C9.2539,7.8984 6.2031,9.1523 3.9102,11.4375C3.6328,11.7109 3.4805,12.0781 3.4805,12.4648C3.4805,12.8555 3.6328,13.2188 3.9102,13.4961C4.1836,13.7695 4.5508,13.9219 4.9414,13.9219C5.332,13.9219 5.6992,13.7695 5.9766,13.4961C7.7188,11.7617 10.0313,10.8086 12.4961,10.8086C14.9609,10.8086 17.2813,11.7656 19.0234,13.5078C19.3008,13.7813 19.668,13.9336 20.0586,13.9336C20.4492,13.9336 20.8164,13.7813 21.0898,13.5078C21.3672,13.2344 21.5195,12.8672 21.5195,12.4766C21.5195,12.0898 21.3672,11.7227 21.0898,11.4492ZM21.0898,11.4492"
+        android:fillColor="#28ADB2"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/ic_wifi_grey.xml b/sesameApp/src/main/res/drawable/ic_wifi_grey.xml
new file mode 100644
index 0000000..e2eac51
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/ic_wifi_grey.xml
@@ -0,0 +1,26 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="25dp"
+    android:height="25dp"
+    android:viewportWidth="25"
+    android:viewportHeight="25">
+    <path
+        android:pathData="M12.4961,17.6914C11.3008,17.6914 10.3281,18.6602 10.3281,19.8477C10.3281,21.0391 11.3008,22.0078 12.4961,22.0078C13.6914,22.0078 14.6602,21.0391 14.6602,19.8477C14.6602,18.6602 13.6914,17.6914 12.4961,17.6914ZM12.4961,17.6914"
+        android:fillColor="#BDBDBD"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M17.7813,14.75C16.3711,13.3398 14.4922,12.5625 12.4961,12.5625C10.5039,12.5625 8.6328,13.332 7.2227,14.7344C6.6523,15.3008 6.6484,16.2266 7.2188,16.793C7.4961,17.0703 7.8633,17.2227 8.2539,17.2227C8.6445,17.2227 9.0078,17.0703 9.2852,16.7969C10.1445,15.9414 11.2813,15.4727 12.4961,15.4727C13.7109,15.4727 14.8555,15.9453 15.7148,16.8047C15.9883,17.0781 16.3555,17.2305 16.7461,17.2305C17.1367,17.2305 17.5039,17.082 17.7773,16.8086C18.3477,16.2383 18.3516,15.3164 17.7813,14.75ZM17.7813,14.75"
+        android:fillColor="#BDBDBD"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M24.5742,7.9805C21.3477,4.7617 17.0586,2.9922 12.4961,2.9922C7.9375,2.9922 3.6523,4.7578 0.4258,7.9688C-0.1406,8.5352 -0.1406,9.457 0.4258,10.0273C0.7031,10.3008 1.0703,10.4531 1.4609,10.4531C1.8516,10.4531 2.2148,10.3008 2.4922,10.0273C5.1641,7.3672 8.7188,5.9023 12.4961,5.9023C16.2773,5.9023 19.832,7.3711 22.5078,10.0352C22.7813,10.3125 23.1484,10.4648 23.5391,10.4648C23.9297,10.4648 24.2969,10.3125 24.5742,10.0391C25.1406,9.4688 25.1445,8.5469 24.5742,7.9805ZM24.5742,7.9805"
+        android:fillColor="#BDBDBD"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+    <path
+        android:pathData="M21.0898,11.4492C18.7969,9.1563 15.7422,7.8984 12.4961,7.8984C9.2539,7.8984 6.2031,9.1523 3.9102,11.4375C3.6328,11.7109 3.4805,12.0781 3.4805,12.4648C3.4805,12.8555 3.6328,13.2188 3.9102,13.4961C4.1836,13.7695 4.5508,13.9219 4.9414,13.9219C5.332,13.9219 5.6992,13.7695 5.9766,13.4961C7.7188,11.7617 10.0313,10.8086 12.4961,10.8086C14.9609,10.8086 17.2813,11.7656 19.0234,13.5078C19.3008,13.7813 19.668,13.9336 20.0586,13.9336C20.4492,13.9336 20.8164,13.7813 21.0898,13.5078C21.3672,13.2344 21.5195,12.8672 21.5195,12.4766C21.5195,12.0898 21.3672,11.7227 21.0898,11.4492ZM21.0898,11.4492"
+        android:fillColor="#BDBDBD"
+        android:fillType="nonZero"
+        android:strokeColor="#00000000" />
+</vector>
diff --git a/sesameApp/src/main/res/drawable/icon_lock.png b/sesameApp/src/main/res/drawable/icon_lock.png
new file mode 100644
index 0000000..9d755d7
Binary files /dev/null and b/sesameApp/src/main/res/drawable/icon_lock.png differ
diff --git a/sesameApp/src/main/res/drawable/icon_logining.png b/sesameApp/src/main/res/drawable/icon_logining.png
new file mode 100644
index 0000000..c6f4440
Binary files /dev/null and b/sesameApp/src/main/res/drawable/icon_logining.png differ
diff --git a/sesameApp/src/main/res/drawable/icon_nosetting.png b/sesameApp/src/main/res/drawable/icon_nosetting.png
new file mode 100644
index 0000000..2f57658
Binary files /dev/null and b/sesameApp/src/main/res/drawable/icon_nosetting.png differ
diff --git a/sesameApp/src/main/res/drawable/icon_nosignal.png b/sesameApp/src/main/res/drawable/icon_nosignal.png
new file mode 100644
index 0000000..017b72f
Binary files /dev/null and b/sesameApp/src/main/res/drawable/icon_nosignal.png differ
diff --git a/sesameApp/src/main/res/drawable/icon_receiveblee.png b/sesameApp/src/main/res/drawable/icon_receiveblee.png
new file mode 100644
index 0000000..29cd327
Binary files /dev/null and b/sesameApp/src/main/res/drawable/icon_receiveblee.png differ
diff --git a/sesameApp/src/main/res/drawable/icon_unlock.png b/sesameApp/src/main/res/drawable/icon_unlock.png
new file mode 100644
index 0000000..d2403f0
Binary files /dev/null and b/sesameApp/src/main/res/drawable/icon_unlock.png differ
diff --git a/sesameApp/src/main/res/drawable/icon_waitgatt.png b/sesameApp/src/main/res/drawable/icon_waitgatt.png
new file mode 100644
index 0000000..0234dd2
Binary files /dev/null and b/sesameApp/src/main/res/drawable/icon_waitgatt.png differ
diff --git a/sesameApp/src/main/res/drawable/round_blue_unlock_all.xml b/sesameApp/src/main/res/drawable/round_blue_unlock_all.xml
new file mode 100644
index 0000000..8c53fd8
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/round_blue_unlock_all.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:state_pressed="true">
+        <shape>
+            <solid android:color="#EEEEEE" />
+            <stroke android:width="1dp" android:color="#28ADB2" />
+
+            <corners android:bottomLeftRadius="10dp" android:bottomRightRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp" />
+        </shape>
+    </item>
+    <item>
+        <shape>
+            <stroke android:width="1dp" android:color="#28ADB2" />
+            <corners android:bottomLeftRadius="10dp" android:bottomRightRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp" />
+        </shape>
+    </item>
+</selector>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/drawable/round_red_lock_all.xml b/sesameApp/src/main/res/drawable/round_red_lock_all.xml
new file mode 100644
index 0000000..32c2e2d
--- /dev/null
+++ b/sesameApp/src/main/res/drawable/round_red_lock_all.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:state_pressed="true">
+        <shape>
+            <solid android:color="#EEEEEE" />
+            <stroke android:width="1dp" android:color="#CD4842" />
+            <corners android:bottomLeftRadius="10dp" android:bottomRightRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp" />
+        </shape>
+    </item>
+    <item>
+        <shape>
+            <stroke android:width="1dp" android:color="#CD4842" />
+            <corners android:bottomLeftRadius="10dp" android:bottomRightRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp" />
+        </shape>
+    </item>
+</selector>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/drawable/swtich_logining.png b/sesameApp/src/main/res/drawable/swtich_logining.png
new file mode 100644
index 0000000..9756d88
Binary files /dev/null and b/sesameApp/src/main/res/drawable/swtich_logining.png differ
diff --git a/sesameApp/src/main/res/drawable/swtich_no_ble.png b/sesameApp/src/main/res/drawable/swtich_no_ble.png
new file mode 100644
index 0000000..ea6f566
Binary files /dev/null and b/sesameApp/src/main/res/drawable/swtich_no_ble.png differ
diff --git a/sesameApp/src/main/res/drawable/swtich_receive_ble.png b/sesameApp/src/main/res/drawable/swtich_receive_ble.png
new file mode 100644
index 0000000..674a133
Binary files /dev/null and b/sesameApp/src/main/res/drawable/swtich_receive_ble.png differ
diff --git a/sesameApp/src/main/res/drawable/swtich_unlocked.png b/sesameApp/src/main/res/drawable/swtich_unlocked.png
new file mode 100644
index 0000000..cb5f92c
Binary files /dev/null and b/sesameApp/src/main/res/drawable/swtich_unlocked.png differ
diff --git a/sesameApp/src/main/res/drawable/swtich_waitgatt.png b/sesameApp/src/main/res/drawable/swtich_waitgatt.png
new file mode 100644
index 0000000..d18d9a4
Binary files /dev/null and b/sesameApp/src/main/res/drawable/swtich_waitgatt.png differ
diff --git a/sesameApp/src/main/res/layout/cell_weget.xml b/sesameApp/src/main/res/layout/cell_weget.xml
new file mode 100644
index 0000000..ec6cd6b
--- /dev/null
+++ b/sesameApp/src/main/res/layout/cell_weget.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    style="?android:attr/buttonBarStyle"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:orientation="horizontal">
+
+    <Button
+        android:id="@+id/lock_all"
+        style="?android:attr/buttonBarButtonStyle"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_marginEnd="6dp"
+        android:layout_weight="1"
+        android:background="@drawable/round_red_lock_all"
+        android:text="@string/widget_lock_all"
+        android:textColor="#CD4842"
+        android:textSize="16sp" />
+
+    <Button
+        android:id="@+id/unlock_all"
+        style="?android:attr/buttonBarButtonStyle"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="6dp"
+        android:layout_weight="1"
+        android:background="@drawable/round_blue_unlock_all"
+        android:text="@string/widget_unlock_all"
+        android:textColor="#28ADB2"
+        android:textSize="16sp" />
+
+</LinearLayout>
diff --git a/sesameApp/src/main/res/layout/cell_weget_unlock.xml b/sesameApp/src/main/res/layout/cell_weget_unlock.xml
new file mode 100644
index 0000000..4ef81b2
--- /dev/null
+++ b/sesameApp/src/main/res/layout/cell_weget_unlock.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:gravity="center_vertical"
+    android:orientation="horizontal">
+
+    <ImageView
+        android:id="@+id/bl_img"
+        android:layout_width="14dp"
+        android:layout_height="14dp"
+        android:src="@drawable/ic_bluetooth" />
+
+    <ImageView
+        android:id="@+id/wifi_img"
+        android:layout_width="14dp"
+        android:layout_height="14dp"
+        android:layout_marginStart="7dp"
+        android:src="@drawable/ic_wifi_blue" />
+
+    <ImageView
+        android:id="@+id/hand_img"
+        android:layout_width="14dp"
+        android:layout_height="14dp"
+        android:layout_marginStart="7dp"
+        android:src="@drawable/ic_autounlock_active" />
+
+    <TextView
+        android:id="@+id/title"
+
+        android:layout_width="0dp"
+        android:layout_height="32dp"
+        android:layout_marginStart="7dp"
+        android:layout_marginEnd="7dp"
+        android:layout_weight="1"
+        android:ellipsize="end"
+        android:gravity="center"
+        android:maxLines="1"
+        android:textColor="#777777"
+        android:textSize="20sp"
+        tools:text="name" />
+
+    <ImageView
+        android:id="@+id/toggle"
+        android:layout_width="90dp"
+        android:layout_height="wrap_content"
+        android:adjustViewBounds="true"
+        android:maxHeight="90dp"
+        android:scaleType="fitCenter"
+        android:src="@drawable/icon_unlock" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/layout/item_lock_single_select.xml b/sesameApp/src/main/res/layout/item_lock_single_select.xml
new file mode 100644
index 0000000..f636ac6
--- /dev/null
+++ b/sesameApp/src/main/res/layout/item_lock_single_select.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/itemRoot"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:gravity="center_vertical"
+    android:minHeight="56dp"
+    android:orientation="horizontal"
+    android:paddingTop="8dp"
+    android:paddingBottom="8dp">
+
+    <RadioButton
+        android:id="@+id/rbSelected"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content" />
+
+    <TextView
+        android:id="@+id/tvName"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_weight="1"
+        android:paddingStart="8dp"
+        android:paddingEnd="8dp"
+        android:text="Lock Name"
+        android:textSize="14sp" />
+
+    <Button
+        android:id="@+id/btnMinus"
+        android:layout_width="36dp"
+        android:layout_height="36dp"
+        android:text="-" />
+
+    <TextView
+        android:id="@+id/tvSec"
+        android:layout_width="56dp"
+        android:layout_height="wrap_content"
+        android:gravity="center"
+        android:text="1s"
+        android:textSize="13sp" />
+
+    <Button
+        android:id="@+id/btnPlus"
+        android:layout_width="36dp"
+        android:layout_height="36dp"
+        android:text="+" />
+</LinearLayout>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/layout/view_internal_test.xml b/sesameApp/src/main/res/layout/view_internal_test.xml
new file mode 100644
index 0000000..42bfb08
--- /dev/null
+++ b/sesameApp/src/main/res/layout/view_internal_test.xml
@@ -0,0 +1,237 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/root"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    android:paddingStart="16dp"
+    android:paddingTop="12dp"
+    android:paddingEnd="16dp"
+    android:paddingBottom="24dp">
+
+    <FrameLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:paddingBottom="8dp">
+
+        <TextView
+            android:id="@+id/tvTitle"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:text="内部测试"
+            android:textSize="16sp"
+            android:textStyle="bold" />
+
+        <ImageView
+            android:id="@+id/btnClose"
+            android:layout_width="32dp"
+            android:layout_height="32dp"
+            android:layout_gravity="right|center_vertical"
+            android:contentDescription="返回"
+            android:padding="4dp"
+            android:src="@drawable/ic_icons_filled_close" />
+    </FrameLayout>
+
+    <ScrollView
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1"
+        android:fillViewport="true">
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:orientation="vertical">
+
+            <TextView
+                android:id="@+id/tvLockTestSectionTitle"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:paddingTop="4dp"
+                android:paddingBottom="8dp"
+                android:text="开关锁强度测试"
+                android:textColor="#333333"
+                android:textSize="15sp"
+                android:textStyle="bold" />
+
+            <TextView
+                android:id="@+id/tvSubtitle"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:paddingBottom="4dp"
+                android:text="请选择一把锁并设置间隔"
+                android:textSize="13sp" />
+
+            <TextView
+                android:id="@+id/tvStats"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:paddingBottom="10dp"
+                android:text="开关锁次数: 0 次"
+                android:textColor="#666666"
+                android:textSize="13sp" />
+
+            <ScrollView
+                android:layout_width="match_parent"
+                android:layout_height="280dp">
+
+                <LinearLayout
+                    android:id="@+id/lockRows"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:orientation="vertical" />
+            </ScrollView>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:gravity="end"
+                android:orientation="horizontal"
+                android:paddingTop="12dp">
+
+                <Button
+                    android:id="@+id/btnReset"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="重置" />
+
+                <Button
+                    android:id="@+id/btnStart"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="8dp"
+                    android:text="开始" />
+
+                <Button
+                    android:id="@+id/btnStop"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="8dp"
+                    android:text="停止" />
+            </LinearLayout>
+
+            <TextView
+                android:id="@+id/tvFirmwareSectionTitle"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="28dp"
+                android:paddingTop="28dp"
+                android:paddingBottom="12dp"
+                android:text="固件资源环境切换"
+                android:textColor="#333333"
+                android:textSize="15sp"
+                android:textStyle="bold" />
+
+            <LinearLayout
+                android:id="@+id/firmwareDirContainer"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:gravity="center_vertical"
+                android:orientation="horizontal"
+                android:paddingBottom="16dp">
+
+                <TextView
+                    android:id="@+id/tvFirmwareDev"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_weight="1"
+                    android:gravity="end"
+                    android:text="dev"
+                    android:textColor="#666666"
+                    android:textSize="14sp" />
+
+                <Switch
+                    android:id="@+id/switchFirmwareDir"
+                    android:layout_width="wrap_content"
+                    android:layout_height="48dp"
+                    android:layout_marginStart="20dp"
+                    android:layout_marginEnd="20dp"
+                    android:checked="true"
+                    android:textOff=""
+                    android:textOn=""
+                    android:showText="false"
+                    android:switchMinWidth="88dp" />
+
+                <TextView
+                    android:id="@+id/tvFirmwareProd"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_weight="1"
+                    android:gravity="start"
+                    android:text="prod"
+                    android:textColor="#666666"
+                    android:textSize="14sp" />
+            </LinearLayout>
+
+            <TextView
+                android:id="@+id/tvWebResourcesSectionTitle"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="28dp"
+                android:paddingTop="28dp"
+                android:paddingBottom="12dp"
+                android:text="网页资源切换"
+                android:textColor="#333333"
+                android:textSize="15sp"
+                android:textStyle="bold" />
+
+            <LinearLayout
+                android:id="@+id/webResourcesContainer"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:gravity="center_vertical"
+                android:orientation="horizontal"
+                android:paddingBottom="16dp">
+
+                <TextView
+                    android:id="@+id/tvWebOnline"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_weight="1"
+                    android:gravity="end"
+                    android:text="在线"
+                    android:textColor="#666666"
+                    android:textSize="14sp" />
+
+                <Switch
+                    android:id="@+id/switchWebResources"
+                    android:layout_width="wrap_content"
+                    android:layout_height="48dp"
+                    android:layout_marginStart="20dp"
+                    android:layout_marginEnd="20dp"
+                    android:checked="true"
+                    android:textOff=""
+                    android:textOn=""
+                    android:showText="false"
+                    android:switchMinWidth="88dp" />
+
+                <TextView
+                    android:id="@+id/tvWebOffline"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_weight="1"
+                    android:gravity="start"
+                    android:text="离线"
+                    android:textColor="#666666"
+                    android:textSize="14sp" />
+            </LinearLayout>
+
+            <TextView
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="28dp"
+                android:text="AppIdentifyId"
+                android:textColor="#333333"
+                android:textSize="15sp"
+                android:textStyle="bold" />
+
+            <TextView
+                android:id="@+id/appIdentifyId"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="8dp" />
+
+        </LinearLayout>
+    </ScrollView>
+</LinearLayout>
diff --git a/sesameApp/src/main/res/layout/view_qr_scanner.xml b/sesameApp/src/main/res/layout/view_qr_scanner.xml
new file mode 100644
index 0000000..d083a4d
--- /dev/null
+++ b/sesameApp/src/main/res/layout/view_qr_scanner.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<co.candyhouse.app.util.qrcode.zxing.ZXingView xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    app:qrcv_animTime="1000"
+    app:qrcv_barCodeTipText=""
+    app:qrcv_barcodeRectHeight="120dp"
+    app:qrcv_borderColor="#eeeeee"
+    app:qrcv_borderSize="0.5dp"
+    app:qrcv_cornerColor="#28aeb1"
+    app:qrcv_cornerDisplayType="center"
+    app:qrcv_cornerLength="20dp"
+    app:qrcv_cornerSize="3dp"
+    app:qrcv_isAutoZoom="true"
+    app:qrcv_isBarcode="false"
+    app:qrcv_isOnlyDecodeScanBoxArea="false"
+    app:qrcv_isScanLineReverse="false"
+    app:qrcv_isShowDefaultGridScanLineDrawable="false"
+    app:qrcv_isShowDefaultScanLineDrawable="true"
+    app:qrcv_isShowLocationPoint="true"
+    app:qrcv_isShowTipBackground="false"
+    app:qrcv_isShowTipTextAsSingleLine="true"
+    app:qrcv_isTipTextBelowRect="true"
+    app:qrcv_maskColor="#66000000"
+    app:qrcv_qrCodeTipText="@string/scan_the_qr_code"
+    app:qrcv_rectWidth="240dp"
+    app:qrcv_scanLineColor="#28aeb1"
+    app:qrcv_scanLineMargin="0dp"
+    app:qrcv_scanLineSize="0.5dp"
+    app:qrcv_tipTextColor="@android:color/white"
+    app:qrcv_tipTextMargin="24dp"
+    app:qrcv_tipTextSize="14sp"
+    app:qrcv_toolbarHeight="0dp"
+    app:qrcv_topOffset="0dp"
+    app:qrcv_verticalBias="2" />
diff --git a/sesameApp/src/main/res/mipmap-hdpi/ic_launcher_round.png b/sesameApp/src/main/res/mipmap-hdpi/ic_launcher_round.png
new file mode 100644
index 0000000..55972f5
Binary files /dev/null and b/sesameApp/src/main/res/mipmap-hdpi/ic_launcher_round.png differ
diff --git a/sesameApp/src/main/res/mipmap-mdpi/ic_launcher_round.png b/sesameApp/src/main/res/mipmap-mdpi/ic_launcher_round.png
new file mode 100644
index 0000000..2f9bbd4
Binary files /dev/null and b/sesameApp/src/main/res/mipmap-mdpi/ic_launcher_round.png differ
diff --git a/sesameApp/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/sesameApp/src/main/res/mipmap-xhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..038ec44
Binary files /dev/null and b/sesameApp/src/main/res/mipmap-xhdpi/ic_launcher_round.png differ
diff --git a/sesameApp/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/sesameApp/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..b58f4f0
Binary files /dev/null and b/sesameApp/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ
diff --git a/sesameApp/src/main/res/mipmap-xxhdpi/qrcode_default_grid_scan_line.png b/sesameApp/src/main/res/mipmap-xxhdpi/qrcode_default_grid_scan_line.png
new file mode 100644
index 0000000..8b642a3
Binary files /dev/null and b/sesameApp/src/main/res/mipmap-xxhdpi/qrcode_default_grid_scan_line.png differ
diff --git a/sesameApp/src/main/res/mipmap-xxhdpi/qrcode_default_scan_line.png b/sesameApp/src/main/res/mipmap-xxhdpi/qrcode_default_scan_line.png
new file mode 100644
index 0000000..6b17808
Binary files /dev/null and b/sesameApp/src/main/res/mipmap-xxhdpi/qrcode_default_scan_line.png differ
diff --git a/sesameApp/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/sesameApp/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..9e93197
Binary files /dev/null and b/sesameApp/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png differ
diff --git a/sesameApp/src/main/res/values-ja/strings.xml b/sesameApp/src/main/res/values-ja/strings.xml
new file mode 100755
index 0000000..85b229e
--- /dev/null
+++ b/sesameApp/src/main/res/values-ja/strings.xml
@@ -0,0 +1,19 @@
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+    <string name="Sesame">セサミ</string>
+    <string name="add_new_device">新しいデバイスを追加</string>
+    <string name="scan_the_qr_code">QRコードのスキャン</string>
+    <string name="add_contacts">連絡先の追加</string>
+    <string name="close">閉じる</string>
+    <string name="back">戻る</string>
+    <string name="gallery">写真ライブラリ</string>
+    <string name="qr_not_found">画像にQRコードが見つかりません</string>
+
+    <string name="widget_lock_all">すべて施錠</string>
+    <string name="widget_unlock_all">すべて解錠</string>
+    <string name="auto_unlock_service_notification">登録済みのセサミをBluetoothで検出しています</string>
+    <string name="auto_unlock_location_permission_title">バックグラウンド位置情報を許可</string>
+    <string name="auto_unlock_location_permission_message">手ぶら解錠では Geofence API を使用し、アプリが閉じているときやバックグラウンドでも、設定したエリアから離れたことを検出します。エリアから離れただけでは解錠されません。このスマートフォンが近くの登録済みセサミにBluetooth接続した場合のみ解錠します。システム設定の位置情報で「常に許可」を選択してください。手ぶら解錠はいつでもオフにできます。</string>
+    <string name="auto_unlock_location_permission_open_settings">設定を開く</string>
+    <string name="sesame_widget">通知ウィジェット</string>
+</resources>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/values-zh-rCN/strings.xml b/sesameApp/src/main/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000..2e4701b
--- /dev/null
+++ b/sesameApp/src/main/res/values-zh-rCN/strings.xml
@@ -0,0 +1,19 @@
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+    <string name="Sesame">芝麻</string>
+    <string name="add_new_device">添加新设备</string>
+    <string name="scan_the_qr_code">扫描二维码</string>
+    <string name="add_contacts">添加联系人</string>
+    <string name="close">关闭</string>
+    <string name="back">返回</string>
+    <string name="gallery">图库</string>
+    <string name="qr_not_found">图片中未发现二维码</string>
+
+    <string name="widget_lock_all">全部上锁</string>
+    <string name="widget_unlock_all">全部解锁</string>
+    <string name="auto_unlock_service_notification">正在通过蓝牙等待检测已登记的芝麻</string>
+    <string name="auto_unlock_location_permission_title">允许后台位置信息</string>
+    <string name="auto_unlock_location_permission_message">全自动解锁会使用 Geofence API,即使应用关闭或在后台,也能检测您是否离开所设置的区域。离开区域只会启用一次自动解锁;只有本手机通过附近的蓝牙连接到已登记的芝麻后,门锁才会解锁。请在系统设置的位置权限中选择“始终允许”。您可以随时关闭全自动解锁。</string>
+    <string name="auto_unlock_location_permission_open_settings">打开设置</string>
+    <string name="sesame_widget">通知栏小部件</string>
+</resources>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/values-zh-rTW/strings.xml b/sesameApp/src/main/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000..947b4ca
--- /dev/null
+++ b/sesameApp/src/main/res/values-zh-rTW/strings.xml
@@ -0,0 +1,19 @@
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+    <string name="Sesame">芝麻</string>
+    <string name="add_new_device">新增裝置</string>
+    <string name="scan_the_qr_code">掃描QR code</string>
+    <string name="add_contacts">添加聯絡人</string>
+    <string name="close">關閉</string>
+    <string name="back">返回</string>
+    <string name="gallery">圖庫</string>
+    <string name="qr_not_found">圖片中未發現 QR 碼</string>
+
+    <string name="widget_lock_all">全部上鎖</string>
+    <string name="widget_unlock_all">全部解鎖</string>
+    <string name="auto_unlock_service_notification">正在透過藍牙等待偵測已登記的芝麻</string>
+    <string name="auto_unlock_location_permission_title">允許背景位置資訊</string>
+    <string name="auto_unlock_location_permission_message">全自動解鎖會使用 Geofence API,即使應用程式關閉或在背景,也能偵測您是否離開所設定的區域。離開區域只會啟用一次自動解鎖;只有本手機透過附近的藍牙連線到已登記的芝麻後,門鎖才會解鎖。請在系統設定的位置權限中選擇「永遠允許」。您可以隨時關閉全自動解鎖。</string>
+    <string name="auto_unlock_location_permission_open_settings">開啟設定</string>
+    <string name="sesame_widget">通知列 Widget</string>
+</resources>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/values/arrays.xml b/sesameApp/src/main/res/values/arrays.xml
new file mode 100644
index 0000000..3729f8a
--- /dev/null
+++ b/sesameApp/src/main/res/values/arrays.xml
@@ -0,0 +1,42 @@
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+    <declare-styleable name="QRCodeView">
+        <attr name="qrcv_topOffset" format="dimension|reference" />
+        <attr name="qrcv_cornerSize" format="dimension|reference" />
+        <attr name="qrcv_cornerLength" format="dimension|reference" />
+        <attr name="qrcv_cornerColor" format="color|reference" />
+        <attr name="qrcv_cornerDisplayType">
+            <enum name="center" value="1" />
+            <enum name="inside" value="2" />
+        </attr>
+        <attr name="qrcv_rectWidth" format="dimension|reference" />
+        <attr name="qrcv_barcodeRectHeight" format="dimension|reference" />
+        <attr name="qrcv_maskColor" format="color|reference" />
+        <attr name="qrcv_scanLineSize" format="dimension|reference" />
+        <attr name="qrcv_scanLineColor" format="color|reference" />
+        <attr name="qrcv_scanLineMargin" format="dimension|reference" />
+        <attr name="qrcv_isShowDefaultScanLineDrawable" format="boolean" />
+        <attr name="qrcv_customScanLineDrawable" format="reference" />
+        <attr name="qrcv_borderSize" format="dimension|reference" />
+        <attr name="qrcv_borderColor" format="color|reference" />
+        <attr name="qrcv_animTime" format="integer" />
+        <attr name="qrcv_verticalBias" format="float" />
+        <attr name="qrcv_toolbarHeight" format="dimension|reference" />
+        <attr name="qrcv_isBarcode" format="boolean" />
+        <attr name="qrcv_qrCodeTipText" format="string|reference" />
+        <attr name="qrcv_barCodeTipText" format="string|reference" />
+        <attr name="qrcv_tipTextSize" format="dimension|reference" />
+        <attr name="qrcv_tipTextColor" format="color|reference" />
+        <attr name="qrcv_isTipTextBelowRect" format="boolean" />
+        <attr name="qrcv_tipTextMargin" format="dimension|reference" />
+        <attr name="qrcv_isShowTipTextAsSingleLine" format="boolean" />
+        <attr name="qrcv_isShowTipBackground" format="boolean" />
+        <attr name="qrcv_tipBackgroundColor" format="color|reference" />
+        <attr name="qrcv_isScanLineReverse" format="boolean" />
+        <attr name="qrcv_isShowDefaultGridScanLineDrawable" format="boolean" />
+        <attr name="qrcv_customGridScanLineDrawable" format="reference" />
+        <attr name="qrcv_isOnlyDecodeScanBoxArea" format="boolean" />
+        <attr name="qrcv_isShowLocationPoint" format="boolean" />
+        <attr name="qrcv_isAutoZoom" format="boolean" />
+    </declare-styleable>
+</resources>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/values/ids.xml b/sesameApp/src/main/res/values/ids.xml
new file mode 100644
index 0000000..95d1a0a
--- /dev/null
+++ b/sesameApp/src/main/res/values/ids.xml
@@ -0,0 +1,4 @@
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+    <item type="id" name="bgaqrcode_camera_preview" />
+</resources>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/values/strings.xml b/sesameApp/src/main/res/values/strings.xml
new file mode 100644
index 0000000..a9e7fbd
--- /dev/null
+++ b/sesameApp/src/main/res/values/strings.xml
@@ -0,0 +1,19 @@
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+    <string name="Sesame">Sesame</string>
+    <string name="add_new_device">Add Device</string>
+    <string name="scan_the_qr_code">Scan QR Code</string>
+    <string name="add_contacts">Add Contacts</string>
+    <string name="close">Close</string>
+    <string name="back">Back</string>
+    <string name="gallery">Photo library</string>
+    <string name="qr_not_found">No QR code found in this image</string>
+
+    <string name="widget_lock_all">Lock All</string>
+    <string name="widget_unlock_all">Unlock All</string>
+    <string name="auto_unlock_service_notification">Waiting to detect your registered Sesame over Bluetooth</string>
+    <string name="auto_unlock_location_permission_title">Allow background location</string>
+    <string name="auto_unlock_location_permission_message">Auto Unlock uses the Geofence API to detect when you leave the area you set, even while the app is closed or in the background. Leaving the area only arms Auto Unlock. Your door unlocks only after this phone connects to your registered Sesame over nearby Bluetooth. Select “Allow all the time” for Location in system settings. You can turn Auto Unlock off at any time.</string>
+    <string name="auto_unlock_location_permission_open_settings">Open settings</string>
+    <string name="sesame_widget">Notification Widget</string>
+</resources>
\ No newline at end of file
diff --git a/sesameApp/src/main/res/values/styles.xml b/sesameApp/src/main/res/values/styles.xml
new file mode 100755
index 0000000..d0ca33f
--- /dev/null
+++ b/sesameApp/src/main/res/values/styles.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+
+    <style name="AppTheme" parent="android:style/Theme.Material.Light.NoActionBar">
+        <item name="android:fontFamily">sans</item>
+        <item name="android:windowLightStatusBar">true</item>
+        <item name="android:statusBarColor">#FFFFFF</item>
+        <item name="android:navigationBarColor">#FFFFFF</item>
+        <item name="android:windowActionModeOverlay">true</item>
+    </style>
+</resources>
\ No newline at end of file
diff --git a/sesameSdk/.gitignore b/sesameSdk/.gitignore
new file mode 100644
index 0000000..796b96d
--- /dev/null
+++ b/sesameSdk/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/sesameSdk/build.gradle b/sesameSdk/build.gradle
new file mode 100644
index 0000000..e87f63d
--- /dev/null
+++ b/sesameSdk/build.gradle
@@ -0,0 +1,24 @@
+plugins {
+    alias(libs.plugins.android.library)
+}
+
+android {
+    namespace 'co.candyhouse.sesame'
+    compileSdk = rootProject.ext.compileSdkVersion
+    defaultConfig {
+        minSdk rootProject.ext.minSdkVersion
+        consumerProguardFiles "consumer-rules.pro"
+    }
+    compileOptions {
+        sourceCompatibility JavaVersion.VERSION_17
+        targetCompatibility JavaVersion.VERSION_17
+    }
+    buildFeatures { buildConfig true }
+}
+
+dependencies {
+    api libs.androidx.lifecycle.livedata.core
+    api libs.kotlinx.coroutines.core
+    api libs.gson
+    implementation libs.androidx.annotation
+}
diff --git a/sesameSdk/consumer-rules.pro b/sesameSdk/consumer-rules.pro
new file mode 100644
index 0000000..64c285c
--- /dev/null
+++ b/sesameSdk/consumer-rules.pro
@@ -0,0 +1,27 @@
+-keepattributes Signature
+-keepattributes *Annotation*
+-keepattributes RuntimeVisibleAnnotations
+-keepattributes RuntimeVisibleParameterAnnotations
+-keepattributes RuntimeInvisibleAnnotations
+-keepattributes RuntimeInvisibleParameterAnnotations
+-keepattributes AnnotationDefault
+-keepattributes InnerClasses
+-keepattributes EnclosingMethod
+
+-keep class co.candyhouse.sesame.ble.CHDevice { *; }
+
+-dontwarn sun.misc.**
+-dontwarn com.android.org.conscrypt.SSLParametersImpl
+-dontwarn org.apache.harmony.xnet.provider.jsse.SSLParametersImpl
+
+-keep class com.google.gson.reflect.TypeToken { *; }
+-keep class * extends com.google.gson.reflect.TypeToken { *; }
+-keep class * implements com.google.gson.TypeAdapterFactory { *; }
+-keep class * implements com.google.gson.JsonSerializer { *; }
+-keep class * implements com.google.gson.JsonDeserializer { *; }
+
+-dontwarn com.google.gson.**
+-dontwarn kotlin.**
+-dontwarn kotlinx.**
+
+-keep class co.candyhouse.sesame.ble.os3.biometric.parseData.OpenSensorData { *; }
diff --git a/sesameSdk/src/main/AndroidManifest.xml b/sesameSdk/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..c584c7f
--- /dev/null
+++ b/sesameSdk/src/main/AndroidManifest.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <!--申请权限-->
+    <uses-permission android:name="android.permission.BLUETOOTH" />
+    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
+    <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
+    <uses-permission
+        android:name="android.permission.BLUETOOTH_SCAN"
+        android:usesPermissionFlags="neverForLocation" />
+    <uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />
+
+    <!-- 声明蓝牙功能 -->
+    <uses-feature
+        android:name="android.hardware.bluetooth"
+        android:required="true" />
+    <!-- 支持低功耗蓝牙设备:设置非必须条件,以便支持更多设备安装 -->
+    <uses-feature
+        android:name="android.hardware.bluetooth_le"
+        android:required="false" />
+
+</manifest>
\ No newline at end of file
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBaseDevice.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBaseDevice.kt
new file mode 100644
index 0000000..0231696
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBaseDevice.kt
@@ -0,0 +1,312 @@
+package co.candyhouse.sesame.ble
+
+import android.Manifest
+import android.annotation.SuppressLint
+import android.bluetooth.BluetoothDevice
+import android.bluetooth.BluetoothGatt
+import android.bluetooth.BluetoothGattCharacteristic
+import android.bluetooth.BluetoothGattDescriptor
+import android.content.pm.PackageManager
+import androidx.annotation.Keep
+import co.candyhouse.sesame.ble.CHBleManager.appContext
+import co.candyhouse.sesame.ble.CHBleManager.bluetoothAdapter
+import co.candyhouse.sesame.ble.CHDevices.Companion.UNSET_BLE_TX_POWER_VALUE
+import co.candyhouse.sesame.ble.CHDevices.Companion.UNSET_LOCK_UNLOCK_SWITCH_POINT
+import co.candyhouse.sesame.ble.CHDevices.Companion.UNSET_SENSOR_DETECT_INTERVAL_MS
+import co.candyhouse.sesame.ble.os2.sesame2.CHError
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.L
+import java.util.UUID
+
+internal interface CHDeviceUtil {
+    var advertisement: CHadv?//廣播
+    var sesame2KeyData: CHDevice?//鑰匙的資料
+    fun login(token: String? = null)
+}
+
+@Keep
+@SuppressLint("MissingPermission")
+internal open class CHBaseDevice {
+    lateinit var productModel: CHProductModel
+    val gattRxBuffer: SesameBleReceiver = SesameBleReceiver() //[數據層][收]
+    var gattTxBuffer: SesameBleTransmit? = null //[數據層][傳]
+    lateinit var mSesameToken: ByteArray//第一次連線的時候從設備收亂數token準備驗證
+    var mCharacteristic: BluetoothGattCharacteristic? = null //用來發送資料給
+    var delegate: CHDeviceStatusDelegate? = null
+    var deviceTimestamp: Long? = null
+    var loginTimestamp: Long? = null
+    var deviceId: UUID? = null
+    var isRegistered: Boolean = true
+    var rssi: Int? = 0
+    var batteryPercentage: Int? = null
+        set(value) {
+            if (field != value) {
+                field = value
+                delegate?.onMechStatus(this as CHDevices)
+            }
+        }
+    var bleTxPower: Byte = UNSET_BLE_TX_POWER_VALUE.toByte()
+        set(value) {
+            if (field != value) {
+                field = value
+            }
+            if (this is CHDevices) {
+                val device: CHDevices = this
+                delegate?.onBleTxPowerReceive(device, device.bleTxPower)
+            }
+        }
+    var sensorDetectIntervalMs: Short = UNSET_SENSOR_DETECT_INTERVAL_MS
+        set(value) {
+            if (field == value) return
+            field = value
+            if (this is CHDevices) {
+                val device: CHDevices = this
+                delegate?.onSensorDetectIntervalReceive(device, device.sensorDetectIntervalMs)
+            }
+        }
+    private var lockUnlockSwitchPointValue: Short = UNSET_LOCK_UNLOCK_SWITCH_POINT
+    var lockUnlockSwitchPoint: Short
+        get() = lockUnlockSwitchPointValue
+        set(value) {
+            if (lockUnlockSwitchPointValue == value) return
+            lockUnlockSwitchPointValue = value
+            notifyLockUnlockSwitchPointChanged()
+        }
+    private var hasLockUnlockSwitchPointSettingValue: Boolean = false
+    var hasLockUnlockSwitchPointSetting: Boolean
+        get() = hasLockUnlockSwitchPointSettingValue
+        set(value) {
+            if (hasLockUnlockSwitchPointSettingValue == value) return
+            hasLockUnlockSwitchPointSettingValue = value
+            notifyLockUnlockSwitchPointChanged()
+        }
+    var mBluetoothGatt: BluetoothGatt? = null //[gatt] 控制藍芽連線的全局物件
+    var isNeedAuthFromServer: Boolean? = false
+    var mechStatus: CHSesameProtocolMechStatus? = null
+        set(value) {
+            if (field != value) {
+                field = value
+                delegate?.onMechStatus(this as CHDevices)
+            }
+        }
+
+    var deviceStatus: CHDeviceStatus = CHDeviceStatus.NoBleSignal
+        set(value) {
+            if (field != value) {
+                field = value
+
+                if (this is CHDevices) {
+                    val device: CHDevices = this
+                    delegate?.onBleDeviceStatusChanged(device, device.deviceStatus)
+                }
+            }
+        }
+    var sesame2KeyData: CHDevice? = null
+        set(value) {
+            if (field != value) {
+                field = value
+                sesame2KeyData?.let {
+                    deviceId = UUID.fromString(it.deviceUUID)!!
+                    isNeedAuthFromServer = it.secretKey.contains("000000")
+                }
+            }
+        }
+
+    fun dropKey(result: CHResult<CHEmpty>) {
+        CHBleSupport.keys.deleteByDeviceId(deviceId.toString()) { deleteResult ->
+            when {
+                deleteResult.isSuccess -> {
+                    val deletedCount = deleteResult.getOrNull() ?: 0
+                    if (deletedCount > 0) {
+                        delegate = null
+                        deviceStatus = CHDeviceStatus.NoBleSignal
+                        (this as CHDevices).disconnect {}
+                        this.sesame2KeyData = null
+                    }
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+                }
+
+                deleteResult.isFailure -> {
+                    result.invoke(Result.failure(deleteResult.exceptionOrNull()!!))
+                }
+            }
+        }
+    }
+
+    fun disconnect(result: CHResult<CHEmpty>) {
+        L.d("hcia", "[say] 主動要求斷開藍芽連接 :" + " bluetoothAdapter.isEnabled: " + bluetoothAdapter.isEnabled + " mBluetoothGatt:" + mBluetoothGatt)
+        // 在调用安卓的disconnect()断线之前,需要把原来enable的notify disable掉。否则会影响ESP32-C3 BLE 断线事件的触发。
+        mBluetoothGatt?.let { gatt ->
+            for (service in gatt.services) {
+                L.d("[say]", "[onServicesDiscovered] service 01 : ${service.uuid}")
+                if (service.uuid == Sesame2Chracs.uuidService01) {
+                    for (charc in service.characteristics) {
+                        L.d("[say]", "[onServicesDiscovered] charc: ${charc.uuid}")
+                        if (charc.uuid == Sesame2Chracs.uuidChr03) {
+                            gatt.setCharacteristicNotification(charc, true)
+                            val descriptor = charc.getDescriptor(UUID.fromString("00002902-0000-1000-8000-00805f9b34fb"))
+                            descriptor?.let {
+                                it.value = BluetoothGattDescriptor.DISABLE_NOTIFICATION_VALUE
+                                val check = gatt.writeDescriptor(it)
+                                L.d("[say]", "[disconnect][NOTIFICATION]【disable】 $check")
+                            }
+                        }
+                    }
+                }
+            }
+        }
+
+        if (bluetoothAdapter.isEnabled) {
+            L.d("[say]", "[disconnect][start]")
+            mBluetoothGatt?.disconnect()
+        } else {
+            mBluetoothGatt?.disconnect()
+            (this as CHDeviceUtil).advertisement = null
+            CHBleManager.connectR.remove(mBluetoothGatt?.device?.address)
+        }
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+    }
+
+    protected fun updateLockUnlockSwitchPointSetting(point: Short) {
+        if (hasLockUnlockSwitchPointSettingValue && lockUnlockSwitchPointValue == point) return
+        lockUnlockSwitchPointValue = point
+        hasLockUnlockSwitchPointSettingValue = true
+        notifyLockUnlockSwitchPointChanged()
+    }
+
+    private fun notifyLockUnlockSwitchPointChanged() {
+        if (this is CHDevices) {
+            val device: CHDevices = this
+            delegate?.onLockUnlockSwitchPointReceive(device, device.lockUnlockSwitchPoint)
+        }
+    }
+
+}
+
+internal fun <T> CHDevices.isBleAvailable(result: CHResult<T>): Boolean {
+    if (appContext.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+        if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+            result.invoke(Result.failure(CHError.BleUnauth.value))
+            return false
+        }
+    }
+    if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+        result.invoke(Result.failure(CHError.BlePoweroff.value))
+        return false
+    }
+    if (deviceStatus.value == CHDeviceLoginStatus.unlogined) {
+        result.invoke(Result.failure(CHError.SesameUnlogin.value))
+        return false
+    }
+    return true
+}
+
+internal fun CHBaseDevice.toCHDevices(): CHDevices {
+    return object : CHDevices {
+        override var mechStatus: CHSesameProtocolMechStatus?
+            get() = this@toCHDevices.mechStatus
+            set(value) {
+                this@toCHDevices.mechStatus = value
+            }
+        override var deviceTimestamp: Long?
+            get() = this@toCHDevices.deviceTimestamp
+            set(value) {
+                this@toCHDevices.deviceTimestamp = value
+            }
+        override var loginTimestamp: Long?
+            get() = this@toCHDevices.loginTimestamp
+            set(value) {
+                this@toCHDevices.loginTimestamp = value
+            }
+        override var delegate: CHDeviceStatusDelegate?
+            get() = this@toCHDevices.delegate
+            set(value) {
+                this@toCHDevices.delegate = value
+            }
+
+        override var deviceStatus: CHDeviceStatus
+            get() = this@toCHDevices.deviceStatus
+            set(value) {
+                this@toCHDevices.deviceStatus = value
+            }
+        override var rssi: Int?
+            get() = this@toCHDevices.rssi
+            set(value) {
+                this@toCHDevices.rssi = value
+            }
+        override var bleTxPower: Byte
+            get() = this@toCHDevices.bleTxPower
+            set(value) {
+                this@toCHDevices.bleTxPower = value
+            }
+        override var sensorDetectIntervalMs: Short
+            get() = this@toCHDevices.sensorDetectIntervalMs
+            set(value) {
+                this@toCHDevices.sensorDetectIntervalMs = value
+            }
+        override var lockUnlockSwitchPoint: Short
+            get() = this@toCHDevices.lockUnlockSwitchPoint
+            set(value) {
+                this@toCHDevices.lockUnlockSwitchPoint = value
+            }
+        override var hasLockUnlockSwitchPointSetting: Boolean
+            get() = this@toCHDevices.hasLockUnlockSwitchPointSetting
+            set(value) {
+                this@toCHDevices.hasLockUnlockSwitchPointSetting = value
+            }
+        override var deviceId: UUID?
+            get() = this@toCHDevices.deviceId
+            set(value) {
+                this@toCHDevices.deviceId = value
+            }
+        override var isRegistered: Boolean
+            get() = this@toCHDevices.isRegistered
+            set(value) {
+                this@toCHDevices.isRegistered = value
+            }
+        override var productModel: CHProductModel
+            get() = this@toCHDevices.productModel
+            set(value) {
+                this@toCHDevices.productModel = value
+            }
+        override var batteryPercentage: Int?
+            get() = this@toCHDevices.batteryPercentage
+            set(value) {
+                this@toCHDevices.batteryPercentage = value
+            }
+
+        override fun connect(result: CHResult<CHEmpty>) {
+            // 实现 connect 方法
+        }
+
+        override fun disconnect(result: CHResult<CHEmpty>) {
+            this@toCHDevices.disconnect(result)
+        }
+
+        override fun getKey(): CHDevice {
+            return (this@toCHDevices as CHDeviceUtil).sesame2KeyData!!.copy(historyTag = null)
+        }
+
+        override fun dropKey(result: CHResult<CHEmpty>) {
+            this@toCHDevices.dropKey(result)
+        }
+
+        override fun getVersionTag(result: CHResult<String>) {
+
+        }
+
+        override fun register(result: CHResult<CHEmpty>) {
+            // 实现 register 方法
+        }
+
+        override fun reset(result: CHResult<CHEmpty>) {
+            // 实现 reset 方法
+        }
+
+        override fun updateFirmware(onResponse: CHResult<BluetoothDevice>) {
+            // 实现 updateFirmware 方法
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBleManager.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBleManager.kt
new file mode 100644
index 0000000..07633bb
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBleManager.kt
@@ -0,0 +1,265 @@
+package co.candyhouse.sesame.ble
+
+import android.Manifest
+import android.annotation.SuppressLint
+import android.bluetooth.BluetoothAdapter
+import android.bluetooth.BluetoothManager
+import android.bluetooth.le.ScanCallback
+import android.bluetooth.le.ScanFilter
+import android.bluetooth.le.ScanResult
+import android.bluetooth.le.ScanSettings
+import android.content.BroadcastReceiver
+import android.content.Context
+import android.content.Intent
+import android.content.IntentFilter
+import android.content.pm.PackageManager
+import android.os.Build
+import android.os.ParcelUuid
+import co.candyhouse.sesame.ble.os2.sesame2.CHError
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.L
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers.IO
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.launch
+import java.util.Locale
+import java.util.UUID
+import java.util.concurrent.ConcurrentHashMap
+import kotlin.time.Duration.Companion.milliseconds
+
+enum class CHBleStatus {
+    opened, closed,
+}
+
+enum class CHScanStatus(val value: CHBleStatus) {
+    Enable(CHBleStatus.opened), Disable(CHBleStatus.opened), BleClose(CHBleStatus.closed), Error(CHBleStatus.opened),
+}
+
+internal enum class CHDevicesServices(val value: ParcelUuid) {
+    CandyHouseService(ParcelUuid(UUID.fromString("0000FD81-0000-1000-8000-00805f9b34fb"))),
+}
+
+interface CHBleManagerDelegate {
+    fun didDiscoverUnRegisteredCHDevices(devices: List<CHDevices>) {}
+}
+
+interface CHBleStatusDelegate {
+    fun didScanChange(ss: CHScanStatus) {}
+}
+
+@SuppressLint("MissingPermission")
+object CHBleManager {
+    fun restoreDevice(key: CHDevice): CHDevices? = with(key) {
+        if (runCatching { UUID.fromString(deviceUUID) }.isFailure) return null
+
+        val productModel = CHProductModel.getByModel(deviceModel) ?: return null
+        val normalizedUUID = deviceUUID.lowercase(Locale.getDefault())
+
+        val device = chDeviceMap.getOrPut(normalizedUUID) {
+            productModel.deviceFactory()
+        }
+        val deviceUtil = device as? CHDeviceUtil ?: return null
+        device.productModel = productModel
+        deviceUtil.sesame2KeyData = if (deviceUtil.sesame2KeyData == null) {
+            this
+        } else {
+            this.copy(historyTag = deviceUtil.sesame2KeyData?.historyTag)
+        }
+        return device
+    }
+
+    internal lateinit var appContext: Context
+
+    init {
+        CoroutineScope(IO).launch {
+            while (true) {
+                delay(1000.milliseconds)
+                delegate?.didDiscoverUnRegisteredCHDevices(chDeviceMap.map { it.value }.filter { !it.isRegistered })
+            }
+        }
+    }
+
+    operator fun invoke(appContext: Context) {
+        CHBleManager.appContext = appContext
+        try {
+            bluetoothManager = appContext.getSystemService(Context.BLUETOOTH_SERVICE) as BluetoothManager
+            bluetoothAdapter = bluetoothManager.adapter
+        } catch (e: Exception) {
+            // 為了google 自動審查虛擬機器報錯
+            L.d("hcia", "no support ble")
+            return
+        }
+        mScanning = if (bluetoothAdapter.isEnabled) CHScanStatus.Disable else CHScanStatus.BleClose
+        appContext.registerReceiver(object : BroadcastReceiver() {
+            override fun onReceive(context: Context, intent: Intent) {
+                try {
+                    val action = intent.action
+                    if (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) {
+                        when (intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.ERROR)) {
+                            BluetoothAdapter.STATE_OFF -> {
+                                disConnectAll {}
+                                connectR.clear()
+                                mScanning = CHScanStatus.BleClose
+
+                                if (bluetoothAdapter.isEnabled) {
+                                    bluetoothAdapter.bluetoothLeScanner?.stopScan(bleScanner)
+                                }
+                            }
+
+                            BluetoothAdapter.STATE_ON -> {
+                                mScanning = CHScanStatus.Disable
+                                enableScan {}
+                            }
+                        }
+                    }
+                } catch (e: Exception) {
+                    L.e("CHBleManager", "Operation failed", e)
+                }
+            }
+        }, IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED))
+    }
+
+    var statusDelegate: CHBleStatusDelegate? = null
+    var delegate: CHBleManagerDelegate? = null
+    lateinit var bluetoothManager: BluetoothManager
+    lateinit var bluetoothAdapter: BluetoothAdapter
+    internal val connectR: MutableList<String> = ArrayList()
+    internal var chDeviceMap: MutableMap<String?, CHDevices> = ConcurrentHashMap()
+
+    var mScanning: CHScanStatus = CHScanStatus.BleClose
+        set(value) {
+            field = value
+            statusDelegate?.didScanChange(value)
+        }
+    private val bleScanner = object : ScanCallback() {
+
+        override fun onScanFailed(errorCode: Int) {
+            super.onScanFailed(errorCode)
+            if (errorCode != SCAN_FAILED_ALREADY_STARTED) {
+                L.d("hcia", "掃描錯誤 onScanFailed  errorCode:" + errorCode)
+                mScanning = CHScanStatus.Error
+            }
+        }
+
+        override fun onScanResult(callbackType: Int, scanResult: ScanResult) {
+            if (mScanning == CHScanStatus.BleClose) {
+                return
+            }
+            try {
+                CHadv(scanResult).apply {
+                    this.productModel?.let {
+                        chDeviceMap.getOrPut(this.deviceID.toString()) { it.deviceFactory() }.let { device ->
+                            device.productModel = this.productModel!!
+                            (device as? CHDeviceUtil)?.advertisement = this
+                        }
+                    }
+                }
+            } catch (e: Exception) {
+                L.e("CHBleManager", "Operation failed", e)
+                L.d("hcia", "藍芽協議不符合 e:" + e)
+            }
+        }
+    }
+
+    fun getConnectRSize(): Int {
+        return connectR.size
+    }
+
+    fun disableScan(result: CHResult<CHEmpty>) {
+        if (!::bluetoothManager.isInitialized || !::bluetoothAdapter.isInitialized) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            return
+        }
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
+            val canScan =
+                appContext.checkSelfPermission(Manifest.permission.BLUETOOTH_SCAN) == PackageManager.PERMISSION_GRANTED
+            val canConnect =
+                appContext.checkSelfPermission(Manifest.permission.BLUETOOTH_CONNECT) == PackageManager.PERMISSION_GRANTED
+            if (!canScan || !canConnect) {
+                result.invoke(Result.failure(CHError.BleUnauth.value))
+                return
+            }
+        }
+        try {
+            if (bluetoothAdapter.isEnabled) {
+                bluetoothAdapter.bluetoothLeScanner?.stopScan(bleScanner)
+                mScanning = CHScanStatus.Disable
+            } else {
+                mScanning = CHScanStatus.BleClose
+            }
+        } catch (_: SecurityException) {
+            result.invoke(Result.failure(CHError.BleUnauth.value))
+            return
+        }
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+    }
+
+    fun enableScan(openble: Boolean = false, result: CHResult<CHEmpty>) {
+        // 检查权限
+        if (appContext.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+            result.invoke(Result.failure(CHError.BleUnauth.value))
+            return
+        }
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
+            if (appContext.checkSelfPermission(Manifest.permission.BLUETOOTH_SCAN) != PackageManager.PERMISSION_GRANTED) {
+                result.invoke(Result.failure(CHError.BleUnauth.value))
+                return
+            }
+            if (appContext.checkSelfPermission(Manifest.permission.BLUETOOTH_CONNECT) != PackageManager.PERMISSION_GRANTED) {
+                result.invoke(Result.failure(CHError.BleUnauth.value))
+                return
+            }
+        }
+
+        // 检查 BluetoothAdapter
+        val bluetoothAdapter = BluetoothAdapter.getDefaultAdapter()
+        if (bluetoothAdapter == null) {
+            result.invoke(Result.failure(CHError.BleUnauth.value))
+            return
+        }
+
+        // 开启蓝牙
+        if (openble) {
+            bluetoothAdapter.enable()
+        }
+
+        // 检查蓝牙是否开启
+        if (!bluetoothAdapter.isEnabled) {
+            result.invoke(Result.failure(CHError.BlePoweroff.value))
+            return
+        }
+
+        // 检查扫描状态
+        if (mScanning == CHScanStatus.Enable) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            return
+        }
+
+        // 停止之前的扫描
+        bluetoothAdapter.bluetoothLeScanner?.stopScan(bleScanner)
+        mScanning = CHScanStatus.Enable
+
+        // 开始新的扫描
+        val scanFilter = ScanFilter.Builder().setServiceUuid(CHDevicesServices.CandyHouseService.value).build()
+        val scanSettings = ScanSettings.Builder().setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY).build()
+        bluetoothAdapter.bluetoothLeScanner?.startScan(mutableListOf(scanFilter), scanSettings, bleScanner)
+
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+    }
+
+
+    fun disConnectAll(result: CHResult<CHEmpty>) {
+        chDeviceMap.forEach {
+            try {
+                it.value.disconnect { }
+            } catch (e: Exception) {
+                L.e("CHBleManager", "Operation failed", e)
+            }
+
+        }
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+    }
+
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBleSupport.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBleSupport.kt
new file mode 100644
index 0000000..5b8df24
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHBleSupport.kt
@@ -0,0 +1,41 @@
+package co.candyhouse.sesame.ble
+
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.HttpResponseCallback
+
+/** Configure once before starting BLE. The SDK has no AWS or database implementation. */
+object CHBleSupport {
+    lateinit var backend: CHBleHost
+        private set
+    lateinit var keys: CHKeyPersistence
+        private set
+    lateinit var gatewayTenantId: String
+        private set
+
+    fun initialize(backend: CHBleHost, keys: CHKeyPersistence, gatewayTenantId: String) {
+        this.backend = backend
+        this.keys = keys
+        this.gatewayTenantId = gatewayTenantId
+    }
+}
+
+/** Host-provided services needed by device registration, authentication and synchronization. */
+interface CHBleHost {
+    fun isNetworkAvailable(): Boolean
+    fun shouldUploadHistory(deviceId: String): Boolean
+    fun signGuestKey(deviceId: String, token: String, secretKey: String, onResponse: CHResult<String>)
+    fun updateDeviceFirmwareVersion(deviceUUID: String, versionTag: String, onResponse: CHResult<Any>)
+    fun postSS2History(deviceID: String, hisHex: String, onResponse: CHResult<Any>)
+    fun postOS3History(deviceID: String, hisHex: String, onResponse: CHResult<Any>)
+    fun postBatteryData(deviceID: String, payloadString: String, onResponse: CHResult<Any>)
+    fun registerOs2(deviceId: String, appKey: String, nonce: String, registrationKey: String, productType: String, onResponse: CHResult<CHRegistrationResult>)
+    fun registerOs3(deviceId: String, productType: String, publicKey: String, onResponse: CHResult<Any>)
+}
+
+/** Values required to finish the OS2 BLE registration handshake. */
+data class CHRegistrationResult(val signature: String, val token: String, val publicKey: String)
+
+interface CHKeyPersistence {
+    fun insert(device: CHDevice, onResponse: HttpResponseCallback<String>)
+    fun deleteByDeviceId(deviceId: String, onResponse: HttpResponseCallback<Int>)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHDeivceProtocols.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHDeivceProtocols.kt
new file mode 100644
index 0000000..1c2400c
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHDeivceProtocols.kt
@@ -0,0 +1,402 @@
+package co.candyhouse.sesame.ble
+
+import android.bluetooth.BluetoothDevice
+import co.candyhouse.sesame.ble.os2.bike.CHSesameBikeDevice
+import co.candyhouse.sesame.ble.os2.bot.CHSesameBotDevice
+import co.candyhouse.sesame.ble.os2.sesame2.CHError
+import co.candyhouse.sesame.ble.os2.sesame2.CHSesame2Device
+import co.candyhouse.sesame.ble.os3.bike2.CHSesameBike2Device
+import co.candyhouse.sesame.ble.os3.bike2.CHSesameBike3Device
+import co.candyhouse.sesame.ble.os3.biometric.BiometricDeviceType
+import co.candyhouse.sesame.ble.os3.biometric.CHSesameBiometricDeviceImpl
+import co.candyhouse.sesame.ble.os3.biometric.DeviceProfiles
+import co.candyhouse.sesame.ble.os3.bot2.CHSesameBot2Device
+import co.candyhouse.sesame.ble.os3.hub3.CHHub3Device
+import co.candyhouse.sesame.ble.os3.sesame5.CHSesame5Device
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2Device
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import java.util.UUID
+
+enum class CHProductModel {
+    SS2 {
+        override fun productType() = 0 // 設備藍芽廣播
+        override fun deviceModel() = "sesame_2" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame 3"
+        override fun deviceFactory() = CHSesame2Device()
+    },
+    WM2 {
+        override fun productType() = 1 // 設備藍芽廣播
+        override fun deviceModel() = "wm_2"// <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "WiFi Module 2"
+        override fun deviceFactory() = CHWifiModule2Device()
+    },
+    SesameBot1 {
+        override fun productType() = 2 // 設備藍芽廣播
+        override fun deviceModel() = "ssmbot_1" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Bot 1"
+        override fun deviceFactory() = CHSesameBotDevice()
+    },
+    BiKeLock {
+        override fun productType() = 3
+        override fun deviceModel() = "bike_1" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Bike 1"
+        override fun deviceFactory() = CHSesameBikeDevice()
+    },
+    SS4 {
+        override fun productType() = 4 // 設備藍芽廣播
+        override fun deviceModel() = "sesame_4" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame 4"
+        override fun deviceFactory() = CHSesame2Device()
+    },
+    SS5 {
+        override fun productType() = 5
+        override fun deviceModel() = "sesame_5" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame 5"
+        override fun deviceFactory() = CHSesame5Device()
+    },
+    BiKeLock2 {
+        override fun productType() = 6
+        override fun deviceModel() = "bike_2" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Bike 2"
+        override fun deviceFactory() = CHSesameBike2Device()
+    },
+    SS5PRO {
+        override fun productType() = 7
+        override fun deviceModel() = "sesame_5_pro" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame 5 Pro"
+        override fun deviceFactory() = CHSesame5Device()
+    },
+    SSMOpenSensor {
+        override fun productType() = 8
+        override fun deviceModel() = "open_sensor_1" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Open Sensor 1"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.OPEN_SENSOR, setOf())
+    },
+    SSMTouchPro {
+        override fun productType() = 9
+        override fun deviceModel() = "ssm_touch_pro" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Touch 1 Pro"
+        override fun deviceFactory() =
+            CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_TOUCH_PRO, DeviceProfiles.SESAME_TOUCH_PRO)
+    },
+    SSMTouch {
+        override fun productType() = 10
+        override fun deviceModel() = "ssm_touch" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Touch 1"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_TOUCH, DeviceProfiles.SESAME_TOUCH)
+    },
+    BLEConnector {
+        override fun productType() = 11
+        override fun deviceModel() = "BLE_Connector_1" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "BLE Connector 1"
+        override fun deviceFactory() = CHSesame5Device()
+    },
+    Hub3 {
+        override fun productType() = 13
+        override fun deviceModel() = "hub_3" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Hub 3"
+        override fun deviceFactory() = CHHub3Device()
+    },
+    Remote {
+        override fun productType() = 14
+        override fun deviceModel() = "remote" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Remote"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.REMOTE, setOf())
+    },
+    RemoteNano {
+        override fun productType() = 15
+        override fun deviceModel() = "remote_nano" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Remote Nano"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.REMOTE, setOf())
+    },
+    SS5US {
+        override fun productType() = 16
+        override fun deviceModel() = "sesame_5_us" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame 5 US"
+        override fun deviceFactory() = CHSesame5Device()
+    },
+    SesameBot2 {
+        override fun productType() = 17
+        override fun deviceModel() = "bot_2" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Bot 2"
+        override fun deviceFactory() = CHSesameBot2Device()
+    },
+    SSMFacePro {
+        override fun productType() = 18
+        override fun deviceModel() = "sesame_face_Pro" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 1 Pro"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE_PRO, DeviceProfiles.SESAME_FACE_PRO)
+    },
+    SSMFace {
+        override fun productType() = 19
+        override fun deviceModel() = "sesame_face" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 1"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE, DeviceProfiles.SESAME_FACE)
+    },
+    SS6 {
+        override fun productType() = 20
+        override fun deviceModel() = "sesame_6" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame 6"
+        override fun deviceFactory() = CHSesame5Device()
+    },
+    SS6Pro {
+        override fun productType() = 21
+        override fun deviceModel() = "sesame_6_pro" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame 6 Pro"
+        override fun deviceFactory() = CHSesame5Device()
+    },
+    SSMFaceProAI {
+        override fun productType() = 22
+        override fun deviceModel() = "sesame_face_pro_ai" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 1 Pro AI"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE_PRO_AI, DeviceProfiles.SESAME_FACE_PRO_AI)
+    },
+    SSMFaceAI {
+        override fun productType() = 23
+        override fun deviceModel() = "sesame_face_ai" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 1 AI"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE_AI, DeviceProfiles.SESAME_FACE_AI)
+    },
+    SSMOpenSensor2 {
+        override fun productType() = 24
+        override fun deviceModel() = "open_sensor_2" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Open Sensor 2"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.OPEN_SENSOR_2, setOf())
+    },
+    SSMTouch2 {
+        override fun productType() = 25
+        override fun deviceModel() = "ssm_touch_2" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Touch 2"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_TOUCH, DeviceProfiles.SESAME_TOUCH)
+    },
+    SSMTouch2Pro {
+        override fun productType() = 26
+        override fun deviceModel() = "ssm_touch_2_pro" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Touch 2 Pro"
+        override fun deviceFactory() =
+            CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_TOUCH_PRO, DeviceProfiles.SESAME_TOUCH_PRO)
+    },
+    SSMFace2 {
+        override fun productType() = 27
+        override fun deviceModel() = "sesame_face_2" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 2"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE, DeviceProfiles.SESAME_FACE)
+    },
+    SSMFace2Pro {
+        override fun productType() = 28
+        override fun deviceModel() = "ssm_face_2_pro" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 2 Pro"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE_PRO, DeviceProfiles.SESAME_FACE_PRO)
+    },
+    SSM_MIWA {
+        override fun productType() = 29
+        override fun deviceModel() = "sesame_miwa" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame miwa"
+        override fun deviceFactory() = CHSesame5Device()
+    },
+    SSMFace2AI {
+        override fun productType() = 30
+        override fun deviceModel() = "sesame_face_2_ai" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 2 AI"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE_AI, DeviceProfiles.SESAME_FACE_AI)
+    },
+    SSMFace2ProAI {
+        override fun productType() = 31
+        override fun deviceModel() = "sesame_face_2_pro_ai" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 2 Pro AI"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE_PRO_AI, DeviceProfiles.SESAME_FACE_PRO_AI)
+    },
+    SS6ProSlidingDoor {
+        override fun productType() = 32
+        override fun deviceModel() = "sesame_6_pro_slidingdoor" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame 6 Pro SlidingDoor"
+        override fun deviceFactory() = CHSesame5Device()
+    },
+    BiKeLock3 {
+        override fun productType() = 33
+        override fun deviceModel() = "bike_3" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Bike 3"
+        override fun deviceFactory() = CHSesameBike3Device()
+    },
+    SesameBot3 {
+        override fun productType() = 35
+        override fun deviceModel() = "bot_3" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Bot 3"
+        override fun deviceFactory() = CHSesameBot2Device()
+    },
+    Hub3Pro {
+        override fun productType() = 36
+        override fun deviceModel() = "hub_3_pro" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Hub 3 Pro"
+        override fun deviceFactory() = CHHub3Device()
+    },
+    SSMFace3 {
+        override fun productType() = 37
+        override fun deviceModel() = "sesame_face_3" // <- 絕對不要動 ios/server/android必須一致
+        override fun deviceModelName() = "Sesame Face 3"
+        override fun deviceFactory() = CHSesameBiometricDeviceImpl(BiometricDeviceType.SESAME_FACE, DeviceProfiles.SESAME_FACE)
+    };
+
+    abstract fun productType(): Int
+    abstract fun deviceModel(): String
+    abstract fun deviceModelName(): String
+    internal abstract fun deviceFactory(): CHDevices
+
+    companion object {
+        private val values = values()
+        fun getByValue(value: Int) = values.firstOrNull { it.productType() == value }
+        fun getByModel(value: String) = values.firstOrNull { it.deviceModel() == value }
+    }
+}
+
+interface CHDevices {
+    /*
+        ble tx power 根据BLE规范, 固件里可能的设置是-70~20dBm。
+        实际应用的默认 SS5类的锁是 -4dBm, 刷卡机类的设备是 0dBm。
+        APP 里该变量默认设置为21, 表示固件没有给这个设置的值。
+        若该设备的 bee tx power 是 21, 可以认为是旧固件。
+
+        以下内容来自固件, 供参考:
+        /// Inquiry TX power level (in dBm) HCI:7.3.62
+        #define INQ_TX_PWR_DBM_MIN    -70
+        #define INQ_TX_PWR_DBM_DFT    0
+        #define INQ_TX_PWR_DBM_MAX    +20
+    */
+    companion object {
+        const val UNSET_BLE_TX_POWER_VALUE = 21
+
+        // 固件未上报 sensor 检测间隔时的默认值(毫秒)。非 0 的哨兵值, 0 是合法的间隔。
+        const val UNSET_SENSOR_DETECT_INTERVAL_MS: Short = -1
+
+        // 切换点角度的默认值。注意:不要用此值判断“固件是否上报”, -1 可能是合法角度;
+        // 是否上报由 hasLockUnlockSwitchPointSetting 布尔标志决定。
+        const val UNSET_LOCK_UNLOCK_SWITCH_POINT: Short = 45
+    }
+
+    var mechStatus: CHSesameProtocolMechStatus?
+    var deviceTimestamp: Long?
+    var loginTimestamp: Long?
+    var delegate: CHDeviceStatusDelegate?
+    var deviceStatus: CHDeviceStatus
+    var rssi: Int?
+
+    // 为了解决门和墙密封较好的情况下, 蓝牙信号受影响, 门外的刷卡机与门内的锁经常断线的问题, 添加此参数。
+    // 让用户可以自己设置一个合适的蓝牙信号强度阈值, 以保持BLE长连接。
+    var bleTxPower: Byte
+
+    // sensor 检测间隔(毫秒)。由固件通过 SSM3_ITEM_CODE_SENSOR_DETECT_INTERVAL_SETTING 上报;未上报时为 UNSET_SENSOR_DETECT_INTERVAL_MS,
+    // 表示固件不支持该能力, UI 据此决定是否显示相关设置项。
+    var sensorDetectIntervalMs: Short
+
+    // 开锁/上锁切换点角度(度)。由固件通过 SSM3_ITEM_CODE_LOCK_UNLOCK_SWITCH_POINT_SETTING 上报。
+    // 是否上报过由 hasLockUnlockSwitchPointSetting 布尔标志决定(不要用 UNSET_LOCK_UNLOCK_SWITCH_POINT 判断, -1 可能是合法角度)。
+    var lockUnlockSwitchPoint: Short
+
+    // 固件是否上报过 SSM3_ITEM_CODE_LOCK_UNLOCK_SWITCH_POINT_SETTING。UI 据此决定是否显示切换点设置项与角度视图标记。
+    var hasLockUnlockSwitchPointSetting: Boolean
+    var deviceId: UUID?
+    var isRegistered: Boolean
+    var productModel: CHProductModel
+    var batteryPercentage: Int?
+
+    fun connect(result: CHResult<CHEmpty>)
+    fun disconnect(result: CHResult<CHEmpty>)
+    fun getKey(): CHDevice {
+        return (this as CHDeviceUtil).sesame2KeyData!!.copy(historyTag = null)
+    }
+
+    fun dropKey(result: CHResult<CHEmpty>)
+    fun getVersionTag(result: CHResult<String>)
+    fun register(result: CHResult<CHEmpty>)
+    fun reset(result: CHResult<CHEmpty>)
+    fun updateFirmware(onResponse: CHResult<BluetoothDevice>)
+    fun updateFirmwareBleOnly(onResponse: CHResult<BluetoothDevice>) {}
+    fun setBleTxPower(txPower: Byte, result: CHResult<CHEmpty>) {}
+    fun setSensorDetectInterval(intervalMs: Short, result: CHResult<CHEmpty>) {}
+    fun setLockUnlockSwitchPoint(point: Short, result: CHResult<CHEmpty>) {}
+    fun setHistoryTag(tag: ByteArray, result: CHResult<CHEmpty>) {
+        if ((this as CHDeviceUtil).sesame2KeyData == null) {
+            result.invoke(Result.failure(CHError.BleUnauth.value))
+            return
+        }
+        sesame2KeyData!!.historyTag = tag.copyOf()
+        CHBleSupport.keys.insert(sesame2KeyData!!.copy(historyTag = tag.copyOf())) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    fun getHistoryTag(): ByteArray? {
+        return (this as CHDeviceUtil).sesame2KeyData?.historyTag
+    }
+}
+
+interface CHSesameConnector : CHDevices {
+    var ssm2KeysMap: MutableMap<String, ByteArray>
+    fun insertSesame(sesame: CHDevices, result: CHResult<CHEmpty>)
+    fun removeSesame(tag: String, result: CHResult<CHEmpty>)
+    fun setRadarSensitivity(payload: ByteArray, result: CHResult<CHEmpty>) {}
+}
+
+interface CHSesameLock : CHDevices {
+
+}
+
+interface CHSesameProtocolMechStatus {
+    val position: Short
+        get() = 0
+    val target: Short?
+        get() = 0
+    val isBatteryCritical: Boolean
+        get() = false
+    val isInLockRange: Boolean
+        get() = false
+    val isInUnlockRange: Boolean
+        get() = !isInLockRange
+    val isStop: Boolean?
+        get() = null
+    val isCritical: Boolean?
+        get() = null
+
+    val data: ByteArray
+}
+
+interface CHDeviceStatusDelegate {
+    fun onBleDeviceStatusChanged(device: CHDevices, status: CHDeviceStatus) {}
+    fun onMechStatus(device: CHDevices) {}
+    fun onBleTxPowerReceive(device: CHDevices, txPower: Byte) {}
+    fun onSensorDetectIntervalReceive(device: CHDevices, intervalMs: Short) {}
+    fun onLockUnlockSwitchPointReceive(device: CHDevices, point: Short) {}
+}
+
+enum class CHDeviceStatus(val value: CHDeviceLoginStatus) {
+    NoBleSignal(CHDeviceLoginStatus.unlogined),
+    ReceivedAdV(CHDeviceLoginStatus.unlogined),
+    BleConnecting(CHDeviceLoginStatus.unlogined),
+    Reset(CHDeviceLoginStatus.unlogined),
+    WaitingGatt(CHDeviceLoginStatus.unlogined),
+    BleLogining(CHDeviceLoginStatus.unlogined),
+    ReadyToRegister(CHDeviceLoginStatus.unlogined),
+    WaitingForAuth(CHDeviceLoginStatus.unlogined),
+    Registering(CHDeviceLoginStatus.unlogined),
+    DfuMode(CHDeviceLoginStatus.unlogined),
+    DiscoverServices(CHDeviceLoginStatus.unlogined),
+
+    Locked(CHDeviceLoginStatus.logined),
+    Unlocked(CHDeviceLoginStatus.logined),
+    Moved(CHDeviceLoginStatus.logined),
+    NoSettings(CHDeviceLoginStatus.logined),
+
+    //WM2
+    WaitApConnect(CHDeviceLoginStatus.logined),
+    Busy(CHDeviceLoginStatus.unlogined),
+    IotConnected(CHDeviceLoginStatus.logined),
+    IotDisconnected(CHDeviceLoginStatus.logined)
+}
+
+enum class CHDeviceLoginStatus {
+    logined, unlogined
+}
+
+class NSError(message: String, var domain: String, var code: Int) : Error(message)
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHDevice.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHDevice.kt
new file mode 100644
index 0000000..e43fb24
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/CHDevice.kt
@@ -0,0 +1,33 @@
+package co.candyhouse.sesame.ble
+
+@Suppress("ArrayInDataClass")
+data class CHDevice(
+    var deviceUUID: String, // 16
+    val deviceModel: String, // 1
+    var historyTag: ByteArray? = null, // 默认值设为空
+    val keyIndex: String, // 2
+    val secretKey: String, // 16
+    val sesame2PublicKey: String // 64
+)
+
+internal fun CHDevice.createHistag(histag_: ByteArray? = null): ByteArray {
+    val histag = histag_ ?: this.historyTag ?: byteArrayOf()
+    val limitedHistag = histag.take(21)
+    val padding = 22 - limitedHistag.size - 1
+    return byteArrayOf(limitedHistag.size.toByte()) + limitedHistag + ByteArray(padding)
+}
+
+internal fun historyTagBLE(histag_: ByteArray? = null): ByteArray {
+    var histag = histag_ ?: byteArrayOf()
+    histag = enumTo16BitBEByteArray(UUID4HistoryTagTypeEnum.NAME_UUID_TYPE_ANDROID_USER_BLE_UUID) + histag
+    val limitedHistag = histag.take(20)
+    return limitedHistag.toByteArray()
+}
+
+private fun enumTo16BitBEByteArray(value: UUID4HistoryTagTypeEnum): ByteArray {
+    val intValue = value.value.toInt()
+    require(intValue in 0..0xFFFF) {
+        "Enum value must be within 16-bit unsigned range (0-65535), got $intValue"
+    }
+    return byteArrayOf((intValue shr 8).toByte(), intValue.toByte())
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/Sesame2BleAdvertisement.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/Sesame2BleAdvertisement.kt
new file mode 100644
index 0000000..69d1e30
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/Sesame2BleAdvertisement.kt
@@ -0,0 +1,94 @@
+package co.candyhouse.sesame.ble
+
+import android.bluetooth.BluetoothDevice
+import android.bluetooth.le.ScanResult
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.base64decodeHex
+import co.candyhouse.sesame.utils.noHashtoUUID
+import co.candyhouse.sesame.utils.toBigLong
+import co.candyhouse.sesame.utils.toHexString
+import java.util.UUID
+import kotlin.experimental.and
+
+internal interface CHBaseAdv {
+    val rssi: Int?
+    val isRegistered: Boolean
+    val adv_tag_b1: Boolean
+    val deviceID: UUID?
+    var device: BluetoothDevice
+    var deviceName: String?
+    var productModel: CHProductModel?
+    var isConnecable: Boolean?
+
+}
+
+internal class CHadv(scanResult: ScanResult) : CHBaseAdv {
+
+    override var isConnecable: Boolean? = true
+    private val advBytes = scanResult.scanRecord?.manufacturerSpecificData?.valueAt(0)!!
+
+    override var adv_tag_b1: Boolean = (advBytes[2] and 2) > 0
+    override val rssi: Int = scanResult.rssi
+    override var device = scanResult.device
+    override var deviceName = scanResult.scanRecord?.deviceName
+    override var productModel: CHProductModel? = CHProductModel.getByValue(advBytes.copyOfRange(0, 1).toBigLong().toInt())
+
+    override var isRegistered: Boolean =
+        if (productModel == CHProductModel.Hub3) {
+            (advBytes[1] and 1) > 0 // 1:registered 0:unregistered
+        } else {
+            (advBytes[2] and 1) > 0
+        }
+
+    override val deviceID: UUID?
+        get() {
+            when (productModel) {
+                CHProductModel.WM2 -> return try {
+                    isConnecable = (advBytes.last()?.toInt() == 0)
+                    val wm2ID = ("00000000055afd810001" + advBytes.copyOfRange(3, 9).toHexString()).noHashtoUUID()
+                    wm2ID
+                } catch (e: Exception) {
+                    L.d("hcia", "e:" + e)
+                    null
+                }
+
+                CHProductModel.Hub3 -> return try {
+//                    L.d("hub3", "advBytes:" + advBytes.toHexString())
+                    val hub3ID = ("00000000055afd810d00" + advBytes.copyOfRange(2, 8).toHexString()).noHashtoUUID()
+//                    L.d("hub3", "uuid:" + hub3ID)
+                    hub3ID
+                } catch (e: Exception) {
+                    L.d("hcia", "e:" + e)
+                    null
+                }
+
+                CHProductModel.SS2, CHProductModel.SS4, CHProductModel.SesameBot1, CHProductModel.BiKeLock -> return try {
+                    val tmpID = (deviceName + "==").base64decodeHex().noHashtoUUID()
+                    tmpID
+                } catch (e: Exception) {
+//                    L.d("hcia", "e:" + e)
+                    null
+                }
+
+                CHProductModel.SS5, CHProductModel.SS5PRO, CHProductModel.SSMOpenSensor, CHProductModel.SSMTouchPro, CHProductModel.SSMTouch2Pro, CHProductModel.SSMTouch, CHProductModel.SSMTouch2, CHProductModel.BiKeLock2, CHProductModel.BiKeLock3, CHProductModel.BLEConnector, CHProductModel.Remote, CHProductModel.RemoteNano, CHProductModel.SS5US, CHProductModel.SesameBot2, CHProductModel.SesameBot3, CHProductModel.SSMFace, CHProductModel.SSMFace2, CHProductModel.SSMFacePro,
+                CHProductModel.SSMFace2Pro, CHProductModel.SSMFaceAI, CHProductModel.SSMFace2AI, CHProductModel.SSMFaceProAI, CHProductModel.SSMFace2ProAI, CHProductModel.SS6, CHProductModel.SS6Pro, CHProductModel.SS6ProSlidingDoor, CHProductModel.SSMOpenSensor2, CHProductModel.SSM_MIWA, CHProductModel.Hub3Pro -> return try {
+//                    L.d("hcia", "[ss5] isRegistered:" + isRegistered)
+//                    L.d("hcia", "[ss5] advBytes:" + advBytes.toHexString())
+//                    L.d("hcia", "[ss5] deviceName:" + deviceName)
+//                    L.d("hcia", "[ss5] deviceName hex:" + sss.scanRecord?.deviceName?.toByteArray()?.toHexString())
+                    val uuidDATA = advBytes.sliceArray(3..18)
+//                    L.d("hcia", "uuidDATA.toHexString():" + uuidDATA.toHexString())
+                    val tmpID = uuidDATA.toHexString().noHashtoUUID()
+                    tmpID
+                } catch (e: Exception) {
+//                    L.d("hcia", "e:" + e)
+                    return UUID.fromString("1bfe50d8-0000-1111-1111-199ceff15268")
+                }
+
+                else -> {
+                    return UUID.fromString("1bfe50d8-0000-4e8a-95b8-199ceff15268")
+                }
+            }
+        }
+}
+
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/SesameBleReceiver.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/SesameBleReceiver.kt
new file mode 100644
index 0000000..3e4c28d
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/SesameBleReceiver.kt
@@ -0,0 +1,54 @@
+package co.candyhouse.sesame.ble
+
+internal enum class DeviceSegmentType(var value: Int) {
+    plain(1), cipher(2), ;
+
+    companion object {
+        private val values = values()
+        fun getByValue(value: Int) = values.first { it.value == value }
+    }
+}
+
+internal class SesameBleReceiver {
+    var buffer = byteArrayOf()
+    internal fun feed(input: ByteArray): Pair<DeviceSegmentType, ByteArray>? {
+        val segmentFlag = input[0]
+        val isStartFlag = segmentFlag.toInt() and 1
+        val parsingType = segmentFlag.toInt() shr 1
+//        L.d("hcia", "isStartFlag:" + isStartFlag)
+//        L.d("hcia", "parsingType:" + parsingType)
+        if (isStartFlag > 0) {
+            buffer = input.drop(1).toByteArray()
+        } else {
+            buffer += input.drop(1).toByteArray()
+        }
+        if (parsingType > 0) {
+            val buf = buffer
+            buffer = byteArrayOf()
+            val type = DeviceSegmentType.getByValue(parsingType)
+            return Pair(type, buf)
+        } else {
+            return null
+        }
+    }
+}
+
+
+internal class SesameBleTransmit(var type: DeviceSegmentType, var input: ByteArray) {
+    var isStart = 1
+    internal fun getChunk(): ByteArray? {
+        if (isStart == -1) {
+            return null
+        } else if (input.size <= 19) {
+            val segmentHeader = ((type.value shl 1) or isStart).toByte()
+            isStart = -1
+            return byteArrayOf(segmentHeader) + input
+        } else {
+            val payload = input.copyOf(19)
+            val segmentHeader = isStart.toByte()
+            input = input.drop(19).toByteArray()
+            isStart = 0
+            return byteArrayOf(segmentHeader) + payload
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/SesameProtocols.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/SesameProtocols.kt
new file mode 100644
index 0000000..7980a8e
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/SesameProtocols.kt
@@ -0,0 +1,112 @@
+package co.candyhouse.sesame.ble
+
+import java.util.UUID
+
+class SSM3PublishPayload(val data: ByteArray) {
+    val cmdItCode = data[0].toUByte()
+    val payload: ByteArray = data.drop(1).toByteArray()
+}
+
+internal class SesameNotifypayload(val data: ByteArray) {
+    val notifyOpCode: SSM2OpCode = SSM2OpCode.getByValue(data[0])
+    val payload: ByteArray = data.drop(1).toByteArray()
+}
+
+internal class SSM2ResponsePayload(val data: ByteArray) {
+    val cmdItCode: UByte = data[0].toUByte()// login
+    val cmdOPCode: UByte = data[1].toUByte()// sync
+    val cmdResultCode: UByte = data[2].toUByte()// success
+    val payload: ByteArray = data.drop(3).toByteArray()
+}
+
+class SSM3ResponsePayload(val data: ByteArray) {
+    val cmdItCode: UByte = data[0].toUByte()
+    val cmdResultCode: UByte = data[1].toUByte()
+    val payload: ByteArray = data.drop(2).toByteArray()
+}
+
+internal enum class SesameResultCode(val value: UByte) {
+    success(0U), invalidFormat(1U), notSupported(2U), StorageFail(3U), invalidSig(4U), notFound(5U), UNKNOWN(6U), BUSY(7U), INVALID_PARAM(8U), ;
+}
+
+internal enum class SesameItemCode(val value: UByte) {
+
+    none(0u), registration(1u), login(2u), user(3u), history(4u), versionTag(5u), disconnectRebootNow(6u), enableDFU(7u), time(8u), bleConnectionParam(9u), bleAdvParam(10u), autolock(
+        11u
+    ),
+    serverAdvKick(12u), ssmtoken(13u), initial(14u), IRER(15u), timePhone(16u), magnet(17u), SSM2_ITEM_CODE_HISTORY_DELETE(18u), SSM3_ITEM_CODE_SENSOR_DETECT_INTERVAL_SETTING(19u), SSM3_ITEM_CODE_LOCK_UNLOCK_SWITCH_POINT_SETTING(
+        20u
+    ),
+
+    mechSetting(80u), mechStatus(81u), lock(82u), unlock(83u), moveTo(84u), driveDirection(85u), stop(86u), detectDir(87u), toggle(88u), click(89u), DOOR_OPEN(90u), DOOR_CLOSE(91u), OPS_CONTROL(
+        92u
+    ),
+    SCRIPT_SETTING(93u), SCRIPT_SELECT(94u), SCRIPT_CURRENT(95u), SCRIPT_NAME_LIST(96u), ADD_SESAME(101u), PUB_KEY_SESAME(102u), REMOVE_SESAME(103u), Reset(104u), NOTIFY_LOCK_DOWN(
+        106u
+    ),
+    SSM_OS3_CARD_CHANGE(107u), SSM_OS3_CARD_DELETE(108u), SSM_OS3_CARD_GET(109u), SSM_OS3_CARD_NOTIFY(110u), SSM_OS3_CARD_LAST(111u), SSM_OS3_CARD_FIRST(112u), SSM_OS3_CARD_MODE_GET(
+        113u
+    ),
+    SSM_OS3_CARD_MODE_SET(114u),
+    SSM_OS3_FINGERPRINT_CHANGE(115u), SSM_OS3_FINGERPRINT_DELETE(116u), SSM_OS3_FINGERPRINT_GET(117u), SSM_OS3_FINGERPRINT_NOTIFY(118u), SSM_OS3_FINGERPRINT_LAST(119u), SSM_OS3_FINGERPRINT_FIRST(
+        120u
+    ),
+    SSM_OS3_FINGERPRINT_MODE_GET(121u), SSM_OS3_FINGERPRINT_MODE_SET(122u),
+    SSM_OS3_PASSCODE_CHANGE(123u), SSM_OS3_PASSCODE_DELETE(124u), SSM_OS3_PASSCODE_GET(125u), SSM_OS3_PASSCODE_NOTIFY(126u), SSM_OS3_PASSCODE_LAST(127u), SSM_OS3_PASSCODE_FIRST(
+        128u
+    ),
+    SSM_OS3_PASSCODE_MODE_GET(129u), SSM_OS3_PASSCODE_MODE_SET(130u),
+    HUB3_ITEM_CODE_WIFI_SSID(131u), HUB3_ITEM_CODE_SSID_FIRST(132u), HUB3_ITEM_CODE_SSID_NOTIFY(133u), HUB3_ITEM_CODE_SSID_LAST(134u), HUB3_ITEM_CODE_WIFI_PASSWORD(135u), HUB3_UPDATE_WIFI_SSID(
+        136u
+    ),
+    HUB3_MATTER_PAIRING_CODE(137u), SSM_OS3_PASSCODE_ADD(138u), SSM_OS3_CARD_CHANGE_VALUE(139u), SSM_OS3_CARD_ADD(140u), SSM_OS3_CARD_MOVE(141u), SSM_OS3_PASSCODE_MOVE(142u),
+    SSM_OS3_IR_MODE_SET(143u), SSM_OS3_IR_CODE_CHANGE(144u), SSM_OS3_IR_CODE_EMIT(145u), SSM_OS3_IR_CODE_GET(146u), SSM_OS3_IR_CODE_LAST(147u), SSM_OS3_IR_CODE_FIRST(148u), SSM_OS3_IR_CODE_DELETE(
+        149u
+    ),
+    SSM_OS3_IR_MODE_GET(150u), SSM_OS3_IR_CODE_NOTIFY(151u),
+    HUB3_MATTER_PAIRING_WINDOW(153u),
+    SSM_OS3_FACE_CHANGE(154u), SSM_OS3_FACE_DELETE(155u), SSM_OS3_FACE_GET(156u), SSM_OS3_FACE_NOTIFY(157u),
+    SSM_OS3_FACE_LAST(158u), SSM_OS3_FACE_FIRST(159u), SSM_OS3_FACE_MODE_GET(160u), SSM_OS3_FACE_MODE_SET(161u),
+    SSM_OS3_PALM_CHANGE(162u), SSM_OS3_PALM_DELETE(163u), SSM_OS3_PALM_GET(164u), SSM_OS3_PALM_NOTIFY(165u),
+    SSM_OS3_PALM_LAST(166u), SSM_OS3_PALM_FIRST(167u), SSM_OS3_PALM_MODE_GET(168u), SSM_OS3_PALM_MODE_SET(169u),
+    BOT2_ITEM_CODE_RUN_SCRIPT_0(170u), BOT2_ITEM_CODE_RUN_SCRIPT_1(171u), BOT2_ITEM_CODE_RUN_SCRIPT_2(172u), BOT2_ITEM_CODE_RUN_SCRIPT_3(173u), BOT2_ITEM_CODE_RUN_SCRIPT_4(174u), BOT2_ITEM_CODE_RUN_SCRIPT_5(
+        175u
+    ),
+    BOT2_ITEM_CODE_RUN_SCRIPT_6(176u), BOT2_ITEM_CODE_RUN_SCRIPT_7(177u), BOT2_ITEM_CODE_RUN_SCRIPT_8(178u), BOT2_ITEM_CODE_RUN_SCRIPT_9(179u),
+    ADD_HUB3(180u), BOT2_ITEM_CODE_EDIT_SCRIPT(181u),
+    STP_ITEM_CODE_CARDS_ADD(182u), STP_ITEM_CODE_DEVICE_STATUS(183u), REMOTE_NANO_ITEM_CODE_SET_TRIGGER_DELAYTIME(190u), REMOTE_NANO_ITEM_CODE_PUB_TRIGGER_DELAYTIME(191u),
+    SSM_OS3_FACE_MODE_DELETE_NOTIFY(192u), SSM_OS3_PALM_MODE_DELETE_NOTIFY(193u), SSM_OS3_RADAR_PARAM_SET(200u), SSM_OS3_RADAR_PARAM_PUBLISH(201u),
+    SSM3_ITEM_CODE_BATTERY_VOLTAGE(202u), SSM3_ITEM_CODE_SESAME_UNSUPPORT(204u), SS3_ITEM_CODE_SET_ADV_PRODUCT_TYPE(205u),
+    SSM3_ITEM_CODE_BLE_TX_POWER_SETTING(206u), HUB3_ITEM_CODE_RELAY_SWITCH(208u)
+}
+
+internal enum class SSM2OpCode(val value: Byte) {
+
+    create(0x01), read(0x02), update(0x03), delete(0x04), sync(0x05), async(0x06), response(0x07), publish(0x08), undefine(0x10), ;
+
+    companion object {
+        private val values = values()
+        fun getByValue(value: Byte) = values.first { it.value == value }
+    }
+}
+
+internal enum class StpItemCode(val value: UByte) {
+    STP_ITEM_CODE_CARDS_ADD(182u), STP_ITEM_CODE_CARDS_DELETE(183u), STP_ITEM_CODE_PASSCODES_ADD(184u), STP_ITEM_CODE_PASSCODES_DELETE(185u),
+}
+
+enum class UUID4HistoryTagTypeEnum(val value: UShort) {
+    NAME_UUID_TYPE_ANDROID_USER_BLE_UUID(14U),
+    NAME_UUID_TYPE_ANDROID_USER_WIFI_UUID(16U),
+    ;
+
+    companion object {
+        private val values = UUID4HistoryTagTypeEnum.entries.toTypedArray()
+        fun getByValue(value: UShort) = values.firstOrNull { it.value == value }
+    }
+}
+
+internal object Sesame2Chracs {
+    val uuidService01: UUID = UUID.fromString("0000fd81-0000-1000-8000-00805f9b34fb")
+    val uuidChr02: UUID = UUID.fromString("16860002-A5AE-9856-B6D3-DBB4C676993E")
+    val uuidChr03: UUID = UUID.fromString("16860003-A5AE-9856-B6D3-DBB4C676993E")
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/base/CHSesameOS2.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/base/CHSesameOS2.kt
new file mode 100644
index 0000000..4a62fd7
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/base/CHSesameOS2.kt
@@ -0,0 +1,33 @@
+package co.candyhouse.sesame.ble.os2.base
+
+import co.candyhouse.sesame.ble.CHBaseDevice
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.SSM2OpCode
+import co.candyhouse.sesame.ble.SSM2ResponsePayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.generateRandomData
+import kotlinx.coroutines.channels.Channel
+
+internal typealias SesameOS2ResponseCallback = (result: SSM2ResponsePayload) -> Unit
+
+internal open class CHSesameOS2 : CHBaseDevice() {
+    var cipher: SesameOS2BleCipher? = null
+    var semaphore: Channel<SesameOS2ResponseCallback> = Channel(capacity = 1)
+    val mAppToken = generateRandomData(4)
+
+    protected fun reportBatteryData(payloadString: String) {
+        CHBleSupport.backend.postBatteryData(deviceId.toString().uppercase(), payloadString) {
+            it.onSuccess { resp ->
+                batteryPercentage = ((resp.data as? Map<*, *>)?.get("batteryPercentage") as? Number)?.toInt()
+                L.d("os2lock", "[reportBatteryData] ${deviceId.toString().uppercase()} $batteryPercentage")
+            }
+        }
+    }
+}
+
+internal data class SSM2Payload(val opCode: SSM2OpCode, val itemCode: SesameItemCode, val data: ByteArray) {
+    fun toDataWithHeader(): ByteArray {
+        return byteArrayOf(opCode.value, itemCode.value.toByte()) + data
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/base/SesameOS2BleCipher.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/base/SesameOS2BleCipher.kt
new file mode 100644
index 0000000..3137085
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/base/SesameOS2BleCipher.kt
@@ -0,0 +1,60 @@
+package co.candyhouse.sesame.ble.os2.base
+
+import javax.crypto.Cipher
+import javax.crypto.spec.GCMParameterSpec
+import javax.crypto.spec.SecretKeySpec
+
+internal class SesameOS2BleCipher(private var sessionKey: ByteArray, var sessionToken: ByteArray) {
+    var encryptCounter: Long = 0.toLong()
+    var decryptCounter: Long = 0.toLong()
+
+    internal fun encrypt(plaintext: ByteArray): ByteArray {
+        val c: Cipher = Cipher.getInstance("AES/CCM/NoPadding", "BC")
+        val nonce = encryptCounter.toEncryCounter() + sessionToken
+        encryptCounter = encryptCounter.inc()
+        val aesKeys = SecretKeySpec(sessionKey, "AES")
+        val ivParameterSpec = GCMParameterSpec(32, nonce)
+        c.init(Cipher.ENCRYPT_MODE, aesKeys, ivParameterSpec)
+        c.updateAAD(byteArrayOf(0))
+        return c.doFinal(plaintext)
+    }
+
+    internal fun decrypt(ciphertext: ByteArray): ByteArray {
+        val nonce = decryptCounter.toDecryCounter() + sessionToken
+//        L.d("hcia", "nonce:" + nonce.toHexString())
+//        L.d("hcia", "sessionKey:" + sessionKey.toHexString())
+        decryptCounter = decryptCounter.inc() and Long.MAX_VALUE
+        val aesKeys = SecretKeySpec(sessionKey, "AES")
+        val ivParameterSpec = GCMParameterSpec(32, nonce)
+        val cipher: Cipher = Cipher.getInstance("AES/CCM/NoPadding", "BC")
+        cipher.init(Cipher.DECRYPT_MODE, aesKeys, ivParameterSpec)
+        cipher.updateAAD(byteArrayOf(0))
+        return cipher.doFinal(ciphertext)
+    }
+
+}
+
+internal fun Long.toEncryCounter(): ByteArray {
+    var bytes = byteArrayOf()
+    var testLong: Long = this
+    testLong = testLong or 0x8000000000
+    for (index in 0 until 5) {
+        val b = testLong.toByte()
+        bytes += b
+        testLong = testLong.shr(Byte.SIZE_BITS)
+    }
+//    L.d("hcia", "bytes:" + bytes.toHexString())
+    return bytes
+}
+
+internal fun Long.toDecryCounter(): ByteArray {
+    var bytes = byteArrayOf()
+    var testLong: Long = this
+    testLong = testLong and 0x7fffffffff
+    for (index in 0 until 5) {
+        val b = testLong.toByte()
+        bytes += b
+        testLong = testLong.shr(Byte.SIZE_BITS)
+    }
+    return bytes
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bike/CHSesameBike.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bike/CHSesameBike.kt
new file mode 100644
index 0000000..3564e4a
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bike/CHSesameBike.kt
@@ -0,0 +1,9 @@
+package co.candyhouse.sesame.ble.os2.bike
+
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHSesameBike : CHSesameLock {
+    fun unlock(historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bike/CHSesameBikeDevice.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bike/CHSesameBikeDevice.kt
new file mode 100644
index 0000000..f570f6f
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bike/CHSesameBikeDevice.kt
@@ -0,0 +1,424 @@
+package co.candyhouse.sesame.ble.os2.bike
+
+import android.Manifest
+import android.annotation.SuppressLint
+import android.bluetooth.BluetoothDevice
+import android.bluetooth.BluetoothGatt
+import android.bluetooth.BluetoothGattCallback
+import android.bluetooth.BluetoothGattCharacteristic
+import android.bluetooth.BluetoothGattDescriptor
+import android.bluetooth.BluetoothProfile
+import android.content.pm.PackageManager
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHBleManager.appContext
+import co.candyhouse.sesame.ble.CHBleManager.bluetoothAdapter
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHProductModel
+import co.candyhouse.sesame.ble.CHScanStatus
+import co.candyhouse.sesame.ble.CHadv
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM2OpCode
+import co.candyhouse.sesame.ble.SSM2ResponsePayload
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.Sesame2Chracs
+import co.candyhouse.sesame.ble.SesameBleTransmit
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameNotifypayload
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.createHistag
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os2.base.CHSesameOS2
+import co.candyhouse.sesame.ble.os2.base.SSM2Payload
+import co.candyhouse.sesame.ble.os2.base.SesameOS2BleCipher
+import co.candyhouse.sesame.ble.os2.base.SesameOS2ResponseCallback
+import co.candyhouse.sesame.ble.os2.bot.CHSesameBotMechSettings
+import co.candyhouse.sesame.ble.os2.bot.CHSesameBotMechStatus
+import co.candyhouse.sesame.ble.os2.sesame2.CHError
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.base64Encode
+import co.candyhouse.sesame.utils.base64decodeByteArray
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.isInternetAvailable
+import co.candyhouse.sesame.utils.toBigLong
+import co.candyhouse.sesame.utils.toHexString
+import co.candyhouse.sesame.utils.toUInt32ByteArray
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers.IO
+import kotlinx.coroutines.channels.Channel
+import kotlinx.coroutines.launch
+import java.util.UUID
+
+@SuppressLint("MissingPermission")
+internal class CHSesameBikeDevice() : CHSesameOS2(), CHSesameBike, CHDeviceUtil {
+
+    override var advertisement: CHadv? = null
+        set(value) {
+            field = value
+            if (value == null) {
+                deviceStatus = CHDeviceStatus.NoBleSignal
+                return
+            }
+            rssi = advertisement?.rssi
+            deviceId = advertisement!!.deviceID
+            isRegistered = advertisement!!.isRegistered
+
+            if (deviceStatus.value == CHDeviceLoginStatus.logined && !isRegistered) {
+                deviceStatus = CHDeviceStatus.Reset
+            }
+
+            if (deviceStatus == CHDeviceStatus.NoBleSignal) {
+                deviceStatus = CHDeviceStatus.ReceivedAdV
+            }
+
+            if (deviceStatus == CHDeviceStatus.WaitingForAuth && isInternetAvailable()) {
+                deviceStatus = CHDeviceStatus.ReceivedAdV
+            }
+        }
+
+    override fun connect(result: CHResult<CHEmpty>) {
+        if (appContext.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+            if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+                result.invoke(Result.failure(CHError.BleUnauth.value))
+                return
+            }
+        }
+
+        if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+            result.invoke(Result.failure(CHError.BlePoweroff.value))
+            return
+        }
+        if (deviceStatus != CHDeviceStatus.ReceivedAdV) {
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+
+        if (isNeedAuthFromServer == true && !isInternetAvailable()) {
+            deviceStatus = CHDeviceStatus.WaitingForAuth
+            return
+        }
+
+        if (CHBleManager.connectR.indexOf(advertisement?.device?.address) == -1) {
+            CHBleManager.connectR.add(advertisement!!.device.address)
+        } else return
+
+        deviceStatus = CHDeviceStatus.BleConnecting
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+
+        bluetoothAdapter.getRemoteDevice(advertisement!!.device.address)
+            .connectGatt(appContext, false, mBluetoothGattCallback, BluetoothDevice.TRANSPORT_LE)
+    }
+
+    private val mBluetoothGattCallback: BluetoothGattCallback = object : BluetoothGattCallback() {
+        override fun onCharacteristicChanged(gatt: BluetoothGatt?, characteristic: BluetoothGattCharacteristic?) {
+            super.onCharacteristicChanged(gatt, characteristic)
+            val ssmSay = gattRxBuffer.feed(characteristic!!.value)
+            if (ssmSay?.first == DeviceSegmentType.cipher) {
+                parceNotifyPayload(cipher!!.decrypt(ssmSay.second))
+            }
+            if (ssmSay?.first == DeviceSegmentType.plain) {
+                parceNotifyPayload(ssmSay.second)
+            }
+        }
+
+        private fun parceNotifyPayload(palntext: ByteArray) {
+            val ssm2notify = SesameNotifypayload(palntext)//1
+            if (ssm2notify.notifyOpCode == SSM2OpCode.publish) {
+                val ssm2pubPayload = SSM3PublishPayload(ssm2notify.payload)
+                onGattSesamePublish(ssm2pubPayload)
+            }
+            if (ssm2notify.notifyOpCode == SSM2OpCode.response) {
+                val ssm2responsePayload = SSM2ResponsePayload(ssm2notify.payload)
+                onGattSesameResponse(ssm2responsePayload)
+            }
+        }
+
+        override fun onCharacteristicWrite(gatt: BluetoothGatt?, characteristic: BluetoothGattCharacteristic?, status: Int) {
+            super.onCharacteristicWrite(gatt, characteristic, status)
+            transmit()
+        }
+
+        override fun onServicesDiscovered(gatt: BluetoothGatt?, status: Int) {
+            super.onServicesDiscovered(gatt, status)
+            for (service in gatt?.services!!) {
+                if (service.uuid == Sesame2Chracs.uuidService01) {
+                    for (charc in service.characteristics) {
+                        if (charc.uuid == Sesame2Chracs.uuidChr02) {
+                            mCharacteristic = charc
+                        }
+
+                        if (charc.uuid == Sesame2Chracs.uuidChr03) {
+                            gatt.setCharacteristicNotification(charc, true)
+                            val descriptor = charc.getDescriptor(UUID.fromString("00002902-0000-1000-8000-00805f9b34fb"))
+                            descriptor.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE)
+                            gatt.writeDescriptor(descriptor)
+                        }
+                    }
+                }
+            }
+        }
+
+        override fun onConnectionStateChange(gatt: BluetoothGatt, status: Int, newState: Int) {
+            super.onConnectionStateChange(gatt, status, newState)
+            if (newState == BluetoothProfile.STATE_CONNECTED) {
+                deviceStatus = CHDeviceStatus.DiscoverServices
+                mBluetoothGatt = gatt
+                gatt.discoverServices()
+            } else {
+                gatt.close()
+                advertisement = null
+                mBluetoothGatt = null
+                CHBleManager.connectR.remove(gatt.device.address)
+            }
+        }
+    }
+
+    private fun onGattSesameResponse(ssm2ResponsePayload: SSM2ResponsePayload) {
+        CoroutineScope(IO).launch {
+            semaphore.receive().invoke(ssm2ResponsePayload)
+        }
+    }
+
+    private fun onGattSesamePublish(receivePayload: SSM3PublishPayload) {
+        if (receivePayload.cmdItCode == SesameItemCode.login.value) {
+            val loginResponse = SSMBotLoginResponsePayload(receivePayload.payload)
+
+            sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.timePhone, System.currentTimeMillis().toUInt32ByteArray())) { }
+
+            mechStatus = loginResponse.SSMBotMechStatus
+            deviceStatus = if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+
+        }
+        if (receivePayload.cmdItCode == SesameItemCode.initial.value) {
+            mSesameToken = receivePayload.payload
+            if (isRegistered) {
+                if (isNeedAuthFromServer == true) {
+                    val userIdx = sesame2KeyData!!.keyIndex.hexStringToByteArray()
+                    val appPublicKeyBytes = EccKey.getPubK().hexStringToByteArray()
+                    val sessionToken = mAppToken + mSesameToken
+                    val signPayload = userIdx + appPublicKeyBytes + sessionToken
+                    CHBleSupport.backend.signGuestKey(deviceId.toString().uppercase(), signPayload.toHexString(), sesame2KeyData!!.secretKey) {
+                        it.onSuccess {
+                            login(it.data)
+                        }
+                        it.onFailure {}
+                    }
+                } else {
+                    login()
+                }
+            } else {
+                deviceStatus = CHDeviceStatus.ReadyToRegister
+            }
+        }
+
+        if (receivePayload.cmdItCode == SesameItemCode.mechStatus.value) {
+            mechStatus = CHSesameBotMechStatus(receivePayload.payload)
+            deviceStatus = if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else if (mechStatus!!.isInUnlockRange) CHDeviceStatus.Unlocked else CHDeviceStatus.Moved
+            reportBatteryData(receivePayload.payload.sliceArray(0..1).toHexString())
+        }
+    }
+
+    override fun unlock(historyTag: ByteArray?, result: CHResult<CHEmpty>) {
+
+        if (!isBleAvailable(result)) return
+        val his = sesame2KeyData!!.createHistag(historyTag)
+
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.async, SesameItemCode.unlock, his)) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun login(token: String?) {
+        semaphore = Channel(capacity = 1)
+        deviceStatus = CHDeviceStatus.BleLogining
+        val secret = sesame2KeyData!!.secretKey.hexStringToByteArray()
+        val userIdx = sesame2KeyData!!.keyIndex.hexStringToByteArray()
+        val ssmPublicKeyBytes = sesame2KeyData!!.sesame2PublicKey.hexStringToByteArray()
+        val devicePublicKeyBytes = EccKey.getPubK().hexStringToByteArray()
+        val sessionToken = mAppToken + mSesameToken
+
+        val signPayload = userIdx + devicePublicKeyBytes + sessionToken
+        val sessionAuth: ByteArray? = if (isNeedAuthFromServer == true) {
+            token?.hexStringToByteArray()
+        } else {
+            AesCmac(secret, 16).computeMac(signPayload)
+        }
+        val ecdhSecret = EccKey.ecdh(ssmPublicKeyBytes)
+        val ecdhSecretPre16 = ecdhSecret.sliceArray(0..15)
+        val sessionKey = AesCmac(ecdhSecretPre16, 16).computeMac(sessionToken)
+        val loginPayload = userIdx + devicePublicKeyBytes + mAppToken + sessionAuth!!.sliceArray(0..3)
+        cipher = SesameOS2BleCipher(sessionKey!!, sessionToken)
+        val cmd = SSM2Payload(SSM2OpCode.sync, SesameItemCode.login, loginPayload)
+        sendPlainCommand(cmd) { ssm2ResponsePayload ->
+            if (ssm2ResponsePayload.cmdItCode == SesameItemCode.login.value && ssm2ResponsePayload.cmdResultCode == SesameResultCode.success.value) {
+                val loginResponse = SSMBotLoginResponsePayload(ssm2ResponsePayload.payload)
+                val currentTimestamp = System.currentTimeMillis() / 1000
+                val timeError = currentTimestamp.minus(loginResponse.systemTime)
+                if (timeError > 3) { // check check  time error
+                    sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.timePhone, System.currentTimeMillis().toUInt32ByteArray())) { }
+                }
+                mechStatus = loginResponse.SSMBotMechStatus
+                deviceStatus = if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+            }
+        }
+    }
+
+    override fun getVersionTag(result: CHResult<String>) {
+        if (!isBleAvailable(result)) return
+
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.read, SesameItemCode.versionTag, byteArrayOf())) { res ->
+            val versionTag = String(res.payload.sliceArray(4..15))
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(versionTag)))
+            CHBleSupport.backend.updateDeviceFirmwareVersion(deviceId.toString().uppercase(), versionTag) {}
+        }
+    }
+
+    override fun register(resultRegister: CHResult<CHEmpty>) {
+        if (deviceStatus != CHDeviceStatus.ReadyToRegister) {
+            resultRegister.invoke(Result.failure(NSError("Busy", "CBCentralManager", 7)))
+            return
+        }
+        semaphore = Channel(capacity = 1)
+        sendPlainCommand(SSM2Payload(SSM2OpCode.read, SesameItemCode.IRER, byteArrayOf())) { IRRes ->
+            val ER = IRRes.payload.drop(16).toByteArray().toHexString()
+
+            L.d("hcia", "註冊請求開始 ==> deviceStatus:" + deviceStatus + " deviceId:" + deviceId)
+            deviceStatus = CHDeviceStatus.Registering
+
+            CHBleSupport.backend.registerOs2(
+                deviceId.toString(),
+                EccKey.getRegisterAK(),
+                mSesameToken.base64Encode(),
+                ER,
+                advertisement!!.productModel!!.productType().toString()
+            ) { apiResult ->
+                apiResult.fold(
+                    onSuccess = { state ->
+                        val registerSesame1 = state.data
+                        val sig1 = registerSesame1.signature.base64decodeByteArray().sliceArray(0..3)
+                        val appPubKey = EccKey.getPubK().hexStringToByteArray()
+                        val serverToken = registerSesame1.token.base64decodeByteArray()
+                        val sesamePublicKey = registerSesame1.publicKey.base64decodeByteArray()
+                        val ecdhSecret = EccKey.ecdh(sesamePublicKey)
+                        val ecdhSecretPre16 = ecdhSecret.sliceArray(0..15)
+                        val payload = sig1 + appPubKey + serverToken
+
+                        val cmd = SSM2Payload(SSM2OpCode.create, SesameItemCode.registration, payload)
+                        L.d("hcia", "註冊指令==>")
+                        val sessionToken = serverToken + mSesameToken
+                        val registerKey = AesCmac(ecdhSecretPre16, 16).computeMac(sessionToken)
+                        val ownerKey = AesCmac(registerKey!!, 16).computeMac("owner_key".toByteArray())
+                        val sessionKey = AesCmac(registerKey, 16).computeMac(sessionToken)
+
+                        cipher = SesameOS2BleCipher(sessionKey!!, sessionToken)
+                        sendPlainCommand(cmd) { result ->
+                            val candyDevice = CHDevice(
+                                deviceId.toString(), CHProductModel.BiKeLock.deviceModel(),//sesame_2
+                                null, "0000", ownerKey!!.toHexString(), sesamePublicKey.toHexString()
+                            )
+                            sesame2KeyData = candyDevice
+
+                            CHBleSupport.keys.insert(candyDevice) {
+                                resultRegister.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+
+                            }
+                            L.d("hcia", "<===我成功註冊腳車了 device_id::" + deviceId)
+                        }
+                    },
+                    onFailure = { err ->
+                        resultRegister.invoke(Result.failure(err))
+                    }
+                )
+            }
+        }
+    }
+
+    override fun reset(result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.delete, SesameItemCode.registration, byteArrayOf())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                dropKey(result)
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun updateFirmware(result: CHResult<BluetoothDevice>) {
+        L.d("hcia", "啟動dfu" + deviceStatus + " " + isRegistered)
+        if (isRegistered) {
+            if (!isBleAvailable(result)) return
+            sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.enableDFU, "01".hexStringToByteArray())) { res ->
+                if (res.cmdResultCode == SesameResultCode.success.value) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(advertisement?.device!!)))
+                } else {
+                    result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            }
+        } else {
+            sendPlainCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.enableDFU, "01".hexStringToByteArray())) { res ->
+                if (res.cmdResultCode == SesameResultCode.success.value) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(advertisement?.device!!)))
+                } else {
+                    result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            }
+        }
+    }
+
+    private fun sendPlainCommand(payload: SSM2Payload, onResponse: SesameOS2ResponseCallback) {
+        CoroutineScope(IO).launch {
+            semaphore.send(onResponse)
+            sendCommand(SesameBleTransmit(DeviceSegmentType.plain, payload.toDataWithHeader()))
+        }
+    }
+
+    private fun sendEncryptCommand(payload: SSM2Payload, onResponse: SesameOS2ResponseCallback) {
+        CoroutineScope(IO).launch {
+            semaphore.send(onResponse)
+            val cipherText = cipher!!.encrypt(payload.toDataWithHeader())
+            sendCommand(SesameBleTransmit(DeviceSegmentType.cipher, cipherText))
+        }
+    }
+
+    private fun sendCommand(txClosure: SesameBleTransmit) {
+        CoroutineScope(IO).launch {
+            gattTxBuffer = txClosure
+            transmit()
+        }
+    }
+
+    private fun transmit() {
+        if (mCharacteristic == null) {
+            return
+        }
+        val data = gattTxBuffer?.getChunk() ?: return
+        mCharacteristic?.value = data
+        mBluetoothGatt?.writeCharacteristic(mCharacteristic)
+    }
+}
+
+internal class SSMBotLoginResponsePayload(loginPayload: ByteArray) {
+    var systemTime = loginPayload.sliceArray(0..3).toBigLong()
+    var fw_version = loginPayload[4]
+    val historyCnt: Byte = loginPayload[6]
+    val mech_setting_t = loginPayload.sliceArray(8..19)
+    val mech_status_t = loginPayload.sliceArray(20..27)
+    var SSMBotMechStatus = CHSesameBotMechStatus(mech_status_t)
+    var SSMBotMechSetting =
+        CHSesameBotMechSettings(mech_setting_t[0], mech_setting_t[1], mech_setting_t[2], mech_setting_t[3], mech_setting_t[4], mech_setting_t[5], mech_setting_t[6])
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bot/CHSesameBot.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bot/CHSesameBot.kt
new file mode 100644
index 0000000..0d2920b
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bot/CHSesameBot.kt
@@ -0,0 +1,37 @@
+package co.candyhouse.sesame.ble.os2.bot
+
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.CHSesameProtocolMechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHSesameBot : CHSesameLock {
+    var mechSetting: CHSesameBotMechSettings?
+    fun updateSetting(setting: CHSesameBotMechSettings, historyTag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun toggle(historyTag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun lock(historyTag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun unlock(historyTag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun click(historyTag: ByteArray? = null, result: CHResult<CHEmpty>)
+}
+
+data class CHSesameBotMechSettings(
+    var userPrefDir: Byte,
+    var lockSec: Byte,
+    var unlockSec: Byte,
+    var clickLockSec: Byte,
+    var clickHoldSec: Byte,
+    var clickUnlockSec: Byte,
+    var buttonMode: Byte
+) {
+    internal fun data(): ByteArray =
+        byteArrayOf(userPrefDir, lockSec, unlockSec, clickLockSec, clickHoldSec, clickUnlockSec, buttonMode) + byteArrayOf(0, 0, 0, 0, 0)
+}
+
+class CHSesameBotMechStatus(override val data: ByteArray) : CHSesameProtocolMechStatus {
+    internal val motorStatus = data[4]
+    private val flags = data[7].toInt()
+    override var isInLockRange: Boolean = flags and 2 > 0
+    override var isInUnlockRange: Boolean = flags and 4 > 0
+    override var isBatteryCritical: Boolean = flags and 32 > 0
+    override var isStop: Boolean? = (flags and 1 == 0)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bot/CHSesameBotDevice.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bot/CHSesameBotDevice.kt
new file mode 100644
index 0000000..fb2159b
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/bot/CHSesameBotDevice.kt
@@ -0,0 +1,490 @@
+package co.candyhouse.sesame.ble.os2.bot
+
+import android.Manifest
+import android.annotation.SuppressLint
+import android.bluetooth.BluetoothDevice
+import android.bluetooth.BluetoothGatt
+import android.bluetooth.BluetoothGattCallback
+import android.bluetooth.BluetoothGattCharacteristic
+import android.bluetooth.BluetoothGattDescriptor
+import android.bluetooth.BluetoothProfile
+import android.content.pm.PackageManager
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHBleManager.appContext
+import co.candyhouse.sesame.ble.CHBleManager.bluetoothAdapter
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHProductModel
+import co.candyhouse.sesame.ble.CHScanStatus
+import co.candyhouse.sesame.ble.CHadv
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM2OpCode
+import co.candyhouse.sesame.ble.SSM2ResponsePayload
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.Sesame2Chracs
+import co.candyhouse.sesame.ble.SesameBleTransmit
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameNotifypayload
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.createHistag
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os2.base.CHSesameOS2
+import co.candyhouse.sesame.ble.os2.base.SSM2Payload
+import co.candyhouse.sesame.ble.os2.base.SesameOS2BleCipher
+import co.candyhouse.sesame.ble.os2.base.SesameOS2ResponseCallback
+import co.candyhouse.sesame.ble.os2.bike.SSMBotLoginResponsePayload
+import co.candyhouse.sesame.ble.os2.sesame2.CHError
+import co.candyhouse.sesame.ble.os2.sesame2.CHSesame2MechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.base64Encode
+import co.candyhouse.sesame.utils.base64decodeByteArray
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.isInternetAvailable
+import co.candyhouse.sesame.utils.toHexString
+import co.candyhouse.sesame.utils.toUInt32ByteArray
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers.IO
+import kotlinx.coroutines.channels.Channel
+import kotlinx.coroutines.launch
+import java.util.Locale.getDefault
+import java.util.UUID
+
+@SuppressLint("MissingPermission")
+internal class CHSesameBotDevice : CHSesameOS2(), CHSesameBot, CHDeviceUtil {
+    override var mechSetting: CHSesameBotMechSettings? = null
+
+    override var advertisement: CHadv? = null
+        set(value) {
+            field = value
+            if (value == null) {
+                rssi = -100
+                deviceStatus = CHDeviceStatus.NoBleSignal
+                return
+            }
+            rssi = advertisement?.rssi
+            deviceId = advertisement!!.deviceID
+            isRegistered = advertisement!!.isRegistered
+
+            if (deviceStatus.value == CHDeviceLoginStatus.logined && !isRegistered) {
+                deviceStatus = CHDeviceStatus.Reset
+            }
+
+            if (deviceStatus == CHDeviceStatus.NoBleSignal) {
+                deviceStatus = CHDeviceStatus.ReceivedAdV
+            }
+
+            if (deviceStatus == CHDeviceStatus.WaitingForAuth && isInternetAvailable()) {
+                deviceStatus = CHDeviceStatus.ReceivedAdV
+            }
+        }
+
+    override fun connect(result: CHResult<CHEmpty>) {
+        if (appContext.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+            if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+                result.invoke(Result.failure(CHError.BleUnauth.value))
+                return
+            }
+        }
+
+        if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+            result.invoke(Result.failure(CHError.BlePoweroff.value))
+            return
+        }
+        if (deviceStatus != CHDeviceStatus.ReceivedAdV) {
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+
+        if (isNeedAuthFromServer == true && !isInternetAvailable()) {
+            deviceStatus = CHDeviceStatus.WaitingForAuth
+            return
+        }
+
+        if (CHBleManager.connectR.indexOf(advertisement?.device?.address) == -1) {
+            CHBleManager.connectR.add(advertisement!!.device.address)
+        } else return
+
+        deviceStatus = CHDeviceStatus.BleConnecting
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+
+        bluetoothAdapter.getRemoteDevice(advertisement!!.device.address)
+            .connectGatt(appContext, false, mBluetoothGattCallback, BluetoothDevice.TRANSPORT_LE)
+    }
+
+    private val mBluetoothGattCallback: BluetoothGattCallback = object : BluetoothGattCallback() {
+
+        override fun onCharacteristicChanged(gatt: BluetoothGatt?, characteristic: BluetoothGattCharacteristic?) {
+            super.onCharacteristicChanged(gatt, characteristic)
+            val ssmSay = gattRxBuffer.feed(characteristic!!.value)
+            if (ssmSay?.first == DeviceSegmentType.cipher) {
+                parceNotifyPayload(cipher!!.decrypt(ssmSay.second))
+            }
+            if (ssmSay?.first == DeviceSegmentType.plain) {
+                parceNotifyPayload(ssmSay.second)
+            }
+        }
+
+        private fun parceNotifyPayload(palntext: ByteArray) {
+            val ssm2notify = SesameNotifypayload(palntext)//1
+            if (ssm2notify.notifyOpCode == SSM2OpCode.publish) {
+                val ssm2pubPayload = SSM3PublishPayload(ssm2notify.payload)
+                onGattSesamePublish(ssm2pubPayload)
+            }
+            if (ssm2notify.notifyOpCode == SSM2OpCode.response) {
+                val ssm2responsePayload = SSM2ResponsePayload(ssm2notify.payload)
+                onGattSesameResponse(ssm2responsePayload)
+            }
+        }
+
+        override fun onCharacteristicWrite(gatt: BluetoothGatt?, characteristic: BluetoothGattCharacteristic?, status: Int) {
+            super.onCharacteristicWrite(gatt, characteristic, status)
+            transmit()
+        }
+
+        override fun onServicesDiscovered(gatt: BluetoothGatt?, status: Int) {
+            super.onServicesDiscovered(gatt, status)
+
+            for (service in gatt?.services!!) {
+                if (service.uuid == Sesame2Chracs.uuidService01) {
+                    for (charc in service.characteristics) {
+                        if (charc.uuid == Sesame2Chracs.uuidChr02) {
+                            mCharacteristic = charc
+                        }
+                        if (charc.uuid == Sesame2Chracs.uuidChr03) {
+                            gatt.setCharacteristicNotification(charc, true)
+                            val descriptor = charc.getDescriptor(UUID.fromString("00002902-0000-1000-8000-00805f9b34fb"))
+                            descriptor.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE)
+                            gatt.writeDescriptor(descriptor)
+                        }
+                    }
+                }
+            }
+        }
+
+        override fun onConnectionStateChange(gatt: BluetoothGatt, status: Int, newState: Int) {
+            super.onConnectionStateChange(gatt, status, newState)
+            if (newState == BluetoothProfile.STATE_CONNECTED) {
+                deviceStatus = CHDeviceStatus.DiscoverServices
+                mBluetoothGatt = gatt
+                gatt.discoverServices()
+            } else {
+                gatt.close()
+                advertisement = null
+                mBluetoothGatt = null
+                CHBleManager.connectR.remove(gatt.device.address)
+            }
+        }
+    }
+
+    private fun onGattSesameResponse(ssm2ResponsePayload: SSM2ResponsePayload) {
+        CoroutineScope(IO).launch {
+            semaphore.receive().invoke(ssm2ResponsePayload)
+        }
+    }
+
+    private fun onGattSesamePublish(receivePayload: SSM3PublishPayload) {
+        if (receivePayload.cmdItCode == SesameItemCode.login.value) {
+            L.d("hcia", "註冊完畢收到login:")
+
+            val loginResponse = SSMBotLoginResponsePayload(receivePayload.payload)
+            L.d("hcia", ":登入成功 loginResponse:" + loginResponse + " 歷史數量:" + loginResponse.historyCnt)
+            sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.timePhone, System.currentTimeMillis().toUInt32ByteArray())) { }
+
+            mechStatus = loginResponse.SSMBotMechStatus
+            mechSetting = loginResponse.SSMBotMechSetting
+
+            var tmp = loginResponse.SSMBotMechStatus
+            tmp.isStop = when (tmp.motorStatus) {//noPower: 0, forward: 1, hold:2, backward: 3
+                0.toByte() -> true
+                1.toByte() -> false
+                2.toByte() -> true
+                3.toByte() -> false
+                else -> false
+            }
+            mechStatus = tmp
+
+            deviceStatus = if ((mechStatus as CHSesameBotMechStatus).isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+
+        }
+        if (receivePayload.cmdItCode == SesameItemCode.initial.value) {
+            mSesameToken = receivePayload.payload
+            if (isRegistered) {
+                if (isNeedAuthFromServer == true) {
+                    val userIdx = sesame2KeyData!!.keyIndex.hexStringToByteArray()
+                    val appPublicKeyBytes = EccKey.getPubK().hexStringToByteArray()
+                    val sessionToken = mAppToken + mSesameToken
+                    val signPayload = userIdx + appPublicKeyBytes + sessionToken
+                    CHBleSupport.backend.signGuestKey(deviceId.toString().uppercase(getDefault()), signPayload.toHexString(), sesame2KeyData!!.secretKey) {
+                        it.onSuccess {
+                            login(it.data)
+                        }
+                        it.onFailure {}
+                    }
+                } else {
+                    login()
+                }
+            } else {
+                deviceStatus = CHDeviceStatus.ReadyToRegister
+            }
+        }
+
+        if (receivePayload.cmdItCode == SesameItemCode.mechStatus.value) {
+            var tmp = CHSesameBotMechStatus(receivePayload.payload)
+            tmp.isStop = when (tmp.motorStatus) {//noPower: 0, forward: 1, hold:2, backward: 3
+                0.toByte() -> true
+                1.toByte() -> false
+                2.toByte() -> true
+                3.toByte() -> false
+                else -> false
+            }
+            mechStatus = tmp
+            deviceStatus = if ((mechStatus as CHSesameBotMechStatus).isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+            reportBatteryData(receivePayload.payload.sliceArray(0..1).toHexString())
+        }
+    }
+
+    override fun toggle(historyTag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+
+        if ((mechStatus as CHSesame2MechStatus).isInLockRange) {
+            unlock { it.onSuccess { result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty()))) } }
+        } else {
+            lock { it.onSuccess { result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty()))) } }
+        }
+    }
+
+    override fun lock(historyTag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+
+        val his = sesame2KeyData!!.createHistag(historyTag)
+
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.async, SesameItemCode.lock, his)) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun unlock(historyTag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+
+        val his = sesame2KeyData!!.createHistag(historyTag)
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.async, SesameItemCode.unlock, his)) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun click(historyTag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        val his = sesame2KeyData!!.createHistag(historyTag)
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.async, SesameItemCode.click, his)) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun updateSetting(setting: CHSesameBotMechSettings, historyTag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        val his = sesame2KeyData!!.createHistag(historyTag)
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.mechSetting, setting.data() + his)) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                mechSetting = setting
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun login(token: String?) {
+        deviceStatus = CHDeviceStatus.BleLogining
+        val secret = sesame2KeyData!!.secretKey.hexStringToByteArray()
+        val userIdx = sesame2KeyData!!.keyIndex.hexStringToByteArray()
+        val ssmPublicKeyBytes = sesame2KeyData!!.sesame2PublicKey.hexStringToByteArray()
+        val devicePublicKeyBytes = EccKey.getPubK().hexStringToByteArray()
+        val sessionToken = mAppToken + mSesameToken
+
+        val signPayload = userIdx + devicePublicKeyBytes + sessionToken
+        val sessionAuth: ByteArray?
+        if (isNeedAuthFromServer == true) {
+            sessionAuth = token?.hexStringToByteArray()
+        } else {
+            sessionAuth = AesCmac(secret, 16).computeMac(signPayload)
+        }
+        val ecdhSecret = EccKey.ecdh(ssmPublicKeyBytes)
+        val ecdhSecretPre16 = ecdhSecret.sliceArray(0..15)
+        val sessionKey = AesCmac(ecdhSecretPre16, 16).computeMac(sessionToken)
+        val loginPayload = userIdx + devicePublicKeyBytes + mAppToken + sessionAuth!!.sliceArray(0..3)
+        semaphore = Channel(capacity = 1)
+        cipher = SesameOS2BleCipher(sessionKey!!, sessionToken)
+        val cmd = SSM2Payload(SSM2OpCode.sync, SesameItemCode.login, loginPayload)
+        sendEncryptCommand(cmd, DeviceSegmentType.plain) { ssm2ResponsePayload ->
+            if (ssm2ResponsePayload.cmdItCode == SesameItemCode.login.value && ssm2ResponsePayload.cmdResultCode == SesameResultCode.success.value) {
+                val loginResponse = SSMBotLoginResponsePayload(ssm2ResponsePayload.payload)
+                val currentTimestamp = System.currentTimeMillis() / 1000
+                val timeError = currentTimestamp.minus(loginResponse.systemTime)
+                if (timeError > 3) { // check check  time error
+                    sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.timePhone, System.currentTimeMillis().toUInt32ByteArray())) { }
+                }
+                mechStatus = loginResponse.SSMBotMechStatus
+                mechSetting = loginResponse.SSMBotMechSetting
+
+                var tmp = loginResponse.SSMBotMechStatus
+                tmp.isStop = when (tmp.motorStatus) {//noPower: 0, forward: 1, hold:2, backward: 3
+                    0.toByte() -> true
+                    1.toByte() -> false
+                    2.toByte() -> true
+                    3.toByte() -> false
+                    else -> false
+                }
+                mechStatus = tmp
+
+                deviceStatus = if ((mechStatus as CHSesameBotMechStatus).isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+            }
+        }
+    }
+
+    override fun getVersionTag(result: CHResult<String>) {
+        if (!isBleAvailable(result)) return
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.read, SesameItemCode.versionTag, byteArrayOf())) { res ->
+            val versionTag = String(res.payload.sliceArray(4..15))
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(versionTag)))
+            CHBleSupport.backend.updateDeviceFirmwareVersion(deviceId.toString().uppercase(), versionTag) {}
+        }
+    }
+
+    override fun register(resultRegister: CHResult<CHEmpty>) {
+        if (deviceStatus != CHDeviceStatus.ReadyToRegister) {
+            resultRegister.invoke(Result.failure(CHError.BleInvalidAction.value))
+            return
+        }
+        semaphore = Channel(capacity = 1)
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.read, SesameItemCode.IRER, byteArrayOf()), DeviceSegmentType.plain) { IRRes ->
+            val ER = IRRes.payload.drop(16).toByteArray().toHexString()
+
+            L.d("hcia", "[bot] ER:" + ER)
+            L.d("hcia", "註冊請求開始 ==> deviceStatus:" + deviceStatus + " deviceId:" + deviceId)
+            deviceStatus = CHDeviceStatus.Registering
+
+            CHBleSupport.backend.registerOs2(
+                deviceId.toString(),
+                EccKey.getRegisterAK(),
+                mSesameToken.base64Encode(),
+                ER,
+                advertisement!!.productModel!!.productType().toString()
+            ) { apiResult ->
+                apiResult.fold(
+                    onSuccess = { state ->
+                        val registerSesame1 = state.data
+                        val sig1 = registerSesame1.signature.base64decodeByteArray().sliceArray(0..3)
+                        val appPubKey = EccKey.getPubK().hexStringToByteArray()
+                        val serverToken = registerSesame1.token.base64decodeByteArray()
+                        val sesamePublicKey = registerSesame1.publicKey.base64decodeByteArray()
+                        val ecdhSecret = EccKey.ecdh(sesamePublicKey)
+                        val ecdhSecretPre16 = ecdhSecret.sliceArray(0..15)
+                        val payload = sig1 + appPubKey + serverToken
+                        val cmd = SSM2Payload(SSM2OpCode.create, SesameItemCode.registration, payload)
+                        L.d("hcia", "註冊指令==>")
+
+                        val sessionToken = serverToken + mSesameToken
+                        val registerKey = AesCmac(ecdhSecretPre16, 16).computeMac(sessionToken)
+                        val ownerKey = AesCmac(registerKey!!, 16).computeMac("owner_key".toByteArray())
+                        val sessionKey = AesCmac(registerKey, 16).computeMac(sessionToken)
+
+                        cipher = SesameOS2BleCipher(sessionKey!!, sessionToken)
+                        sendEncryptCommand(cmd, DeviceSegmentType.plain) { result ->
+                            val candyDevice = CHDevice(
+                                deviceId.toString(),
+                                CHProductModel.SesameBot1.deviceModel(),
+                                null,
+                                "0000",
+                                ownerKey!!.toHexString(),
+                                sesamePublicKey.toHexString()
+                            )
+                            sesame2KeyData = candyDevice
+
+                            CHBleSupport.keys.insert(candyDevice) {
+                                resultRegister.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+                            }
+                            L.d("hcia", "<===我成功註冊按鈕手了 device_id::" + deviceId)
+                        }
+                    },
+                    onFailure = { err ->
+                        resultRegister.invoke(Result.failure(err))
+                    }
+                )
+            }
+        }
+    }
+
+    override fun reset(result: CHResult<CHEmpty>) {
+        L.d("hcia", "重置Sesame")
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.delete, SesameItemCode.registration, byteArrayOf())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                dropKey(result)
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun updateFirmware(result: CHResult<BluetoothDevice>) {
+        L.d("hcia", "啟動dfu" + deviceStatus + " " + isRegistered)
+        if (isRegistered) {
+            if (!isBleAvailable(result)) return
+            sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.enableDFU, "01".hexStringToByteArray())) { res ->
+                if (res.cmdResultCode == SesameResultCode.success.value) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(advertisement?.device!!)))
+                } else {
+                    result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            }
+        } else {
+            sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.enableDFU, "01".hexStringToByteArray()), DeviceSegmentType.plain) { res ->
+                if (res.cmdResultCode == SesameResultCode.success.value) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(advertisement?.device!!)))
+                } else {
+                    result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            }
+        }
+    }
+
+    private fun sendEncryptCommand(payload: SSM2Payload, isCipher: DeviceSegmentType = DeviceSegmentType.cipher, onResponse: SesameOS2ResponseCallback) {
+        CoroutineScope(IO).launch {
+            semaphore.send(onResponse)
+            sendCommand(SesameBleTransmit(isCipher, if (isCipher == DeviceSegmentType.cipher) cipher!!.encrypt(payload.toDataWithHeader()) else payload.toDataWithHeader()))
+        }
+    }
+
+    private fun sendCommand(txClosure: SesameBleTransmit) {
+        gattTxBuffer = txClosure
+        transmit()
+    }
+
+    private fun transmit() {
+        mCharacteristic ?: return
+        val data = gattTxBuffer?.getChunk() ?: return
+        mCharacteristic?.value = data
+        mBluetoothGatt?.writeCharacteristic(mCharacteristic)
+    }
+
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/sesame2/CHSesame2.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/sesame2/CHSesame2.kt
new file mode 100644
index 0000000..b4aa7af
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/sesame2/CHSesame2.kt
@@ -0,0 +1,49 @@
+package co.candyhouse.sesame.ble.os2.sesame2
+
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.CHSesameProtocolMechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.bytesToShort
+import co.candyhouse.sesame.utils.toReverseBytes
+
+interface CHSesame2 : CHSesameLock { // CHProductModel.SS2,CHProductModel.SS4
+    var mechSetting: CHSesame2MechSettings?
+    fun lock(historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun unlock(historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun toggle(historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun configureLockPosition(lockTarget: Short, unlockTarget: Short, result: CHResult<CHEmpty>)
+    fun getAutolockSetting(result: CHResult<Int>)
+    fun enableAutolock(delay: Int, historytag: ByteArray? = null, result: CHResult<Int>)
+    fun disableAutolock(historytag: ByteArray? = null, result: CHResult<Int>)
+    fun onHistoryReceived(historyData: ByteArray) {}
+}
+
+class CHSesame2MechSettings(data: ByteArray) {
+    val lockPosition: Short = (bytesToShort(data[0], data[1]).toInt() * 360 / 1024).toShort()
+    val unlockPosition: Short = (bytesToShort(data[2], data[3]).toInt() * 360 / 1024).toShort()
+    val isConfigured: Boolean = (lockPosition != unlockPosition)
+}
+
+class CHSesame2MechStatus(override val data: ByteArray) : CHSesameProtocolMechStatus {
+
+    override val position: Short = (bytesToShort(data[4], data[5]).toInt() * 360 / 1024).toShort()
+    override val target: Short? = if ((bytesToShort(data[2], data[3]).toInt() == -32768)) null else (bytesToShort(data[2], data[3]).toInt() * 360 / 1024).toShort()
+    internal val retCode = data[6].toInt()
+
+    private val flags = data[7].toInt()
+    override var isInLockRange: Boolean = flags and 2 > 0
+    override var isInUnlockRange: Boolean = flags and 4 > 0
+    override var isBatteryCritical: Boolean = flags and 32 > 0
+    override var isStop: Boolean? = null
+
+    fun ss5Adapter(): ByteArray {
+        val bat = (bytesToShort(data[0], data[1]).toInt() * 3600 / 1023).toShort()
+        L.d("hub3_ss5", "bat: $bat")
+        val position = (bytesToShort(data[4], data[5]).toInt() * 360 / 1024).toShort()
+        L.d("hub3_ss5", "position: $position")
+
+        return bat.toReverseBytes() + data.sliceArray(2..3) + position.toReverseBytes() + data.sliceArray(7..7)
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/sesame2/CHSesame2Device.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/sesame2/CHSesame2Device.kt
new file mode 100644
index 0000000..05e646f
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os2/sesame2/CHSesame2Device.kt
@@ -0,0 +1,544 @@
+package co.candyhouse.sesame.ble.os2.sesame2
+
+import android.Manifest
+import android.annotation.SuppressLint
+import android.bluetooth.BluetoothDevice
+import android.bluetooth.BluetoothGatt
+import android.bluetooth.BluetoothGattCallback
+import android.bluetooth.BluetoothGattCharacteristic
+import android.bluetooth.BluetoothGattDescriptor
+import android.bluetooth.BluetoothProfile
+import android.content.pm.PackageManager
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHBleManager.appContext
+import co.candyhouse.sesame.ble.CHBleManager.bluetoothAdapter
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHScanStatus
+import co.candyhouse.sesame.ble.CHadv
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM2OpCode
+import co.candyhouse.sesame.ble.SSM2ResponsePayload
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.Sesame2Chracs
+import co.candyhouse.sesame.ble.SesameBleTransmit
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameNotifypayload
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.createHistag
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os2.base.CHSesameOS2
+import co.candyhouse.sesame.ble.os2.base.SSM2Payload
+import co.candyhouse.sesame.ble.os2.base.SesameOS2BleCipher
+import co.candyhouse.sesame.ble.os2.base.SesameOS2ResponseCallback
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.base64Encode
+import co.candyhouse.sesame.utils.base64decodeByteArray
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.isInternetAvailable
+import co.candyhouse.sesame.utils.toBigLong
+import co.candyhouse.sesame.utils.toHexString
+import co.candyhouse.sesame.utils.toReverseBytes
+import co.candyhouse.sesame.utils.toUInt32ByteArray
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers.IO
+import kotlinx.coroutines.channels.Channel
+import kotlinx.coroutines.launch
+import java.util.UUID
+import kotlin.math.abs
+
+internal enum class CHError(val value: NSError) {
+    SesameUnlogin(NSError("Sesame BLE unlogin", "SesameSDK", -1)), Noble(NSError("without receivedBle", "SesameSDK", -2)), BlePoweroff(
+        NSError(
+            "PoweredOff",
+            "CBCentralManager",
+            4
+        )
+    ),
+    BleUnauth(NSError("Unauthorized", "CBCentralManager", 3)), BUSY(NSError("BUSY", "Sesame2SDK", 7)), INVALID_PARAM(NSError("INVALID_PARAM", "Sesame2SDK", 8)), BleInvalidAction(
+        NSError("InvalidAction", "Sesame2SDK", 9)
+    ),
+    NotfoundError(NSError("notfound", "Sesame2SDK", 5)), NetWorkError(NSError("NetWork", "Sesame2SDK", -3)),
+}
+
+@SuppressLint("MissingPermission")
+internal class CHSesame2Device : CHSesameOS2(), CHSesame2, CHDeviceUtil {
+    private var mResultRegister: CHResult<CHEmpty>? = null
+
+    override var advertisement: CHadv? = null
+        set(value) {
+            field = value
+            if (value == null) {
+                rssi = -100
+                deviceStatus = CHDeviceStatus.NoBleSignal
+                return
+            }
+            rssi = advertisement?.rssi
+            deviceId = advertisement!!.deviceID
+            isRegistered = advertisement!!.isRegistered
+            productModel = advertisement!!.productModel!!
+
+            if (deviceStatus.value == CHDeviceLoginStatus.logined && !isRegistered) {
+                deviceStatus = CHDeviceStatus.Reset
+            }
+
+            if (deviceStatus == CHDeviceStatus.NoBleSignal) {
+                deviceStatus = CHDeviceStatus.ReceivedAdV
+            }
+
+            if (deviceStatus == CHDeviceStatus.WaitingForAuth && isInternetAvailable()) {
+                deviceStatus = CHDeviceStatus.ReceivedAdV
+            }
+        }
+
+    override var mechSetting: CHSesame2MechSettings? = null
+
+    override fun getVersionTag(result: CHResult<String>) {
+        if (!isBleAvailable(result)) return
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.read, SesameItemCode.versionTag, byteArrayOf())) { res ->
+            val versionTag = String(res.payload.sliceArray(4..15))
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(versionTag)))
+            CHBleSupport.backend.updateDeviceFirmwareVersion(deviceId.toString().uppercase(), versionTag) {}
+        }
+    }
+
+    override fun enableAutolock(delay: Int, historytag: ByteArray?, result: CHResult<Int>) {
+        if (!isBleAvailable(result)) return
+
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.autolock, delay.toShort().toReverseBytes() + sesame2KeyData!!.createHistag(historytag))) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(delay)))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun disableAutolock(historytag: ByteArray?, result: CHResult<Int>) {
+        enableAutolock(0, historytag, result)
+    }
+
+    override fun getAutolockSetting(result: CHResult<Int>) {
+        if (!isBleAvailable(result)) return
+
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.read, SesameItemCode.autolock, byteArrayOf())) { res ->
+            val autoLockSecond = res.payload.reversedArray().toHexString().toLong(16).toInt()
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(autoLockSecond)))
+        }
+    }
+
+    override fun toggle(historytag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (mechStatus?.isInLockRange == true) {
+            unlock(historytag, result)
+        } else {
+            lock(historytag, result)
+        }
+    }
+
+    override fun lock(historytag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.async, SesameItemCode.lock, sesame2KeyData!!.createHistag(historytag))) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun unlock(historytag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        val his = sesame2KeyData!!.createHistag(historytag)
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.async, SesameItemCode.unlock, his)) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun login(token: String?) {
+        semaphore = Channel(capacity = 1)
+        deviceStatus = CHDeviceStatus.BleLogining
+        val secret = sesame2KeyData!!.secretKey.hexStringToByteArray()
+        val userIdx = sesame2KeyData!!.keyIndex.hexStringToByteArray()
+        val ssmPublicKeyBytes = sesame2KeyData!!.sesame2PublicKey.hexStringToByteArray()
+        val appPublicKeyBytes = EccKey.getPubK().hexStringToByteArray()
+        val sessionToken = mAppToken + mSesameToken
+        val signPayload = userIdx + appPublicKeyBytes + sessionToken
+        val sessionAuth: ByteArray?
+        if (isNeedAuthFromServer == true) {
+            sessionAuth = token?.hexStringToByteArray()
+        } else {
+            sessionAuth = AesCmac(secret, 16).computeMac(signPayload)
+        }
+        val ecdhSecret = EccKey.ecdh(ssmPublicKeyBytes)
+        val ecdhSecretPre16 = ecdhSecret.sliceArray(0..15)
+        val sessionKey = AesCmac(ecdhSecretPre16, 16).computeMac(sessionToken)
+        cipher = SesameOS2BleCipher(sessionKey!!, sessionToken)
+        val loginPayload = userIdx + appPublicKeyBytes + mAppToken + sessionAuth!!.sliceArray(0..3)
+        val cmd = SSM2Payload(SSM2OpCode.sync, SesameItemCode.login, loginPayload)
+        sendEncryptCommand(cmd, DeviceSegmentType.plain) { ssm2ResponsePayload ->
+            if (ssm2ResponsePayload.cmdItCode == SesameItemCode.login.value && ssm2ResponsePayload.cmdResultCode == SesameResultCode.success.value) {
+                val loginResponse = SSM2LoginResponsePayload(ssm2ResponsePayload.payload)
+                val currentTimestamp = System.currentTimeMillis() / 1000
+                val timeError = currentTimestamp.minus(loginResponse.systemTime)
+                if (abs(timeError) > 3) {
+                    if (loginResponse.fw_version >= 1) {
+                        sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.timePhone, System.currentTimeMillis().toUInt32ByteArray())) { }
+                    }
+                }
+                mechStatus = loginResponse.SSM2MechStatus
+                mechSetting = loginResponse.SSM2MechSetting
+                deviceStatus =
+                    if (!mechSetting!!.isConfigured) CHDeviceStatus.NoSettings else if ((mechStatus as CHSesame2MechStatus).isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+            }
+        }
+    }
+
+    override fun connect(result: CHResult<CHEmpty>) {
+        if (appContext.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+            if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+                result.invoke(Result.failure(CHError.BleUnauth.value))
+                return
+            }
+        }
+
+        if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+            result.invoke(Result.failure(CHError.BlePoweroff.value))
+            return
+        }
+        if (deviceStatus != CHDeviceStatus.ReceivedAdV) {
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+
+        if (isNeedAuthFromServer == true && !isInternetAvailable()) {
+            deviceStatus = CHDeviceStatus.WaitingForAuth
+            return
+        }
+
+        // 检查 advertisement 是否为 null
+        if (advertisement?.device?.address == null) {
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+        val address = advertisement!!.device.address
+
+        if (CHBleManager.connectR.indexOf(address) == -1) {
+            CHBleManager.connectR.add(address)
+        } else return
+
+        deviceStatus = CHDeviceStatus.BleConnecting
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+
+        val remoteDevice = bluetoothAdapter.getRemoteDevice(address)
+        remoteDevice.connectGatt(appContext, false, mBluetoothGattCallback, BluetoothDevice.TRANSPORT_LE)
+    }
+
+    private val mBluetoothGattCallback: BluetoothGattCallback = object : BluetoothGattCallback() {
+
+        override fun onCharacteristicChanged(gatt: BluetoothGatt?, characteristic: BluetoothGattCharacteristic?) {
+            super.onCharacteristicChanged(gatt, characteristic)
+            val ssmSay = gattRxBuffer.feed(characteristic!!.value)
+            if (ssmSay?.first == DeviceSegmentType.cipher) {
+                parceNotifyPayload(cipher!!.decrypt(ssmSay.second))
+            }
+            if (ssmSay?.first == DeviceSegmentType.plain) {
+                parceNotifyPayload(ssmSay.second)
+            }
+        }
+
+        private fun parceNotifyPayload(palntext: ByteArray) {
+            val ssm2notify = SesameNotifypayload(palntext) //1
+            if (ssm2notify.notifyOpCode == SSM2OpCode.publish) {
+                val ssm2pubPayload = SSM3PublishPayload(ssm2notify.payload)
+                onGattSesamePublish(ssm2pubPayload)
+            }
+            if (ssm2notify.notifyOpCode == SSM2OpCode.response) {
+                val ssm2responsePayload = SSM2ResponsePayload(ssm2notify.payload)
+                CoroutineScope(IO).launch {
+                    semaphore.receive().invoke(ssm2responsePayload)
+                }
+            }
+        }
+
+        override fun onCharacteristicWrite(gatt: BluetoothGatt?, characteristic: BluetoothGattCharacteristic?, status: Int) {
+            super.onCharacteristicWrite(gatt, characteristic, status)
+            transmit()
+        }
+
+        override fun onServicesDiscovered(gatt: BluetoothGatt?, status: Int) {
+            super.onServicesDiscovered(gatt, status)
+            for (service in gatt?.services!!) {
+                if (service.uuid == Sesame2Chracs.uuidService01) {
+                    for (charc in service.characteristics) {
+                        if (charc.uuid == Sesame2Chracs.uuidChr02) {
+                            mCharacteristic = charc
+                        }
+                        if (charc.uuid == Sesame2Chracs.uuidChr03) {
+                            gatt.setCharacteristicNotification(charc, true)
+                            val descriptor = charc.getDescriptor(UUID.fromString("00002902-0000-1000-8000-00805f9b34fb"))
+                            descriptor.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE)
+                            gatt.writeDescriptor(descriptor)
+                        }
+                    }
+                }
+            }
+        }
+
+        override fun onConnectionStateChange(gatt: BluetoothGatt, status: Int, newState: Int) {
+            super.onConnectionStateChange(gatt, status, newState)
+            if (newState == BluetoothProfile.STATE_CONNECTED) {
+                deviceStatus = CHDeviceStatus.DiscoverServices
+                mBluetoothGatt = gatt
+                gatt.discoverServices()
+            } else {
+                gatt.close()
+                advertisement = null
+                mBluetoothGatt = null
+                CHBleManager.connectR.remove(gatt.device.address)
+            }
+        }
+    }
+
+    override fun register(resultRegister: CHResult<CHEmpty>) {
+        if (deviceStatus != CHDeviceStatus.ReadyToRegister) {
+            resultRegister.invoke(Result.failure(CHError.BUSY.value))
+            return
+        }
+        semaphore = Channel(capacity = 1)
+        sendEncryptCommand(
+            SSM2Payload(SSM2OpCode.read, SesameItemCode.IRER, byteArrayOf()),
+            DeviceSegmentType.plain
+        ) { IRRes ->
+            L.d("hcia", "IRER:" + IRRes.payload.toHexString())
+            val ER = IRRes.payload.drop(16).toByteArray().toHexString()
+
+            L.d("hcia", "註冊請求開始 ==> deviceStatus:$deviceStatus deviceId:$deviceId")
+
+            deviceStatus = CHDeviceStatus.Registering
+
+
+            CHBleSupport.backend.registerOs2(
+                deviceId.toString(),
+                EccKey.getRegisterAK(),
+                mSesameToken.base64Encode(),
+                ER,
+                advertisement!!.productModel!!.productType().toString()
+            ) { apiResult ->
+
+                apiResult.fold(
+                    onSuccess = { state ->
+                        val registerSesame1 = state.data  // CHSS2RegisterRes
+                        val sig1 = registerSesame1.signature.base64decodeByteArray().sliceArray(0..3)
+                        val appPubKey = EccKey.getPubK().hexStringToByteArray()
+                        val serverToken = registerSesame1.token.base64decodeByteArray()
+                        val sesamePublicKey = registerSesame1.publicKey.base64decodeByteArray()
+
+                        val ecdhSecret = EccKey.ecdh(sesamePublicKey)
+                        val ecdhSecretPre16 = ecdhSecret.sliceArray(0..15)
+                        val payload = sig1 + appPubKey + serverToken
+
+                        val cmd = SSM2Payload(SSM2OpCode.create, SesameItemCode.registration, payload)
+
+                        val sessionToken = serverToken + mSesameToken
+                        val registerKey = AesCmac(ecdhSecretPre16, 16).computeMac(sessionToken)
+                        val ownerKey = AesCmac(registerKey!!, 16).computeMac("owner_key".toByteArray())!!
+                        val sessionKey = AesCmac(registerKey, 16).computeMac(sessionToken)
+
+                        cipher = SesameOS2BleCipher(sessionKey!!, sessionToken)
+
+                        sendEncryptCommand(cmd, DeviceSegmentType.plain) {
+                            isRegistered = true
+                            mResultRegister = resultRegister
+
+                            val candyDevice = CHDevice(
+                                deviceId.toString(),
+                                advertisement!!.productModel!!.deviceModel(),
+                                null,
+                                "0000",
+                                ownerKey.toHexString(),
+                                sesamePublicKey.toHexString()
+                            )
+
+                            sesame2KeyData = candyDevice
+
+                            CHBleSupport.keys.insert(candyDevice) {}
+                        }
+                    },
+                    onFailure = { err ->
+                        resultRegister.invoke(Result.failure(err))
+                    }
+                )
+            }
+        }
+    }
+
+    private fun sendEncryptCommand(payload: SSM2Payload, isCipher: DeviceSegmentType = DeviceSegmentType.cipher, onResponse: SesameOS2ResponseCallback) {
+        CoroutineScope(IO).launch {
+            semaphore.send(onResponse)
+            gattTxBuffer = (SesameBleTransmit(isCipher, if (isCipher == DeviceSegmentType.cipher) cipher!!.encrypt(payload.toDataWithHeader()) else payload.toDataWithHeader()))
+            transmit()
+        }
+    }
+
+    private fun transmit() {
+        mCharacteristic ?: return //todo check return work
+        mCharacteristic?.value = gattTxBuffer?.getChunk() ?: return
+        val check = mBluetoothGatt?.writeCharacteristic(mCharacteristic)
+        if (check == false) {
+            disconnect { }
+        }
+    }
+
+    private fun onGattSesamePublish(receivePayload: SSM3PublishPayload) {
+        if (receivePayload.cmdItCode == SesameItemCode.login.value) {
+            val loginResponse = SSM2LoginResponsePayload(receivePayload.payload)
+            sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.timePhone, System.currentTimeMillis().toUInt32ByteArray())) {
+                mResultRegister?.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+            mechStatus = loginResponse.SSM2MechStatus
+            mechSetting = loginResponse.SSM2MechSetting
+            deviceStatus = if (!mechSetting!!.isConfigured) CHDeviceStatus.NoSettings else if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+        }
+        if (receivePayload.cmdItCode == SesameItemCode.initial.value) {
+            mSesameToken = receivePayload.payload
+            if (isRegistered) {
+                if (isNeedAuthFromServer == true) {
+                    val userIdx = sesame2KeyData!!.keyIndex.hexStringToByteArray()
+                    val appPublicKeyBytes = EccKey.getPubK().hexStringToByteArray()
+                    val sessionToken = mAppToken + mSesameToken
+                    val signPayload = userIdx + appPublicKeyBytes + sessionToken
+                    CHBleSupport.backend.signGuestKey(deviceId.toString().uppercase(), signPayload.toHexString(), sesame2KeyData!!.secretKey) {
+                        it.onSuccess {
+                            login(it.data)
+                        }
+                        it.onFailure {}
+                    }
+                } else {
+                    login()
+                }
+            } else {
+                deviceStatus = CHDeviceStatus.ReadyToRegister
+            }
+        }
+
+        if (receivePayload.cmdItCode == SesameItemCode.mechStatus.value) {
+            mechStatus = CHSesame2MechStatus(receivePayload.payload)
+            if ((mechStatus as CHSesame2MechStatus).retCode != 0) {
+                readHistoryCommand {}
+            } else if (mechStatus!!.target == Short.MIN_VALUE) {
+                readHistoryCommand {}
+            }
+            deviceStatus =
+                if (!mechSetting!!.isConfigured) CHDeviceStatus.NoSettings else if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else if ((mechStatus as CHSesame2MechStatus)!!.isInUnlockRange) CHDeviceStatus.Unlocked else CHDeviceStatus.Moved
+            reportBatteryData(receivePayload.payload.sliceArray(0..1).toHexString())
+        }
+    }
+
+    override fun configureLockPosition(lockTarget: Short, unlockTarget: Short, result: CHResult<CHEmpty>) {
+        val payload = CHSesameLockPositionConfiguration(
+            (lockTarget.toInt() * 1024 / 360).toShort(),
+            (unlockTarget.toInt() * 1024 / 360).toShort()
+        ).toPayload() + sesame2KeyData!!.createHistag(null)
+        val cmd = SSM2Payload(SSM2OpCode.update, SesameItemCode.mechSetting, payload)
+        sendEncryptCommand(cmd) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                mechSetting =
+                    CHSesame2MechSettings(CHSesameLockPositionConfiguration((lockTarget.toInt() * 1024 / 360).toShort(), (unlockTarget.toInt() * 1024 / 360).toShort()).toPayload())
+                deviceStatus = if (!mechSetting!!.isConfigured) CHDeviceStatus.NoSettings else if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun reset(result: CHResult<CHEmpty>) {
+        sendEncryptCommand(SSM2Payload(SSM2OpCode.delete, SesameItemCode.registration, byteArrayOf())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                dropKey(result)
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun updateFirmware(result: CHResult<BluetoothDevice>) {
+        L.d("hcia", "啟動dfu" + deviceStatus + " " + isRegistered)
+        if (isRegistered) {
+            if (!isBleAvailable(result)) return
+            sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.enableDFU, "01".hexStringToByteArray())) { res ->
+                if (res.cmdResultCode == SesameResultCode.success.value) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(advertisement?.device!!)))
+                } else {
+                    result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            }
+        } else {
+            sendEncryptCommand(SSM2Payload(SSM2OpCode.update, SesameItemCode.enableDFU, "01".hexStringToByteArray()), DeviceSegmentType.plain) { res ->
+                if (res.cmdResultCode == SesameResultCode.success.value) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(advertisement?.device!!)))
+                } else {
+                    result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            }
+        }
+    }
+
+    private fun readHistoryCommand(result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+
+        L.d("sendEncryptCommand", "readHistoryCommand")
+        sendEncryptCommand(
+            SSM2Payload(
+                SSM2OpCode.read,
+                SesameItemCode.history,
+                if (isInternetAvailable()) byteArrayOf(0x01) else byteArrayOf(0x00)
+            )
+        ) { res ->
+            onHistoryReceived(res.payload)
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                if (res.payload.size >= 13) {  // 添加边界检查
+                    val data = res.payload.toHexString()
+                    if (isInternetAvailable()) {
+                        CHBleSupport.backend.postSS2History(deviceId.toString().uppercase(), data) {}
+                    }
+                }
+            }
+        }
+    }
+}
+
+internal class SSM2LoginResponsePayload(loginPayload: ByteArray) {
+    var systemTime = loginPayload.sliceArray(0..3).toBigLong()
+    var fw_version = loginPayload[4]
+    val historyCnt: Byte = loginPayload[6]
+    val mech_setting_t = loginPayload.sliceArray(8..19)
+    val mech_status_t = loginPayload.sliceArray(20..27)
+    var SSM2MechStatus = CHSesame2MechStatus(mech_status_t)
+    var SSM2MechSetting = CHSesame2MechSettings(mech_setting_t)
+}
+
+internal class CHSesameLockPositionConfiguration(private val lockTarget: Short, private val unlockTarget: Short) {
+    private val range = 150
+    private val lockRangeMin: Short = (lockTarget - range).toShort()
+    private val lockRangeMax: Short = (lockTarget + range).toShort()
+    private val unlockRangeMin: Short = (unlockTarget - range).toShort()
+    private val unlockRangeMax: Short = (unlockTarget + range).toShort()
+
+    internal fun toPayload(): ByteArray {
+        return lockTarget.toReverseBytes() + unlockTarget.toReverseBytes() + lockRangeMin.toReverseBytes() + lockRangeMax.toReverseBytes() + unlockRangeMin.toReverseBytes() + unlockRangeMax.toReverseBytes()
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/CHSesameOS3.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/CHSesameOS3.kt
new file mode 100644
index 0000000..26829c8
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/CHSesameOS3.kt
@@ -0,0 +1,477 @@
+package co.candyhouse.sesame.ble.os3.base
+
+import android.annotation.SuppressLint
+import android.bluetooth.BluetoothDevice
+import android.bluetooth.BluetoothGatt
+import android.bluetooth.BluetoothGattCallback
+import android.bluetooth.BluetoothGattCharacteristic
+import android.bluetooth.BluetoothGattDescriptor
+import android.bluetooth.BluetoothProfile
+import android.bluetooth.BluetoothStatusCodes
+import android.os.Build
+import co.candyhouse.sesame.ble.CHBaseDevice
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHBleManager.appContext
+import co.candyhouse.sesame.ble.CHBleManager.bluetoothAdapter
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHProductModel
+import co.candyhouse.sesame.ble.CHadv
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM2OpCode
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.Sesame2Chracs
+import co.candyhouse.sesame.ble.SesameBleTransmit
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameNotifypayload
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os2.sesame2.CHError
+import co.candyhouse.sesame.utils.BleBaseType
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.isInternetAvailable
+import co.candyhouse.sesame.utils.toHexString
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers.IO
+import kotlinx.coroutines.launch
+import java.util.UUID
+import java.util.concurrent.ConcurrentHashMap
+import java.util.concurrent.Semaphore
+
+interface CHSesameOS3Publish {
+    fun onGattSesamePublish(receivePayload: SSM3PublishPayload)
+}
+internal typealias SesameOS3ResponseCallback = (result: SSM3ResponsePayload) -> Unit
+internal typealias thisItemCodeLastSendTime = Long
+
+@SuppressLint("MissingPermission")
+internal open class CHSesameOS3 : CHBaseDevice(), CHSesameOS3Publish {
+
+    var cipher: SesameOS3BleCipher? = null//[加解密層]
+    var cmdCallBack: MutableMap<UByte, SesameOS3ResponseCallback> = mutableMapOf()
+    private var cmdCallBackMap: ConcurrentHashMap<UByte, thisItemCodeLastSendTime> =
+        ConcurrentHashMap()
+
+    private var semaphore: Semaphore = Semaphore(1)
+
+    open fun connect(result: CHResult<CHEmpty>) {
+
+        val advertisement = (this as? CHDeviceUtil)?.advertisement
+        val deviceAddress = advertisement?.device?.address
+
+        if (deviceAddress == null) {
+            L.d("[say]", "[connect] Advertisement or device address is null")
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+
+        // Check if the device address is already in the connectR list
+        if (CHBleManager.connectR.contains(deviceAddress)) {
+            L.d("[say]", "[connect] 已连接")
+            return
+        } else {
+            CHBleManager.connectR.add(deviceAddress)
+        }
+
+        deviceStatus = CHDeviceStatus.BleConnecting
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+
+
+        if (bluetoothAdapter == null) {
+            L.d("[say]", "[connect] BluetoothAdapter is null")
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+        if (appContext == null) {
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+        val gattCallback = mBluetoothGattCallback
+        if (gattCallback == null) {
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+        val remoteDevice = bluetoothAdapter.getRemoteDevice(deviceAddress)
+        remoteDevice.connectGatt(appContext, false, gattCallback, BluetoothDevice.TRANSPORT_LE)
+    }
+
+    private val mBluetoothGattCallback: BluetoothGattCallback = object : BluetoothGattCallback() {
+
+        //该方法在更广泛的Android版本上有效,具有兼容性
+        override fun onCharacteristicChanged(
+            gatt: BluetoothGatt,
+            characteristic: BluetoothGattCharacteristic
+        ) {
+            super.onCharacteristicChanged(gatt, characteristic)
+            handleCharacteristicChanged(characteristic.value)
+        }
+
+        //此方法是新Google建议的新API调用,但Android 12及以下并不走该方法,以及可能存在Android 13以上部分厂商不兼容,暂时屏蔽。
+        /*override fun onCharacteristicChanged(
+            gatt: BluetoothGatt,
+            characteristic: BluetoothGattCharacteristic,
+            value: ByteArray
+        ) {
+            L.d("sf", "Android 13 及以上调用...")
+            super.onCharacteristicChanged(gatt, characteristic, value)
+            handleCharacteristicChanged(value)
+        }*/
+
+        private fun handleCharacteristicChanged(value: ByteArray) {
+            L.d("hcia", "[ssm][say]:" + value.toHexString() + ", bytes: " + value.size)
+            val ssmSay = gattRxBuffer.feed(value)
+            if (ssmSay?.first == DeviceSegmentType.plain) {
+                parseNotifyPayload(ssmSay.second)
+            } else if (ssmSay?.first == DeviceSegmentType.cipher) {
+                parseNotifyPayload(cipher!!.decrypt(ssmSay.second))
+            }
+        }
+
+        private fun parseNotifyPayload(palntext: ByteArray) {
+            val ssm2notify = SesameNotifypayload(palntext)
+            L.d("[say]", "[ss5] ssm2notify.notifyOpCode:" + ssm2notify.notifyOpCode)
+            if (ssm2notify.notifyOpCode == SSM2OpCode.response) {
+                onGattSesameResponse(SSM3ResponsePayload(ssm2notify.payload))
+            } else if (ssm2notify.notifyOpCode == SSM2OpCode.publish) {
+                onGattSesamePublish(SSM3PublishPayload(ssm2notify.payload))
+            }
+        }
+
+        private fun onGattSesameResponse(ssm2ResponsePayload: SSM3ResponsePayload) {
+            L.d(
+                "onGattSesameResponse",
+                "☆1、 ssm2ResponsePayload.cmdItCode: ${ssm2ResponsePayload.cmdItCode}"
+            )
+            cmdCallBack.get(ssm2ResponsePayload.cmdItCode)?.invoke(ssm2ResponsePayload)
+            L.d(
+                "onGattSesameResponse",
+                "☆2、 ssm2ResponsePayload.cmdItCode: ${ssm2ResponsePayload.cmdItCode}"
+            )
+            cmdCallBack.remove(ssm2ResponsePayload.cmdItCode)
+            L.d(
+                "[say]",
+                "☆3、 🀄Command: <==:  " + (ssm2ResponsePayload.cmdItCode) + " " + (ssm2ResponsePayload.cmdResultCode)
+            )
+        }
+
+        override fun onCharacteristicWrite(
+            gatt: BluetoothGatt?,
+            characteristic: BluetoothGattCharacteristic?,
+            status: Int
+        ) {
+            super.onCharacteristicWrite(gatt, characteristic, status)
+            transmit()
+        }
+
+        override fun onMtuChanged(gatt: BluetoothGatt?, mtu: Int, status: Int) {
+            super.onMtuChanged(gatt, mtu, status)
+            L.d("[say]", "[onMtuChanged] mtu: $mtu, status: $status")
+            if (status == BluetoothGatt.GATT_SUCCESS) {
+                if ((productModel == CHProductModel.SSMTouchPro) || (productModel == CHProductModel.SSMTouch2Pro) || (productModel == CHProductModel.SSMTouch) || (productModel == CHProductModel.SSMTouch2) || (productModel == CHProductModel.SSMFacePro) || (productModel == CHProductModel.SSMFace2Pro)
+                    || (productModel == CHProductModel.SSMFaceProAI) || (productModel == CHProductModel.SSMFace2ProAI) || (productModel == CHProductModel.SSMFaceAI) || (productModel == CHProductModel.SSMFace2AI) || (productModel == CHProductModel.SSMFace) || (productModel == CHProductModel.SSMFace2)
+                ) {
+                    deviceStatus = CHDeviceStatus.DiscoverServices
+                    mBluetoothGatt = gatt
+                    gatt?.discoverServices()
+                }
+            }
+        }
+
+        override fun onServicesDiscovered(gatt: BluetoothGatt?, status: Int) {
+            L.d("[say]", "[onServicesDiscovered]")
+            super.onServicesDiscovered(gatt, status)
+            for (service in gatt?.services!!) {
+                L.d("[say]", "[onServicesDiscovered] service 01 : " + service.uuid)
+                if (service.uuid == Sesame2Chracs.uuidService01) {
+                    for (charc in service.characteristics) {
+                        L.d("[say]", "[onServicesDiscovered] charc: " + charc.uuid)
+                        if (charc.uuid == Sesame2Chracs.uuidChr02) {
+                            mCharacteristic = charc
+                        }
+                        if (charc.uuid == Sesame2Chracs.uuidChr03) {
+                            L.d(
+                                "[say]",
+                                "[NOTIFICATION]【start】[enable: " + BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE.toHexString() + "][disable: " + BluetoothGattDescriptor.DISABLE_NOTIFICATION_VALUE.toHexString() + "]"
+                            )
+                            gatt.setCharacteristicNotification(charc, true)
+                            val descriptor =
+                                charc.getDescriptor(UUID.fromString("00002902-0000-1000-8000-00805f9b34fb"))
+
+                            //writeDescriptor在Android 13以后过时,改用新的方式直接设置特征值
+                            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
+                                gatt.writeDescriptor(
+                                    descriptor,
+                                    BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE
+                                )
+                            } else {
+                                descriptor.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE)
+                                val check = gatt.writeDescriptor(descriptor)
+                                L.d("[say]", "[NOTIFICATION]【end】 [enable] $check")
+                            }
+                        }
+                    }
+                }
+            }
+        }
+
+        override fun onConnectionStateChange(gatt: BluetoothGatt, status: Int, newState: Int) {
+            super.onConnectionStateChange(gatt, status, newState)
+            if (newState == BluetoothProfile.STATE_CONNECTED) {
+                if ((productModel == CHProductModel.SSMTouchPro) || (productModel == CHProductModel.SSMTouch2Pro) || (productModel == CHProductModel.SSMTouch) || (productModel == CHProductModel.SSMTouch2) || (productModel == CHProductModel.SSMFacePro) || (productModel == CHProductModel.SSMFace2Pro)
+                    || (productModel == CHProductModel.SSMFaceAI) || (productModel == CHProductModel.SSMFace2AI) || (productModel == CHProductModel.SSMFaceProAI) || (productModel == CHProductModel.SSMFace2ProAI) || (productModel == CHProductModel.SSMFace) || (productModel == CHProductModel.SSMFace2)
+                ) { // 连接成功后立即请求MTU变更
+                    // 如果是刷卡机, 需要设置 MTU。 iOS会自动协商, 但是 Android 需要手动设置。
+                    val result = gatt.requestMtu(251) // 统一成 苹果手机 的 251
+                    L.d("onConnectionStateChange", "MTU request result: $result")
+                } else {
+                    L.d(
+                        "[say]",
+                        "[ss5] " + ":連接狀態++" + BleBaseType.GattConnectStateDec(newState) + " 狀態:" + BleBaseType.GattConnectStatusDec(
+                            status
+                        )
+                    )
+                    deviceStatus = CHDeviceStatus.DiscoverServices
+                    mBluetoothGatt = gatt
+                    gatt.discoverServices()
+                }
+                if (status == BluetoothProfile.STATE_DISCONNECTED) {
+                    cmdCallBack.clear()
+                }
+            } else {
+                L.d(
+                    "[say]",
+                    "[ss5][$deviceId][${BleBaseType.GattConnectStateDec(newState)}][${
+                        BleBaseType.GattConnectStatusDec(status)
+                    }]"
+                )
+                gatt.close()
+                (this@CHSesameOS3 as CHDeviceUtil).advertisement = null
+                mBluetoothGatt = null
+                cmdCallBack.clear()
+                CHBleManager.connectR.remove(gatt.device.address)
+            }
+        }
+    }
+
+    fun transmit() {
+        val chunkData = gattTxBuffer?.getChunk()
+        if (chunkData == null) {
+            semaphore.release()
+            return
+        }
+
+        L.d("sf", "chunkData[0]=${chunkData[0]}")
+
+        var check: Boolean
+        //writeCharacteristic在Android 13以后过时,改用新的方式直接设置特征值
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
+            // 新的写入特征值方法
+            if (mCharacteristic != null) {
+                val result = mBluetoothGatt?.writeCharacteristic(
+                    mCharacteristic!!,
+                    chunkData,
+                    BluetoothGattCharacteristic.WRITE_TYPE_NO_RESPONSE
+                )
+                L.d("sf", "result===$result")
+                check = result == BluetoothStatusCodes.SUCCESS
+            } else {
+                check = false
+            }
+        } else {
+            mCharacteristic?.value = chunkData
+            check = mBluetoothGatt?.writeCharacteristic(mCharacteristic) == true
+        }
+
+        L.d("[say]", "[app][say][$mBluetoothGatt][" + mCharacteristic?.uuid + "]")
+        L.d(
+            "sf",
+            "[app][say]:" + mCharacteristic?.value?.toHexString() + "; bytes: " + mCharacteristic?.value?.size + "; check:" + check
+        )
+
+
+        if (!check) {   // 重试 30000 次, 不行再断线
+            var retry = 0
+            do {
+                retry++
+                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
+                    // 新的写入特征值方法
+                    val result = mBluetoothGatt?.writeCharacteristic(
+                        mCharacteristic!!,
+                        chunkData,
+                        BluetoothGattCharacteristic.WRITE_TYPE_NO_RESPONSE
+                    )
+                    check = result == BluetoothStatusCodes.SUCCESS
+                } else {
+                    check = mBluetoothGatt?.writeCharacteristic(mCharacteristic) == true
+                }
+
+                if (retry > 30000) { // 重试次数
+                    break
+                }
+            } while (!check)
+            L.d("sf", "[app][say][retry][$retry]")
+            if (!check) {
+                semaphore.release()
+                disconnect { }
+            }
+        }
+    }
+
+    fun sendCommand(
+        payload: SesameOS3Payload,
+        isEncryt: DeviceSegmentType = DeviceSegmentType.cipher,
+        onResponse: SesameOS3ResponseCallback
+    ) {
+        val tmp = cmdCallBack[payload.itemCode]
+//        L.d("hcia", "[put][qeueu][${payload.itemCode}][again]")
+
+        cmdCallBack[payload.itemCode] = onResponse
+        if (tmp != null) {
+            L.d("hcia", "[qeueu][${payload.itemCode}][again]")
+//            if(payload.itemCode == SesameItemCode.history.value){
+//                L.d("Harry", "历史记录的蓝牙 Response 丢失, 断线重连 ~~~")
+//                semaphore.release()
+//                disconnect { }
+//            }
+            if (cmdCallBackMap[payload.itemCode] != null && ((System.currentTimeMillis() - cmdCallBackMap[payload.itemCode]!!) > 2000)) {
+                L.d("Harry", "上一次的 这个 itemCode 的蓝牙 Response 丢失 ")
+                cmdCallBack.remove(payload.itemCode)
+                cmdCallBackMap.remove(payload.itemCode)
+            }
+            return
+        }
+        cmdCallBackMap[payload.itemCode] = System.currentTimeMillis()
+        CoroutineScope(IO).launch {
+            try {
+//            L.d("hcia", "[acquire] semaphore?.availablePermits():" + semaphore?.availablePermits())
+                semaphore.acquire()
+
+//            L.d("hcia", "[device] 🀄Command: ==>:" + (payload.itemCode) + " " + isEncryt)
+                val say2ssm = if (isEncryt == DeviceSegmentType.cipher) {
+                    cipher?.encrypt(payload.toDataWithHeader()) ?: run {
+
+                        semaphore.release()
+                        return@launch
+                    }
+                } else {
+                    payload.toDataWithHeader()
+                }
+                gattTxBuffer = SesameBleTransmit(isEncryt, say2ssm!!)
+                transmit()
+            } catch (e: Exception) {
+                L.e("CHSesameOS3", "Operation failed", e)
+                semaphore.release()  // 捕获异常 释放锁
+            }
+        }
+    }
+
+    /** 預設指令: 版本。重置。更新韌體(DFU) */
+    open fun getVersionTag(result: CHResult<String>) {
+        if (!(this as CHDevices).isBleAvailable(result)) return
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.versionTag.value, byteArrayOf()),
+            DeviceSegmentType.cipher
+        ) { res ->
+            val deviceUUID = deviceId.toString().uppercase()
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                val versionTag = String(res.payload)
+                L.d("getVersionTag", "$deviceUUID == $versionTag")
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(versionTag)))
+                CHBleSupport.backend.updateDeviceFirmwareVersion(deviceUUID, versionTag) {
+                    it.onFailure { error ->
+                        L.e("getVersionTag", error.message.toString())
+                    }
+                }
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    open fun reset(result: CHResult<CHEmpty>) {
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.Reset.value, byteArrayOf()),
+            DeviceSegmentType.cipher
+        ) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                dropKey(result)
+            } else {
+                result.invoke(
+                    Result.failure(
+                        NSError(
+                            res.cmdResultCode.toString(),
+                            "CBCentralManager",
+                            res.cmdResultCode.toInt()
+                        )
+                    )
+                )
+            }
+        }
+    }
+
+    open fun updateFirmware(onResponse: CHResult<BluetoothDevice>) {
+        val device = (this as CHDeviceUtil).advertisement?.device
+        if (device != null) {
+            onResponse.invoke(Result.success(CHResultState.CHResultStateBLE(device)))
+        } else {
+            // Handle the case where device is null, perhaps by invoking a failure result
+            onResponse.invoke(Result.failure(RuntimeException("Bluetooth device is not available.")))
+        }
+    }
+
+    fun parceADV(value: CHadv?) {
+        value?.let {
+            rssi = it.rssi
+            deviceId = it.deviceID
+            isRegistered = it.isRegistered
+            productModel = it.productModel!!
+//            L.d("[say]", "[deviceStatus: $deviceStatus][deviceID: $deviceId][isRegistered: $isRegistered][productModel: $productModel]")
+            deviceStatus = when {
+                deviceStatus == CHDeviceStatus.NoBleSignal -> CHDeviceStatus.ReceivedAdV
+                deviceStatus == CHDeviceStatus.WaitingForAuth && isInternetAvailable() -> CHDeviceStatus.ReceivedAdV
+                else -> deviceStatus
+            }
+        } ?: run {
+            deviceStatus = CHDeviceStatus.NoBleSignal
+        }
+    }
+
+    override fun onGattSesamePublish(receivePayload: SSM3PublishPayload) {
+        if (receivePayload.cmdItCode == SesameItemCode.initial.value) {
+            mSesameToken = receivePayload.payload
+            if (isRegistered) {
+                L.d("[say]", "isNeedAuthFromServer: " + isNeedAuthFromServer.toString())
+                if (isNeedAuthFromServer == true) {
+                    CHBleSupport.backend.signGuestKey(
+
+                        deviceId.toString().uppercase(),
+                        mSesameToken.toHexString(),
+                        sesame2KeyData!!.secretKey
+
+                    ) {
+                        it.onSuccess {
+                            (this as CHDeviceUtil).login(it.data)
+                        }
+                    }
+                } else {
+                    (this as CHDeviceUtil).login()
+                }
+            } else {
+                deviceStatus = CHDeviceStatus.ReadyToRegister
+            }
+        }
+    }
+}
+
+data class SesameOS3Payload(val itemCode: UByte, val data: ByteArray) {
+    fun toDataWithHeader(): ByteArray {
+        return byteArrayOf(itemCode.toByte()) + data
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/CHSesameOS3LockBase.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/CHSesameOS3LockBase.kt
new file mode 100644
index 0000000..68dbe76
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/CHSesameOS3LockBase.kt
@@ -0,0 +1,231 @@
+package co.candyhouse.sesame.ble.os3.base
+
+import android.annotation.SuppressLint
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.CHadv
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.bytesToShort
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.isInternetAvailable
+import co.candyhouse.sesame.utils.toBigLong
+import co.candyhouse.sesame.utils.toReverseBytes
+import co.candyhouse.sesame.utils.toUInt32ByteArray
+import kotlin.math.abs
+
+/**
+ * 锁类公共基类
+ *
+ * @author frey on 2026/3/30
+ */
+@SuppressLint("MissingPermission")
+internal abstract class CHSesameOS3LockBase : CHSesameOS3(), CHSesameLock, CHDeviceUtil {
+
+    override var advertisement: CHadv? = null
+        set(value) {
+            field = value
+            parceADV(value)
+            value?.let {
+                isHistory = it.adv_tag_b1
+            }
+        }
+
+    protected var isHistory: Boolean = false
+        set(value) {
+            if (deviceStatus.value == CHDeviceLoginStatus.logined) {
+                field = value
+                if (field) {
+                    readHistoryCommand()
+                }
+            } else {
+                field = value
+            }
+        }
+
+    override fun setBleTxPower(txPower: Byte, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        sendCommand(SesameOS3Payload(SesameItemCode.SSM3_ITEM_CODE_BLE_TX_POWER_SETTING.value, byteArrayOf(txPower)), DeviceSegmentType.cipher) { response ->
+            if (response.cmdResultCode == SesameResultCode.success.value) {
+                bleTxPower = txPower
+                result(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result(Result.failure(NSError(response.cmdResultCode.toString(), "CBCentralManager", response.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun setSensorDetectInterval(intervalMs: Short, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        sendCommand(SesameOS3Payload(SesameItemCode.SSM3_ITEM_CODE_SENSOR_DETECT_INTERVAL_SETTING.value, intervalMs.toReverseBytes()), DeviceSegmentType.cipher) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                sensorDetectIntervalMs = intervalMs
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun setLockUnlockSwitchPoint(point: Short, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        sendCommand(SesameOS3Payload(SesameItemCode.SSM3_ITEM_CODE_LOCK_UNLOCK_SWITCH_POINT_SETTING.value, point.toReverseBytes()), DeviceSegmentType.cipher) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                updateLockUnlockSwitchPointSetting(point)
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun register(result: CHResult<CHEmpty>) {
+        if (deviceStatus != CHDeviceStatus.ReadyToRegister) {
+            result.invoke(Result.failure(NSError("Busy", "CBCentralManager", 7)))
+            return
+        }
+
+        deviceStatus = CHDeviceStatus.Registering
+        val serverSecret = mSesameToken.toHexString()
+
+        CHBleSupport.backend.registerOs3(deviceId.toString(), productModel.productType().toString(), serverSecret) { apiResult ->
+            apiResult.exceptionOrNull()?.let { e ->
+                L.d("os3lock", "[register][server] failed: ${e.message}")
+            }
+
+            sendCommand(
+                SesameOS3Payload(SesameItemCode.registration.value, EccKey.getPubK().hexStringToByteArray() + System.currentTimeMillis().toUInt32ByteArray()),
+                DeviceSegmentType.plain
+            ) { registerRes ->
+                handleRegisterResponse(registerRes, serverSecret, result)
+            }
+        }
+    }
+
+    override fun login(token: String?) {
+        deviceStatus = CHDeviceStatus.BleLogining
+
+        val sessionAuth: ByteArray? = if (isNeedAuthFromServer == true) {
+            token?.hexStringToByteArray()
+        } else {
+            AesCmac(sesame2KeyData!!.secretKey.hexStringToByteArray(), 16).computeMac(mSesameToken)
+        }
+
+        cipher = SesameOS3BleCipher("customDeviceName", sessionAuth!!, ("00" + mSesameToken.toHexString()).hexStringToByteArray())
+
+        sendCommand(SesameOS3Payload(SesameItemCode.login.value, sessionAuth.sliceArray(0..3)), DeviceSegmentType.plain) { loginPayload ->
+            handleLoginResponse(loginPayload)
+        }
+    }
+
+    protected open fun handleLoginResponse(loginPayload: SSM3ResponsePayload) {
+        val systemTime = loginPayload.payload.sliceArray(0..3).toBigLong()
+        val currentTimestamp = System.currentTimeMillis() / 1000
+        val timeMinus = currentTimestamp.minus(systemTime)
+        if (abs(timeMinus) > 3) {
+            sendCommand(SesameOS3Payload(SesameItemCode.time.value, System.currentTimeMillis().toUInt32ByteArray()), DeviceSegmentType.cipher) {}
+        }
+    }
+
+    protected abstract fun handleRegisterResponse(registerRes: SSM3ResponsePayload, serverSecret: String, result: CHResult<CHEmpty>)
+
+    protected fun saveDeviceAndCipher(deviceSecretHex: String, serverSecret: String, result: CHResult<CHEmpty>) {
+        val candyDevice = CHDevice(deviceId.toString(), advertisement!!.productModel!!.deviceModel(), null, "0000", deviceSecretHex, serverSecret)
+        sesame2KeyData = candyDevice
+
+        val sessionAuth = AesCmac(deviceSecretHex.hexStringToByteArray(), 16).computeMac(mSesameToken)
+        cipher = SesameOS3BleCipher("customDeviceName", sessionAuth!!, ("00" + mSesameToken.toHexString()).hexStringToByteArray())
+
+        CHBleSupport.keys.insert(candyDevice) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    protected fun reportBatteryData(payloadString: String) {
+        L.d("os3lock", "[reportBatteryData] ${isInternetAvailable()}, payload: $payloadString")
+        CHBleSupport.backend.postBatteryData(deviceId.toString().uppercase(), payloadString) {
+            it.onSuccess { resp ->
+                batteryPercentage = ((resp.data as? Map<*, *>)?.get("batteryPercentage") as? Number)?.toInt()
+            }
+        }
+    }
+
+    protected open fun onHistoryReceivedInternal(historyData: ByteArray) {}
+
+    protected fun readHistoryCommand() {
+        val isConnectNET = isInternetAvailable()
+        sendCommand(SesameOS3Payload(SesameItemCode.history.value, byteArrayOf(0x01)), DeviceSegmentType.cipher) { res ->
+            val historyPayload = res.payload
+            onHistoryReceivedInternal(historyPayload)
+
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                if (isConnectNET && CHBleSupport.backend.shouldUploadHistory(deviceId.toString())) {
+                    CHBleSupport.backend.postOS3History(deviceId.toString().uppercase(), historyPayload.toHexString()) { postResult ->
+                        val recordId = historyPayload.sliceArray(0..3)
+                        postResult.onSuccess {
+                            sendCommand(SesameOS3Payload(SesameItemCode.SSM2_ITEM_CODE_HISTORY_DELETE.value, recordId), DeviceSegmentType.cipher) { deleteRes ->
+                                L.d("os3lock", "[history][delete]: ${deleteRes.cmdResultCode}")
+                            }
+                        }
+                        postResult.onFailure { exception ->
+                            L.d("os3lock", "[history] post failed: $exception")
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    override fun onGattSesamePublish(receivePayload: SSM3PublishPayload) {
+        super.onGattSesamePublish(receivePayload)
+
+        when (receivePayload.cmdItCode) {
+            SesameItemCode.SSM3_ITEM_CODE_BATTERY_VOLTAGE.value -> {
+                reportBatteryData(receivePayload.payload.toHexString())
+            }
+
+            SesameItemCode.SSM3_ITEM_CODE_BLE_TX_POWER_SETTING.value -> {
+                bleTxPower = receivePayload.payload[0]
+            }
+
+            SesameItemCode.SSM3_ITEM_CODE_SENSOR_DETECT_INTERVAL_SETTING.value -> {
+                if (receivePayload.payload.size >= 2) {
+                    val intervalMs = bytesToShort(receivePayload.payload[0], receivePayload.payload[1])
+                    L.d("os3lock", "[sensorDetectIntervalMs] $intervalMs")
+                    sensorDetectIntervalMs = intervalMs
+                } else {
+                    L.e("os3lock", "[sensorDetectIntervalMs] invalid payload size=${receivePayload.payload.size}")
+                }
+            }
+
+            SesameItemCode.SSM3_ITEM_CODE_LOCK_UNLOCK_SWITCH_POINT_SETTING.value -> {
+                if (receivePayload.payload.size >= 2) {
+                    val point = bytesToShort(receivePayload.payload[0], receivePayload.payload[1])
+                    L.d("os3lock", "[lockUnlockSwitchPoint] $point")
+                    updateLockUnlockSwitchPointSetting(point)
+                } else {
+                    L.e("os3lock", "[lockUnlockSwitchPoint] invalid payload size=${receivePayload.payload.size}")
+                }
+            }
+        }
+
+        handleDevicePublish(receivePayload)
+    }
+
+    protected abstract fun handleDevicePublish(receivePayload: SSM3PublishPayload)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/SesameOS3BleCipher.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/SesameOS3BleCipher.kt
new file mode 100644
index 0000000..2fed228
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/base/SesameOS3BleCipher.kt
@@ -0,0 +1,33 @@
+package co.candyhouse.sesame.ble.os3.base
+
+import co.candyhouse.sesame.utils.toBytes
+import javax.crypto.Cipher
+import javax.crypto.spec.GCMParameterSpec
+import javax.crypto.spec.SecretKeySpec
+
+internal class SesameOS3BleCipher(val name: String, private var sessionKey: ByteArray, private var sault: ByteArray) {
+    var encryptCounter: Long = 0.toLong()//int32 4byte-> 010000 小端
+    var decryptCounter: Long = 0.toLong()
+    internal fun encrypt(plaintext: ByteArray): ByteArray {
+        val c: Cipher = Cipher.getInstance("AES/CCM/NoPadding", "BC")
+        val nonce = encryptCounter.toBytes() + sault
+        encryptCounter = encryptCounter.inc()
+        val aesKeys = SecretKeySpec(sessionKey, "AES")
+        val ivParameterSpec = GCMParameterSpec(32, nonce)
+        c.init(Cipher.ENCRYPT_MODE, aesKeys, ivParameterSpec)
+        c.updateAAD(byteArrayOf(0))
+        return c.doFinal(plaintext)
+    }
+
+    internal fun decrypt(ciphertext: ByteArray): ByteArray {
+        val nonce = decryptCounter.toBytes() + sault
+//        L.d("hcia", "decryptCounter:" + decryptCounter)
+        decryptCounter = decryptCounter.inc()
+        val aesKeys = SecretKeySpec(sessionKey, "AES")
+        val ivParameterSpec = GCMParameterSpec(32, nonce)
+        val cipher: Cipher = Cipher.getInstance("AES/CCM/NoPadding", "BC")
+        cipher.init(Cipher.DECRYPT_MODE, aesKeys, ivParameterSpec)
+        cipher.updateAAD(byteArrayOf(0))
+        return cipher.doFinal(ciphertext)
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike2.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike2.kt
new file mode 100644
index 0000000..507fb95
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike2.kt
@@ -0,0 +1,19 @@
+package co.candyhouse.sesame.ble.os3.bike2
+
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.CHSesameProtocolMechStatus
+import co.candyhouse.sesame.ble.os3.sesame5.CHSesame5MechSettings
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHSesameBike2 : CHSesameLock {
+    var mechSetting: CHSesame5MechSettings?
+    fun unlock(historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun onHistoryReceived(historyData: ByteArray) {}
+}
+
+class CHSesameBike2MechStatus(override val data: ByteArray) : CHSesameProtocolMechStatus {
+    private val flags = data[2].toInt()
+    override var isInLockRange: Boolean = flags and 2 > 0
+    override var isStop: Boolean? = flags and 4 > 0
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike2Device.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike2Device.kt
new file mode 100644
index 0000000..a8674b5
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike2Device.kt
@@ -0,0 +1,106 @@
+package co.candyhouse.sesame.ble.os3.bike2
+
+import android.annotation.SuppressLint
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.historyTagBLE
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os3.base.CHSesameOS3LockBase
+import co.candyhouse.sesame.ble.os3.base.SesameOS3BleCipher
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.sesame5.CHSesame5MechSettings
+import co.candyhouse.sesame.ble.os3.sesame5.CHSesame5MechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.toHexString
+
+@SuppressLint("MissingPermission")
+internal open class CHSesameBike2Device : CHSesameOS3LockBase(), CHSesameBike2 {
+
+    override var mechSetting: CHSesame5MechSettings? = null
+
+    override fun unlock(historytag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.unlock.value, historyTagBLE(historytag)),
+            DeviceSegmentType.cipher
+        ) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun onHistoryReceived(historyData: ByteArray) {}
+
+    override fun onHistoryReceivedInternal(historyData: ByteArray) {
+        onHistoryReceived(historyData)
+    }
+
+    override fun handleRegisterResponse(
+        registerRes: SSM3ResponsePayload,
+        serverSecret: String,
+        result: CHResult<CHEmpty>
+    ) {
+        try {
+            val eccPublicKeyFromSS5 = registerRes.payload.sliceArray(13..76)
+            val ecdhSecret = EccKey.ecdh(eccPublicKeyFromSS5)
+
+            mechStatus = CHSesame5MechStatus(registerRes.payload.sliceArray(0..6))
+            mechSetting = CHSesame5MechSettings(registerRes.payload.sliceArray(7..12))
+
+            val deviceSecret = ecdhSecret.sliceArray(0..15).toHexString()
+            saveDeviceAndCipher(deviceSecret, serverSecret, result)
+            deviceStatus = if (mechStatus?.isInLockRange == true) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+        } catch (e: Exception) {
+            mechStatus = CHSesameBike2MechStatus(registerRes.payload.sliceArray(0..2))
+            deviceStatus = if (mechStatus?.isInLockRange == true) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+
+            val ecdhSecretPre16 = EccKey.ecdh(registerRes.payload.sliceArray(3..66)).sliceArray(0..15)
+            sesame2KeyData = CHDevice(
+                deviceId.toString(),
+                productModel.deviceModel(),
+                null,
+                "0000",
+                ecdhSecretPre16.toHexString(),
+                serverSecret
+            )
+            cipher = SesameOS3BleCipher(
+                "customDeviceName",
+                AesCmac(ecdhSecretPre16, 16).computeMac(mSesameToken)!!,
+                ("00" + mSesameToken.toHexString()).hexStringToByteArray()
+            )
+            CHBleSupport.keys.insert(sesame2KeyData!!) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+    }
+
+    override fun handleDevicePublish(receivePayload: SSM3PublishPayload) {
+        L.d("harry", "CHSesameBike2Device onGattSesamePublish: ${receivePayload.cmdItCode} payload: ${receivePayload.payload.toHexString()}")
+
+        when (receivePayload.cmdItCode) {
+            SesameItemCode.mechStatus.value -> {
+                L.d("harry", "[bike2]mechStatus【size: ${receivePayload.payload.size}】: ${receivePayload.payload.toHexString()}")
+                mechStatus = when (receivePayload.payload.size) {
+                    7 -> CHSesame5MechStatus(receivePayload.payload)
+                    3 -> CHSesameBike2MechStatus(receivePayload.payload)
+                    else -> mechStatus
+                }
+                if (mechStatus != null) {
+                    L.d("harry", "[bike2]mechStatus isInLockRange: ${mechStatus!!.isInLockRange}")
+                    deviceStatus = if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+                    reportBatteryData(receivePayload.payload.sliceArray(0..1).toHexString())
+                }
+            }
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike3Device.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike3Device.kt
new file mode 100644
index 0000000..bcd27d0
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bike2/CHSesameBike3Device.kt
@@ -0,0 +1,58 @@
+package co.candyhouse.sesame.ble.os3.bike2
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandler
+import co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint.CHFingerPrintCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint.CHFingerPrintCapableImpl
+import co.candyhouse.sesame.utils.CHResult
+
+/**
+ * Bike3
+ *
+ * @author frey on 2026/2/2
+ */
+internal class CHSesameBike3Device(
+    private val fingerPrintCapability: CHFingerPrintCapableImpl = CHFingerPrintCapableImpl()
+) : CHSesameBike2Device(),
+    CHCapabilityHost,
+    CHFingerPrintCapable by fingerPrintCapability {
+
+    private val fingerPrintEventHandlers = mutableListOf<CHEventHandler>()
+
+    init {
+        fingerPrintCapability.setupSupport(this)
+    }
+
+    override fun addEventHandler(handler: CHEventHandler) {
+        fingerPrintEventHandlers.add(handler)
+    }
+
+    override fun removeEventHandler(handler: CHEventHandler) {
+        fingerPrintEventHandlers.remove(handler)
+    }
+
+    override fun clearEventHandlers() {
+        fingerPrintEventHandlers.clear()
+    }
+
+    override fun sendCommand(payload: SesameOS3Payload, callback: (SSM3ResponsePayload) -> Unit) {
+        super.sendCommand(payload, DeviceSegmentType.cipher, callback)
+    }
+
+    override fun <T> isBleAvailable(result: CHResult<T>): Boolean {
+        return (this as CHDevices).isBleAvailable(result)
+    }
+
+    override fun handleDevicePublish(receivePayload: SSM3PublishPayload) {
+        super.handleDevicePublish(receivePayload)
+        fingerPrintEventHandlers.toList().forEach { handler ->
+            handler.handleEvent(this, receivePayload)
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/CHSesameBiometricDevice.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/CHSesameBiometricDevice.kt
new file mode 100644
index 0000000..3b3b3ff
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/CHSesameBiometricDevice.kt
@@ -0,0 +1,97 @@
+package co.candyhouse.sesame.ble.os3.biometric
+
+import androidx.lifecycle.LiveData
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHSesameConnector
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHRemoteNanoTriggerSettings
+import co.candyhouse.sesame.utils.Event
+
+/**
+ * 统一的生物识别设备接口
+ *
+ * @author frey on 2025/8/18
+ */
+interface CHSesameBiometricDevice : CHSesameConnector, CHCapabilityHost {
+    val deviceType: BiometricDeviceType
+    var triggerDelaySetting: CHRemoteNanoTriggerSettings?
+
+    fun supportedCapabilities(): Set<BiometricCapability>
+    fun login(token: String?)
+    fun getSSM2KeysLiveData(): LiveData<Map<String, ByteArray>>?
+    fun getSSM2SlotFullLiveData(): LiveData<Event<Boolean>>?
+    fun getSSM2SupportLiveDataLiveData(): LiveData<Event<Boolean>>?
+    fun getRadarReceiveLiveData(): LiveData<Event<ByteArray>>?
+}
+
+// 设备支持的能力
+enum class BiometricCapability {
+    CARD, FINGERPRINT, PASSCODE, FACE, PALM
+}
+
+enum class BiometricDeviceType {
+    OPEN_SENSOR,
+    OPEN_SENSOR_2,
+    REMOTE,
+    SESAME_TOUCH,
+    SESAME_TOUCH_PRO,
+    SESAME_FACE,
+    SESAME_FACE_PRO,
+    SESAME_FACE_AI,
+    SESAME_FACE_PRO_AI,
+}
+
+object DeviceProfiles {
+    val SESAME_TOUCH = setOf(BiometricCapability.CARD, BiometricCapability.FINGERPRINT)
+    val SESAME_TOUCH_PRO = setOf(BiometricCapability.FINGERPRINT, BiometricCapability.PASSCODE, BiometricCapability.CARD)
+    val SESAME_FACE = setOf(BiometricCapability.CARD, BiometricCapability.FINGERPRINT, BiometricCapability.PALM, BiometricCapability.FACE)
+    val SESAME_FACE_AI = setOf(BiometricCapability.PALM, BiometricCapability.FACE)
+    val SESAME_FACE_PRO = setOf(
+        BiometricCapability.PASSCODE,
+        BiometricCapability.CARD,
+        BiometricCapability.FINGERPRINT,
+        BiometricCapability.PALM,
+        BiometricCapability.FACE
+    )
+    val SESAME_FACE_PRO_AI = setOf(BiometricCapability.PASSCODE, BiometricCapability.PALM, BiometricCapability.FACE)
+}
+
+fun CHDevices.hasBiometricCapability(capabilities: BiometricCapability): Boolean {
+    return this is CHSesameBiometricDevice && supportedCapabilities().contains(capabilities)
+}
+
+fun CHDevices.hasAnyBiometricCapability(): Boolean {
+    return this is CHSesameBiometricDevice && supportedCapabilities().isNotEmpty()
+}
+
+fun CHDevices.isOpenSensor(): Boolean {
+    return this is CHSesameBiometricDevice && deviceType == BiometricDeviceType.OPEN_SENSOR
+}
+
+fun CHDevices.isRemote(): Boolean {
+    return this is CHSesameBiometricDevice && deviceType == BiometricDeviceType.REMOTE
+}
+
+fun CHDevices.isSesameTouch(): Boolean {
+    return this is CHSesameBiometricDevice && deviceType == BiometricDeviceType.SESAME_TOUCH
+}
+
+fun CHDevices.isSesameTouchPro(): Boolean {
+    return this is CHSesameBiometricDevice && deviceType == BiometricDeviceType.SESAME_TOUCH_PRO
+}
+
+fun CHDevices.isSesameFace(): Boolean {
+    return this is CHSesameBiometricDevice && deviceType == BiometricDeviceType.SESAME_FACE
+}
+
+fun CHDevices.isSesameFacePro(): Boolean {
+    return this is CHSesameBiometricDevice && deviceType == BiometricDeviceType.SESAME_FACE_PRO
+}
+
+fun CHDevices.isSesameFaceAi(): Boolean {
+    return this is CHSesameBiometricDevice && deviceType == BiometricDeviceType.SESAME_FACE_AI
+}
+
+fun CHDevices.isSesameFaceProAi(): Boolean {
+    return this is CHSesameBiometricDevice && deviceType == BiometricDeviceType.SESAME_FACE_PRO_AI
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/CHSesameBiometricDeviceImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/CHSesameBiometricDeviceImpl.kt
new file mode 100644
index 0000000..d75e7c4
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/CHSesameBiometricDeviceImpl.kt
@@ -0,0 +1,384 @@
+package co.candyhouse.sesame.ble.os3.biometric
+
+import android.annotation.SuppressLint
+import androidx.lifecycle.LiveData
+import androidx.lifecycle.MutableLiveData
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHProductModel
+import co.candyhouse.sesame.ble.CHadv
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os3.base.CHSesameOS3
+import co.candyhouse.sesame.ble.os3.base.SesameOS3BleCipher
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandler
+import co.candyhouse.sesame.ble.os3.biometric.capability.card.CHCardCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.card.CHCardCapableImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.connect.CHDeviceConnectCapableImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.face.CHFaceCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.face.CHFaceCapableImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint.CHFingerPrintCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint.CHFingerPrintCapableImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.palm.CHPalmCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.palm.CHPalmCapableImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.passcode.CHPassCodeCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.passcode.CHPassCodeCapableImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.remoteNano.CHRemoteNanoCapable
+import co.candyhouse.sesame.ble.os3.biometric.capability.remoteNano.CHRemoteNanoCapableImpl
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHRemoteNanoTriggerSettings
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchProMechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.Event
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.base64decodeHex
+import co.candyhouse.sesame.utils.divideArray
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.isInternetAvailable
+import co.candyhouse.sesame.utils.noHashtoUUID
+import co.candyhouse.sesame.utils.toUInt32ByteArray
+
+/**
+ *
+ *
+ * @author frey on 2026/3/31
+ */
+@SuppressLint("MissingPermission")
+internal class CHSesameBiometricDeviceImpl(
+    override val deviceType: BiometricDeviceType,
+    private val capabilities: Set<BiometricCapability>
+) : CHSesameOS3(),
+    CHSesameBiometricDevice,
+    CHDeviceUtil,
+    CHCardCapable by CHCardCapableImpl(),
+    CHPassCodeCapable by CHPassCodeCapableImpl(),
+    CHFingerPrintCapable by CHFingerPrintCapableImpl(),
+    CHPalmCapable by CHPalmCapableImpl(),
+    CHFaceCapable by CHFaceCapableImpl(),
+    CHRemoteNanoCapable by CHRemoteNanoCapableImpl() {
+
+    private val tag = "CHSesameBiometricDeviceImpl"
+
+    override fun supportedCapabilities() = capabilities
+
+    override var advertisement: CHadv? = null
+        set(value) {
+            field = value
+            parceADV(value)
+        }
+
+    override var triggerDelaySetting: CHRemoteNanoTriggerSettings? = null
+    override var ssm2KeysMap: MutableMap<String, ByteArray> = ObservableMutableMap()
+    private val _radarReceiveLiveData = MutableLiveData<Event<ByteArray>>()
+
+
+    private val eventHandlers = mutableListOf<CHEventHandler>()
+    private val deviceConnectCapability = CHDeviceConnectCapableImpl()
+
+    init {
+        deviceConnectCapability.setSupport(this)
+    }
+
+    override fun addEventHandler(handler: CHEventHandler) {
+        eventHandlers.add(handler)
+    }
+
+    override fun removeEventHandler(handler: CHEventHandler) {
+        eventHandlers.remove(handler)
+    }
+
+    override fun clearEventHandlers() {
+        eventHandlers.clear()
+    }
+
+    override fun getSSM2KeysLiveData(): LiveData<Map<String, ByteArray>>? {
+        return (ssm2KeysMap as? ObservableMutableMap)?.liveData
+    }
+
+    override fun getSSM2SlotFullLiveData(): LiveData<Event<Boolean>>? {
+        return (ssm2KeysMap as? ObservableMutableMap)?.slotFullLiveData
+    }
+
+    override fun getSSM2SupportLiveDataLiveData(): LiveData<Event<Boolean>>? {
+        return (ssm2KeysMap as? ObservableMutableMap)?.supportLiveData
+    }
+
+    override fun getRadarReceiveLiveData(): LiveData<Event<ByteArray>> {
+        return _radarReceiveLiveData
+    }
+
+    private fun reportBatteryData(payloadString: String) {
+        L.d("harry", "[stp][reportBatteryData]:${isInternetAvailable()}, payload: $payloadString")
+        CHBleSupport.backend.postBatteryData(deviceId.toString().uppercase(), payloadString) {
+            it.onSuccess { resp ->
+                batteryPercentage = ((resp.data as? Map<*, *>)?.get("batteryPercentage") as? Number)?.toInt()
+            }
+        }
+    }
+
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun onGattSesamePublish(receivePayload: SSM3PublishPayload) {
+        L.d("harry", "[stp][onGattSesamePublish] cmdItCode: ${receivePayload.cmdItCode}  payload: ${receivePayload.payload.toHexString()}")
+        super.onGattSesamePublish(receivePayload)
+
+        var handled = false
+        when (receivePayload.cmdItCode) {
+            SesameItemCode.mechStatus.value -> {
+                handleMechStatus(receivePayload)
+                handled = true
+            }
+
+            SesameItemCode.PUB_KEY_SESAME.value -> {
+                handled = true
+                handlePubKeySesame(receivePayload)
+            }
+
+            SesameItemCode.SSM_OS3_RADAR_PARAM_PUBLISH.value -> {
+                handled = true
+                handleRadar(receivePayload)
+            }
+
+            SesameItemCode.versionTag.value -> {
+                L.d("versionTag", "get SesameItemCode.versionTag...")
+            }
+
+            SesameItemCode.SSM3_ITEM_CODE_BATTERY_VOLTAGE.value -> {
+                reportBatteryData(receivePayload.payload.toHexString())
+            }
+
+            SesameItemCode.SSM3_ITEM_CODE_SESAME_UNSUPPORT.value -> {
+                handled = true
+                (ssm2KeysMap as? ObservableMutableMap)?.setSupport(false)
+            }
+
+            SesameItemCode.SSM3_ITEM_CODE_BLE_TX_POWER_SETTING.value -> {
+                handled = true
+                bleTxPower = receivePayload.payload[0]
+            }
+        }
+
+        if (!handled) {
+            eventHandlers.forEach {
+                if (it.handleEvent(this, receivePayload)) {
+                    handled = true
+                    return@forEach
+                }
+            }
+        }
+    }
+
+    private fun handleRadar(receivePayload: SSM3PublishPayload) {
+        val payload = receivePayload.payload.copyOf()
+        _radarReceiveLiveData.postValue(Event(payload))
+    }
+
+    private fun handleMechStatus(receivePayload: SSM3PublishPayload) {
+        mechStatus = CHSesameTouchProMechStatus(receivePayload.payload)
+        reportBatteryData(receivePayload.payload.sliceArray(0..1).toHexString())
+    }
+
+    @OptIn(ExperimentalStdlibApi::class)
+    private fun handlePubKeySesame(receivePayload: SSM3PublishPayload) {
+        L.d("hcia", "[ds][PUB][KEY]===>:${receivePayload.payload.toHexString()}")
+        ssm2KeysMap.clear()
+        val keyDatas = receivePayload.payload.divideArray(23)
+
+        // 针对特殊机型opensenor系列,保留一个槽位给hub3,所以需要超过1个空槽位才算有空余
+        val hasEmptySlot =
+            if (productModel == CHProductModel.SSMOpenSensor || productModel == CHProductModel.SSMOpenSensor2) {
+                keyDatas.count { it.all { byte -> byte == 0x00.toByte() } } > 1
+            } else {
+                keyDatas.any { it.all { byte -> byte == 0x00.toByte() } }
+            }
+
+        (ssm2KeysMap as? ObservableMutableMap)?.setSlotFull(!hasEmptySlot)
+
+        keyDatas.forEach {
+            val lockStatus = it[22].toInt()
+            if (lockStatus != 0) {
+                if (it[21].toInt() == 0x00) {
+                    val ss5Id = it.sliceArray(IntRange(0, 15))
+                    val ssmID = ss5Id.toHexString().noHashtoUUID().toString()
+                    ssm2KeysMap[ssmID] = byteArrayOf(0x05, it[22])
+                } else {
+                    val ss2ir22 = it.sliceArray(IntRange(0, 21))
+                    try {
+                        val ssmID = (String(ss2ir22) + "==").base64decodeHex().noHashtoUUID().toString()
+                        ssm2KeysMap[ssmID] = byteArrayOf(0x04, it[22])
+                    } catch (e: Exception) {
+                        L.d("hcia", "🩰  e:$e")
+                    }
+                }
+            }
+        }
+
+        L.d("ssm2KeysMap", "[TPO][ssm2KeysMap] size=${ssm2KeysMap.size}  data=$ssm2KeysMap")
+    }
+
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun login(token: String?) {
+        deviceStatus = CHDeviceStatus.BleLogining
+        val sessionAuth: ByteArray? = if (isNeedAuthFromServer == true) {
+            token?.hexStringToByteArray()
+        } else {
+            AesCmac(sesame2KeyData!!.secretKey.hexStringToByteArray(), 16).computeMac(mSesameToken)
+        }
+        cipher = SesameOS3BleCipher(
+            "customDeviceName",
+            sessionAuth!!,
+            ("00" + mSesameToken.toHexString()).hexStringToByteArray()
+        )
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.login.value, sessionAuth.sliceArray(0..3)),
+            DeviceSegmentType.plain
+        ) {
+            deviceStatus = CHDeviceStatus.Unlocked
+            L.d("hcia", "[touchpro][login]][ok]:")
+        }
+    }
+
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun register(result: CHResult<CHEmpty>) {
+        if (deviceStatus != CHDeviceStatus.ReadyToRegister) {
+            result.invoke(Result.failure(NSError("Busy", "CBCentralManager", 7)))
+            return
+        }
+
+        deviceStatus = CHDeviceStatus.Registering
+        val serverSecret = mSesameToken.toHexString()
+
+        CHBleSupport.backend.registerOs3(
+            deviceId.toString(),
+            productModel.productType().toString(), serverSecret
+        ) { apiResult ->
+            apiResult.exceptionOrNull()?.let { e ->
+                L.d("hcia", "[ss5][register][server] failed: ${e.message}")
+            }
+
+            sendCommand(
+                SesameOS3Payload(
+                    SesameItemCode.registration.value,
+                    EccKey.getPubK().hexStringToByteArray() + System.currentTimeMillis().toUInt32ByteArray()
+                ),
+                DeviceSegmentType.plain
+            ) { registerRes ->
+                isRegistered = true
+                val ecdhSecretPre16 = EccKey.ecdh(registerRes.payload).sliceArray(0..15)
+                val wm2Key = ecdhSecretPre16.toHexString()
+                val candyDevice = CHDevice(
+                    deviceId.toString(),
+                    advertisement!!.productModel!!.deviceModel(),
+                    null,
+                    "0000",
+                    wm2Key,
+                    serverSecret
+                )
+                sesame2KeyData = candyDevice
+                deviceStatus = CHDeviceStatus.Unlocked
+                val sessionAuth = AesCmac(ecdhSecretPre16, 16).computeMac(mSesameToken)
+                cipher = SesameOS3BleCipher(
+                    "customDeviceName",
+                    sessionAuth!!,
+                    ("00" + mSesameToken.toHexString()).hexStringToByteArray()
+                )
+                ssm2KeysMap.clear()
+
+                CHBleSupport.keys.insert(candyDevice) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+                }
+            }
+        }
+    }
+
+    override fun setBleTxPower(txPower: Byte, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        sendCommand(
+            SesameOS3Payload(
+                SesameItemCode.SSM3_ITEM_CODE_BLE_TX_POWER_SETTING.value,
+                byteArrayOf(txPower)
+            ),
+            DeviceSegmentType.cipher
+        ) {}
+    }
+
+    override fun insertSesame(sesame: CHDevices, result: CHResult<CHEmpty>) {
+        deviceConnectCapability.insertSesame(sesame, result)
+    }
+
+    override fun removeSesame(tag: String, result: CHResult<CHEmpty>) {
+        deviceConnectCapability.removeSesame(tag, result)
+    }
+
+    override fun <T> isBleAvailable(result: CHResult<T>): Boolean {
+        return (this as CHDevices).isBleAvailable(result)
+    }
+
+    override fun sendCommand(payload: SesameOS3Payload, callback: (SSM3ResponsePayload) -> Unit) {
+        super.sendCommand(payload, DeviceSegmentType.cipher, callback)
+    }
+
+    override fun setRadarSensitivity(payload: ByteArray, result: CHResult<CHEmpty>) {
+        deviceConnectCapability.setRadarSensitivity(payload, result)
+    }
+
+}
+
+class ObservableMutableMap<K, V> : MutableMap<K, V> {
+    private val map = mutableMapOf<K, V>()
+    private val _liveData = MutableLiveData<Map<K, V>>(map)
+    val liveData: LiveData<Map<K, V>> = _liveData
+    private val _slotFullLiveData = MutableLiveData<Event<Boolean>>()
+    val slotFullLiveData: LiveData<Event<Boolean>> = _slotFullLiveData
+    private val _supportLiveData = MutableLiveData<Event<Boolean>>()
+    val supportLiveData: LiveData<Event<Boolean>> = _supportLiveData
+
+    fun setSlotFull(isFull: Boolean) {
+        _slotFullLiveData.postValue(Event(isFull))
+    }
+
+    fun setSupport(isSupport: Boolean) {
+        _supportLiveData.postValue(Event(isSupport))
+    }
+
+    override fun put(key: K, value: V): V? {
+        val result = map.put(key, value)
+        _liveData.postValue(HashMap(map))
+        return result
+    }
+
+    override fun clear() {
+        map.clear()
+        _liveData.postValue(HashMap(map))
+    }
+
+    override fun remove(key: K): V? {
+        val result = map.remove(key)
+        _liveData.postValue(HashMap(map))
+        return result
+    }
+
+    override fun putAll(from: Map<out K, V>) {
+        map.putAll(from)
+        _liveData.postValue(HashMap(map))
+    }
+
+    override val size: Int get() = map.size
+    override fun containsKey(key: K) = map.containsKey(key)
+    override fun containsValue(value: V) = map.containsValue(value)
+    override fun get(key: K) = map[key]
+    override fun isEmpty() = map.isEmpty()
+    override val entries get() = map.entries
+    override val keys get() = map.keys
+    override val values get() = map.values
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHAutoInitCapabilityImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHAutoInitCapabilityImpl.kt
new file mode 100644
index 0000000..214b222
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHAutoInitCapabilityImpl.kt
@@ -0,0 +1,52 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale
+
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.L
+
+/**
+ * 自动初始化的能力基类
+ */
+abstract class CHAutoInitCapabilityImpl {
+    // 支持对象
+    protected lateinit var support: CHCapabilitySupport
+    private val tag = this.javaClass.simpleName
+
+    fun setupSupport(support: CHCapabilitySupport) {
+        this.support = support
+    }
+
+    /**
+     * 检查是否已初始化
+     */
+    protected fun isInitialized(): Boolean {
+        return ::support.isInitialized
+    }
+
+    /**
+     * 检查蓝牙可用性
+     */
+    protected fun <T> checkBleAvailability(result: CHResult<T>): Boolean {
+        if (!isInitialized()) {
+            result.invoke(Result.failure(IllegalStateException("Capability not initialized")))
+            L.d(tag, "Error:! checkBleAvailability: Capability not initialized")
+            return false
+        }
+        return support.isBleAvailable(result)
+    }
+
+    /**
+     * 安全发送命令
+     */
+    protected fun <T> sendCommandSafely(
+        payload: SesameOS3Payload,
+        result: CHResult<T>,
+        onSuccess: (SSM3ResponsePayload) -> Unit
+    ) {
+        if (!checkBleAvailability(result)) return
+        support.sendCommand(payload) { response ->
+            onSuccess(response)
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHCapabilityHost.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHCapabilityHost.kt
new file mode 100644
index 0000000..577a1f7
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHCapabilityHost.kt
@@ -0,0 +1,8 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale
+
+/**
+ *
+ *
+ * @author frey on 2026/3/31
+ */
+interface CHCapabilityHost : CHCapabilitySupport, CHEventHandlerHost
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHCapabilitySupport.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHCapabilitySupport.kt
new file mode 100644
index 0000000..8ba9586
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHCapabilitySupport.kt
@@ -0,0 +1,10 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale
+
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHCapabilitySupport {
+    fun sendCommand(payload: SesameOS3Payload, callback: (SSM3ResponsePayload) -> Unit)
+    fun <T> isBleAvailable(result: CHResult<T>): Boolean
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHEventHandler.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHEventHandler.kt
new file mode 100644
index 0000000..2854cbf
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHEventHandler.kt
@@ -0,0 +1,8 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+
+interface CHEventHandler {
+    fun handleEvent(device: CHDevices, payload: SSM3PublishPayload): Boolean
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHEventHandlerHost.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHEventHandlerHost.kt
new file mode 100644
index 0000000..f92943d
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/baseCapbale/CHEventHandlerHost.kt
@@ -0,0 +1,12 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale
+
+/**
+ *
+ *
+ * @author frey on 2026/3/31
+ */
+interface CHEventHandlerHost {
+    fun addEventHandler(handler: CHEventHandler)
+    fun removeEventHandler(handler: CHEventHandler)
+    fun clearEventHandlers()
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardCapable.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardCapable.kt
new file mode 100644
index 0000000..cac842d
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardCapable.kt
@@ -0,0 +1,20 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.card
+
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHCardCapable {
+    fun sendNfcCardsDataGetCmd(deviceUUID: String, result: CHResult<String>)
+    fun cardDelete(cardID: String, result: CHResult<CHEmpty>)
+    fun cardMove(cardId: String, touchProUUID: String, result: CHResult<CHEmpty>)
+    fun cardAdd(id: ByteArray, hexName: String, result: CHResult<CHEmpty>)
+    fun cardBatchAdd(id: ByteArray, progressCallback: ((current: Int, total: Int) -> Unit)? = null, result: CHResult<CHEmpty>)
+    fun cardChange(ID: String, hexName: String, result: CHResult<CHEmpty>)
+    fun cardChangeValue(ID: String, newID: String, result: CHResult<CHEmpty>)
+    fun cardModeGet(result: CHResult<Byte>)
+    fun cardModeSet(mode: Byte, result: CHResult<CHEmpty>)
+
+    fun registerEventDelegate(device: CHCapabilityHost, delegate: CHCardDelegate)
+    fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHCardDelegate)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardCapableImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardCapableImpl.kt
new file mode 100644
index 0000000..8553416
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardCapableImpl.kt
@@ -0,0 +1,201 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.card
+
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.StpItemCode
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHAutoInitCapabilityImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.padEnd
+import co.candyhouse.sesame.utils.toHexString
+import co.candyhouse.sesame.utils.toReverseBytes
+import java.lang.Thread.sleep
+import java.util.concurrent.CountDownLatch
+
+internal open class CHCardCapableImpl() :
+    CHAutoInitCapabilityImpl(),
+    CHCardCapable {
+
+
+    private val eventHandlers = mutableMapOf<CHCardDelegate, CHCardEventHandler>()
+
+
+    override fun sendNfcCardsDataGetCmd(deviceUUID: String, result: CHResult<String>) {
+        sendCommandSafely(
+            SesameOS3Payload(SesameItemCode.SSM_OS3_CARD_GET.value, byteArrayOf()),
+            result
+        ) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE("BLE")))
+            } else {
+                result.invoke(Result.failure(IllegalStateException("Card list rejected: ${res.cmdResultCode}")))
+            }
+        }
+    }
+
+    override fun cardModeGet(result: CHResult<Byte>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_CARD_MODE_GET.value,
+                byteArrayOf()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(res.payload[0])))
+        }
+    }
+
+    override fun cardModeSet(mode: Byte, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_CARD_MODE_SET.value,
+                byteArrayOf(mode)
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun cardDelete(cardID: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_CARD_DELETE.value,
+                cardID.hexStringToByteArray()
+            ), result
+        ) { res ->
+            L.d("hcia", "[cardDelete][ID]" + cardID)
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun cardMove(cardId: String, touchProUUID: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_CARD_MOVE.value,
+                byteArrayOf(cardId.hexStringToByteArray().size.toByte()) + cardId.hexStringToByteArray() + touchProUUID.toByteArray()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun cardAdd(id: ByteArray, hexName: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_CARD_ADD.value,
+                byteArrayOf(0xF0/*CARD_DATA_USED*/.toByte()) + byteArrayOf(0x00/*CARD_TYPE_CLOUD_BASE*/.toByte()) + byteArrayOf(id.size.toByte()) + id.padEnd(
+                    16,
+                    0x00.toByte()
+                ) + byteArrayOf(hexName.toByteArray().size.toByte()) + hexName.toByteArray().padEnd(16, 0x00.toByte())
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun cardBatchAdd(id: ByteArray, progressCallback: ((current: Int, total: Int) -> Unit)?, result: CHResult<CHEmpty>) {
+        Thread {
+            try {
+                val dataSize: Short = id.size.toShort()
+                var dataIndex: Short = 0.toShort()
+                val MAX_PAYLOAD_SIZE = 209
+
+                // 计算总包数(向上取整)
+                val totalPackets = (dataSize + MAX_PAYLOAD_SIZE - 1) / MAX_PAYLOAD_SIZE
+                var currentPacket = 0
+
+                L.d("sf", "totalPackets:$totalPackets dataSize:" + dataSize.toReverseBytes().toHexString())
+
+                while (dataIndex < dataSize) {
+                    currentPacket++
+
+                    // 通知进度
+                    progressCallback?.invoke(currentPacket, totalPackets)
+
+                    val tempList = mutableListOf<Byte>()
+                    tempList.addAll(dataIndex.toReverseBytes().toList())
+                    tempList.addAll(dataSize.toReverseBytes().toList())
+
+                    val remainingSize = dataSize - dataIndex
+                    val chunkSize = minOf(remainingSize, MAX_PAYLOAD_SIZE)
+
+                    tempList.addAll(id.slice(dataIndex until (dataIndex + chunkSize)))
+                    dataIndex = (dataIndex + chunkSize).toShort()
+
+                    val batchData = tempList.toByteArray()
+                    L.d("sf", "Packet $currentPacket/$totalPackets - size: ${batchData.size}")
+
+                    val latch = CountDownLatch(1)
+                    var sendSuccess = false
+
+                    sendCommandSafely(
+                        SesameOS3Payload(StpItemCode.STP_ITEM_CODE_CARDS_ADD.value, batchData),
+                        result
+                    ) {
+                        sendSuccess = true
+                        latch.countDown()
+                    }
+
+                    latch.await()
+
+                    if (!sendSuccess) {
+                        result.invoke(Result.failure(Exception("Failed at index $currentPacket")))
+                        return@Thread
+                    }
+
+                    // 如果还有数据要发送,延迟4秒
+                    if (dataIndex < dataSize) {
+                        sleep(4000)
+                    }
+                }
+
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } catch (e: Exception) {
+                result.invoke(Result.failure(e))
+            }
+        }.start()
+    }
+
+    // 新方案:设备接收 16位的uuid 作为 name
+    override fun cardChange(ID: String, hexName: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_CARD_CHANGE.value,
+                byteArrayOf(ID.hexStringToByteArray().size.toByte()) + ID.hexStringToByteArray() + hexName.chunked(2).map { it.toInt(16).toByte() }.toByteArray()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun cardChangeValue(ID: String, newID: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_CARD_CHANGE_VALUE.value,
+                byteArrayOf(ID.hexStringToByteArray().size.toByte()) + ID.hexStringToByteArray() + newID.toByteArray()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+
+    override fun registerEventDelegate(device: CHCapabilityHost, delegate: CHCardDelegate) {
+        setupSupport(device)
+        val handler = CHCardEventHandler(delegate)
+        eventHandlers[delegate] = handler
+        device.addEventHandler(handler)
+    }
+
+    override fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHCardDelegate) {
+        if (!isInitialized()) return
+        eventHandlers[delegate]?.let { handler ->
+            device.removeEventHandler(handler)
+            eventHandlers.remove(delegate)
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardDelegate.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardDelegate.kt
new file mode 100644
index 0000000..4d8e112
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardDelegate.kt
@@ -0,0 +1,12 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.card
+
+import co.candyhouse.sesame.ble.CHDevices
+
+interface CHCardDelegate {
+    fun onCardReceive(device: CHDevices, cardID: String, hexName: String, type: Byte) {}
+    fun onCardChanged(device: CHDevices, cardID: String, hexName: String, type: Byte) {}
+    fun onCardReceiveEnd(device: CHDevices) {}
+    fun onCardReceiveStart(device: CHDevices) {}
+    fun onCardModeChanged(device: CHDevices, mode: Byte) {}
+    fun onCardDelete(device: CHDevices, cardID: String) {}
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardEventHandlers.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardEventHandlers.kt
new file mode 100644
index 0000000..4f9935a
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/card/CHCardEventHandlers.kt
@@ -0,0 +1,65 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.card
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandler
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchCard
+import co.candyhouse.sesame.utils.L
+
+class CHCardEventHandler(private val delegate: CHCardDelegate?) : CHEventHandler {
+
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun handleEvent(device: CHDevices, payload: SSM3PublishPayload): Boolean {
+        if (delegate == null) return false
+        when (payload.cmdItCode) {
+            SesameItemCode.SSM_OS3_CARD_CHANGE.value -> {
+                val card = CHSesameTouchCard(payload.payload)
+                delegate.onCardChanged(device, card.cardID, card.cardName, card.cardType)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_CARD_NOTIFY.value -> {
+                var cardDataSize = 0
+                var cards = payload.payload
+                var card: CHSesameTouchCard
+                do {
+                    cards = cards.drop(cardDataSize).toByteArray()
+                    if (cards.isEmpty()) break
+                    card = CHSesameTouchCard(cards)
+                    cardDataSize = 1 + 1 + card.idLength + 1 + card.nameLength
+                    delegate.onCardReceive(device, card.cardID, card.cardName, card.cardType)
+                } while ((cards.isNotEmpty()))
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_CARD_FIRST.value -> {
+                delegate.onCardReceiveStart(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_CARD_LAST.value -> {
+                delegate.onCardReceiveEnd(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_CARD_MODE_SET.value -> {
+                L.d("hcia", "SSM_OS3_CARD_MODE_SET : " + payload.payload.toHexString())
+                delegate.onCardModeChanged(device, payload.payload[0])
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_CARD_DELETE.value -> {
+                L.d("hcia", "[0]SSM_OS3_CARD_DELETE : " + payload.payload.toHexString())
+                val cardIDLen = payload.payload[2].toInt()
+                val cardID = payload.payload.sliceArray(3..cardIDLen + 2).toHexString()
+                L.d("hcia", "[1]SSM_OS3_CARD_DELETE : $cardID")
+                delegate.onCardDelete(device, cardID)
+                return true
+            }
+
+            else ->
+                return false
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectCapable.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectCapable.kt
new file mode 100644
index 0000000..5393627
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectCapable.kt
@@ -0,0 +1,11 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.connect
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHDeviceConnectCapable {
+    fun insertSesame(sesame: CHDevices, result: CHResult<CHEmpty>)
+    fun removeSesame(tag: String, result: CHResult<CHEmpty>)
+    fun setRadarSensitivity(payload: ByteArray, result: CHResult<CHEmpty>) {}
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectCapableImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectCapableImpl.kt
new file mode 100644
index 0000000..a1712d3
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectCapableImpl.kt
@@ -0,0 +1,96 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.connect
+
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHSesameConnector
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.base.CHSesameOS3
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilitySupport
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.base64Encode
+import co.candyhouse.sesame.utils.hexStringToByteArray
+
+internal class CHDeviceConnectCapableImpl() : CHDeviceConnectCapable {
+    private var support: CHCapabilitySupport? = null
+    fun setSupport(support: CHCapabilitySupport) {
+        this.support = support
+    }
+
+    override fun insertSesame(sesame: CHDevices, result: CHResult<CHEmpty>) {
+        if (support?.isBleAvailable(result) == false) return
+        L.d("hcia", "送出鑰匙sesame.getKey():" + sesame.getKey())
+        if (sesame is CHSesameOS3) {
+            // SS5/5pro, bike2
+            val ssm = sesame as CHDeviceUtil
+            val noDashUUID = ssm.sesame2KeyData!!.deviceUUID.replace("-", "")
+            val noDashUUIDDATA = noDashUUID.hexStringToByteArray()
+            val ssmSecKa = ssm.sesame2KeyData!!.secretKey.hexStringToByteArray()
+
+            support?.sendCommand(SesameOS3Payload(SesameItemCode.ADD_SESAME.value, noDashUUIDDATA + ssmSecKa)) { ssm2ResponsePayload ->
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        } else {
+            // SS3/4, bot1, bike1
+            val ssm = sesame as CHDeviceUtil
+            val noDashUUID = ssm.sesame2KeyData!!.deviceUUID.replace("-", "")
+            val b64k = noDashUUID.hexStringToByteArray().base64Encode().replace("=", "")
+            val ssmIRData = b64k.toByteArray()
+            val ssmPKData = ssm.sesame2KeyData!!.sesame2PublicKey.hexStringToByteArray()
+            val ssmSecKa = ssm.sesame2KeyData!!.secretKey.hexStringToByteArray()
+            val allKey = ssmIRData + ssmPKData + ssmSecKa
+
+            support?.sendCommand(SesameOS3Payload(SesameItemCode.ADD_SESAME.value, allKey)) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+    }
+
+    override fun removeSesame(tag: String, result: CHResult<CHEmpty>) {
+        if (support?.isBleAvailable(result) == false) return
+
+        // 假设 support 实现了 CHSesameConnector 接口
+        val ssm2KeysMap = (support as? CHSesameConnector)?.ssm2KeysMap ?: run {
+            result.invoke(Result.failure(Exception("Device is not a connector")))
+            return
+        }
+
+        val keysList = ssm2KeysMap[tag]
+        if (keysList == null || keysList.isEmpty()) {
+            result.invoke(Result.failure(Exception("Keys list is null or empty")))
+            return
+        }
+
+        val firstKey = keysList[0] ?: run {
+            result.invoke(Result.failure(Exception("First key is null")))
+            return
+        }
+
+        if (firstKey.toInt() == 0x04) { // ss4
+            val noDashUUID = tag.replace("-", "")
+            val b64k = noDashUUID.hexStringToByteArray().base64Encode().replace("=", "")
+            val ssmIRData = b64k.toByteArray()
+
+            support?.sendCommand(SesameOS3Payload(SesameItemCode.REMOVE_SESAME.value, ssmIRData)) { ssm2ResponsePayload ->
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        } else { // ss5
+            val noDashUUID = tag.replace("-", "")
+
+            support?.sendCommand(SesameOS3Payload(SesameItemCode.REMOVE_SESAME.value, noDashUUID.hexStringToByteArray())) { ssm2ResponsePayload ->
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+    }
+
+    override fun setRadarSensitivity(payload: ByteArray, result: CHResult<CHEmpty>) {
+        L.d("sf", "蓝牙发送雷达灵敏度值:" + payload[1])
+
+        support?.sendCommand(SesameOS3Payload(SesameItemCode.SSM_OS3_RADAR_PARAM_SET.value, payload)) { _ ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectDelegate.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectDelegate.kt
new file mode 100644
index 0000000..eb861b4
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/connect/CHDeviceConnectDelegate.kt
@@ -0,0 +1,7 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.connect
+
+import co.candyhouse.sesame.ble.CHSesameConnector
+
+interface CHDeviceConnectDelegate {
+    fun onSSM2KeysChanged(device: CHSesameConnector, ssm2keys: Map<String, ByteArray>)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceCapable.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceCapable.kt
new file mode 100644
index 0000000..0c299ae
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceCapable.kt
@@ -0,0 +1,16 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.face
+
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHFaceCapable {
+    fun faceModeSet(mode: Byte, result: CHResult<CHEmpty>)
+    fun faceModeGet(result: CHResult<Byte>)
+    fun faceListGet(result: CHResult<CHEmpty>)
+    fun faceDelete(faceID: String, deviceID: String, result: CHResult<CHEmpty>)
+
+    fun registerEventDelegate(device: CHCapabilityHost, delegate: CHFaceDelegate)
+    fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHFaceDelegate)
+
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceCapableImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceCapableImpl.kt
new file mode 100644
index 0000000..57288f0
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceCapableImpl.kt
@@ -0,0 +1,75 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.face
+
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHAutoInitCapabilityImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.hexStringToByteArray
+
+
+internal class CHFaceCapableImpl() :
+    CHAutoInitCapabilityImpl(),
+    CHFaceCapable {
+
+    private val eventHandlers = mutableMapOf<CHFaceDelegate, CHFaceEventHandler>()
+
+    override fun faceModeSet(mode: Byte, result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_FACE_MODE_SET.value, byteArrayOf(mode)), result) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun faceModeGet(result: CHResult<Byte>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_FACE_MODE_GET.value, byteArrayOf()), result) { res ->
+            if (res.payload.isNotEmpty()) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(res.payload[0])))
+                return@sendCommandSafely
+            }
+            result.invoke(Result.failure(Exception("Data Error: ${res.payload.toHexString()}")))
+        }
+    }
+
+    override fun faceListGet(result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_FACE_GET.value, byteArrayOf()), result) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    fun faceChange(ID: String, name: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_FACE_CHANGE.value,
+                byteArrayOf(ID.hexStringToByteArray().size.toByte()) + ID.hexStringToByteArray() + name.chunked(2).map { it.toInt(16).toByte() }.toByteArray()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun faceDelete(faceID: String, deviceID: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_FACE_DELETE.value, byteArrayOf(faceID.toInt(16).toByte())), result) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+
+    override fun registerEventDelegate(device: CHCapabilityHost, delegate: CHFaceDelegate) {
+        setupSupport(device)
+        val handler = CHFaceEventHandler(delegate)
+        eventHandlers[delegate] = handler
+        device.addEventHandler(handler)
+    }
+
+    override fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHFaceDelegate) {
+        if (!isInitialized()) return
+        eventHandlers[delegate]?.let { handler ->
+            device.removeEventHandler(handler)
+            eventHandlers.remove(delegate)
+        }
+    }
+
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceDelegate.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceDelegate.kt
new file mode 100644
index 0000000..6d9ed05
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceDelegate.kt
@@ -0,0 +1,13 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.face
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchFace
+
+interface CHFaceDelegate {
+    fun onFaceModeChanged(device: CHDevices, mode: Byte) {}
+    fun onFaceReceiveStart(device: CHDevices) {}
+    fun onFaceReceive(device: CHDevices, face: CHSesameTouchFace) {}
+    fun onFaceChanged(device: CHDevices, face: CHSesameTouchFace) {}
+    fun onFaceReceiveEnd(device: CHDevices) {}
+    fun onFaceDeleted(device: CHDevices, faceID: Byte, isSuccess: Boolean) {}
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceEventHandlers.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceEventHandlers.kt
new file mode 100644
index 0000000..cf70936
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/face/CHFaceEventHandlers.kt
@@ -0,0 +1,58 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.face
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandler
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchFace
+import co.candyhouse.sesame.utils.L
+
+class CHFaceEventHandler(private val delegate: CHFaceDelegate?) : CHEventHandler {
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun handleEvent(device: CHDevices, payload: SSM3PublishPayload): Boolean {
+        if (delegate == null) return false
+
+        when (payload.cmdItCode) {
+            SesameItemCode.SSM_OS3_FACE_CHANGE.value -> {
+                delegate.onFaceChanged(device, CHSesameTouchFace(payload.payload))
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FACE_NOTIFY.value -> {
+                delegate.onFaceReceive(device, CHSesameTouchFace(payload.payload))
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FACE_FIRST.value -> {
+                delegate.onFaceReceiveStart(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FACE_LAST.value -> {
+                delegate.onFaceReceiveEnd(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FACE_MODE_SET.value -> {
+                L.d("hcia", "SSM_OS3_FACE_MODE_SET : " + payload.payload.toHexString())
+                delegate.onFaceModeChanged(device, payload.payload[0])
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FACE_DELETE.value -> {
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FACE_MODE_DELETE_NOTIFY.value -> {
+                if (payload.payload.size >= 2) {
+                    val faceID = payload.payload[0].toByte()
+                    val isSuccess = payload.payload[1] == 0.toByte()
+                    delegate.onFaceDeleted(device, faceID, isSuccess)
+                }
+                return true
+            }
+
+            else -> return false
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintCapable.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintCapable.kt
new file mode 100644
index 0000000..963d9c5
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintCapable.kt
@@ -0,0 +1,16 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint
+
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHFingerPrintCapable {
+    fun fingerPrints(result: CHResult<CHEmpty>)
+    fun fingerPrintDelete(fingerPrintID: String, deviceId: String, result: CHResult<CHEmpty>)
+    fun fingerPrintsChange(ID: String, hexName: String, result: CHResult<CHEmpty>)
+    fun fingerPrintModeGet(result: CHResult<Byte>)
+    fun fingerPrintModeSet(mode: Byte, result: CHResult<CHEmpty>)
+
+    fun registerEventDelegate(device: CHCapabilityHost, delegate: CHFingerPrintDelegate)
+    fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHFingerPrintDelegate)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintCapableImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintCapableImpl.kt
new file mode 100644
index 0000000..8c15bb5
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintCapableImpl.kt
@@ -0,0 +1,88 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint
+
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHAutoInitCapabilityImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.hexStringToByteArray
+
+internal class CHFingerPrintCapableImpl() :
+    CHAutoInitCapabilityImpl(),
+    CHFingerPrintCapable {
+
+    private val eventHandlers = mutableMapOf<CHFingerPrintDelegate, CHFingerPrintEventHandler>()
+
+    override fun fingerPrintModeGet(result: CHResult<Byte>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_FINGERPRINT_MODE_GET.value,
+                byteArrayOf()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(res.payload[0])))
+        }
+    }
+
+    override fun fingerPrintModeSet(mode: Byte, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_FINGERPRINT_MODE_SET.value,
+                byteArrayOf(mode)
+            ), result
+        ) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun fingerPrintDelete(fingerPrintID: String, deviceId: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_FINGERPRINT_DELETE.value,
+                fingerPrintID.hexStringToByteArray()
+            ), result
+        ) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun fingerPrints(result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_FINGERPRINT_GET.value,
+                byteArrayOf()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun fingerPrintsChange(ID: String, hexName: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_FINGERPRINT_CHANGE.value,
+                byteArrayOf(ID.hexStringToByteArray().size.toByte()) + ID.hexStringToByteArray() + hexName.chunked(2).map { it.toInt(16).toByte() }.toByteArray()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+
+    override fun registerEventDelegate(device: CHCapabilityHost, delegate: CHFingerPrintDelegate) {
+        setupSupport(device)
+        val handler = CHFingerPrintEventHandler(delegate)
+        eventHandlers[delegate] = handler
+        device.addEventHandler(handler)
+    }
+
+    override fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHFingerPrintDelegate) {
+        if (!isInitialized()) return
+        eventHandlers[delegate]?.let { handler ->
+            device.removeEventHandler(handler)
+            eventHandlers.remove(delegate)
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintDelegate.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintDelegate.kt
new file mode 100644
index 0000000..69b8047
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintDelegate.kt
@@ -0,0 +1,12 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint
+
+import co.candyhouse.sesame.ble.CHDevices
+
+interface CHFingerPrintDelegate {
+    fun onFingerPrintReceive(device: CHDevices, ID: String, hexName: String, type: Byte) {}
+    fun onFingerPrintChanged(device: CHDevices, ID: String, hexName: String, type: Byte) {}
+    fun onFingerPrintReceiveEnd(device: CHDevices) {}
+    fun onFingerPrintReceiveStart(device: CHDevices) {}
+    fun onFingerModeChange(device: CHDevices, mode: Byte) {}
+    fun onFingerDelete(device: CHDevices, ID: String) {}
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintEventHandlers.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintEventHandlers.kt
new file mode 100644
index 0000000..84d0656
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/fingerPrint/CHFingerPrintEventHandlers.kt
@@ -0,0 +1,53 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.fingerPrint
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandler
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchCard
+import co.candyhouse.sesame.utils.L
+
+class CHFingerPrintEventHandler(private val delegate: CHFingerPrintDelegate?) : CHEventHandler {
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun handleEvent(device: CHDevices, payload: SSM3PublishPayload): Boolean {
+        if (delegate == null) return false
+
+        when (payload.cmdItCode) {
+            SesameItemCode.SSM_OS3_FINGERPRINT_CHANGE.value -> {
+                val card = CHSesameTouchCard(payload.payload)
+                delegate.onFingerPrintChanged(device, card.cardID, card.cardName, card.cardType)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FINGERPRINT_FIRST.value -> {
+                delegate.onFingerPrintReceiveStart(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FINGERPRINT_LAST.value -> {
+                delegate.onFingerPrintReceiveEnd(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FINGERPRINT_NOTIFY.value -> {
+                val card = CHSesameTouchCard(payload.payload)
+                delegate.onFingerPrintReceive(device, card.cardID, card.cardName, card.cardType)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FINGERPRINT_MODE_SET.value -> {
+                L.d("hcia", "SSM_OS3_FINGERPRINT_MODE_SET : " + payload.payload.toHexString())
+                delegate.onFingerModeChange(device, payload.payload[0])
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_FINGERPRINT_DELETE.value -> {
+                L.d("hcia", "SSM_OS3_FINGERPRINT_DELETE : " + payload.payload.toHexString())
+                delegate.onFingerDelete(device, payload.payload.toHexString())
+                return true
+            }
+
+            else -> return false
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmCapable.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmCapable.kt
new file mode 100644
index 0000000..fb5271b
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmCapable.kt
@@ -0,0 +1,15 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.palm
+
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHPalmCapable {
+    fun palmModeSet(mode: Byte, result: CHResult<CHEmpty>)
+    fun palmModeGet(result: CHResult<Byte>)
+    fun palmListGet(result: CHResult<CHEmpty>)
+    fun palmDelete(palmID: String, deviceId: String, result: CHResult<CHEmpty>)
+
+    fun registerEventDelegate(device: CHCapabilityHost, delegate: CHPalmDelegate)
+    fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHPalmDelegate)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmCapableImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmCapableImpl.kt
new file mode 100644
index 0000000..f0f98b3
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmCapableImpl.kt
@@ -0,0 +1,61 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.palm
+
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHAutoInitCapabilityImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+
+internal class CHPalmCapableImpl() :
+    CHAutoInitCapabilityImpl(),
+    CHPalmCapable {
+
+    private val eventHandlers = mutableMapOf<CHPalmDelegate, CHPalmEventHandler>()
+
+    override fun palmModeSet(mode: Byte, result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_PALM_MODE_SET.value, byteArrayOf(mode)), result) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun palmModeGet(result: CHResult<Byte>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_PALM_MODE_GET.value, byteArrayOf()), result) { res ->
+            if (res.payload.isNotEmpty()) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(res.payload[0])))
+                return@sendCommandSafely
+            }
+            result.invoke(Result.failure(Exception("Data Error: ${res.payload.toHexString()}")))
+        }
+    }
+
+    override fun palmListGet(result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_PALM_GET.value, byteArrayOf()), result) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun palmDelete(palmID: String, deviceId: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_PALM_DELETE.value, byteArrayOf(palmID.toInt(16).toByte())), result) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+
+    override fun registerEventDelegate(device: CHCapabilityHost, delegate: CHPalmDelegate) {
+        setupSupport(device)
+        val handler = CHPalmEventHandler(delegate)
+        eventHandlers[delegate] = handler
+        device.addEventHandler(handler)
+    }
+
+    override fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHPalmDelegate) {
+        if (!isInitialized()) return
+        eventHandlers[delegate]?.let { handler ->
+            device.removeEventHandler(handler)
+            eventHandlers.remove(delegate)
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmDelegate.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmDelegate.kt
new file mode 100644
index 0000000..533a64a
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmDelegate.kt
@@ -0,0 +1,13 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.palm
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchFace
+
+interface CHPalmDelegate {
+    fun onPalmModeChanged(device: CHDevices, mode: Byte) {}
+    fun onPalmReceive(device: CHDevices, tochface: CHSesameTouchFace) {}
+    fun onPalmChanged(device: CHDevices, tochface: CHSesameTouchFace) {}
+    fun onPalmReceiveStart(device: CHDevices) {}
+    fun onPalmReceiveEnd(device: CHDevices) {}
+    fun onPalmDeleted(device: CHDevices, palmID: Byte, isSuccess: Boolean) {}
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmEventHandlers.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmEventHandlers.kt
new file mode 100644
index 0000000..ccdea41
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/palm/CHPalmEventHandlers.kt
@@ -0,0 +1,52 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.palm
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandler
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchFace
+
+class CHPalmEventHandler(private val delegate: CHPalmDelegate?) : CHEventHandler {
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun handleEvent(device: CHDevices, payload: SSM3PublishPayload): Boolean {
+        if (delegate == null) return false
+
+        when (payload.cmdItCode) {
+            SesameItemCode.SSM_OS3_PALM_CHANGE.value -> {
+                delegate.onPalmChanged(device, CHSesameTouchFace(payload.payload))
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PALM_FIRST.value -> {
+                delegate.onPalmReceiveStart(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PALM_NOTIFY.value -> {
+                delegate.onPalmReceive(device, CHSesameTouchFace(payload.payload))
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PALM_LAST.value -> {
+                delegate.onPalmReceiveEnd(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PALM_MODE_SET.value -> {
+                delegate.onPalmModeChanged(device, payload.payload[0])
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PALM_MODE_DELETE_NOTIFY.value -> {
+                if (payload.payload.size >= 2) {
+                    val faceID = payload.payload[0].toByte()
+                    val isSuccess = payload.payload[1] == 0.toByte()
+                    delegate.onPalmDeleted(device, faceID, isSuccess)
+                }
+                return true
+            }
+
+            else -> return false
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeCapable.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeCapable.kt
new file mode 100644
index 0000000..f8ef572
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeCapable.kt
@@ -0,0 +1,19 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.passcode
+
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHPassCodeCapable {
+    fun sendKeyBoardPassCodeDataGetCmd(result: CHResult<CHEmpty>)
+    fun keyBoardPassCodeChange(ID: String, hexName: String, result: CHResult<CHEmpty>)
+    fun keyBoardPassCodeAdd(id: ByteArray, hexName: String, result: CHResult<CHEmpty>)
+    fun keyBoardPassCodeBatchAdd(data: ByteArray, progressCallback: ((current: Int, total: Int) -> Unit)? = null, result: CHResult<CHEmpty>)
+    fun keyBoardPassCodeDelete(keyBoardPassCodeID: String, deviceId: String, result: CHResult<CHEmpty>)
+    fun keyBoardPassCodeMove(keyBoardPassCodeID: String, touchProUUID: String, result: CHResult<CHEmpty>)
+    fun keyBoardPassCodeModeGet(result: CHResult<Byte>)
+    fun keyBoardPassCodeModeSet(mode: Byte, result: CHResult<CHEmpty>)
+
+    fun registerEventDelegate(device: CHCapabilityHost, delegate: CHPassCodeDelegate)
+    fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHPassCodeDelegate)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeCapableImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeCapableImpl.kt
new file mode 100644
index 0000000..58a96ee
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeCapableImpl.kt
@@ -0,0 +1,169 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.passcode
+
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.StpItemCode
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHAutoInitCapabilityImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.padEnd
+import co.candyhouse.sesame.utils.toHexString
+import co.candyhouse.sesame.utils.toReverseBytes
+import java.lang.Thread.sleep
+import java.util.concurrent.CountDownLatch
+
+internal open class CHPassCodeCapableImpl() :
+    CHAutoInitCapabilityImpl(),
+    CHPassCodeCapable {
+
+    private val eventHandlers = mutableMapOf<CHPassCodeDelegate, CHPassCodeEventHandler>()
+
+    override fun keyBoardPassCodeModeGet(result: CHResult<Byte>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_PASSCODE_MODE_GET.value, byteArrayOf()), result) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(res.payload[0])))
+        }
+    }
+
+    override fun keyBoardPassCodeModeSet(mode: Byte, result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_PASSCODE_MODE_SET.value, byteArrayOf(mode)), result) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun keyBoardPassCodeAdd(id: ByteArray, hexName: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_PASSCODE_ADD.value,
+                byteArrayOf(0xF0/*KB_DATA_USED*/.toByte()) + byteArrayOf(0x00/*KB_TYPE_CLOUD*/.toByte()) + byteArrayOf(id.size.toByte()) + id.padEnd(
+                    16,
+                    0x00.toByte()
+                ) + byteArrayOf(hexName.toByteArray().size.toByte()) + hexName.toByteArray().padEnd(16, 0x00.toByte())
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun keyBoardPassCodeBatchAdd(data: ByteArray, progressCallback: ((current: Int, total: Int) -> Unit)?, result: CHResult<CHEmpty>) {
+        Thread {
+            try {
+                val dataSize: Short = data.size.toShort()
+                var dataIndex: Short = 0.toShort()
+                val MAX_PAYLOAD_SIZE = 209
+
+                // 计算总包数(向上取整)
+                val totalPackets = (dataSize + MAX_PAYLOAD_SIZE - 1) / MAX_PAYLOAD_SIZE
+                var currentPacket = 0
+
+                L.d("sf", "totalPackets:$totalPackets dataSize:" + dataSize.toReverseBytes().toHexString())
+
+                while (dataIndex < dataSize) {
+                    currentPacket++
+
+                    // 通知进度
+                    progressCallback?.invoke(currentPacket, totalPackets)
+
+                    val tempList = mutableListOf<Byte>()
+                    tempList.addAll(dataIndex.toReverseBytes().toList())
+                    tempList.addAll(dataSize.toReverseBytes().toList())
+
+                    val remainingSize = dataSize - dataIndex
+                    val chunkSize = minOf(remainingSize, MAX_PAYLOAD_SIZE)
+
+                    tempList.addAll(data.slice(dataIndex until (dataIndex + chunkSize)))
+                    dataIndex = (dataIndex + chunkSize).toShort()
+
+                    val batchData = tempList.toByteArray()
+                    L.d("sf", "Packet $currentPacket/$totalPackets - size: ${batchData.size}")
+
+                    val latch = CountDownLatch(1)
+                    var sendSuccess = false
+
+                    sendCommandSafely(
+                        SesameOS3Payload(StpItemCode.STP_ITEM_CODE_PASSCODES_ADD.value, batchData),
+                        result
+                    ) {
+                        sendSuccess = true
+                        latch.countDown()
+                    }
+
+                    latch.await()
+
+                    if (!sendSuccess) {
+                        result.invoke(Result.failure(Exception("Failed at index $currentPacket")))
+                        return@Thread
+                    }
+
+                    // 如果还有数据要发送,延迟4秒
+                    if (dataIndex < dataSize) {
+                        sleep(4000)
+                    }
+                }
+
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } catch (e: Exception) {
+                result.invoke(Result.failure(e))
+            }
+        }.start()
+    }
+
+    override fun keyBoardPassCodeDelete(keyBoardPassCodeID: String, deviceId: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_PASSCODE_DELETE.value, keyBoardPassCodeID.hexStringToByteArray()), result) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun keyBoardPassCodeMove(cardId: String, touchProUUID: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_PASSCODE_MOVE.value,
+                byteArrayOf(cardId.hexStringToByteArray().size.toByte()) + cardId.hexStringToByteArray() + touchProUUID.toByteArray()
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun keyBoardPassCodeChange(ID: String, hexName: String, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.SSM_OS3_PASSCODE_CHANGE.value,
+                byteArrayOf(ID.hexStringToByteArray().size.toByte()) + ID.hexStringToByteArray() + hexName.chunked(2).map { it.toInt(16).toByte() }.toByteArray()
+            ),
+            result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun sendKeyBoardPassCodeDataGetCmd(result: CHResult<CHEmpty>) {
+        sendCommandSafely(SesameOS3Payload(SesameItemCode.SSM_OS3_PASSCODE_GET.value, byteArrayOf()), result) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(IllegalStateException("Passcode list rejected: ${res.cmdResultCode}")))
+            }
+        }
+    }
+
+
+    override fun registerEventDelegate(device: CHCapabilityHost, delegate: CHPassCodeDelegate) {
+        setupSupport(device)
+        val handler = CHPassCodeEventHandler(delegate)
+        eventHandlers[delegate] = handler
+        device.addEventHandler(handler)
+    }
+
+    override fun unregisterEventDelegate(device: CHCapabilityHost, delegate: CHPassCodeDelegate) {
+        if (!isInitialized()) return
+        eventHandlers[delegate]?.let { handler ->
+            device.removeEventHandler(handler)
+            eventHandlers.remove(delegate)
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeDelegate.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeDelegate.kt
new file mode 100644
index 0000000..21b4ced
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeDelegate.kt
@@ -0,0 +1,12 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.passcode
+
+import co.candyhouse.sesame.ble.CHDevices
+
+interface CHPassCodeDelegate {
+    fun onKeyBoardReceive(device: CHDevices, ID: String, hexName: String, type: Byte) {}
+    fun onKeyBoardChanged(device: CHDevices, ID: String, hexName: String, type: Byte) {}
+    fun onKeyBoardReceiveEnd(device: CHDevices) {}
+    fun onKeyBoardReceiveStart(device: CHDevices) {}
+    fun onKeyBoardModeChange(device: CHDevices, mode: Byte) {}
+    fun onKeyBoardDelete(device: CHDevices, ID: String) {}
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeEventHandlers.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeEventHandlers.kt
new file mode 100644
index 0000000..3cd4453
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/passcode/CHPassCodeEventHandlers.kt
@@ -0,0 +1,64 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.passcode
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandler
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHSesameTouchCard
+import co.candyhouse.sesame.utils.L
+
+class CHPassCodeEventHandler(private val delegate: CHPassCodeDelegate?) : CHEventHandler {
+    @OptIn(ExperimentalStdlibApi::class)
+    override fun handleEvent(device: CHDevices, payload: SSM3PublishPayload): Boolean {
+        if (delegate == null) return false
+
+        when (payload.cmdItCode) {
+            SesameItemCode.SSM_OS3_PASSCODE_CHANGE.value -> {
+                val card = CHSesameTouchCard(payload.payload)
+                delegate.onKeyBoardChanged(device, card.cardID, card.cardName, card.cardType)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PASSCODE_NOTIFY.value -> {
+                var cardDataSize = 0
+                var cards = payload.payload
+                var card: CHSesameTouchCard
+                do {
+                    cards = cards.drop(cardDataSize).toByteArray()
+                    if (cards.isEmpty()) break
+                    card = CHSesameTouchCard(cards)
+                    cardDataSize = 1 + 1 + card.idLength + 1 + card.nameLength
+                    delegate.onKeyBoardReceive(device, card.cardID, card.cardName, card.cardType)
+                } while ((cards.isNotEmpty()))
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PASSCODE_FIRST.value -> {
+                delegate.onKeyBoardReceiveStart(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PASSCODE_LAST.value -> {
+                delegate.onKeyBoardReceiveEnd(device)
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PASSCODE_MODE_SET.value -> {
+                L.d("hcia", "SSM_OS3_PASSCODE_MODE_SET : " + payload.payload.toHexString())
+                delegate.onKeyBoardModeChange(device, payload.payload[0])
+                return true
+            }
+
+            SesameItemCode.SSM_OS3_PASSCODE_DELETE.value -> {
+                L.d("hcia", "[0]SSM_OS3_PASSCODE_DELETE : " + payload.payload.toHexString())
+                val pwdIDLen = payload.payload[2].toInt()
+                val pwdID = payload.payload.sliceArray(3..pwdIDLen + 2).toHexString()
+                L.d("hcia", "[1]SSM_OS3_PASSCODE_DELETE : $pwdID")
+                delegate.onKeyBoardDelete(device, pwdID)
+                return true
+            }
+
+            else -> return false
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoCapable.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoCapable.kt
new file mode 100644
index 0000000..b2b4168
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoCapable.kt
@@ -0,0 +1,12 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.remoteNano
+
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHRemoteNanoCapable {
+    fun setTriggerDelayTime(time: UByte, result: CHResult<CHEmpty>)
+
+    fun registerEventDelegate(device: CHCapabilityHost, delegate: CHRemoteNanoDelegate)
+    fun unregisterEventDelegate(delegate: CHRemoteNanoDelegate)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoCapableImpl.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoCapableImpl.kt
new file mode 100644
index 0000000..aaeee5d
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoCapableImpl.kt
@@ -0,0 +1,49 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.remoteNano
+
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHAutoInitCapabilityImpl
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHCapabilityHost
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandlerHost
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+
+internal class CHRemoteNanoCapableImpl() :
+    CHAutoInitCapabilityImpl(),
+    CHRemoteNanoCapable {
+
+    private val eventHandlers = mutableMapOf<CHRemoteNanoDelegate, CHRemoteNanoEventHandler>()
+
+
+    override fun setTriggerDelayTime(time: UByte, result: CHResult<CHEmpty>) {
+        sendCommandSafely(
+            SesameOS3Payload(
+                SesameItemCode.REMOTE_NANO_ITEM_CODE_SET_TRIGGER_DELAYTIME.value,
+                byteArrayOf(time.toByte())
+            ), result
+        ) { res ->
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun registerEventDelegate(
+        device: CHCapabilityHost,
+        delegate: CHRemoteNanoDelegate
+    ) {
+        setupSupport(device)
+        val handler = CHRemoteNanoEventHandler(delegate)
+        eventHandlers[delegate] = handler
+        device.addEventHandler(handler)
+    }
+
+    override fun unregisterEventDelegate(delegate: CHRemoteNanoDelegate) {
+        if (!isInitialized()) return
+        val device = support as? CHEventHandlerHost ?: return
+        eventHandlers[delegate]?.let { handler ->
+            device.removeEventHandler(handler)
+            eventHandlers.remove(delegate)
+        }
+    }
+
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoDelegate.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoDelegate.kt
new file mode 100644
index 0000000..a7cc222
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoDelegate.kt
@@ -0,0 +1,11 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.remoteNano
+
+import co.candyhouse.sesame.ble.CHSesameConnector
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHRemoteNanoTriggerSettings
+
+interface CHRemoteNanoDelegate {
+    fun onTriggerDelaySecondReceived(
+        device: CHSesameConnector,
+        setting: CHRemoteNanoTriggerSettings
+    )
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoEventHandler.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoEventHandler.kt
new file mode 100644
index 0000000..97d5a98
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/capability/remoteNano/CHRemoteNanoEventHandler.kt
@@ -0,0 +1,26 @@
+package co.candyhouse.sesame.ble.os3.biometric.capability.remoteNano
+
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.os3.biometric.CHSesameBiometricDevice
+import co.candyhouse.sesame.ble.os3.biometric.capability.baseCapbale.CHEventHandler
+import co.candyhouse.sesame.ble.os3.biometric.isRemote
+import co.candyhouse.sesame.ble.os3.biometric.parseData.CHRemoteNanoTriggerSettings
+
+class CHRemoteNanoEventHandler(private val delegate: CHRemoteNanoDelegate?) : CHEventHandler {
+    override fun handleEvent(device: CHDevices, payload: SSM3PublishPayload): Boolean {
+        if (delegate == null) return false
+
+        if (payload.cmdItCode == SesameItemCode.REMOTE_NANO_ITEM_CODE_PUB_TRIGGER_DELAYTIME.value) {
+            val triggerDelaySetting = CHRemoteNanoTriggerSettings.fromData(payload.payload)
+            if (device.isRemote()) {
+                (device as CHSesameBiometricDevice).triggerDelaySetting = triggerDelaySetting
+                triggerDelaySetting?.let { delegate.onTriggerDelaySecondReceived(device, it) }
+            }
+            return true
+        } else {
+            return false
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/parseData/CHSesameBiometricParseData.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/parseData/CHSesameBiometricParseData.kt
new file mode 100644
index 0000000..b90bff4
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/biometric/parseData/CHSesameBiometricParseData.kt
@@ -0,0 +1,105 @@
+package co.candyhouse.sesame.ble.os3.biometric.parseData
+
+import co.candyhouse.sesame.ble.CHSesameProtocolMechStatus
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.noHashtoUUID
+import com.google.gson.Gson
+import java.nio.ByteBuffer
+import java.nio.ByteOrder
+
+class CHSesameTouchCard(data: ByteArray) {
+    val cardType = data[0]
+    val idLength = data[1]
+    val cardID = data.sliceArray(2..idLength + 1).toHexString()
+    private val nameIndex = idLength + 2
+    val nameLength = data[nameIndex]
+    val cardName = (data.sliceArray(nameIndex + 1..nameIndex + nameLength)).toHexString()
+}
+
+class CHSesameTouchFace {
+    val type: Byte
+    val idLength: Byte
+    val id: String
+    private val nameIndex: Int
+    val nameLength: Byte
+    var nameUUID: String
+    var name: String
+
+    constructor(data: ByteArray) {
+        this.type = data[0]
+        this.idLength = data[1]
+        this.id = data.sliceArray(2..idLength + 1).toHexString()
+        this.nameIndex = idLength + 2
+        this.nameLength = data[nameIndex]
+        this.nameUUID = (data.sliceArray(nameIndex + 1..nameIndex + nameLength)).toHexString().noHashtoUUID().toString()
+        this.name = ""
+    }
+
+    constructor(id: String, name: String, type: Byte, nameUUID: String) {
+        this.type = type
+        this.id = id
+        this.idLength = id.hexStringToByteArray().size.toByte()
+        this.name = name
+        this.nameUUID = nameUUID
+        this.nameLength = getNameLength(nameUUID)
+        this.nameIndex = idLength + 2
+    }
+
+    private fun getNameLength(nameUUID: String): Byte {
+        return try {
+            // 尝试作为十六进制字符串处理
+            nameUUID.replace("-", "").hexStringToByteArray().size.toByte()
+        } catch (e: NumberFormatException) {
+            // 如果不是有效的十六进制字符串,则使用UTF-8编码的字节长度
+            nameUUID.toByteArray(Charsets.UTF_8).size.toByte()
+        }
+    }
+}
+
+data class CHRemoteNanoTriggerSettings(
+    var triggerDelaySecond: UByte
+) {
+    companion object {
+        fun fromData(buf: ByteArray): CHRemoteNanoTriggerSettings? {
+            val content = buf.copyOf()
+            return ByteBuffer.wrap(content)
+                .order(ByteOrder.LITTLE_ENDIAN)
+                .let {
+                    CHRemoteNanoTriggerSettings(
+                        triggerDelaySecond = it.get().toUByte()
+                    )
+                }
+        }
+    }
+}
+
+class CHSesameTouchProMechStatus(override val data: ByteArray) : CHSesameProtocolMechStatus {}
+
+/** Open sensor */
+class CHSesameOpenSensorMechStatus(openSensorData: OpenSensorData) : CHSesameProtocolMechStatus {
+    override val data: ByteArray = openSensorData.toByteArray()
+    private val battery: Short? = openSensorData.Battery
+    private val lightLoadBatteryVoltage: Short? = openSensorData.lightLoadBatteryVoltage_mV
+    private val heavyLoadBatteryVoltage: Short? = openSensorData.heavyLoadBatteryVoltage_mV
+}
+
+data class OpenSensorData(
+    val Status: String,
+    val TimeStamp: Long,
+    val Battery: Short?,
+    val lightLoadBatteryVoltage_mV: Short?,
+    val heavyLoadBatteryVoltage_mV: Short?,
+) {
+    fun toByteArray(): ByteArray {
+        val gson = Gson()
+        return gson.toJson(this).toByteArray(Charsets.UTF_8)
+    }
+
+    companion object {
+        fun fromByteArray(byteArray: ByteArray): OpenSensorData {
+            val gson = Gson()
+            val jsonString = String(byteArray, Charsets.UTF_8)
+            return gson.fromJson(jsonString, OpenSensorData::class.java)
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bot2/CHSesameBot2.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bot2/CHSesameBot2.kt
new file mode 100644
index 0000000..6995abe
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bot2/CHSesameBot2.kt
@@ -0,0 +1,127 @@
+package co.candyhouse.sesame.ble.os3.bot2
+
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.CHSesameProtocolMechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+/**
+ * 动作类型:正传、反转、停止(无惯性)、睡眠(有惯性)
+ */
+enum class BotActionType(val value: UByte) {
+    FORWARD(0u),
+    REVERSE(1u),
+    STOP(2u),
+    SLEEP(3u);
+
+    companion object {
+        fun fromValue(value: UByte): BotActionType? = values().find { it.value == value }
+    }
+}
+
+/**
+ * 脚本动作,最多可以有20个
+ */
+data class Bot2Action(
+    val action: BotActionType,
+    val time: UByte
+)
+
+/**
+ * 结构体转 ByteArray
+ */
+fun Bot2Action.toByteArray(): ByteArray {
+    return byteArrayOf(action.value.toByte(), time.toByte())
+}
+
+/**
+ * 脚本结构
+ */
+data class CHSesamebot2Event(
+    var nameLength: UByte,
+    val name: ByteArray,
+    var actionLength: UByte? = null,
+    var actions: List<Bot2Action>? = null
+) {
+    companion object {
+        fun fromByteArray(buf: ByteArray): CHSesamebot2Event? {
+            var cursor = 0
+            val nameLength = buf[cursor].toUByte()
+            if (nameLength < 1u) return null
+            cursor++
+            val name = buf.copyOfRange(cursor, cursor + nameLength.toInt())
+            cursor += 20
+            val event = CHSesamebot2Event(nameLength, name)
+            val actionLength = buf[cursor].toUByte()
+            if (actionLength == 0u.toUByte()) return event
+            val actions = mutableListOf<Bot2Action>()
+            while (cursor < buf.size - 1) {
+                cursor++
+                val action = BotActionType.fromValue(buf[cursor].toUByte())
+                cursor++
+                val time = buf[cursor].toUByte()
+                actions.add(Bot2Action(action!!, time))
+            }
+            event.actionLength = actionLength
+            event.actions = actions
+            return event
+        }
+    }
+
+    fun toByteArray(): ByteArray {
+        val result = mutableListOf<Byte>()
+        result.add(nameLength.toByte())
+        val nameData = name + ByteArray(20 - name.size)
+        result.addAll(nameData.toList())
+        result.add(actionLength!!.toByte())
+        actions?.forEach { action ->
+            result.addAll(action.toByteArray().toList())
+        }
+        return result.toByteArray()
+    }
+}
+
+/**
+ * 脚本列表结构(action 只包含 name、nameLength)
+ */
+data class CHSesamebot2Status(
+    var curIdx: UByte,
+    val eventLength: UByte,
+    val events: List<CHSesamebot2Event>
+) {
+    companion object {
+        fun fromByteArray(buf: ByteArray): CHSesamebot2Status? {
+            var cursor = 0
+            val curIdx = buf[cursor].toUByte()
+            cursor++
+            val eventLength = buf[cursor].toUByte()
+            if (curIdx >= eventLength) return null
+            cursor++
+            val events = mutableListOf<CHSesamebot2Event>()
+            repeat(eventLength.toInt()) {
+                val nameLength = maxOf(buf[cursor].toUByte(), 1u.toUByte())
+                cursor++
+                val name = buf.copyOfRange(cursor, cursor + nameLength.toInt())
+                events.add(CHSesamebot2Event(nameLength, name))
+                cursor += 20
+            }
+            return CHSesamebot2Status(curIdx, eventLength, events)
+        }
+    }
+}
+
+interface CHSesameBot2 : CHSesameLock {
+    var scripts: CHSesamebot2Status
+    fun click(index: UByte? = null, historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun sendClickScript(index: UByte, script: ByteArray, result: CHResult<CHEmpty>)
+    fun selectScript(index: UByte, result: CHResult<CHEmpty>)
+    fun getCurrentScript(index: UByte?, result: CHResult<CHSesamebot2Event>)
+    fun getScriptNameList(result: CHResult<CHSesamebot2Status>)
+    fun onHistoryReceived(historyData: ByteArray) {}
+}
+
+class CHSesameBot2MechStatus(override val data: ByteArray) : CHSesameProtocolMechStatus {
+    private val flags = data[2].toInt()
+    override var isInLockRange: Boolean = flags and 2 > 0
+    override var isStop: Boolean? = flags and 4 > 0
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bot2/CHSesameBot2Device.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bot2/CHSesameBot2Device.kt
new file mode 100644
index 0000000..2729bc3
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/bot2/CHSesameBot2Device.kt
@@ -0,0 +1,216 @@
+package co.candyhouse.sesame.ble.os3.bot2
+
+import android.annotation.SuppressLint
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.historyTagBLE
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os3.base.CHSesameOS3LockBase
+import co.candyhouse.sesame.ble.os3.base.SesameOS3BleCipher
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.sesame5.CHSesame5MechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.toHexString
+
+@SuppressLint("MissingPermission")
+internal class CHSesameBot2Device : CHSesameOS3LockBase(), CHSesameBot2 {
+
+    override var scripts: CHSesamebot2Status =
+        CHSesamebot2Status(curIdx = 0u, eventLength = 0u, events = emptyList())
+
+    private val scriptNameListLock = Any()
+    private var scriptNameListInFlight = false
+    private val pendingScriptNameListResults = mutableListOf<CHResult<CHSesamebot2Status>>()
+
+    override fun click(index: UByte?, historytag: ByteArray?, result: CHResult<CHEmpty>) {
+        L.d("hcia", "[bot2]click[index:$index]")
+        var itemCode = SesameItemCode.click
+        if (index != null) {
+            itemCode = SesameItemCode.values().find {
+                it.value == (SesameItemCode.BOT2_ITEM_CODE_RUN_SCRIPT_0.value + index).toUByte()
+            } ?: SesameItemCode.click
+        }
+
+
+        if (!isBleAvailable(result)) return
+
+        sendCommand(
+            SesameOS3Payload(itemCode.value, historyTagBLE(historytag)),
+            DeviceSegmentType.cipher
+        ) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun sendClickScript(index: UByte, script: ByteArray, result: CHResult<CHEmpty>) {
+        L.d("hcia", "[bot2]combinedData:$index ${script.toList()}")
+        if (!isBleAvailable(result)) return
+
+        val sendData = byteArrayOf(index.toByte()) + script
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.BOT2_ITEM_CODE_EDIT_SCRIPT.value, sendData),
+            DeviceSegmentType.cipher
+        ) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun selectScript(index: UByte, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        L.d("selectScript", "[bot2]select[index:$index]")
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.SCRIPT_SELECT.value, byteArrayOf(index.toByte())),
+            DeviceSegmentType.cipher
+        ) {
+            result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+        }
+    }
+
+    override fun getCurrentScript(index: UByte?, result: CHResult<CHSesamebot2Event>) {
+        L.d("hcia", "[send]getNowScript")
+        if (!isBleAvailable(result)) return
+
+        val idx = index?.let { byteArrayOf(it.toByte()) } ?: byteArrayOf()
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.SCRIPT_CURRENT.value, idx),
+            DeviceSegmentType.cipher
+        ) { res ->
+            L.d("hcia", "result${res.payload.toList()}")
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                val resp = CHSesamebot2Event.fromByteArray(res.payload)
+                if (resp != null) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(resp)))
+                } else {
+                    result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun getScriptNameList(result: CHResult<CHSesamebot2Status>) {
+        L.d("getScriptNameList", "[send]getScriptNameList")
+        if (!isBleAvailable(result)) {
+            result.invoke(Result.failure(NSError("ble_unavailable", "SCRIPT_NAME_LIST", -2)))
+            return
+        }
+
+        synchronized(scriptNameListLock) {
+            pendingScriptNameListResults.add(result)
+            if (scriptNameListInFlight) {
+                L.d("getScriptNameList", "getScriptNameList merged (inFlight)")
+                return
+            }
+            scriptNameListInFlight = true
+        }
+
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.SCRIPT_NAME_LIST.value, byteArrayOf()),
+            DeviceSegmentType.cipher
+        ) { res ->
+            val callbacks: List<CHResult<CHSesamebot2Status>> = synchronized(scriptNameListLock) {
+                scriptNameListInFlight = false
+                val copy = pendingScriptNameListResults.toList()
+                pendingScriptNameListResults.clear()
+                copy
+            }
+
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                val payload = res.payload
+                L.d("getScriptNameList", "SCRIPT_NAME_LIST payload=${payload.toHexString()}")
+                val status = CHSesamebot2Status.fromByteArray(payload)
+                if (status != null) {
+                    scripts = status
+                    callbacks.forEach { cb ->
+                        cb.invoke(Result.success(CHResultState.CHResultStateBLE(status)))
+                    }
+                } else {
+                    callbacks.forEach { cb ->
+                        cb.invoke(Result.failure(NSError("parse_failed", "SCRIPT_NAME_LIST", -1)))
+                    }
+                }
+            } else {
+                callbacks.forEach { cb ->
+                    cb.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            }
+        }
+    }
+
+    override fun onHistoryReceived(historyData: ByteArray) {}
+
+    override fun onHistoryReceivedInternal(historyData: ByteArray) {
+        onHistoryReceived(historyData)
+    }
+
+    override fun handleRegisterResponse(
+        registerRes: SSM3ResponsePayload,
+        serverSecret: String,
+        result: CHResult<CHEmpty>
+    ) {
+        try {
+            val eccPublicKeyFromSS5 = registerRes.payload.sliceArray(13..76)
+            val ecdhSecret = EccKey.ecdh(eccPublicKeyFromSS5)
+
+            mechStatus = CHSesame5MechStatus(registerRes.payload.sliceArray(0..6))
+
+            val deviceSecret = ecdhSecret.sliceArray(0..15).toHexString()
+            saveDeviceAndCipher(deviceSecret, serverSecret, result)
+            deviceStatus = if (mechStatus?.isInLockRange == true) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+        } catch (e: Exception) {
+            mechStatus = CHSesameBot2MechStatus(registerRes.payload.sliceArray(0..2))
+            deviceStatus = if (mechStatus?.isInLockRange == true) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+
+            val ecdhSecretPre16 = EccKey.ecdh(registerRes.payload.sliceArray(3..66)).sliceArray(0..15)
+            sesame2KeyData = CHDevice(
+                deviceId.toString(),
+                productModel.deviceModel(),
+                null,
+                "0000",
+                ecdhSecretPre16.toHexString(),
+                serverSecret
+            )
+            cipher = SesameOS3BleCipher(
+                "customDeviceName",
+                AesCmac(ecdhSecretPre16, 16).computeMac(mSesameToken)!!,
+                ("00" + mSesameToken.toHexString()).hexStringToByteArray()
+            )
+            CHBleSupport.keys.insert(sesame2KeyData!!) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+    }
+
+    override fun handleDevicePublish(receivePayload: SSM3PublishPayload) {
+        L.d("harry", "onGattSesamePublish: ${receivePayload.cmdItCode} payload: ${receivePayload.payload.toHexString()}")
+
+        when (receivePayload.cmdItCode) {
+            SesameItemCode.mechStatus.value -> {
+                L.d("harry", "[bot2]mechStatus【size: ${receivePayload.payload.size}】: ${receivePayload.payload.toHexString()}")
+                mechStatus = when (receivePayload.payload.size) {
+                    7 -> CHSesame5MechStatus(receivePayload.payload)
+                    3 -> CHSesameBot2MechStatus(receivePayload.payload)
+                    else -> mechStatus
+                }
+                if (mechStatus != null) {
+                    deviceStatus = if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+                    reportBatteryData(receivePayload.payload.sliceArray(0..1).toHexString())
+                }
+            }
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/hub3/CHHub3.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/hub3/CHHub3.kt
new file mode 100644
index 0000000..a395f99
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/hub3/CHHub3.kt
@@ -0,0 +1,16 @@
+package co.candyhouse.sesame.ble.os3.hub3
+
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2Delegate
+
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHHub3Delegate : CHWifiModule2Delegate {
+    fun onWifiScanStarted(device: CHHub3) {}
+    fun onWifiScanFinished(device: CHHub3) {}
+}
+
+interface CHHub3 : CHWifiModule2 {
+    fun <T> isBleAvailable(result: CHResult<T>): Boolean
+    val isRelayOn: Boolean
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/hub3/CHHub3Device.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/hub3/CHHub3Device.kt
new file mode 100644
index 0000000..fe39a41
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/hub3/CHHub3Device.kt
@@ -0,0 +1,248 @@
+package co.candyhouse.sesame.ble.os3.hub3
+
+import android.annotation.SuppressLint
+import android.bluetooth.BluetoothDevice
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHadv
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os3.base.CHSesameOS3
+import co.candyhouse.sesame.ble.os3.base.SesameOS3BleCipher
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2Delegate
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2MechSettings
+import co.candyhouse.sesame.ble.os3.wm2.CHWifiModule2NetWorkStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.bytesToShort
+import co.candyhouse.sesame.utils.divideArray
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.noHashtoUUID
+import co.candyhouse.sesame.utils.toHexString
+import co.candyhouse.sesame.utils.toUInt32ByteArray
+import kotlin.experimental.and
+
+@Suppress("DEPRECATION")
+@SuppressLint("MissingPermission")
+internal class CHHub3Device : CHSesameOS3(), CHHub3, CHDeviceUtil {
+    @Volatile
+    override var isRelayOn: Boolean = false
+        set(value) {
+            if (field != value) {
+                field = value
+                (this as? CHDevices)?.let { delegate?.onMechStatus(it) }
+            }
+        }
+    override var mechSetting: CHWifiModule2MechSettings? = CHWifiModule2MechSettings(null, null)
+        set(value) {
+            if (field != value) {
+                field = value
+            }
+        }
+
+    /** 其他功能: connector */
+    override var ssm2KeysMap: MutableMap<String, String> = mutableMapOf()
+
+    /** 設備廣播 */
+    override var advertisement: CHadv? = null
+        set(value) {
+            field = value
+            parceADV(value)
+        }
+
+
+    /** 指令發送 */
+    override fun login(token: String?) {
+        deviceStatus = CHDeviceStatus.BleLogining
+        val sessionAuth: ByteArray? = if (isNeedAuthFromServer == true) {
+            token?.hexStringToByteArray()
+        } else {
+            AesCmac(sesame2KeyData!!.secretKey.hexStringToByteArray(), 16).computeMac(mSesameToken)
+        }
+        cipher = SesameOS3BleCipher("customDeviceName", sessionAuth!!, ("00" + mSesameToken.toHexString()).hexStringToByteArray())
+        sendCommand(SesameOS3Payload(SesameItemCode.login.value, sessionAuth!!.sliceArray(0..3)), DeviceSegmentType.plain) { res ->
+            deviceStatus = CHDeviceStatus.Unlocked
+        }
+    }
+
+    override fun register(result: CHResult<CHEmpty>) {
+        if (deviceStatus != CHDeviceStatus.ReadyToRegister) {
+            result.invoke(Result.failure(NSError("Busy", "CBCentralManager", 7)))
+            return
+        }
+        deviceStatus = CHDeviceStatus.Registering
+        val serverSecret = mSesameToken.toHexString()
+        CHBleSupport.backend.registerOs3(
+            deviceId.toString(),
+            productModel.productType().toString(), serverSecret
+        ) { apiResult ->
+            apiResult.exceptionOrNull()?.let { e ->
+                L.d("hcia", "[ss5][register][server] failed: ${e.message}")
+            }
+            sendCommand(
+                SesameOS3Payload(
+                    SesameItemCode.registration.value,
+                    EccKey.getPubK().hexStringToByteArray() + System.currentTimeMillis().toUInt32ByteArray()
+                ), DeviceSegmentType.plain
+            ) { IRRes ->
+                isRegistered = true
+                val ecdhSecretPre16 = EccKey.ecdh(IRRes.payload).sliceArray(0..15)
+                val wm2Key = ecdhSecretPre16.toHexString()
+                val candyDevice = CHDevice(deviceId.toString(), advertisement!!.productModel!!.deviceModel(), null, "0000", wm2Key, serverSecret)
+                sesame2KeyData = candyDevice
+                deviceStatus = CHDeviceStatus.NoSettings
+                val sessionAuth = AesCmac(ecdhSecretPre16, 16).computeMac(mSesameToken)
+                cipher = SesameOS3BleCipher("customDeviceName", sessionAuth!!, ("00" + mSesameToken.toHexString()).hexStringToByteArray())
+                ssm2KeysMap.clear()
+
+                CHBleSupport.keys.insert(candyDevice) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+                }
+            }
+        }
+    }
+
+    override fun updateFirmwareBleOnly(onResponse: CHResult<BluetoothDevice>) {
+        val result: CHResult<CHEmpty> = { }
+        if (!isBleAvailable(result)) {
+            onResponse.invoke(Result.failure(NSError("BLE unavailable", "SesameSDK", -2)))
+        } else {
+            sendCommand(SesameOS3Payload(SesameItemCode.moveTo.value, byteArrayOf())) { res ->
+                if (res.cmdResultCode == SesameResultCode.success.value) {
+                    onResponse.invoke(Result.success(CHResultState.CHResultStateBLE(advertisement!!.device!!)))
+                } else {
+                    onResponse.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+                }
+            }
+        }
+    }
+
+    override fun removeSesame(tag: String, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        val noDashUUID = tag?.replace("-", "")
+        if (noDashUUID != null) {
+            sendCommand(SesameOS3Payload(SesameItemCode.REMOVE_SESAME.value, noDashUUID.hexStringToByteArray())) { ssm2ResponsePayload ->
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+    }
+
+    override fun scanWifiSSID(result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        L.d("hcia", "[hub3]請求掃描wifi")
+        sendCommand(SesameOS3Payload(SesameItemCode.HUB3_ITEM_CODE_WIFI_SSID.value, byteArrayOf())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError("WiFi scan rejected", "SesameSDK", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun setWifiPassword(password: String, result: CHResult<CHEmpty>) {
+        sendCommand(SesameOS3Payload(SesameItemCode.HUB3_ITEM_CODE_WIFI_PASSWORD.value, password.toByteArray())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                L.d("hcia", "[hub3]設定密碼完畢")
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+    }
+
+    override fun setWifiSSID(ssid: String, result: CHResult<CHEmpty>) {
+        sendCommand(SesameOS3Payload(SesameItemCode.HUB3_UPDATE_WIFI_SSID.value, ssid.toByteArray())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                L.d("hcia", "[hub3]設定帳號完畢:" + String(res.payload))
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                L.d("hcia", "[hub3]設定wifi錯誤:" + res.cmdResultCode.toString())
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", (res.cmdResultCode).toInt())))
+            }
+        }
+    }
+
+    /** 指令接收 */
+    override fun onGattSesamePublish(receivePayload: SSM3PublishPayload) {
+        super.onGattSesamePublish(receivePayload)
+        L.d("[hub3_say]", "[hub3][收到推送的指令]===>:" + receivePayload.cmdItCode)
+        when (receivePayload.cmdItCode) {
+            SesameItemCode.mechSetting.value -> {
+                if (receivePayload.payload.size < 96) { // 旧的Hub3固件, 只有 60 个字节
+                    mechSetting?.wifiSSID =
+                        String(receivePayload.payload.copyOfRange(0, 30)).trimEnd(0.toChar(), '?'.toChar()) // 0...29 转换为字符串并去除末尾的零字符和问号字符
+                    mechSetting?.wifiPassWord =
+                        String(receivePayload.payload.copyOfRange(30, 60)).trimEnd(0.toChar(), '?'.toChar()) // 30...59 转换为字符串并去除末尾的零字符和问号字符
+                } else { // 新的 Hub3 固件, 有96个字节
+                    mechSetting?.wifiSSID =
+                        String(receivePayload.payload.copyOfRange(0, 32)).trimEnd(0.toChar(), '?'.toChar()) // 0...31 转换为字符串并去除末尾的零字符和问号字符
+                    mechSetting?.wifiPassWord =
+                        String(receivePayload.payload.copyOfRange(32, 96)).trimEnd(0.toChar(), '?'.toChar()) // 32...95 转换为字符串并去除末尾的零字符和问号字符
+                }
+                (delegate as? CHWifiModule2Delegate)?.onAPSettingChanged(this, mechSetting!!)
+            }
+
+            SesameItemCode.mechStatus.value -> {
+                L.d("hcia", "[hub3] 收到mechStatus:" + (receivePayload.payload.toHexString()))
+                val isAp: Boolean = (receivePayload.payload[0] and 2) > 0
+                val isNEt: Boolean = (receivePayload.payload[0] and 4) > 0
+                val isIot: Boolean = (receivePayload.payload[0] and 8) > 0
+                val isAPCheck: Boolean = (receivePayload.payload[0] and 16) > 0
+                val isAPConnecting: Boolean = (receivePayload.payload[0] and 32) > 0
+                val isNETConnecting: Boolean = (receivePayload.payload[0] and 64) > 0
+                val isIOTConnecting: Boolean = receivePayload.payload[0] < 0
+                mechStatus = CHWifiModule2NetWorkStatus(isAp, isNEt, isIot, isAPConnecting, isNETConnecting, isIOTConnecting, isAPCheck)
+            }
+
+            SesameItemCode.PUB_KEY_SESAME.value -> {
+                L.d("hcia", "[1][hub3][收到推送的ssm列表]===>:" + receivePayload.payload.toHexString())
+                ssm2KeysMap.clear()
+                val keyDatas = receivePayload.payload.divideArray(23)
+                keyDatas.forEachIndexed { index, it ->
+                    val lock_status = it[22].toInt()
+                    if (lock_status != 0) {
+                        val ss5_id = it.sliceArray(IntRange(0, 15))
+                        val ssmID = ss5_id.toHexString().noHashtoUUID().toString()
+                        L.d("hcia", "[2][hub3][走訪列表並存下ssm]" + ssmID) // 1120031c-0903-0219-9c00-1400ffffffff
+                        ssm2KeysMap.put(ssmID, "$index")
+                    }
+                }
+                L.d("hcia", "[3][hub3][存下的ssm清單]" + ssm2KeysMap) //{1120031c-0903-0219-9c00-1400ffffffff=[B@5e481ae}
+                (delegate as? CHHub3Delegate)?.onSSM2KeysChanged(this, ssm2KeysMap)
+            }
+
+            SesameItemCode.moveTo.value -> {
+                (delegate as? CHHub3Delegate)?.onOTAProgress(this, receivePayload.payload.first())
+            }
+
+            SesameItemCode.HUB3_ITEM_CODE_SSID_FIRST.value -> (delegate as? CHHub3Delegate)?.onWifiScanStarted(this)
+            SesameItemCode.HUB3_ITEM_CODE_SSID_LAST.value -> (delegate as? CHHub3Delegate)?.onWifiScanFinished(this)
+            SesameItemCode.HUB3_ITEM_CODE_SSID_NOTIFY.value -> {
+                val ssidRssi = bytesToShort(receivePayload.payload[0], receivePayload.payload[1])
+                val ssidStr = String(receivePayload.payload.drop(2).toByteArray())
+                (delegate as? CHWifiModule2Delegate)?.onScanWifiSID(this, ssidStr, ssidRssi)
+            }
+
+            else -> {
+                L.d(
+                    "hcia", msg = "!![hub3][pub][${receivePayload.cmdItCode}]"
+                )
+            }
+        }
+    }
+
+    override fun <T> isBleAvailable(result: CHResult<T>): Boolean {
+        return (this as CHDevices).isBleAvailable(result)
+    }
+
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/sesame5/CHSesame5.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/sesame5/CHSesame5.kt
new file mode 100644
index 0000000..c6c2086
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/sesame5/CHSesame5.kt
@@ -0,0 +1,42 @@
+package co.candyhouse.sesame.ble.os3.sesame5
+
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.CHSesameProtocolMechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.bytesToShort
+import co.candyhouse.sesame.utils.bytesToUShort
+
+interface CHSesame5 : CHSesameLock {
+    var mechSetting: CHSesame5MechSettings?
+    var opsSetting: CHSesame5OpsSettings?
+    fun lock(historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun unlock(historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun toggle(historytag: ByteArray? = null, result: CHResult<CHEmpty>)
+    fun magnet(result: CHResult<CHEmpty>)
+    fun configureLockPosition(lockTarget: Short, unlockTarget: Short, result: CHResult<CHEmpty>)
+    fun autolock(delay: Int, result: CHResult<Int>)
+    fun opSensorControl(isEnable: Int, result: CHResult<Int>)
+    fun onHistoryReceived(historyData: ByteArray) {}
+    fun sendAdvProductTypeCommand(data: ByteArray, result: CHResult<CHEmpty>) {}
+}
+
+class CHSesame5MechStatus(override val data: ByteArray) : CHSesameProtocolMechStatus {
+    override val position: Short = bytesToShort(data[4], data[5])
+    override val target: Short? = if ((bytesToShort(data[2], data[3]).toInt() == -32768)) null else bytesToShort(data[2], data[3])
+    private val flags = data[6].toInt()
+    override var isInLockRange: Boolean = flags and 2 > 0
+    override var isCritical: Boolean? = flags and 8 > 0
+    override var isStop: Boolean? = flags and 16 > 0
+    override var isBatteryCritical: Boolean = flags and 32 > 0
+}
+
+class CHSesame5MechSettings(data: ByteArray) {
+    var lockPosition: Short = bytesToShort(data[0], data[1])
+    var unlockPosition: Short = bytesToShort(data[2], data[3])
+    var autoLockSecond: Short = bytesToShort(data[4], data[5])
+}
+
+class CHSesame5OpsSettings(data: ByteArray) {
+    var opsLockSecond: UShort = bytesToUShort(data[0], data[1])
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/sesame5/CHSesame5Device.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/sesame5/CHSesame5Device.kt
new file mode 100644
index 0000000..4251565
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/sesame5/CHSesame5Device.kt
@@ -0,0 +1,169 @@
+package co.candyhouse.sesame.ble.os3.sesame5
+
+import android.annotation.SuppressLint
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.SesameItemCode
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.historyTagBLE
+import co.candyhouse.sesame.ble.isBleAvailable
+import co.candyhouse.sesame.ble.os3.base.CHSesameOS3LockBase
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.toHexString
+import co.candyhouse.sesame.utils.toReverseBytes
+
+@SuppressLint("MissingPermission")
+internal class CHSesame5Device : CHSesameOS3LockBase(), CHSesame5 {
+
+    override var mechSetting: CHSesame5MechSettings? = null
+    override var opsSetting: CHSesame5OpsSettings? = null
+
+    override fun configureLockPosition(lockTarget: Short, unlockTarget: Short, result: CHResult<CHEmpty>) {
+        val cmd = SesameOS3Payload(
+            SesameItemCode.mechSetting.value,
+            lockTarget.toReverseBytes() + unlockTarget.toReverseBytes()
+        )
+        sendCommand(cmd, DeviceSegmentType.cipher) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                mechSetting?.lockPosition = lockTarget
+                mechSetting?.unlockPosition = unlockTarget
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun sendAdvProductTypeCommand(data: ByteArray, result: CHResult<CHEmpty>) {
+        val cmd = SesameOS3Payload(SesameItemCode.SS3_ITEM_CODE_SET_ADV_PRODUCT_TYPE.value, data)
+        sendCommand(cmd, DeviceSegmentType.cipher) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun autolock(delay: Int, result: CHResult<Int>) {
+        if (!isBleAvailable(result)) return
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.autolock.value, delay.toShort().toReverseBytes()),
+            DeviceSegmentType.cipher
+        ) { response ->
+            if (response.cmdResultCode == SesameResultCode.success.value) {
+                mechSetting?.autoLockSecond = delay.toShort()
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(delay)))
+            } else result.invoke(Result.failure(NSError(response.cmdResultCode.toString(), "CBCentralManager", response.cmdResultCode.toInt())))
+        }
+    }
+
+    override fun opSensorControl(isEnable: Int, result: CHResult<Int>) {
+        if (!isBleAvailable(result)) return
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.OPS_CONTROL.value, isEnable.toShort().toReverseBytes()),
+            DeviceSegmentType.cipher
+        ) { response ->
+            if (response.cmdResultCode == SesameResultCode.success.value) {
+                opsSetting?.opsLockSecond = isEnable.toUShort()
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(isEnable)))
+            } else result.invoke(Result.failure(NSError(response.cmdResultCode.toString(), "CBCentralManager", response.cmdResultCode.toInt())))
+        }
+    }
+
+    override fun magnet(result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.magnet.value, byteArrayOf()),
+            DeviceSegmentType.cipher
+        ) { response ->
+            if (response.cmdResultCode == SesameResultCode.success.value) result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            else result.invoke(Result.failure(NSError(response.cmdResultCode.toString(), "CBCentralManager", response.cmdResultCode.toInt())))
+        }
+    }
+
+    override fun toggle(historytag: ByteArray?, result: CHResult<CHEmpty>) {
+        if (!isBleAvailable(result)) return
+        if (deviceStatus == CHDeviceStatus.Locked) unlock(historytag, result) else lock(historytag, result)
+    }
+
+    override fun unlock(historytag: ByteArray?, result: CHResult<CHEmpty>) {
+
+        if (!isBleAvailable(result)) return
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.unlock.value, historyTagBLE(historytag)),
+            DeviceSegmentType.cipher
+        ) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun lock(historytag: ByteArray?, result: CHResult<CHEmpty>) {
+
+        if (!isBleAvailable(result)) return
+        sendCommand(
+            SesameOS3Payload(SesameItemCode.lock.value, historyTagBLE(historytag)),
+            DeviceSegmentType.cipher
+        ) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+    override fun onHistoryReceived(historyData: ByteArray) {}
+
+    override fun onHistoryReceivedInternal(historyData: ByteArray) {
+        onHistoryReceived(historyData)
+    }
+
+    override fun handleRegisterResponse(
+        registerRes: SSM3ResponsePayload,
+        serverSecret: String,
+        result: CHResult<CHEmpty>
+    ) {
+        mechStatus = CHSesame5MechStatus(registerRes.payload.sliceArray(0..6))
+        mechSetting = CHSesame5MechSettings(registerRes.payload.sliceArray(7..12))
+        val eccPublicKeyFromSS5 = registerRes.payload.sliceArray(13..76)
+        val ecdhSecret = EccKey.ecdh(eccPublicKeyFromSS5)
+        val deviceSecret = ecdhSecret.sliceArray(0..15).toHexString()
+
+        saveDeviceAndCipher(deviceSecret, serverSecret, result)
+        deviceStatus = if (mechStatus?.isInLockRange == true) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+    }
+
+    override fun handleDevicePublish(receivePayload: SSM3PublishPayload) {
+        L.d("onGattSesamePublish", "[ss5] ${receivePayload.cmdItCode}, data: 0x${receivePayload.payload.toHexString()}")
+
+        when (receivePayload.cmdItCode) {
+            SesameItemCode.mechStatus.value -> {
+                mechStatus = CHSesame5MechStatus(receivePayload.payload)
+                deviceStatus = if (mechStatus!!.isInLockRange) CHDeviceStatus.Locked else CHDeviceStatus.Unlocked
+                reportBatteryData(receivePayload.payload.sliceArray(0..1).toHexString())
+            }
+
+            SesameItemCode.mechSetting.value -> {
+                mechSetting = CHSesame5MechSettings(receivePayload.payload)
+            }
+
+            SesameItemCode.OPS_CONTROL.value -> {
+                opsSetting = CHSesame5OpsSettings(receivePayload.payload)
+                L.d("switch", "[ss5][opsSecond]:${opsSetting!!.opsLockSecond}")
+            }
+        }
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/wm2/CHWifiModule2.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/wm2/CHWifiModule2.kt
new file mode 100644
index 0000000..9e147a8
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/wm2/CHWifiModule2.kt
@@ -0,0 +1,39 @@
+package co.candyhouse.sesame.ble.os3.wm2
+
+import co.candyhouse.sesame.ble.CHDeviceStatusDelegate
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHSesameProtocolMechStatus
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+
+interface CHWifiModule2Delegate : CHDeviceStatusDelegate {
+    fun onAPSettingChanged(device: CHWifiModule2, settings: CHWifiModule2MechSettings) {}
+    fun onSSM2KeysChanged(device: CHWifiModule2, ssm2keys: Map<String, String>) {}
+    fun onOTAProgress(device: CHWifiModule2, percent: Byte) {}
+    fun onScanWifiSID(device: CHWifiModule2, ssid: String, rssi: Short) {}
+}
+
+class CHWifiModule2MechSettings(var wifiSSID: String?, var wifiPassWord: String?)
+class CHWifiModule2NetWorkStatus(
+    var isAPWork: Boolean?,
+    var isNetWork: Boolean?,
+    var isIOTWork: Boolean?,
+    var isAPConnecting: Boolean,
+    var isConnectingNet: Boolean,
+    var isConnectingIOT: Boolean,
+    var isAPCheck: Boolean?
+) : CHSesameProtocolMechStatus {
+    override val data: ByteArray
+        get() = TODO("Not yet implemented")
+}
+
+interface CHWifiModule2 : CHDevices {
+    var ssm2KeysMap: MutableMap<String, String>
+    var mechSetting: CHWifiModule2MechSettings?
+    fun scanWifiSSID(result: CHResult<CHEmpty>)
+    fun setWifiSSID(ssid: String, result: CHResult<CHEmpty>)
+    fun setWifiPassword(password: String, result: CHResult<CHEmpty>)
+    fun connectWifi(result: CHResult<CHEmpty>) {}
+    fun insertSesames(sesame: CHDevices, result: CHResult<CHEmpty>) {}
+    fun removeSesame(sesameKeyTag: String, result: CHResult<CHEmpty>)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/wm2/CHWifiModule2Device.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/wm2/CHWifiModule2Device.kt
new file mode 100644
index 0000000..6938f25
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/ble/os3/wm2/CHWifiModule2Device.kt
@@ -0,0 +1,488 @@
+package co.candyhouse.sesame.ble.os3.wm2
+
+import android.Manifest
+import android.annotation.SuppressLint
+import android.bluetooth.BluetoothDevice
+import android.bluetooth.BluetoothGatt
+import android.bluetooth.BluetoothGattCallback
+import android.bluetooth.BluetoothGattCharacteristic
+import android.bluetooth.BluetoothGattDescriptor
+import android.bluetooth.BluetoothProfile
+import android.content.pm.PackageManager
+import co.candyhouse.sesame.ble.CHBleManager
+import co.candyhouse.sesame.ble.CHBleManager.appContext
+import co.candyhouse.sesame.ble.CHBleManager.bluetoothAdapter
+import co.candyhouse.sesame.ble.CHBleSupport
+import co.candyhouse.sesame.ble.CHDevice
+import co.candyhouse.sesame.ble.CHDeviceLoginStatus
+import co.candyhouse.sesame.ble.CHDeviceStatus
+import co.candyhouse.sesame.ble.CHDeviceUtil
+import co.candyhouse.sesame.ble.CHDevices
+import co.candyhouse.sesame.ble.CHProductModel
+import co.candyhouse.sesame.ble.CHScanStatus
+import co.candyhouse.sesame.ble.CHSesameLock
+import co.candyhouse.sesame.ble.CHadv
+import co.candyhouse.sesame.ble.DeviceSegmentType
+import co.candyhouse.sesame.ble.NSError
+import co.candyhouse.sesame.ble.SSM2OpCode
+import co.candyhouse.sesame.ble.SSM3PublishPayload
+import co.candyhouse.sesame.ble.SSM3ResponsePayload
+import co.candyhouse.sesame.ble.SesameNotifypayload
+import co.candyhouse.sesame.ble.SesameResultCode
+import co.candyhouse.sesame.ble.os2.sesame2.CHError
+import co.candyhouse.sesame.ble.os3.base.CHSesameOS3
+import co.candyhouse.sesame.ble.os3.base.SesameOS3BleCipher
+import co.candyhouse.sesame.ble.os3.base.SesameOS3Payload
+import co.candyhouse.sesame.utils.CHEmpty
+import co.candyhouse.sesame.utils.CHResult
+import co.candyhouse.sesame.utils.CHResultState
+import co.candyhouse.sesame.utils.EccKey
+import co.candyhouse.sesame.utils.L
+import co.candyhouse.sesame.utils.aescmac.AesCmac
+import co.candyhouse.sesame.utils.base64Encode
+import co.candyhouse.sesame.utils.base64decodeHex
+import co.candyhouse.sesame.utils.bytesToShort
+import co.candyhouse.sesame.utils.divideArray
+import co.candyhouse.sesame.utils.hexStringToByteArray
+import co.candyhouse.sesame.utils.noHashtoUUID
+import co.candyhouse.sesame.utils.toHexString
+import java.util.Locale
+import java.util.Locale.getDefault
+import java.util.UUID
+import kotlin.experimental.and
+
+@SuppressLint("MissingPermission")
+internal class CHWifiModule2Device : CHSesameOS3(), CHWifiModule2, CHDeviceUtil {
+    var WM2LasItemCode: UByte = WM2ActionCode.CODE_NON.value
+
+    override var ssm2KeysMap: MutableMap<String, String> = mutableMapOf()
+
+//    override var networkStatus: CHWifiModule2NetWorkStatus? = null
+//        set(value) {
+//            field = value //            L.d("hcia", "🥝 設定networkStatus:" + networkStatus)
+//            (delegate as? CHWifiModule2Delegate)?.onNetWorkStatusChanged(this, networkStatus!!)
+//        }
+
+    override var mechSetting: CHWifiModule2MechSettings? = CHWifiModule2MechSettings(null, null)
+        set(value) {
+            if (field != value) {
+                field = value
+            }
+        }
+
+
+    override var advertisement: CHadv? = null
+        set(value) { //            L.d("hcia", "adv:" + field + "😷 -> " + value + " " + deviceId.toString()+ deviceStatus)
+
+            field = value
+            if (value == null) {
+                deviceStatus = CHDeviceStatus.NoBleSignal
+                return
+            }
+            rssi = advertisement!!.rssi
+            deviceId = advertisement!!.deviceID
+
+            isRegistered = advertisement?.isRegistered == true
+
+            if (deviceStatus == CHDeviceStatus.NoBleSignal || deviceStatus == CHDeviceStatus.Busy) { //                L.d("hcia", "advertisement?.isConnecable:" + advertisement?.isConnecable)
+                if (advertisement?.isConnecable == true) {
+                    deviceStatus = CHDeviceStatus.ReceivedAdV
+                } else {
+                    deviceStatus = CHDeviceStatus.Busy
+                }
+            }
+
+
+        }
+
+    override fun connect(result: CHResult<CHEmpty>) {
+        if (appContext.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+            if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+                result.invoke(Result.failure(CHError.BleUnauth.value))
+                return
+            }
+        }
+
+        if (CHBleManager.mScanning == CHScanStatus.BleClose) {
+            result.invoke(Result.failure(CHError.BlePoweroff.value))
+            return
+        }
+        if (deviceStatus != CHDeviceStatus.ReceivedAdV) {
+            result.invoke(Result.failure(CHError.Noble.value))
+            return
+        }
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty()))) //        L.d("hcia", "wm2 cmd connect:")
+
+
+        if (CHBleManager.connectR.indexOf(advertisement?.device?.address) == -1) { //            L.d("hcia", "連接紀錄:" + advertisement!!.device.address)
+            CHBleManager.connectR.add(advertisement!!.device.address)
+        } else { //            L.d("hcia", "我已經連接過了:" + advertisement!!.device.address)
+            return
+        }
+
+        deviceStatus = CHDeviceStatus.BleConnecting
+        result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+
+        bluetoothAdapter.getRemoteDevice(advertisement!!.device.address)
+            .connectGatt(CHBleManager.appContext, false, mBluetoothGattCallback, BluetoothDevice.TRANSPORT_LE)
+
+    }
+
+    val mBluetoothGattCallback: BluetoothGattCallback = object : BluetoothGattCallback() {
+
+        override fun onCharacteristicChanged(gatt: BluetoothGatt?, characteristic: BluetoothGattCharacteristic?) {
+            super.onCharacteristicChanged(gatt, characteristic) //            L.d("hcia", "收到廣播--->:")
+            val wm2Say = gattRxBuffer.feed(characteristic!!.value)
+            if (wm2Say?.first == DeviceSegmentType.cipher) { //                L.d("hcia", "收到加密==>:" + wm2Say.second.toHexString())
+                val pl = cipher!!.decrypt(wm2Say.second) //                L.d("hcia", "解密<==:" + pl.toHexString())
+                parseNotifyPayload(pl)
+            }
+
+            if (wm2Say?.first == DeviceSegmentType.plain) { //                L.d("hcia", "明文:")
+                //                L.d("hcia", "wm2Say.second:" + wm2Say.second.toHexString())
+                parseNotifyPayload(wm2Say.second)
+            }
+
+        }
+
+        private fun parseNotifyPayload(palntext: ByteArray) {
+            val ssm2notify = SesameNotifypayload(palntext)
+//            L.d("hcia", "[bk2] ssm2notify.notifyOpCode:" + ssm2notify.notifyOpCode)
+            if (ssm2notify.notifyOpCode == SSM2OpCode.response) {
+                onGattSesameResponse(SSM3ResponsePayload(ssm2notify.payload))
+            } else if (ssm2notify.notifyOpCode == SSM2OpCode.publish) {
+                onGattWM2Publish(SSM3PublishPayload(ssm2notify.payload))
+            }
+        }
+
+        private fun onGattSesameResponse(wm2RespPl: SSM3ResponsePayload) {
+            L.d("hcia", "🀄Command:<==:" + wm2RespPl.cmdItCode + " - " + wm2RespPl.cmdResultCode + " " + String(wm2RespPl.payload) + "<--")
+            cmdCallBack[wm2RespPl.cmdItCode]?.invoke(wm2RespPl)
+            cmdCallBack.remove(wm2RespPl.cmdItCode)
+            L.d("hcia", "1wm2RespPl.cmdItCode:" + wm2RespPl.cmdItCode)
+//            L.d("hcia", "2cmdCallBack:" + cmdCallBack)
+
+
+            if ((wm2RespPl.cmdItCode == WM2ActionCode.UPDATE_WIFI_PASSWORD.value) && (WM2LasItemCode == WM2ActionCode.UPDATE_WIFI_SSID.value)) {
+                cmdCallBack.remove(WM2ActionCode.UPDATE_WIFI_SSID.value)
+                WM2LasItemCode = WM2ActionCode.CODE_NON.value
+            }
+        }
+
+        override fun onCharacteristicWrite(gatt: BluetoothGatt?, characteristic: BluetoothGattCharacteristic?, status: Int) {
+            super.onCharacteristicWrite(gatt, characteristic, status) //            L.d("hcia", "3☂️ 藍芽系統寫出成功")
+            transmit()
+
+        }
+
+        override fun onServicesDiscovered(gatt: BluetoothGatt?, status: Int) {
+            super.onServicesDiscovered(gatt, status) //            L.d("hcia", "BluetoothGatt " + ":發現服務:")
+
+            for (service in gatt?.services!!) { //                L.d("hcia", "BluetoothGatt 服務:" + service.uuid)
+                if (service.uuid == Wm2Chracs.uuidService01) {
+                    for (charc in service.characteristics) {
+                        if (charc.uuid == Wm2Chracs.writeChrac) {
+                            mCharacteristic = charc
+                        }
+
+                        if (charc.uuid == Wm2Chracs.receiveChr) { //                            L.d("hcia", "設定收聽通道:" + charc.uuid)
+                            gatt.setCharacteristicNotification(charc, true)
+                            val descriptor = charc.getDescriptor(UUID.fromString("00002902-0000-1000-8000-00805f9b34fb"))
+                            descriptor.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE)
+                            gatt.writeDescriptor(descriptor)
+                        }
+                    }
+                }
+            }
+        }
+
+
+        override fun onConnectionStateChange(gatt: BluetoothGatt, status: Int, newState: Int) {
+            super.onConnectionStateChange(gatt, status, newState)
+            if (newState == BluetoothProfile.STATE_CONNECTED) { //                L.d("hcia", "📡 wm2" + ":連接狀態++" + BleBaseType.GattConnectStateDec(newState) + " 狀態:" + BleBaseType.GattConnectStatusDec(status))
+                deviceStatus = CHDeviceStatus.DiscoverServices
+                mBluetoothGatt = gatt
+                gatt.discoverServices()
+            } else { //                L.d("hcia", "📡 wm2 :" + ":連接狀態 --" + BleBaseType.GattConnectStateDec(newState) + " 狀態:" + BleBaseType.GattConnectStatusDec(status))
+                gatt.disconnect()
+                gatt.close()
+                advertisement = null
+                mBluetoothGatt = null
+                mCharacteristic = null
+                CHBleManager.connectR.remove(gatt.device.address)
+                cmdCallBack.clear()
+            } //end if
+
+        }
+    }
+
+
+    override fun register(result: CHResult<CHEmpty>) {
+        if (isRegistered) {
+            result.invoke(Result.failure(CHError.BleInvalidAction.value))
+            return
+        }
+        if (deviceStatus != CHDeviceStatus.ReadyToRegister) {
+            result.invoke(Result.failure(CHError.BleInvalidAction.value))
+            return
+        }
+        deviceStatus = CHDeviceStatus.Registering
+
+        sendCommand(
+            SesameOS3Payload(WM2ActionCode.REGISTER_WM2.value, EccKey.getPubK().hexStringToByteArray()),
+            DeviceSegmentType.plain
+        ) { res -> //            L.d("hcia", "res.cmdResultCode:" + res.cmdResultCode)
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                isRegistered = true
+                deviceStatus = CHDeviceStatus.WaitApConnect
+                L.d("hcia", "res.payload.toHexString():" + res.payload.toHexString())
+                val ecdhSecret_pre16 = EccKey.ecdh(res.payload.sliceArray(0..63)).sliceArray(0..15)
+                val wm2Key = ecdhSecret_pre16.toHexString()
+                L.d("hcia", "存下 wm_2 wm2Key:" + wm2Key)
+
+                val candyDevice = CHDevice(deviceId.toString(), CHProductModel.WM2.deviceModel(), null, "", wm2Key, "")
+                sesame2KeyData = candyDevice
+
+                cipher = SesameOS3BleCipher("customDeviceName", ecdhSecret_pre16, mSesameToken!!) //                L.d("hcia", "設定好加密Wm2BleCipher:")
+
+                CHBleSupport.keys.insert(candyDevice) {
+                    result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+                }
+            } else {
+                result.invoke(Result.failure(CHError.BleInvalidAction.value))
+            }
+        }
+    }
+
+    override fun login(token: String?) {
+        deviceStatus = CHDeviceStatus.BleLogining
+        val loginTag = AesCmac(sesame2KeyData!!.secretKey.hexStringToByteArray(), 16).computeMac(mSesameToken)
+        cipher = SesameOS3BleCipher("customDeviceName", sesame2KeyData!!.secretKey.hexStringToByteArray(), mSesameToken)
+        sendCommand(SesameOS3Payload(WM2ActionCode.LOGIN_WM2.value, loginTag!!), DeviceSegmentType.plain) { res ->
+            L.d("hcia", "📡 登入成功:" + res.payload.toHexString())
+        }
+    }
+
+    override fun scanWifiSSID(result: CHResult<CHEmpty>) {
+        sendCommand(SesameOS3Payload(WM2ActionCode.SCAN_WIFI_SSID.value, byteArrayOf())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                L.d("hcia", "掃描wifi完畢:" + String(res.payload))
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+
+            } else {
+                L.d("hcia", "掃描wifi錯誤:" + res.cmdResultCode.toString())
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", (res.cmdResultCode).toInt())))
+            }
+        }
+    }
+
+    override fun setWifiSSID(ssid: String, result: CHResult<CHEmpty>) {
+        sendCommand(SesameOS3Payload(WM2ActionCode.UPDATE_WIFI_SSID.value, ssid.toByteArray())) { res ->
+            WM2LasItemCode = WM2ActionCode.UPDATE_WIFI_SSID.value
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                L.d("hcia", "設定帳號完畢:" + res.payload.toHexString())
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                L.d("hcia", "設定wifi錯誤:" + res.cmdResultCode.toString())
+                result.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", (res.cmdResultCode).toInt())))
+            }
+        }
+    }
+
+
+    override fun setWifiPassword(password: String, result: CHResult<CHEmpty>) {
+        sendCommand(SesameOS3Payload(WM2ActionCode.UPDATE_WIFI_PASSWORD.value, password.toByteArray())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) { //                L.d("hcia", "設定密碼完畢:" + String(res.payload))
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+    }
+
+    override fun connectWifi(result: CHResult<CHEmpty>) {
+        val company = CHBleSupport.gatewayTenantId.replace(":", "").replace("-", "")
+        //        L.d("hcia", "company.toByteArray():" + company.toByteArray().toHexString())
+        val verification = company + ":" + deviceId.toString().uppercase().split('-').last()
+        L.d("wm2", "verification: $verification")
+        sendCommand(SesameOS3Payload(WM2ActionCode.CONNECT_WIFI.value, verification.toByteArray())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            } else {
+                result.invoke(Result.failure(CHError.NotfoundError.value))
+            }
+        }
+    }
+
+    override fun insertSesames(sesame: CHDevices, result: CHResult<CHEmpty>) {
+
+        if (!(sesame is CHSesameLock)) {
+            result.invoke(Result.failure(CHError.BleInvalidAction.value))
+            return
+        }
+//        L.d("hcia", "送出鑰匙sesame.getKey():" + sesame.getKey())
+        //        L.d("hcia", "sesame.getKey().toByteArray():" + sesame.getKey().toByteArray().size)//392
+        val ssm = sesame as CHDeviceUtil
+        val noHashUUID = ssm.sesame2KeyData!!.deviceUUID.replace("-", "")
+        val b64k = noHashUUID.hexStringToByteArray().base64Encode().replace("=", "")
+        val ssmIRData = b64k.toByteArray()
+
+        val ssmPKData = if ((ssm.sesame2KeyData!!.deviceModel == "sesame_5")
+            || (ssm.sesame2KeyData!!.deviceModel == "sesame_5_pro")
+            || (ssm.sesame2KeyData!!.deviceModel == "sesame_5_us")
+
+            || (ssm.sesame2KeyData!!.deviceModel == "bike_2")
+        ) {
+            "41B6D190EBBC1E9FA49E62710D80092784E998649FCA150419D2C70C6573BCA4666481EA47FDD755BB0761AB95EF95C9BD24016D54B14606EB5835541E45F27E".hexStringToByteArray()
+        } else {
+            ssm.sesame2KeyData!!.sesame2PublicKey.hexStringToByteArray()
+        }
+
+//        val ssmPKData = ssm.sesame2KeyData!!.sesame2PublicKey.hexStringToByteArray()
+//        val ss5_pubk = "41B6D190EBBC1E9FA49E62710D80092784E998649FCA150419D2C70C6573BCA4666481EA47FDD755BB0761AB95EF95C9BD24016D54B14606EB5835541E45F27E"
+
+        val ssmSecKa = ssm.sesame2KeyData!!.secretKey.hexStringToByteArray()
+        val ssmUUid = ssm.sesame2KeyData!!.deviceUUID.uppercase(Locale.getDefault()).toByteArray()
+        val allKey = ssmIRData + ssmPKData + ssmSecKa + ssmUUid
+//        L.d("hcia", "allKey:" + allKey.toHexString())
+
+        sendCommand(SesameOS3Payload(WM2ActionCode.ADD_SESAME.value, allKey)) { res ->
+            L.d("hcia", "ADD_SESAME:ok")
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+
+    }
+
+    override fun removeSesame(sesameKeyTag: String, result: CHResult<CHEmpty>) {
+        L.d("hcia", "removeSesame:" + sesameKeyTag)
+        sendCommand(SesameOS3Payload(WM2ActionCode.DELETE_SESAME.value, sesameKeyTag.uppercase(getDefault()).toByteArray())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(CHEmpty())))
+            }
+        }
+    }
+
+
+    override fun getVersionTag(result: CHResult<String>) {
+        if (deviceStatus.value == CHDeviceLoginStatus.unlogined) {
+            return
+        }
+        sendCommand(SesameOS3Payload(WM2ActionCode.VERSION_TAG.value, byteArrayOf())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                val versionTag = String(res.payload)
+                result.invoke(Result.success(CHResultState.CHResultStateBLE(versionTag)))
+                CHBleSupport.backend.updateDeviceFirmwareVersion(deviceId.toString().uppercase(), versionTag) {}
+            }
+        }
+
+    }
+
+    override fun reset(result: CHResult<CHEmpty>) {
+        L.d("hcia", "resetWifiModule2 deviceStatus:" + deviceStatus)
+        if (deviceStatus.value == CHDeviceLoginStatus.unlogined) {
+            result.invoke(Result.failure(CHError.BleInvalidAction.value))
+        }
+
+        sendCommand(SesameOS3Payload(WM2ActionCode.RESET_WM2.value, byteArrayOf())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                dropKey(result)
+            }
+        }
+    }
+
+    override fun updateFirmware(onResponse: CHResult<BluetoothDevice>) {
+        sendCommand(SesameOS3Payload(WM2ActionCode.OPEN_OTA_SERVER.value, byteArrayOf())) { res ->
+            if (res.cmdResultCode == SesameResultCode.success.value) {
+                onResponse.invoke(Result.success(CHResultState.CHResultStateBLE(advertisement!!.device!!)))
+            } else {
+                onResponse.invoke(Result.failure(NSError(res.cmdResultCode.toString(), "CBCentralManager", res.cmdResultCode.toInt())))
+            }
+        }
+    }
+
+
+    private fun onGattWM2Publish(receivePayload: SSM3PublishPayload) {
+
+        //        L.d("hcia", "🩰 收到wm2推送 receivePayload.actionCode:" + receivePayload.actionCode)
+
+        if (receivePayload.cmdItCode == WM2ActionCode.OPEN_OTA_SERVER.value) { //            L.d("hcia", "OTA!->" + receivePayload.payload.toHexString())
+            (delegate as? CHWifiModule2Delegate)?.onOTAProgress(this, receivePayload.payload.first())
+        }
+        if (receivePayload.cmdItCode == WM2ActionCode.SESAME_KEYS.value) { //            L.d("hcia", "🩰  收到 wm2 推送過來ssm鑰匙:" + receivePayload.payload.toHexString())
+            ssm2KeysMap.clear()
+
+            val keyDatas = receivePayload.payload.divideArray(23)
+            keyDatas.forEach { //                L.d("hcia", "it.toHexString():" + it.toHexString())
+                val ss2_ir_22 = it.sliceArray(IntRange(0, 21))
+                val lock_status =
+                    it[22] //                L.d("hcia", "🩰  ss2_ir_22:" + String(ss2_ir_22)) //                L.d("hcia", "🩰 收到鑰匙上鎖狀態 lock_status:" + lock_status) //                val ss2_pub_key_64 = it.sliceArray(IntRange(22, 85)) //                val ss2_secretKey_16 = it.sliceArray(IntRange(86, 101)) //                L.d("hcia", "🩰  ss2_pub_key_64:" + ss2_pub_key_64.toHexString()) //                L.d("hcia", "🩰  ss2_secretKey_16:" + ss2_secretKey_16.toHexString())
+                try {
+                    val ssmID = (String(ss2_ir_22) + "==").base64decodeHex().noHashtoUUID()
+                    ssm2KeysMap.put(ssmID.toString(), lock_status.toString())
+//                    L.d("hcia", "🩰  ssmID:" + ssmID)
+                } catch (e: Exception) {
+                    L.d("hcia", "🩰  e:" + e)
+                }
+            } //            L.d("hcia", "🩰  delegate wm2 推送過來鑰匙給UI:" + delegate)
+            (delegate as? CHWifiModule2Delegate)?.onSSM2KeysChanged(this, ssm2KeysMap)
+
+        }
+        if (receivePayload.cmdItCode == WM2ActionCode.SCAN_WIFI_SSID.value) {
+            val ssidRssi = bytesToShort(receivePayload.payload[0], receivePayload.payload[1])
+            val ssidStr = String(receivePayload.payload.drop(2).toByteArray()) //            L.d("hcia", "[sdk] ssidRssi:" + ssidRssi + "[sdk] sdkssidStr:" + ssidStr)
+            (delegate as? CHWifiModule2Delegate)?.onScanWifiSID(this, ssidStr, ssidRssi)
+        }
+        if (receivePayload.cmdItCode == WM2ActionCode.UPDATE_WIFI_SSID.value) {
+            val ssidStr = String(receivePayload.payload) //            L.d("hcia", "🩰 1 pubilsh  當前wifi ID:" + ssidStr)
+            mechSetting?.wifiSSID = ssidStr
+            (delegate as? CHWifiModule2Delegate)?.onAPSettingChanged(this, mechSetting!!)
+        }
+        if (receivePayload.cmdItCode == WM2ActionCode.UPDATE_WIFI_PASSWORD.value) {
+            val passStr = String(receivePayload.payload) //            L.d("hcia", "🩰 2 pubilsh 當前wifi 密碼:" + passStr)
+            mechSetting?.wifiPassWord = passStr
+            (delegate as? CHWifiModule2Delegate)?.onAPSettingChanged(this, mechSetting!!)
+        }
+
+        if (receivePayload.cmdItCode == WM2ActionCode.NETWORK_STATUS.value) { //            L.d("hcia", "🩰 3 收到網路狀態" + receivePayload.payload.toHexString() + " byte:" + receivePayload.payload[0])
+            val isAp: Boolean = (receivePayload.payload[0] and 2) > 0
+            val isNEt: Boolean = (receivePayload.payload[0] and 4) > 0
+            val isIot: Boolean = (receivePayload.payload[0] and 8) > 0
+            val isAPCheck: Boolean = (receivePayload.payload[0] and 16) > 0
+            val isAPConnecting: Boolean = (receivePayload.payload[0] and 32) > 0
+            val isNETConnecting: Boolean = (receivePayload.payload[0] and 64) > 0
+            val isIOTConnecting: Boolean = receivePayload.payload[0] < 0
+            mechStatus = CHWifiModule2NetWorkStatus(isAp, isNEt, isIot, isAPConnecting, isNETConnecting, isIOTConnecting, isAPCheck)
+
+            //            L.d("hcia", "isRegistered:" + isRegistered)
+            if (isRegistered) {
+                if (isAPCheck) {
+                    deviceStatus = if (isIot) CHDeviceStatus.IotConnected else CHDeviceStatus.IotDisconnected
+                } else {
+                    deviceStatus = CHDeviceStatus.WaitApConnect
+                }
+            }
+        }
+        if (receivePayload.cmdItCode == WM2ActionCode.INITIAL.value) {
+            mSesameToken = receivePayload.payload //            L.d("hcia", "🩰 " + "藍芽連線後初始化 mSesameToken:" + mSesameToken?.toHexString())
+            if (isRegistered) {
+                login()
+            } else { //                L.d("hcia", "🩰 " + "delegate:" + delegate)
+                deviceStatus = CHDeviceStatus.ReadyToRegister
+            }
+        }
+    }
+
+}
+
+internal object Wm2Chracs {
+    val uuidService01 = UUID.fromString("1b7e8251-2877-41c3-b46e-cf057c562524")
+    val writeChrac = UUID.fromString("aca0ef7c-eeaa-48ad-9508-19a6cef6b356")
+    val receiveChr = UUID.fromString("8ac32d3f-5cb9-4d44-bec2-ee689169f626")
+}
+
+internal enum class WM2ActionCode(val value: UByte) {
+    CODE_NON(0U), REGISTER_WM2(1U), LOGIN_WM2(2U), UPDATE_WIFI_SSID(3U), UPDATE_WIFI_PASSWORD(4U), CONNECT_WIFI(5U), NETWORK_STATUS(6U), DELETE_SESAME(7U), ADD_SESAME(8U), INITIAL(
+        13U
+    ),
+    CCCD(14U), SESAME_KEYS(16U), RESET_WM2(18U), SCAN_WIFI_SSID(19U), OPEN_OTA_SERVER(126U), VERSION_TAG(127U), ;
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/BleBaseType.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/BleBaseType.kt
new file mode 100644
index 0000000..49d2afd
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/BleBaseType.kt
@@ -0,0 +1,81 @@
+package co.candyhouse.sesame.utils
+
+
+internal class BleBaseType {
+
+    companion object {
+        /**
+         *
+        public static final int CONNECTION_PRIORITY_BALANCED = 0;
+        public static final int CONNECTION_PRIORITY_HIGH = 1;
+        public static final int CONNECTION_PRIORITY_LOW_POWER = 2;
+        public static final int GATT_CONNECTION_CONGESTED = 143;
+        public static final int GATT_FAILURE = 257;
+        public static final int GATT_INSUFFICIENT_AUTHENTICATION = 5;
+        public static final int GATT_INSUFFICIENT_ENCRYPTION = 15;
+        public static final int GATT_INVALID_ATTRIBUTE_LENGTH = 13;
+        public static final int GATT_INVALID_OFFSET = 7;
+        public static final int GATT_READ_NOT_PERMITTED = 2;
+        public static final int GATT_REQUEST_NOT_SUPPORTED = 6;
+        public static final int GATT_SUCCESS = 0;
+        public static final int GATT_WRITE_NOT_PERMITTED = 3;
+         * */
+
+        internal fun GattConnectStatusDec(status: Int): String {
+
+            if (status == 0) {
+                return "SUCCESS"
+            }
+            if (status == 128) {
+                return "GATT_NO RESOURCES"
+            }
+            if (status == 257) {
+                return "GATT_FAILURE"
+            }
+            if (status == 8) {
+                return "GATT_CONN_TIMEOUT ,Issue with bond"
+            }
+            if (status == 22) {
+                return "GATT_CONN_TERMINATE_LOCAL_HOST"
+            }
+            if (status == 133) {//https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/5738f83aeb59361a0a2eda2460113f6dc9194271/stack/include/gatt_api.h#49
+                return "GATT_CONN_TERMINATE_LOCAL_HOST"
+            }
+
+            if (status == 19) {
+                return "Disconnected by device 被踢!!"
+            }
+
+            return "Unknow:" + status
+        }
+
+        /**
+         *
+        int STATE_CONNECTED = 2;
+        int STATE_CONNECTING = 1;
+        int STATE_DISCONNECTED = 0;
+        int STATE_DISCONNECTING = 3;
+
+         * */
+        internal fun GattConnectStateDec(status: Int): String {
+
+            if (status == 0) {
+                return " 斷開:STATE_DISCONNECTED"
+            }
+            if (status == 1) {
+                return " 連結中:STATE_CONNECTING"
+            }
+            if (status == 2) {
+                return " 已連上:STATE_CONNECTED"
+            }
+            if (status == 3) {
+                return " 斷開中:STATE_DISCONNECTING"
+            }
+            return "Unknow status:$status"
+        }
+    }
+}
+
+
+
+
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/CommonUtils.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/CommonUtils.kt
new file mode 100644
index 0000000..1fc914f
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/CommonUtils.kt
@@ -0,0 +1,20 @@
+package co.candyhouse.sesame.utils
+
+import co.candyhouse.sesame.ble.CHBleSupport
+
+/**
+ * 公共方法和一般类
+ *
+ * @author frey on 2026/1/13
+ */
+typealias HttpResponseCallback<T> = (Result<T>) -> Unit
+typealias CHResult<T> = (Result<CHResultState<T>>) -> Unit
+
+sealed class CHResultState<T>(val data: T) {
+    open class CHResultStateBLE<T>(data: T) : CHResultState<T>(data)
+    open class CHResultStateNetworks<T>(data: T) : CHResultState<T>(data)
+}
+
+class CHEmpty
+
+fun isInternetAvailable(): Boolean = CHBleSupport.backend.isNetworkAvailable()
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/DataExtention.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/DataExtention.kt
new file mode 100644
index 0000000..5da0fc1
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/DataExtention.kt
@@ -0,0 +1,169 @@
+package co.candyhouse.sesame.utils
+
+import android.util.Base64
+import java.nio.ByteBuffer
+import java.nio.charset.StandardCharsets
+import java.util.Random
+import java.util.UUID
+import kotlin.experimental.and
+
+fun String.base64decodeByteArray(): ByteArray {
+    return Base64.decode(this, Base64.DEFAULT)
+}
+
+internal fun ByteArray.divideArray(chunksize: Int): Array<ByteArray> {
+    val ret = Array(Math.ceil(this.size / chunksize.toDouble()).toInt()) { ByteArray(chunksize) }
+    var start = 0
+    var parts = 0
+    for (i in ret.indices) {
+        if (start + chunksize > this.size) {
+            System.arraycopy(this, start, ret[i], 0, this.size - start)
+        } else {
+            System.arraycopy(this, start, ret[i], 0, chunksize)
+        }
+        start += chunksize
+        parts++
+    }
+    return ret
+}
+
+internal fun String.base64decodeHex(): String {
+    val data = Base64.decode(this, Base64.DEFAULT)
+    return data.toHexString()
+}
+
+internal fun String.noHashtoUUID(): UUID? {
+    val input = this
+    val sdsd = input.length - 1
+    val testid = input.substring(0..7) + "-" + input.substring(8..11) + "-" + input.substring(12..15) + "-" + input.substring(16..19) + "-" + input.substring(20..sdsd)
+    return UUID.fromString(testid)
+}
+
+fun ByteArray.toHexString() = joinToString("") { "%02x".format(it) }
+fun ByteArray.HexLog() = joinToString("") { " %02X".format(it) } + " [" + this.size + "bytes]"
+
+internal fun ByteArray.base64Encode(): String {
+    val ss = Base64.encode(this.clone(), Base64.DEFAULT)
+
+    return String(ss, StandardCharsets.UTF_8).replace("\n", "")
+}
+
+
+internal fun String.hexStringToByteArray() =
+    ByteArray(this.length / 2) { this.substring(it * 2, it * 2 + 2).toInt(16).toByte() }
+
+internal var fixheader = "3059301306072a8648ce3d020106082a8648ce3d03010703420004"
+
+internal fun String.cutEccHeader(): String {
+    val cutPb: String = this.replace(fixheader, "")
+    return cutPb
+}
+
+
+internal fun ByteArray.toBigLong(): Long {
+    return this.reversedArray().toHexString().toLong(16)
+}
+
+
+internal fun ByteArray.toCutedHistag(): ByteArray? {
+    val tagcount = this[0]
+    L.d("hcia", "this:" + this.toHexString())
+    L.d("hcia", "tagcount.toInt():" + tagcount.toInt())
+    if (tagcount.toInt() == 0) {
+        return null
+    } else {
+        return this.sliceArray(1..tagcount.toInt())
+    }
+}
+
+internal fun ByteArray.toInt(): Int {
+    var result: Int = 0
+    for (i in 0..1) {
+        result = result shl 8
+        result = result or (this[i] and 0xFF.toByte()).toInt()
+    }
+    return result
+}
+
+internal fun ByteArray.padEnd(length: Int, value: Byte = 0x00.toByte()): ByteArray {
+    if (this.size >= length) return this
+    return this + ByteArray(length - this.size) { value }
+}
+
+internal fun bytesToShort(byte1: Byte, byte2: Byte): Short {
+
+    return (((byte2.toInt() and 0xFF) shl 8) or (byte1.toInt() and 0xFF)).toShort()
+}
+
+fun bytesToUShort(byte1: Byte, byte2: Byte): UShort {
+    return ((byte2.toInt() shl 8) or (byte1.toInt() and 0xFF)).toUShort()
+}
+
+internal fun Short.toReverseBytes(): ByteArray {
+    val buffer: ByteBuffer = ByteBuffer.allocate(2)
+    buffer.putShort(this)
+    return byteArrayOf(buffer[1], buffer[0])
+}
+
+internal fun Long.toBytes(isBigEndian: Boolean = false): ByteArray {
+    var bytes = byteArrayOf()
+    var testLong: Long = this
+    for (index in 0 until Long.SIZE_BYTES) {
+        val b = testLong.toByte()
+        bytes += b
+        testLong = testLong.shr(Byte.SIZE_BITS)
+//            L.d("hcia", "index:" + index)
+    }
+//    L.d("hcia", "bytes:" + bytes.toHexString())
+    return if (isBigEndian) {
+        bytes.reversedArray()
+    } else {
+        bytes
+    }
+}
+
+
+internal fun generateRandomData(count: Int): ByteArray {
+    val b = ByteArray(count)
+    Random().nextBytes(b)
+    return b
+}
+
+internal fun Long.toUInt32ByteArray(): ByteArray {
+//    ["🧕 initialize", 1605929466.48249, 1605929466, "fa89b85f"]
+    val tmp = this / 1000
+    val bytes = ByteArray(4)
+    bytes[3] = (tmp and 0xFFFF).toByte()
+    bytes[2] = ((tmp ushr 8) and 0xFFFF).toByte()
+    bytes[1] = ((tmp ushr 16) and 0xFFFF).toByte()
+    bytes[0] = ((tmp ushr 24) and 0xFFFF).toByte()
+    return bytes.reversedArray()
+}
+
+internal fun Long.toUInt24ByteArray(): ByteArray {
+//    ["🧕 initialize", 1605929466.48249, 1605929466, "fa89b85f"]
+    val tmp = this / 1000
+    val bytes = ByteArray(3)
+//    bytes[3] = (tmp and 0xFFFF).toByte()
+    bytes[2] = ((tmp ushr 8) and 0xFFFF).toByte()
+    bytes[1] = ((tmp ushr 16) and 0xFFFF).toByte()
+    bytes[0] = ((tmp ushr 24) and 0xFFFF).toByte()
+    return bytes.reversedArray()
+}
+
+fun String.uuidToBytes(): ByteArray {
+    val bytes = ByteArray(16)
+    var byteIndex = 0
+    var charIndex = 0
+
+    while (charIndex < length) {
+        if (this[charIndex] != '-') {
+            bytes[byteIndex++] = ((this[charIndex].digitToInt(16) shl 4) +
+                    this[charIndex + 1].digitToInt(16)).toByte()
+            charIndex += 2
+        } else {
+            charIndex++
+        }
+    }
+    return bytes
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/EccKey.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/EccKey.kt
new file mode 100644
index 0000000..96a69db
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/EccKey.kt
@@ -0,0 +1,43 @@
+package co.candyhouse.sesame.utils
+
+import android.annotation.SuppressLint
+import java.security.KeyFactory
+import java.security.KeyPair
+import java.security.KeyPairGenerator
+import java.security.interfaces.ECPublicKey
+import java.security.spec.ECGenParameterSpec
+import java.security.spec.X509EncodedKeySpec
+import javax.crypto.KeyAgreement
+
+
+internal object EccKey {
+
+    private var keyPairA: KeyPair? = null
+
+    internal fun getRegisterAK(): String {
+        return getDeviceECCKey().public.encoded.toHexString().cutEccHeader().hexStringToByteArray().base64Encode()
+    }
+
+    internal fun getPubK(): String {
+        return getDeviceECCKey().public.encoded.toHexString().cutEccHeader()
+    }
+
+    internal fun ecdh(remotePublicKey: ByteArray): ByteArray {
+        val remoteECPub: ECPublicKey = KeyFactory.getInstance("EC").generatePublic(X509EncodedKeySpec(fixheader.hexStringToByteArray() + remotePublicKey)) as ECPublicKey
+        val kaA = KeyAgreement.getInstance("ECDH")
+        kaA.init(getDeviceECCKey().private)
+        kaA.doPhase(remoteECPub, true)
+        return kaA.generateSecret()
+    }
+
+    @SuppressLint("CheckResult")
+    internal fun getDeviceECCKey(): KeyPair {
+        keyPairA?.let { return it }
+        val keyGen = KeyPairGenerator.getInstance("EC")
+        keyGen.initialize(ECGenParameterSpec("secp256r1")) //prime256v1 == secp256r1 == NIST P-256
+        val newKeyPairA = keyGen.generateKeyPair()
+        keyPairA = newKeyPairA
+        return newKeyPairA
+    }
+
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/EventExtensions.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/EventExtensions.kt
new file mode 100644
index 0000000..0901098
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/EventExtensions.kt
@@ -0,0 +1,35 @@
+package co.candyhouse.sesame.utils
+
+import androidx.lifecycle.LifecycleOwner
+import androidx.lifecycle.LiveData
+
+/**
+ * 一次性事件包装类
+ * 用于解决 LiveData 粘性问题,确保事件只被消费一次
+ */
+class Event<out T>(private val content: T) {
+    private var hasBeenHandled = false
+
+    fun getContentIfNotHandled(): T? {
+        return if (hasBeenHandled) {
+            null
+        } else {
+            hasBeenHandled = true
+            content
+        }
+    }
+
+    fun peekContent(): T = content
+}
+
+/**
+ * LiveData<Event<T>> 扩展函数
+ */
+inline fun <T> LiveData<Event<T>>.observeEvent(
+    owner: LifecycleOwner,
+    crossinline onEventUnhandled: (T) -> Unit
+) {
+    observe(owner) { event ->
+        event.getContentIfNotHandled()?.let(onEventUnhandled)
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/L.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/L.kt
new file mode 100644
index 0000000..5d21397
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/L.kt
@@ -0,0 +1,86 @@
+package co.candyhouse.sesame.utils
+
+import android.os.Looper
+import android.util.Log
+import co.candyhouse.sesame.BuildConfig
+
+class L {
+    companion object {
+
+        @JvmStatic
+        fun i(tag: String = "hcia", msg: String) {
+            if (BuildConfig.DEBUG) {
+                val stackTrace = Thread.currentThread().stackTrace// StackTraceElement[]
+                val index = 3
+                val className = stackTrace[index].fileName
+                val lineNumber = stackTrace[index].lineNumber
+                val stringBuilder = StringBuilder()
+                stringBuilder.append(isUIthread()).append("(").append(className).append(":")
+                    .append(lineNumber).append(") ")
+                Log.i(tag, "$msg  | $stringBuilder")
+            }
+        }
+
+        @JvmStatic
+        fun d(tag: String = "hcia", msg: String) {
+            if (BuildConfig.DEBUG) {
+                val stackTrace = Thread.currentThread().stackTrace// StackTraceElement[]
+                val index = 3
+                val className = stackTrace[index].fileName
+                val lineNumber = stackTrace[index].lineNumber
+                val stringBuilder = StringBuilder()
+                stringBuilder.append(isUIthread()).append("(").append(className).append(":")
+                    .append(lineNumber).append(") ")
+                Log.d(tag, "$msg  | $stringBuilder")
+            }
+        }
+
+        @JvmStatic
+        fun w(tag: String = "hcia", msg: String) {
+            if (BuildConfig.DEBUG) {
+                val stackTrace = Thread.currentThread().stackTrace// StackTraceElement[]
+                val index = 3
+                val className = stackTrace[index].fileName
+                val lineNumber = stackTrace[index].lineNumber
+                val stringBuilder = StringBuilder()
+                stringBuilder.append(isUIthread()).append("(").append(className).append(":")
+                    .append(lineNumber).append(") ")
+                Log.w(tag, "$msg  | $stringBuilder")
+            }
+        }
+
+        @JvmStatic
+        fun e(tag: String = "hcia", msg: String) {
+            if (BuildConfig.DEBUG) {
+                val stackTrace = Thread.currentThread().stackTrace// StackTraceElement[]
+                val index = 3
+                val className = stackTrace[index].fileName
+                val lineNumber = stackTrace[index].lineNumber
+                val stringBuilder = StringBuilder()
+                stringBuilder.append(isUIthread()).append("(").append(className).append(":")
+                    .append(lineNumber).append(") ")
+                Log.e(tag, "$msg  | $stringBuilder")
+            }
+        }
+
+        @JvmStatic
+        fun e(tag: String = "hcia", msg: String, tr: Throwable) {
+            if (BuildConfig.DEBUG) {
+                val stackTrace = Thread.currentThread().stackTrace// StackTraceElement[]
+                val index = 3
+                val className = stackTrace[index].fileName
+                val lineNumber = stackTrace[index].lineNumber
+                val stringBuilder = StringBuilder()
+                stringBuilder.append(isUIthread()).append("(").append(className).append(":")
+                    .append(lineNumber).append(") ")
+                Log.e(tag, "$msg  | $stringBuilder", tr)
+            }
+        }
+
+        private fun isUIthread(): String {
+            val isM = Looper.getMainLooper() == Looper.myLooper()
+            return if (isM) "主線成" else "副線成"
+        }
+
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/AESCMAC.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/AESCMAC.kt
new file mode 100644
index 0000000..3cd45fd
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/AESCMAC.kt
@@ -0,0 +1,94 @@
+package co.candyhouse.sesame.utils.aescmac
+
+import java.security.GeneralSecurityException
+import java.security.InvalidAlgorithmParameterException
+import java.util.Arrays
+import javax.crypto.Cipher
+import javax.crypto.SecretKey
+import javax.crypto.spec.SecretKeySpec
+
+
+internal final class AesCmac(key: ByteArray, tagSizeInBytes: Int) : Mac {
+    val MIN_TAG_SIZE_IN_BYTES = 10
+    private var keySpec: SecretKey? = null
+    private var tagSizeInBytes = 0
+    lateinit var subKey1: ByteArray
+    lateinit var subKey2: ByteArray
+
+    init {
+        Validators.validateAesKeySize(key.size)
+        if (tagSizeInBytes < MIN_TAG_SIZE_IN_BYTES) {
+            throw InvalidAlgorithmParameterException(
+                "tag size too small, min is $MIN_TAG_SIZE_IN_BYTES bytes"
+            )
+        }
+        if (tagSizeInBytes > AesUtil.BLOCK_SIZE) {
+            throw InvalidAlgorithmParameterException("tag size too large, max is " + AesUtil.BLOCK_SIZE.toString() + " bytes")
+        }
+        keySpec = SecretKeySpec(key, "AES")
+        this.tagSizeInBytes = tagSizeInBytes
+        generateSubKeys()
+    }
+
+    private fun instance(): Cipher? {
+        return EngineFactory.CIPHER.getInstance("AES/ECB/NoPadding")
+    }
+
+    override fun computeMac(data: ByteArray?): ByteArray? {
+        val aes = instance()
+        aes!!.init(Cipher.ENCRYPT_MODE, keySpec)
+
+        val n = Math.max(1, Math.ceil(data!!.size.toDouble() / AesUtil.BLOCK_SIZE).toInt())
+
+        // Step 3
+        // Step 3
+        val flag = n * AesUtil.BLOCK_SIZE == data.size
+
+        // Step 4
+        // Step 4
+        val mLast: ByteArray
+        mLast = if (flag) {
+            Bytes.xor(data, (n - 1) * AesUtil.BLOCK_SIZE, subKey1, 0, AesUtil.BLOCK_SIZE)
+        } else {
+            Bytes.xor(
+                AesUtil.cmacPad(Arrays.copyOfRange(data, (n - 1) * AesUtil.BLOCK_SIZE, data.size)),
+                subKey2
+            )
+        }
+
+        // Step 5
+        // Step 5
+        var x: ByteArray? = ByteArray(AesUtil.BLOCK_SIZE)
+
+        // Step 6
+        // Step 6
+        var y: ByteArray?
+        for (i in 0 until n - 1) {
+            y = Bytes.xor(x!!, 0, data, i * AesUtil.BLOCK_SIZE, AesUtil.BLOCK_SIZE)
+            x = aes.doFinal(y)
+        }
+        y = Bytes.xor(mLast, x!!)
+
+        // Step 7
+        // Step 7
+        val tag = ByteArray(tagSizeInBytes)
+        System.arraycopy(aes.doFinal(y), 0, tag, 0, tagSizeInBytes)
+        return tag
+    }
+
+    override fun verifyMac(mac: ByteArray?, data: ByteArray?) {
+        if (!Bytes.equal(mac, computeMac(data))) {
+            throw GeneralSecurityException("invalid MAC")
+        }
+    }
+
+    @Throws(GeneralSecurityException::class)
+    private fun generateSubKeys() {
+        val aes = instance()
+        aes!!.init(Cipher.ENCRYPT_MODE, keySpec)
+        val zeroes = ByteArray(AesUtil.BLOCK_SIZE)
+        val l = aes.doFinal(zeroes)
+        subKey1 = AesUtil.dbl(l)
+        subKey2 = AesUtil.dbl(subKey1)
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/AesUtil.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/AesUtil.kt
new file mode 100644
index 0000000..aa383af
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/AesUtil.kt
@@ -0,0 +1,51 @@
+package co.candyhouse.sesame.utils.aescmac
+
+import java.util.Arrays
+import kotlin.experimental.or
+import kotlin.experimental.xor
+
+internal object AesUtil {
+    const val BLOCK_SIZE = 16
+
+    /**
+     * Multiplies value by x in the finite field GF(2^128) represented using the primitive polynomial
+     * x^128 + x^7 + x^2 + x + 1.
+     *
+     * @param value an arrays of 16 bytes representing an element of GF(2^128) using bigendian byte
+     * order.
+     */
+    fun dbl(value: ByteArray): ByteArray {
+        require(value.size == BLOCK_SIZE) { "value must be a block." }
+        // Note that >> is an arithmetical shift, which copies the leftmost bit to fill the
+// blanks created by shifting. For instance, x >> 7 will equal 0xFF if (x & 1), and 0x00
+// otherwise. This is a bit hard to read, but the operation is branchless, which is valuable
+// in this context.
+// Shift left by one.
+        val res = ByteArray(BLOCK_SIZE)
+        for (i in 0 until BLOCK_SIZE) {
+            res[i] = (0xFE and (value[i].toInt() shl 1)).toByte()
+            if (i < BLOCK_SIZE - 1) {
+                res[i] = res[i] or (0x01 and (value[i + 1].toInt() shr 7)).toByte()
+            }
+        }
+        // And handle the modulus if needed (0x87 is the binary representation of the polynomial,
+// minus the x^128 part).
+        res[BLOCK_SIZE - 1] = res[BLOCK_SIZE - 1] xor (0x87 and (value[0].toInt() shr 7)).toByte()
+        return res
+    }
+
+    /**
+     * Pad by adding a 1 bit, then pad with 0 bits to the next block limit. This is the standard for
+     * both CMAC and AES-SIV. - https://tools.ietf.org/html/rfc4493#section-2.4 -
+     * https://tools.ietf.org/html/rfc5297#section-2.1
+     *
+     * @param x The array to pad (will be copied)
+     * @return The padded array.
+     */
+    fun cmacPad(x: ByteArray): ByteArray {
+        require(x.size < BLOCK_SIZE) { "x must be smaller than a block." }
+        val result = Arrays.copyOf(x, 16)
+        result[x.size] = 0x80.toByte()
+        return result
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/Bytes.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/Bytes.kt
new file mode 100644
index 0000000..38d71e5
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/Bytes.kt
@@ -0,0 +1,149 @@
+package co.candyhouse.sesame.utils.aescmac
+
+import java.nio.ByteBuffer
+import java.security.GeneralSecurityException
+import java.util.Arrays
+import kotlin.experimental.xor
+
+object Bytes {
+    /**
+     * Best effort fix-timing array comparison.
+     *
+     * @return true if two arrays are equal.
+     */
+    fun equal(x: ByteArray?, y: ByteArray?): Boolean {
+        if (x == null || y == null) {
+            return false
+        }
+        if (x.size != y.size) {
+            return false
+        }
+        var res = 0
+        for (i in x.indices) {
+            res = res or x[i].toInt() xor y[i].toInt()
+        }
+        return res == 0
+    }
+
+    /**
+     * Returns the concatenation of the input arrays in a single array. For example, `concat(new
+     * byte[] {a, b}, new byte[] {}, new byte[] {c}` returns the array `{a, b, c}`.
+     *
+     * @return a single array containing all the values from the source arrays, in order
+     */
+//    @Throws(GeneralSecurityException::class)
+    fun concat(vararg chunks: ByteArray): ByteArray {
+        var length = 0
+        for (chunk in chunks) {
+            if (length > Int.MAX_VALUE - chunk.size) {
+                throw GeneralSecurityException("exceeded size limit")
+            }
+            length += chunk.size
+        }
+        val res = ByteArray(length)
+        var pos = 0
+        for (chunk in chunks) {
+            System.arraycopy(chunk, 0, res, pos, chunk.size)
+            pos += chunk.size
+        }
+        return res
+    }
+
+    /**
+     * Computes the xor of two byte arrays, specifying offsets and the length to xor.
+     *
+     * @return a new byte[] of length len.
+     */
+    fun xor(
+        x: ByteArray, offsetX: Int, y: ByteArray, offsetY: Int, len: Int
+    ): ByteArray {
+        require(!(len < 0 || x.size - len < offsetX || y.size - len < offsetY)) { "That combination of buffers, offsets and length to xor result in out-of-bond accesses." }
+        val res = ByteArray(len)
+        for (i in 0 until len) {
+            res[i] = (x[i + offsetX] xor y[i + offsetY]) as Byte
+        }
+        return res
+    }
+
+    /**
+     * Computes the xor of two byte buffers, specifying the length to xor, and
+     * stores the result to `output`.
+     *
+     * @return a new byte[] of length len.
+     */
+    fun xor(output: ByteBuffer, x: ByteBuffer, y: ByteBuffer, len: Int) {
+        require(!(len < 0 || x.remaining() < len || y.remaining() < len || output.remaining() < len)) { "That combination of buffers, offsets and length to xor result in out-of-bond accesses." }
+        for (i in 0 until len) {
+            output.put((x.get() xor y.get()) as Byte)
+        }
+    }
+
+    /**
+     * Computes the xor of two byte arrays of equal size.
+     *
+     * @return a new byte[] of length x.length.
+     */
+    fun xor(x: ByteArray, y: ByteArray): ByteArray {
+        require(x.size == y.size) { "The lengths of x and y should match." }
+        return xor(x, 0, y, 0, x.size)
+    }
+
+    /**
+     * xors b to the end of a.
+     *
+     * @return a new byte[] of length x.length.
+     */
+    fun xorEnd(a: ByteArray, b: ByteArray): ByteArray {
+        require(a.size >= b.size) { "xorEnd requires a.length >= b.length" }
+        val paddingLength = a.size - b.size
+        val res = Arrays.copyOf(a, a.size)
+        for (i in b.indices) {
+            res[paddingLength + i] = res[paddingLength + i] xor b[i]
+        }
+        return res
+    }
+
+    /**
+     * Transforms a passed value to a LSB first byte array with the size of the specified capacity
+     *
+     * @param capacity size of the resulting byte array
+     * @param value that should be represented as a byte array
+     */
+    fun intToByteArray(capacity: Int, value: Int): ByteArray {
+        val result = ByteArray(capacity)
+        for (i in 0 until capacity) {
+            result[i] = (value shr 8 * i and 0xFF).toByte()
+        }
+        return result
+    }
+    /**
+     * Transforms a passed LSB first byte array to an int
+     *
+     * @param bytes that should be transformed to a byte array
+     * @param length amount of the passed `bytes` that should be transformed
+     */
+    /**
+     * Transforms a passed LSB first byte array to an int
+     *
+     * @param bytes that should be transformed to a byte array
+     */
+    @JvmOverloads
+    fun byteArrayToInt(bytes: ByteArray, length: Int = bytes.size): Int {
+        return byteArrayToInt(bytes, 0, length)
+    }
+
+    /**
+     * Transforms a passed LSB first byte array to an int
+     *
+     * @param bytes that should be transformed to a byte array
+     * @param offset start index to start the transformation
+     * @param length amount of the passed `bytes` that should be transformed
+     */
+    fun byteArrayToInt(bytes: ByteArray, offset: Int, length: Int): Int {
+        var value = 0
+        for (i in 0 until length) {
+            value += bytes[i + offset].toInt() and 0xFF shl i * 8
+        }
+        return value
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/EngineFactory.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/EngineFactory.kt
new file mode 100644
index 0000000..124685c
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/EngineFactory.kt
@@ -0,0 +1,143 @@
+package co.candyhouse.sesame.utils.aescmac
+
+import co.candyhouse.sesame.utils.L
+import java.security.GeneralSecurityException
+import java.security.KeyFactory
+import java.security.KeyPairGenerator
+import java.security.MessageDigest
+import java.security.Provider
+import java.security.Security
+import java.security.Signature
+import javax.crypto.Cipher
+import javax.crypto.KeyAgreement
+import javax.crypto.Mac
+
+class EngineFactory<T_WRAPPER : EngineWrapper<T_ENGINE>?, T_ENGINE> {
+    companion object {
+        private var defaultPolicy: List<Provider?>? = null
+        private const val DEFAULT_LET_FALLBACK = true
+        val CIPHER = EngineFactory(EngineWrapper.TCipher())
+        fun getCustomCipherProvider(
+            letFallbackToDefault: Boolean, vararg providerNames: String?
+        ): EngineFactory<EngineWrapper.TCipher, Cipher> {
+            return EngineFactory(
+                EngineWrapper.TCipher(), toProviderList(*providerNames), letFallbackToDefault
+            )
+        }
+
+        val MAC = EngineFactory(EngineWrapper.TMac())
+        fun getCustomMacProvider(
+            letFallbackToDefault: Boolean, vararg providerNames: String?
+        ): EngineFactory<EngineWrapper.TMac, Mac> {
+            return EngineFactory(
+                EngineWrapper.TMac(), toProviderList(*providerNames), letFallbackToDefault
+            )
+        }
+
+        val SIGNATURE = EngineFactory(EngineWrapper.TSignature())
+        fun getCustomSignatureProvider(
+            letFallbackToDefault: Boolean, vararg providerNames: String?
+        ): EngineFactory<EngineWrapper.TSignature, Signature> {
+            return EngineFactory(
+                EngineWrapper.TSignature(), toProviderList(*providerNames), letFallbackToDefault
+            )
+        }
+
+        val MESSAGE_DIGEST = EngineFactory(EngineWrapper.TMessageDigest())
+        fun getCustomMessageDigestProvider(letFallbackToDefault: Boolean, vararg providerNames: String?): EngineFactory<EngineWrapper.TMessageDigest, MessageDigest> {
+            return EngineFactory(
+                EngineWrapper.TMessageDigest(), toProviderList(*providerNames), letFallbackToDefault
+            )
+        }
+
+        val KEY_AGREEMENT = EngineFactory(EngineWrapper.TKeyAgreement())
+        fun getCustomKeyAgreementProvider(letFallbackToDefault: Boolean, vararg providerNames: String?): EngineFactory<EngineWrapper.TKeyAgreement, KeyAgreement> {
+            return EngineFactory(
+                EngineWrapper.TKeyAgreement(), toProviderList(*providerNames), letFallbackToDefault
+            )
+        }
+
+        val KEY_PAIR_GENERATOR = EngineFactory(EngineWrapper.TKeyPairGenerator())
+        fun getCustomKeyPairGeneratorProvider(letFallbackToDefault: Boolean, vararg providerNames: String?): EngineFactory<EngineWrapper.TKeyPairGenerator, KeyPairGenerator> {
+            return EngineFactory(
+                EngineWrapper.TKeyPairGenerator(), toProviderList(*providerNames), letFallbackToDefault
+            )
+        }
+
+        val KEY_FACTORY = EngineFactory(EngineWrapper.TKeyFactory())
+        fun getCustomKeyFactoryProvider(letFallbackToDefault: Boolean, vararg providerNames: String?): EngineFactory<EngineWrapper.TKeyFactory, KeyFactory> {
+            return EngineFactory(
+                EngineWrapper.TKeyFactory(), toProviderList(*providerNames), letFallbackToDefault
+            )
+        }
+
+        /** Helper function to get a list of Providers from names.  */
+        fun toProviderList(vararg providerNames: String?): List<Provider?> {
+            val providers: MutableList<Provider?> = ArrayList()
+            for (s in providerNames) {
+                val p = Security.getProvider(s)
+                if (p != null) {
+                    providers.add(p)
+                } else {
+                    L.i("EngineFactory", String.format("Provider %s not available", s))
+                }
+            }
+            return providers
+        }
+
+        // Warning: keep this above the initialization of static providers below. or you'll get null
+// pointer errors (due to this policy not being initialized).
+        init {
+            defaultPolicy = if (SubtleUtil.isAndroid) {
+                toProviderList(
+                    "GmsCore_OpenSSL" /* Conscrypt in GmsCore, updatable thus preferrable */,
+                    "AndroidOpenSSL" /* Conscrypt in AOSP, not updatable but still better than BC */
+                )
+            } else {
+                ArrayList()
+            }
+        }
+    }
+
+    constructor(instanceBuilder: T_WRAPPER) {
+        this.instanceBuilder = instanceBuilder
+        policy = defaultPolicy
+        letFallback = DEFAULT_LET_FALLBACK
+    }
+
+    constructor(instanceBuilder: T_WRAPPER, policy: List<Provider?>?) {
+        this.instanceBuilder = instanceBuilder
+        this.policy = policy
+        letFallback = DEFAULT_LET_FALLBACK
+    }
+
+    constructor(instanceBuilder: T_WRAPPER, policy: List<Provider?>?, letFallback: Boolean) {
+        this.instanceBuilder = instanceBuilder
+        this.policy = policy
+        this.letFallback = letFallback
+    }
+
+    @Throws(GeneralSecurityException::class)
+    fun getInstance(algorithm: String?): T_ENGINE {
+        var cause: Exception? = null
+        policy = defaultPolicy
+
+        for (provider in policy!!) {
+            try {
+                return instanceBuilder!!.getInstance(algorithm, provider)
+            } catch (e: Exception) {
+                if (cause == null) {
+                    cause = e
+                }
+            }
+        }
+        if (letFallback) {
+            return instanceBuilder!!.getInstance(algorithm, null)
+        }
+        throw GeneralSecurityException("No good Provider found.", cause)
+    }
+
+    private var instanceBuilder: T_WRAPPER
+    private var policy: List<Provider?>?
+    private var letFallback: Boolean
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/EngineWrapper.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/EngineWrapper.kt
new file mode 100644
index 0000000..73cb01a
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/EngineWrapper.kt
@@ -0,0 +1,101 @@
+package co.candyhouse.sesame.utils.aescmac
+
+import java.security.GeneralSecurityException
+import java.security.KeyFactory
+import java.security.KeyPairGenerator
+import java.security.MessageDigest
+import java.security.Provider
+import java.security.Signature
+import javax.crypto.Cipher
+import javax.crypto.KeyAgreement
+import javax.crypto.Mac
+
+interface EngineWrapper<T> {
+    /** Cipher wrapper.  */
+    class TCipher : EngineWrapper<Cipher> {
+        @Throws(GeneralSecurityException::class)
+        override fun getInstance(algorithm: String?, provider: Provider?): Cipher {
+            return if (provider == null) {
+                Cipher.getInstance(algorithm)
+            } else {
+                Cipher.getInstance(algorithm, provider)
+            }
+        }
+    }
+
+    /** Mac wrapper.  */
+    class TMac : EngineWrapper<Mac> {
+        @Throws(GeneralSecurityException::class)
+        override fun getInstance(algorithm: String?, provider: Provider?): Mac {
+            return if (provider == null) {
+                Mac.getInstance(algorithm)
+            } else {
+                Mac.getInstance(algorithm, provider)
+            }
+        }
+    }
+
+    /** KeyPairGenerator wrapper.  */
+    class TKeyPairGenerator : EngineWrapper<KeyPairGenerator> {
+        @Throws(GeneralSecurityException::class)
+        override fun getInstance(algorithm: String?, provider: Provider?): KeyPairGenerator {
+            return if (provider == null) {
+                KeyPairGenerator.getInstance(algorithm)
+            } else {
+                KeyPairGenerator.getInstance(algorithm, provider)
+            }
+        }
+    }
+
+    /** MessageDigest wrapper.  */
+    class TMessageDigest : EngineWrapper<MessageDigest> {
+        @Throws(GeneralSecurityException::class)
+        override fun getInstance(algorithm: String?, provider: Provider?): MessageDigest {
+            return if (provider == null) {
+                MessageDigest.getInstance(algorithm!!)
+            } else {
+                MessageDigest.getInstance(algorithm!!, provider)
+            }
+        }
+    }
+
+    /** Signature wrapper.  */
+    class TSignature : EngineWrapper<Signature> {
+        @Throws(GeneralSecurityException::class)
+        override fun getInstance(algorithm: String?, provider: Provider?): Signature {
+            return if (provider == null) {
+                Signature.getInstance(algorithm)
+            } else {
+                Signature.getInstance(algorithm, provider)
+            }
+        }
+    }
+
+    /** KeyFactory wrapper.  */
+    class TKeyFactory : EngineWrapper<KeyFactory> {
+        @Throws(GeneralSecurityException::class)
+        override fun getInstance(algorithm: String?, provider: Provider?): KeyFactory {
+            return if (provider == null) {
+                KeyFactory.getInstance(algorithm)
+            } else {
+                KeyFactory.getInstance(algorithm, provider)
+            }
+        }
+    }
+
+    /** KeyAgreement wrapper.  */
+    class TKeyAgreement : EngineWrapper<KeyAgreement> {
+        @Throws(GeneralSecurityException::class)
+        override fun getInstance(algorithm: String?, provider: Provider?): KeyAgreement {
+            return if (provider == null) {
+                KeyAgreement.getInstance(algorithm)
+            } else {
+                KeyAgreement.getInstance(algorithm, provider)
+            }
+        }
+    }
+
+    /** Should call T.getInstance(...).  */
+    @Throws(GeneralSecurityException::class)
+    fun getInstance(algorithm: String?, provider: Provider?): T
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/MAC.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/MAC.kt
new file mode 100644
index 0000000..e972ad8
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/MAC.kt
@@ -0,0 +1,21 @@
+package co.candyhouse.sesame.utils.aescmac
+
+import java.security.GeneralSecurityException
+
+interface Mac {
+    /**
+     * Computes message authentication code (MAC) for `data`.
+     *
+     * @return MAC value
+     */
+    @Throws(GeneralSecurityException::class)
+    fun computeMac(data: ByteArray?): ByteArray?
+
+    /**
+     * Verifies whether `mac` is a correct authentication code (MAC) for `data`.
+     *
+     * @throws GeneralSecurityException if `mac` is not a correct MAC for `data`
+     */
+    @Throws(GeneralSecurityException::class)
+    fun verifyMac(mac: ByteArray?, data: ByteArray?)
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/SubtleUtil.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/SubtleUtil.kt
new file mode 100644
index 0000000..ee712dc
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/SubtleUtil.kt
@@ -0,0 +1,144 @@
+package co.candyhouse.sesame.utils.aescmac
+
+import java.math.BigInteger
+import java.nio.ByteBuffer
+import java.security.GeneralSecurityException
+import java.util.Arrays
+
+object SubtleUtil {
+    /**r
+     * Returns the Ecdsa algorithm name corresponding to a hash type.
+     *
+     * @param hash the hash type
+     * @return the JCE's Ecdsa algorithm name for the hash.
+     * @throw GeneralSecurityExceptio if `hash` is not supported or is not safe for digital
+     * signature.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun toEcdsaAlgo(hash: Enums.HashType): String {
+        Validators.validateSignatureHash(hash)
+        return hash.toString() + "withECDSA"
+    }
+
+    /**
+     * Returns the RSA SSA (Signature with Appendix) PKCS1 algorithm name corresponding to a hash
+     * type.
+     *
+     * @param hash the hash type.
+     * @return the JCE's RSA SSA PKCS1 algorithm name for the hash.
+     * @throw GeneralSecurityException if `hash` is not supported or is not safe for digital
+     * signature.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun toRsaSsaPkcs1Algo(hash: Enums.HashType): String {
+        Validators.validateSignatureHash(hash)
+        return hash.toString() + "withRSA"
+    }
+
+    /**
+     * Returns the digest algorithm name corresponding to a hash type.
+     *
+     * @param hash the hash type.
+     * @return theh JCE's hash algorithm name.
+     * @throw GeneralSecurityException if `hash` is not supported.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun toDigestAlgo(hash: Enums.HashType): String {
+        return when (hash) {
+            Enums.HashType.SHA1 -> "SHA-1"
+            Enums.HashType.SHA256 -> "SHA-256"
+            Enums.HashType.SHA384 -> "SHA-384"
+            Enums.HashType.SHA512 -> "SHA-512"
+        }
+        throw GeneralSecurityException("Unsupported hash $hash")
+    }// If Application isn't loaded, it might as well not be Android./*initialize=*/
+
+    /**
+     * Best-effort checks that this is Android.
+     *
+     * @return true if running on Android.
+     */
+    val isAndroid: Boolean
+        get() = try {
+            Class.forName("android.app.Application",  /*initialize=*/false, null)
+            true
+        } catch (e: Exception) { // If Application isn't loaded, it might as well not be Android.
+            false
+        }
+
+    /**
+     * Converts an byte array to a nonnegative integer
+     * (https://tools.ietf.org/html/rfc8017#section-4.1).
+     *
+     * @param bs the byte array to be converted to integer.
+     * @return the corresponding integer.
+     */
+    fun bytes2Integer(bs: ByteArray?): BigInteger {
+        return BigInteger(1, bs)
+    }
+
+    /**
+     * Converts a nonnegative integer to a byte array of a specified length
+     * (https://tools.ietf.org/html/rfc8017#section-4.2).
+     *
+     * @param num nonnegative integer to be converted.
+     * @param intendedLength intended length of the resulting integer.
+     * @return the corresponding byte array of length `intendedLength`.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun integer2Bytes(num: BigInteger, intendedLength: Int): ByteArray {
+        val b = num.toByteArray()
+        if (b.size == intendedLength) {
+            return b
+        }
+        if (b.size > intendedLength + 1 /* potential leading zero */) {
+            throw GeneralSecurityException("integer too large")
+        }
+        if (b.size == intendedLength + 1) {
+            return if (b[0].toInt() == 0 /* leading zero */) {
+                Arrays.copyOfRange(b, 1, b.size)
+            } else {
+                throw GeneralSecurityException("integer too large")
+            }
+        }
+        // Left zero pad b.
+        val res = ByteArray(intendedLength)
+        System.arraycopy(b, 0, res, intendedLength - b.size, b.size)
+        return res
+    }
+
+    /** Computes MGF1 as defined at https://tools.ietf.org/html/rfc8017#appendix-B.2.1.  */
+    @Throws(GeneralSecurityException::class)
+    fun mgf1(mgfSeed: ByteArray?, maskLen: Int, mgfHash: Enums.HashType): ByteArray {
+        val digest = EngineFactory.MESSAGE_DIGEST.getInstance(toDigestAlgo(mgfHash))
+        val hLen = digest.digestLength
+        // Step 1. Check maskLen.
+// As max integer is only 2^31 - 1 which is smaller than the limit 2^32, this step is skipped.
+// Step 2, 3. Compute t.
+        val t = ByteArray(maskLen)
+        var tPos = 0
+        for (counter in 0..(maskLen - 1) / hLen) {
+            digest.reset()
+            digest.update(mgfSeed)
+            digest.update(integer2Bytes(BigInteger.valueOf(counter.toLong()), 4))
+            val c = digest.digest()
+            System.arraycopy(c, 0, t, tPos, Math.min(c.size, t.size - tPos))
+            tPos += c.size
+        }
+        return t
+    }
+
+    /**
+     * Inserts {@param value} as unsigned into into {@param buffer}.
+     *
+     *
+     * @throws GeneralSecurityException if not 0 <= value < 2^32.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun putAsUnsigedInt(buffer: ByteBuffer, value: Long) {
+        if (!(0 <= value && value < 0x100000000L)) {
+            throw GeneralSecurityException("Index out of range")
+        }
+        buffer.putInt(value.toInt())
+    }
+}
diff --git a/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/Validators.kt b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/Validators.kt
new file mode 100644
index 0000000..e6c3972
--- /dev/null
+++ b/sesameSdk/src/main/java/co/candyhouse/sesame/utils/aescmac/Validators.kt
@@ -0,0 +1,186 @@
+package co.candyhouse.sesame.utils.aescmac
+
+import java.io.File
+import java.io.IOException
+import java.security.GeneralSecurityException
+import java.security.InvalidAlgorithmParameterException
+import java.util.Locale.getDefault
+import java.util.regex.Pattern
+
+class Enums {
+    /** Hash type.  */
+    enum class HashType {
+        SHA1,  // Using SHA1 for digital signature is deprecated but HMAC-SHA1 is fine.
+        SHA256, SHA384, SHA512
+    }
+}
+
+object Validators {
+    private const val TYPE_URL_PREFIX = "type.googleapis.com/"
+
+    /**
+     * To reach 128-bit security strength, RSA's modulus must be at least 3072-bit while 2048-bit RSA
+     * key only has 112-bit security. Nevertheless, a 2048-bit RSA key is considered safe by NIST
+     * until 2030 (see https://www.keylength.com/en/4/).
+     */
+    private const val MIN_RSA_MODULUS_SIZE = 2048
+
+    /** @throws GeneralSecurityException if `typeUrl` is in invalid format.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun validateTypeUrl(typeUrl: String) {
+        if (!typeUrl.startsWith(TYPE_URL_PREFIX)) {
+            throw GeneralSecurityException(
+                String.format(
+                    "Error: type URL %s is invalid; it must start with %s.\n", typeUrl, TYPE_URL_PREFIX
+                )
+            )
+        }
+        if (typeUrl.length == TYPE_URL_PREFIX.length) {
+            throw GeneralSecurityException(String.format("Error: type URL %s is invalid; it has no message name.\n", typeUrl))
+        }
+    }
+
+    /** @throws InvalidAlgorithmParameterException if `sizeInBytes` is not supported.
+     */
+    @Throws(InvalidAlgorithmParameterException::class)
+    fun validateAesKeySize(sizeInBytes: Int) {
+        if (sizeInBytes != 16 && sizeInBytes != 32) {
+            throw InvalidAlgorithmParameterException(
+                String.format(
+                    "invalid key size %d; only 128-bit and 256-bit AES keys are supported",
+                    sizeInBytes * 8
+                )
+            )
+        }
+    }
+
+    /**
+     * @throws GeneralSecurityException if `candidate` is negative or larger than `maxExpected`.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun validateVersion(candidate: Int, maxExpected: Int) {
+        if (candidate < 0 || candidate > maxExpected) {
+            throw GeneralSecurityException(
+                String.format(
+                    "key has version %d; only keys with version in range [0..%d] are supported",
+                    candidate, maxExpected
+                )
+            )
+        }
+    }
+
+    /**
+     * Validates whether `hash` is safe to use for digital signature.
+     *
+     * @throws GeneralSecurityException if `hash` is invalid or is not safe to use for digital
+     * signature.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun validateSignatureHash(hash: Enums.HashType) {
+        when (hash) {
+            Enums.HashType.SHA256, Enums.HashType.SHA384, Enums.HashType.SHA512 -> return
+            else -> {
+            }
+        }
+        throw GeneralSecurityException("Unsupported hash: " + hash.name)
+    }
+
+    /**
+     * Validates whether `modulusSize` is at least 2048-bit.
+     *
+     *
+     * To reach 128-bit security strength, RSA's modulus must be at least 3072-bit while 2048-bit
+     * RSA key only has 112-bit security. Nevertheless, a 2048-bit RSA key is considered safe by NIST
+     * until 2030 (see https://www.keylength.com/en/4/).
+     *
+     * @throws GeneralSecurityException if `modulusSize` is less than 2048-bit.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun validateRsaModulusSize(modulusSize: Int) {
+        if (modulusSize < MIN_RSA_MODULUS_SIZE) {
+            throw GeneralSecurityException(
+                String.format(
+                    "Modulus size is %d; only modulus size >= 2048-bit is supported", modulusSize
+                )
+            )
+        }
+    }
+
+    /*
+   * @throws IOException if {@code f} exists.
+   */
+    @Throws(IOException::class)
+    fun validateNotExists(f: File) {
+        if (f.exists()) {
+            throw IOException(String.format("%s exists, please choose another file\n", f.toString()))
+        }
+    }
+
+    /** @throws IOException if `f` does not exists.
+     */
+    @Throws(IOException::class)
+    fun validateExists(f: File) {
+        if (!f.exists()) {
+            throw IOException(String.format("Error: %s doesn't exist, please choose another file\n", f.toString()))
+        }
+    }
+
+    /**
+     * Validates that `kmsKeyUri` starts with `expectedPrefix`, and removes the prefix.
+     *
+     * @throws IllegalArgumentException
+     */
+    @Throws(IllegalArgumentException::class)
+    fun validateKmsKeyUriAndRemovePrefix(expectedPrefix: String, kmsKeyUri: String): String {
+        require(kmsKeyUri.lowercase(getDefault()).startsWith(expectedPrefix)) { String.format("key URI must start with %s", expectedPrefix) }
+        return kmsKeyUri.substring(expectedPrefix.length)
+    }
+
+    // See https://tools.ietf.org/html/rfc3986#section-2.3.
+    private const val URI_UNRESERVED_CHARS = "([0-9a-zA-Z\\-\\.\\_~])+"
+    private val GCP_KMS_CRYPTO_KEY_PATTERN = Pattern.compile(
+        String.format(
+            "^projects/%s/locations/%s/keyRings/%s/cryptoKeys/%s$",
+            URI_UNRESERVED_CHARS,
+            URI_UNRESERVED_CHARS,
+            URI_UNRESERVED_CHARS,
+            URI_UNRESERVED_CHARS
+        ),
+        Pattern.CASE_INSENSITIVE
+    )
+    private val GCP_KMS_CRYPTO_KEY_VERSION_PATTERN = Pattern.compile(
+        String.format(
+            "^projects/%s/locations/%s/keyRings/%s/cryptoKeys/%s/cryptoKeyVersions/%s$",
+            URI_UNRESERVED_CHARS,
+            URI_UNRESERVED_CHARS,
+            URI_UNRESERVED_CHARS,
+            URI_UNRESERVED_CHARS,
+            URI_UNRESERVED_CHARS
+        ),
+        Pattern.CASE_INSENSITIVE
+    )
+
+    /**
+     * @throws GeneralSecurityException if `kmsKeyUri` is not a valid URI of a CryptoKey in
+     * Google Cloud KMS.
+     */
+    @Throws(GeneralSecurityException::class)
+    fun validateCryptoKeyUri(kmsKeyUri: String?) {
+        if (!GCP_KMS_CRYPTO_KEY_PATTERN.matcher(kmsKeyUri).matches()) {
+            if (GCP_KMS_CRYPTO_KEY_VERSION_PATTERN.matcher(kmsKeyUri).matches()) {
+                throw GeneralSecurityException(
+                    "Invalid Google Cloud KMS Key URI. "
+                            + "The URI must point to a CryptoKey, not a CryptoKeyVersion"
+                )
+            }
+            throw GeneralSecurityException(
+                "Invalid Google Cloud KMS Key URI. "
+                        + "The URI must point to a CryptoKey in the format "
+                        + "projects/*/locations/*/keyRings/*/cryptoKeys/*. "
+                        + "See https://cloud.google.com/kms/docs/reference/rest/v1"
+                        + "/projects.locations.keyRings.cryptoKeys#CryptoKey"
+            )
+        }
+    }
+}
diff --git a/settings.gradle b/settings.gradle
new file mode 100755
index 0000000..f9a540b
--- /dev/null
+++ b/settings.gradle
@@ -0,0 +1,32 @@
+pluginManagement {
+    repositories {
+        google {
+            content {
+                includeGroupByRegex("com\\.android.*")
+                includeGroupByRegex("com\\.google.*")
+                includeGroupByRegex("androidx.*")
+            }
+        }
+        mavenCentral()
+        gradlePluginPortal()
+        maven { url "https://maven.aliyun.com/repository/public" }
+        maven { url "https://jcenter.bintray.com/" }
+        maven { url "https://jitpack.io" }
+    }
+}
+plugins {
+    id "org.gradle.toolchains.foojay-resolver-convention" version "1.0.0"
+}
+dependencyResolutionManagement {
+    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
+    repositories {
+        google()
+        mavenCentral()
+        maven { url "https://maven.aliyun.com/repository/public" }
+        maven { url "https://jcenter.bintray.com/" }
+        maven { url "https://jitpack.io" }
+    }
+}
+
+include ':sesameApp'
+include ':sesameSdk'
\ No newline at end of file